On Thu, Oct 27, 2011 at 02:34:05PM +0200, Konrad Rzepecki wrote: > W dniu 26.10.2011 17:08, Alan Stern pisze: > >On Wed, 26 Oct 2011, Konrad Rzepecki wrote: > >> I use '2' config to compile kernel on slackware-current64 - it build > >> without problem. > >> > >> I also try to compile kernel on '2' with "defconfig", it also build > >> without problem. > >> > >> > >> It seems error exists only with older toolchain (however still > >> supported) when usb support is compile in kernel. > >> > >> > >> If you need I can provide detailed info (configs, other tool > >versions, etc). > >> > >> When really necessary I can bisect to found exactly commit that cause > >> this problem. However this will be very inconvenient to do this on those > >> systems, so i want to avoid it, if not really needed. > > > >The code is pretty easy to understand. __bad_udelay is used to > >generate an error whenever the delay would be 20000 us or longer. But > >the delay in quirk_usb_early_handoff() is only 100 us, so there's no > >reason for an error. > > > >Probably the old compiler, even though it may nominally still be > >supported, doesn't generate correct code here. Since this is a > >compiler problem, you ought to report it on a more appropriate mailing > >list. I'm not sure which list would be best, but you can always use > >LKML. > > I make some more research, and I found that my compiler doesn't like > 'delta' variable form quirk_usb_disable_ehci(). When I set explictly '100' > to udelay it compile and link without problem. Also when I declare > 'delta' as const it fix the problem. > > Can you make one of this changes as workaround for older compilers? > They seems totally lost with new more complicated 3.1 udelay() macro > definition. I suggest you work with the gcc developers to fix your compiler bug, it's not a kernel issue. good luck, greg k-h -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html