On Thu, Sep 08, 2005 at 12:49:17PM -0400, Brian Gerst wrote: > Horms wrote: > >Hi Andy, > > > >that does indeed seem to be a problem. I have narrowed it down to > >a combination of using K6 and CONFIG_REGPARM. Hunting around a bit > >I found this http://my.execpc.com/~geezer/osd/gotchas/, which > >suggests the problem is that the asm in question tries to add a register > >to the clobber list which is not available. This makes sense, > >I guess REGPARM is using edx, so inline assembly can't. > > > >I've CCed the bluetooth maintainers and lkml, hopefully someone there > >will have some input on how to resolve this problem, as inline assembly > >isn't my strong point and the problem seems to manifest in Linus' current > >git tree. > > > >The relevant code is the following call to BUILDIO(b,b,char) towards the > >bottom of include/asm/io.h > > > >BUILDIO is as follows, and I am guessing it is the "Nd"(port) and > >possibley "d"(port) portions that are problematic. > > Sounds like a compiler bug, especially since changing the CPU type fixes > it. What version of GCC?
I definately think it is compiler related, I was using Debian's GCC 4.0.1-6. I could try with 3.3 or soemthing like that if you like. The problem was easily reproducable with 4.0.1 and a K6+CONFIG_REGPARM config. -- Horms - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/