* regression fixed by using pci=rom @ 2008-05-08 23:54 Dave Airlie 2008-05-09 0:17 ` Jesse Barnes 2008-05-09 1:36 ` Linus Torvalds 0 siblings, 2 replies; 10+ messages in thread From: Dave Airlie @ 2008-05-08 23:54 UTC (permalink / raw) To: kernel list, Gary Hade, Jesse Barnes, Linus Torvalds A user just reported this bug http://bugs.freedesktop.org/show_bug.cgi?id=15523 He says using pci=rom fixes the regression, do we truly have to start booting machines with this, sucks to be a distro.. Dave. ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: regression fixed by using pci=rom 2008-05-08 23:54 regression fixed by using pci=rom Dave Airlie @ 2008-05-09 0:17 ` Jesse Barnes 2008-05-09 1:46 ` Linus Torvalds 2008-05-09 1:36 ` Linus Torvalds 1 sibling, 1 reply; 10+ messages in thread From: Jesse Barnes @ 2008-05-09 0:17 UTC (permalink / raw) To: Dave Airlie; +Cc: kernel list, Gary Hade, Linus Torvalds On Thursday, May 08, 2008 4:54 pm Dave Airlie wrote: > A user just reported this bug > > http://bugs.freedesktop.org/show_bug.cgi?id=15523 > > He says using pci=rom fixes the regression, do we truly have to start > booting machines with this, sucks to be a distro.. Hm, yeah in many cases we definitely *do* want to try to get the expansion ROM space allocated. But maybe it should be a lower priority than other BARs... Gary? Thanks, Jesse ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: regression fixed by using pci=rom 2008-05-09 0:17 ` Jesse Barnes @ 2008-05-09 1:46 ` Linus Torvalds 2008-05-09 6:29 ` Jesse Barnes 2008-05-09 6:44 ` Ingo Molnar 0 siblings, 2 replies; 10+ messages in thread From: Linus Torvalds @ 2008-05-09 1:46 UTC (permalink / raw) To: Jesse Barnes Cc: Dave Airlie, kernel list, Gary Hade, Ingo Molnar, Thomas Gleixner On Thu, 8 May 2008, Jesse Barnes wrote: > > Hm, yeah in many cases we definitely *do* want to try to get the expansion ROM > space allocated. But maybe it should be a lower priority than other BARs... > Gary? The thing is, a lot of these things have been done this way because not doing them that way breaks. We want to allocate expansion ROM space - even if we don't enable it - because not doing so will screw up bus sizing etc, and can make it impossible to allocate later. In general, changing PCI allocation strategy is really _really_ dangerous, even when it is "right", because it tends to expose a lot of issues where something worked just because it was perhaps indirectly causing a layout that worked. So the reason I immediately reverted this is that it was simply totally wrong. If somebody cares about multi-node systems, the onus of making those work should be on *that*, not on old systems that already work. Ingo, Thomas: I would _seriously_ suggest that you don't consider the x86 PCI setup code to be "x86" code. Because it isn't. Not in that sense. Just don't take patches to it. Linus ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: regression fixed by using pci=rom 2008-05-09 1:46 ` Linus Torvalds @ 2008-05-09 6:29 ` Jesse Barnes 2008-05-09 16:05 ` Gary Hade 2008-05-09 6:44 ` Ingo Molnar 1 sibling, 1 reply; 10+ messages in thread From: Jesse Barnes @ 2008-05-09 6:29 UTC (permalink / raw) To: Linus Torvalds Cc: Dave Airlie, kernel list, Gary Hade, Ingo Molnar, Thomas Gleixner On Thursday, May 08, 2008 6:46 pm Linus Torvalds wrote: > On Thu, 8 May 2008, Jesse Barnes wrote: > > Hm, yeah in many cases we definitely *do* want to try to get the > > expansion ROM space allocated. But maybe it should be a lower priority > > than other BARs... Gary? > > The thing is, a lot of these things have been done this way because not > doing them that way breaks. > > We want to allocate expansion ROM space - even if we don't enable it - > because not doing so will screw up bus sizing etc, and can make it > impossible to allocate later. > > In general, changing PCI allocation strategy is really _really_ dangerous, > even when it is "right", because it tends to expose a lot of issues where > something worked just because it was perhaps indirectly causing a layout > that worked. Yeah, that was my first impression too, but the patch went upstream awhile ago and I didn't see any background except for the changelog. If anything, we should have a pci=norom option instead, so that big systems that don't need the ROMs can use their address space more efficiently. Jesse ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: regression fixed by using pci=rom 2008-05-09 6:29 ` Jesse Barnes @ 2008-05-09 16:05 ` Gary Hade 0 siblings, 0 replies; 10+ messages in thread From: Gary Hade @ 2008-05-09 16:05 UTC (permalink / raw) To: Jesse Barnes Cc: Linus Torvalds, Dave Airlie, kernel list, Gary Hade, Ingo Molnar, Thomas Gleixner On Thu, May 08, 2008 at 11:29:39PM -0700, Jesse Barnes wrote: > On Thursday, May 08, 2008 6:46 pm Linus Torvalds wrote: > > On Thu, 8 May 2008, Jesse Barnes wrote: > > > Hm, yeah in many cases we definitely *do* want to try to get the > > > expansion ROM space allocated. But maybe it should be a lower priority > > > than other BARs... Gary? > > > > The thing is, a lot of these things have been done this way because not > > doing them that way breaks. > > > > We want to allocate expansion ROM space - even if we don't enable it - > > because not doing so will screw up bus sizing etc, and can make it > > impossible to allocate later. > > > > In general, changing PCI allocation strategy is really _really_ dangerous, > > even when it is "right", because it tends to expose a lot of issues where > > something worked just because it was perhaps indirectly causing a layout > > that worked. > > Yeah, that was my first impression too, but the patch went upstream awhile ago > and I didn't see any background except for the changelog. > > If anything, we should have a pci=norom option instead, so that big systems > that don't need the ROMs can use their address space more efficiently. This is actually the solution I was going to suggest. I will work on it. Gary -- Gary Hade System x Enablement IBM Linux Technology Center 503-578-4503 IBM T/L: 775-4503 garyhade@us.ibm.com http://www.ibm.com/linux/ltc ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: regression fixed by using pci=rom 2008-05-09 1:46 ` Linus Torvalds 2008-05-09 6:29 ` Jesse Barnes @ 2008-05-09 6:44 ` Ingo Molnar 2008-05-09 16:45 ` Gary Hade 1 sibling, 1 reply; 10+ messages in thread From: Ingo Molnar @ 2008-05-09 6:44 UTC (permalink / raw) To: Linus Torvalds Cc: Jesse Barnes, Dave Airlie, kernel list, Gary Hade, Thomas Gleixner * Linus Torvalds <torvalds@linux-foundation.org> wrote: > On Thu, 8 May 2008, Jesse Barnes wrote: > > > > Hm, yeah in many cases we definitely *do* want to try to get the > > expansion ROM space allocated. But maybe it should be a lower > > priority than other BARs... Gary? > > The thing is, a lot of these things have been done this way because > not doing them that way breaks. > > We want to allocate expansion ROM space - even if we don't enable it - > because not doing so will screw up bus sizing etc, and can make it > impossible to allocate later. > > In general, changing PCI allocation strategy is really _really_ > dangerous, even when it is "right", because it tends to expose a lot > of issues where something worked just because it was perhaps > indirectly causing a layout that worked. i tend to believe that the best strategy would be to generally do what other OSs do for PCI BAR sizing and PCI resource setup [on desktop systems that would be Windows in particular] - and i believe there are still a number of gratuitous-looking differences in our code that seem unnecessary. Especially on the myriads of desktop systems Windows is what gets tested primarily, and by deviating from that legacy layout we just set up ourselves for unnecessary failures. To Linux the primary interest is in devices not failing due to unexpected layout and them not overlapping any magic areas - good resource compression is something that larger systems can opt-in into anyway if it's really needed. In that sense this commit that came through us failed that strict benchmark :-/ > So the reason I immediately reverted this is that it was simply > totally wrong. If somebody cares about multi-node systems, the onus of > making those work should be on *that*, not on old systems that already > work. > > Ingo, Thomas: I would _seriously_ suggest that you don't consider the > x86 PCI setup code to be "x86" code. Because it isn't. Not in that > sense. Just don't take patches to it. yeah, we stopped doing that in this window (the commits you got form us in this window were all leftovers and acked by Jesse) - and we've already bounced over all PCI-looking patches to Jesse and asked Jesse about all PCI affecting pulls as well in this window. Even this window's leftovers we made separate topics and sent separate pull requests for them (all tested and acked by Jesse) because it's not really arch/x86 and PCI commits just need to be considered separately from all other changes. Ingo ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: regression fixed by using pci=rom 2008-05-09 6:44 ` Ingo Molnar @ 2008-05-09 16:45 ` Gary Hade 2008-05-09 17:26 ` Linus Torvalds 0 siblings, 1 reply; 10+ messages in thread From: Gary Hade @ 2008-05-09 16:45 UTC (permalink / raw) To: Ingo Molnar Cc: Linus Torvalds, Jesse Barnes, Dave Airlie, kernel list, Gary Hade, Thomas Gleixner On Fri, May 09, 2008 at 08:44:03AM +0200, Ingo Molnar wrote: > > * Linus Torvalds <torvalds@linux-foundation.org> wrote: > > > On Thu, 8 May 2008, Jesse Barnes wrote: > > > > > > Hm, yeah in many cases we definitely *do* want to try to get the > > > expansion ROM space allocated. But maybe it should be a lower > > > priority than other BARs... Gary? > > > > The thing is, a lot of these things have been done this way because > > not doing them that way breaks. > > > > We want to allocate expansion ROM space - even if we don't enable it - > > because not doing so will screw up bus sizing etc, and can make it > > impossible to allocate later. > > > > In general, changing PCI allocation strategy is really _really_ > > dangerous, even when it is "right", because it tends to expose a lot > > of issues where something worked just because it was perhaps > > indirectly causing a layout that worked. > > i tend to believe that the best strategy would be to generally do what > other OSs do for PCI BAR sizing and PCI resource setup [on desktop > systems that would be Windows in particular] - and i believe there are > still a number of gratuitous-looking differences in our code that seem > unnecessary. Especially on the myriads of desktop systems Windows is > what gets tested primarily, and by deviating from that legacy layout we > just set up ourselves for unnecessary failures. Ingo, Would you (or others listening to this discussion) know exactly what Windows does with respect to BIOS unassigned expansion ROMs? Does Windows attempt to obtain space for the expansion ROMs at boot-time or does it perhaps have some sort of strategy where space is allocated on an "as needed" basis at run-time? Gary -- Gary Hade System x Enablement IBM Linux Technology Center 503-578-4503 IBM T/L: 775-4503 garyhade@us.ibm.com http://www.ibm.com/linux/ltc ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: regression fixed by using pci=rom 2008-05-09 16:45 ` Gary Hade @ 2008-05-09 17:26 ` Linus Torvalds 2008-05-09 18:54 ` Gary Hade 0 siblings, 1 reply; 10+ messages in thread From: Linus Torvalds @ 2008-05-09 17:26 UTC (permalink / raw) To: Gary Hade Cc: Ingo Molnar, Jesse Barnes, Dave Airlie, kernel list, Thomas Gleixner On Fri, 9 May 2008, Gary Hade wrote: > > Ingo, Would you (or others listening to this discussion) know > exactly what Windows does with respect to BIOS unassigned > expansion ROMs? Nobody really seems to know what windows does for *any* resources. And it probably depends on windows version too, and on detailed chipset issues (ie does Windows do the same thing as Linux wrt transparent bridges that still have bus translation resources set up?). So the "try to do what Windows does" is something we strive for in particular cases, but it's not an absolute thing, and probably can never even be that in theory. It's more a guideline, especially when we don't know which particular choice is better and both seem otherwise equally good. But "doesn't work" always trumps "that's what windows does". Because even if something works under Windows, sometimes Linux drivers simply then act differently (ie they may use PIO vs MMIO, or in the case of graphics they may need ROMs for re-POST'ing while a windows driver is written by the chipset vendor and DTRT without even looking at the BIOS tables) Linus ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: regression fixed by using pci=rom 2008-05-09 17:26 ` Linus Torvalds @ 2008-05-09 18:54 ` Gary Hade 0 siblings, 0 replies; 10+ messages in thread From: Gary Hade @ 2008-05-09 18:54 UTC (permalink / raw) To: Linus Torvalds Cc: Gary Hade, Ingo Molnar, Jesse Barnes, Dave Airlie, kernel list, Thomas Gleixner On Fri, May 09, 2008 at 10:26:47AM -0700, Linus Torvalds wrote: > > > On Fri, 9 May 2008, Gary Hade wrote: > > > > Ingo, Would you (or others listening to this discussion) know > > exactly what Windows does with respect to BIOS unassigned > > expansion ROMs? > > Nobody really seems to know what windows does for *any* resources. And it > probably depends on windows version too, and on detailed chipset issues > (ie does Windows do the same thing as Linux wrt transparent bridges that > still have bus translation resources set up?). > > So the "try to do what Windows does" is something we strive for in > particular cases, but it's not an absolute thing, and probably can never > even be that in theory. It's more a guideline, especially when we don't > know which particular choice is better and both seem otherwise equally > good. > > But "doesn't work" always trumps "that's what windows does". Because even > if something works under Windows, sometimes Linux drivers simply then act > differently (ie they may use PIO vs MMIO, or in the case of graphics they > may need ROMs for re-POST'ing while a windows driver is written by the > chipset vendor and DTRT without even looking at the BIOS tables) Yea, this is probably a good explanation of why Windows does run, presumably without PCI resource allocation issues, on those same systems where we have struggling with the expansion ROM resource allocation failures from Linux. Thanks. Gary -- Gary Hade System x Enablement IBM Linux Technology Center 503-578-4503 IBM T/L: 775-4503 garyhade@us.ibm.com http://www.ibm.com/linux/ltc ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: regression fixed by using pci=rom 2008-05-08 23:54 regression fixed by using pci=rom Dave Airlie 2008-05-09 0:17 ` Jesse Barnes @ 2008-05-09 1:36 ` Linus Torvalds 1 sibling, 0 replies; 10+ messages in thread From: Linus Torvalds @ 2008-05-09 1:36 UTC (permalink / raw) To: Dave Airlie; +Cc: kernel list, Gary Hade, Jesse Barnes On Fri, 9 May 2008, Dave Airlie wrote: > > A user just reported this bug > > http://bugs.freedesktop.org/show_bug.cgi?id=15523 > > He says using pci=rom fixes the regression, do we truly have to start > booting machines with this, sucks to be a distro.. Yeah, that commit he bisected to is bogus crap. I'll revert it. Linus ^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2008-05-09 18:54 UTC | newest] Thread overview: 10+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2008-05-08 23:54 regression fixed by using pci=rom Dave Airlie 2008-05-09 0:17 ` Jesse Barnes 2008-05-09 1:46 ` Linus Torvalds 2008-05-09 6:29 ` Jesse Barnes 2008-05-09 16:05 ` Gary Hade 2008-05-09 6:44 ` Ingo Molnar 2008-05-09 16:45 ` Gary Hade 2008-05-09 17:26 ` Linus Torvalds 2008-05-09 18:54 ` Gary Hade 2008-05-09 1:36 ` Linus Torvalds
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox