Date: Mon, 26 Oct 2009 12:45:39 -0500 From: Nathan Whitehorn <nwhitehorn@freebsd.org> To: John Baldwin <jhb@freebsd.org> Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, Marcel Moolenaar <xcllnt@mac.com>, src-committers@freebsd.org Subject: Re: svn commit: r198431 - head/sys/dev/pci Message-ID: <4AE5E043.8070804@freebsd.org> In-Reply-To: <200910261254.49768.jhb@freebsd.org> References: <200910232253.n9NMr10R074584@svn.freebsd.org> <200910260837.23479.jhb@freebsd.org> <8082A638-C5BA-42F9-8C2E-DA31EF084840@mac.com> <200910261254.49768.jhb@freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
John Baldwin wrote: > On Monday 26 October 2009 12:32:48 pm Marcel Moolenaar wrote: > >> On Oct 26, 2009, at 5:37 AM, John Baldwin wrote: >> >> >>>> Log: >>>> BIOSes, buggy or otherwise, are i386 or amd64 specific. >>>> Have the early USB takeover enabled for i386 and amd64 >>>> by default. >>>> This also avoids a panic on PowerPC where the resource >>>> isn't released properly and we find a busy resource >>>> when the USB host controller wants to allocate it... >>>> >> >>> Presumably such systems won't set the 'BIOS owned' bit in the their >>> legacy >>> support registers in which case these routines are NOPs (they just >>> read the >>> register, see the bit is clear, and exit). The resource bug sounds >>> like a >>> real one that should be fixed and would probably affect any x86 >>> systems who >>> have USB disabled in the BIOS, so that should be fixed rather than >>> papered >>> over. Please revert. >>> >> *sigh* >> >> The change was made because 1) doing this as part of the PCI code is >> unnecessary for non-PC HW, and 2) it's entirely untested on non-PC >> HW and the gratuitous change can therefore only do harm -- he, guess >> what, it did do harm. >> >> Unless people fix the resource stuff this change cannot be reverted. >> >> After the resource fix has gone in, I still object to this being >> reverted on grounds of gratuitous code bloat. I say this with ARM, >> MIPS and PowerPC/Book-E in mind. >> > > You didn't remove anything, you merely toggled the setting of a variable. > Code bloat is a non-argument in that case. Could you care to provide details > on the resource issue you are encountering? I don't see any obvious resource > leaks, etc. in the current set of changes. > > The real problem in this case is that the bus_(deactivate|release)_resource methods are not implemented on several PCI bus drivers on PowerPC (e.g. uninorth, where this problem arose). Up until now, I guess it has never mattered. -Nathan
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4AE5E043.8070804>