It should config.g bug, there is some un consistent. For dev33 and it sibling should be .bus = &_dev4.link[2], instead of .bus = &_dev4.link[0],
struct device _dev4 = { .ops = 0, .bus = &_dev3.link[0], .path = {.type=DEVICE_PATH_PCI,.u={.pci={ .devfn = PCI_DEVFN(0x18,0)}}}, .enabled = 1, .link = { [0] = { .link = 0, .dev = &_dev4, .children = &_dev6, }, [1] = { .link = 1, .dev = &_dev4, }, [2] = { .link = 2, .dev = &_dev4, .children = &_dev33, }, }, .links = 3, .sibling = &_dev37, .chip_ops = &northbridge_amd_amdk8_ops, .chip_info = &northbridge_amd_amdk8_info_2, .next=&_dev6 };
struct device _dev33 = { .ops = 0, .bus = &_dev4.link[0], .path = {.type=DEVICE_PATH_PCI,.u={.pci={ .devfn = PCI_DEVFN(0x0,0)}}}, .enabled = 1, .link = { }, .links = 0, .sibling = &_dev34, .next=&_dev34 }; struct device _dev34 = { .ops = 0, .bus = &_dev4.link[0], .path = {.type=DEVICE_PATH_PCI,.u={.pci={ .devfn = PCI_DEVFN(0x0,1)}}}, .enabled = 1, .link = { }, .links = 0, .sibling = &_dev35, .next=&_dev35 }; struct device _dev35 = { .ops = 0, .bus = &_dev4.link[0], .path = {.type=DEVICE_PATH_PCI,.u={.pci={ .devfn = PCI_DEVFN(0x1,0)}}}, .enabled = 1, .link = { }, .links = 0, .sibling = &_dev36, .next=&_dev36 }; struct device _dev36 = { .ops = 0, .bus = &_dev4.link[0], .path = {.type=DEVICE_PATH_PCI,.u={.pci={ .devfn = PCI_DEVFN(0x1,1)}}}, .enabled = 1, .link = { }, .links = 0, .next=&_dev37 };
-----Original Message----- From: Ronald G. Minnich [mailto:rminnich@lanl.gov] Sent: Monday, October 18, 2004 1:36 PM To: Li-Ta Lo Cc: Eric W. Biederman; YhLu; 'LinuxBIOS' Subject: Re: FYI: Merge in progress...
On Mon, 18 Oct 2004, Li-Ta Lo wrote:
This is exactly why I was proposing this change. We also got rid of a lot of static -> dynamice code.
even cooler: there is no static code structure any more. What the config tool creates is a statically allocated set of device structs. The enumeration of static to dynamic is gone.
And so on, and so on, it's a huge improvement.
ron
On Mon, 18 Oct 2004, YhLu wrote:
It should config.g bug, there is some un consistent. For dev33 and it sibling should be .bus = &_dev4.link[2],
config.g bug.
Basically when we wrote that code last week we always set to .link[0].
So we have to fix it.
My brain is too tired to try that today, so unless Ollie or Eric does it it will have to happen tomorrow.
Go ahead and commit the various Config.lb files and tell me how to repeat the problem so I can see it.
ron
On Mon, 2004-10-18 at 14:54, Ronald G. Minnich wrote:
On Mon, 18 Oct 2004, YhLu wrote:
It should config.g bug, there is some un consistent. For dev33 and it sibling should be .bus = &_dev4.link[2],
config.g bug.
Basically when we wrote that code last week we always set to .link[0].
So we have to fix it.
My brain is too tired to try that today, so unless Ollie or Eric does it it will have to happen tomorrow.
Sorry, I put all my attention on the usenix paper.
Go ahead and commit the various Config.lb files and tell me how to repeat the problem so I can see it.
I will try to hack the config.g too once I finish the paper.
Ollie
ron
YhLu YhLu@tyan.com writes:
It should config.g bug, there is some un consistent.
It could be. I should have fixed this Saturday, but...
Looking Hmm...
For dev33 and it sibling should be .bus = &_dev4.link[2], instead of .bus = &_dev4.link[0],
Good catch. We do not yet have the link of the parent device set properly in the .bus field. It is always hard coded to 0 :(
Ok the fix looks easy, committed.
Hopefully I have not missed any other cases...
Eric
On Mon, 18 Oct 2004, Eric W. Biederman wrote:
Ok the fix looks easy, committed.
well, eric, you are rewarding my laziness. :-)
ron
"Ronald G. Minnich" rminnich@lanl.gov writes:
On Mon, 18 Oct 2004, Eric W. Biederman wrote:
Ok the fix looks easy, committed.
well, eric, you are rewarding my laziness. :-)
Then this would be a bad time to mention Thayne looked at the supermon kernel code and ran away screaming?
Eric