Thread (52 messages) 52 messages, 9 authors, 2007-06-04

Re: [PATCH 3/5] Float the pci bus number on MPC8641HPCN board.

From: Matt Sealey <hidden>
Date: 2007-06-01 16:35:17

Re enabling proper domain support on 32-bit... now, now, now please!

X guys won't merge in code, we've been punished by both sides on Pegasos
for nearly 12 months now after there's been a bunch of misguided attempts
to 'fix' domain support in X. The real fix is in the kernel to make it
very clear that domains and proper, per-domain bus numbering (not
global bus numbering) and suchlike is the standard like it is on SPARC
and PPC64 and IA64.

If ppc32 suddenly goes the way of these, X guys will fix it, there will
be patches to work against this kernel, even if they have to detect the
kernel version to do it or look at a procfs or sysfs entry to fix up
their dumb pci scanning code.

I don't think stalling on it "because of X" is right. Fix Linux, X will
follow, because it really has to.

-- 
Matt Sealey [off-list ref]
Genesi, Manager, Developer Relations

Benjamin Herrenschmidt wrote:
On Fri, 2007-06-01 at 14:45 +0800, Zhang Wei-r63237 wrote:
quoted
There are lots of lagacy PCI codes in kernel, such as
pci_bus_to_hose(busnr). If two hose's bus number have overlaps,
pci_bus_to_hose() can not return the correct hose. And there will
effect
/proc/pci and lspci tools.
More specifically...

Overlapping bus numbers on separate domains work... on 64 bits :-) The
32 bits PCI code assumes non-overlapping numbers. The main reason for
that historically was that back then, domains didn't work well.

The second reasons why I didn't actually fix it is that turning on full
domain support had (and probably still has) the nasty habit of breaking
the X server :-( X is full of most horrible hacks for PCI and it will be
terminally broken until they finally merge the pci-rework branch that
Ian Romanick's been working on for some time now.

One of these days, one of us will finally tackle merging 32 and 64 bits
PCI code (and fix both of them while at it to better use the generic
code, which involves fixing issues in the said generic code too :-) at
which point I'll enable full domain support for 32 bits as well, with an
option to degrade it to bus number remapping.

Ben.


_______________________________________________
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help