On Thu, May 26, 2011 at 2:09 AM, Iain Hibbert <plu...@rya-online.net> wrote: > On Wed, 25 May 2011, Masao Uebayashi wrote: > >> Module Name: src >> Committed By: uebayasi >> Date: Wed May 25 16:33:38 UTC 2011 >> >> Modified Files: >> src/sys/dev/bluetooth: bcsp.c bthub.c btuart.c >> src/sys/dev/ieee1394: fwdev.c fwmem.c fwohci.c >> >> Log Message: >> Declare cfdrivers using extern rather than including ioconf.h. > > surely the point of declaring a variable once in a header file is that it > then cannot be accidentally declared differently elsewhere? > > is ioconf.h so onerous? (it is merely a list of cfdriver declarations)
ioconf.h is not, but GCC is. I found 2 fwmem.o's signatures mismatch between 2 kernels; GENERIC and another doing only "no ehci" and include GENERIC. objdump -D shows: @@ -956,7 +956,7 @@ 0000000000000000 <.ident>: 0: 24 4e and $0x4e,%al 2: 65 gs - 3: 74 42 je 47 <__func__.11035+0x11> + 3: 74 42 je 47 <__func__.11034+0x11> 5: 53 push %rbx 6: 44 24 00 rex.R and $0x0,%al GCC definitely lacks care about reproducibility. So why s/include "ioconf.h"/extern/? Think it of a cosmetic change. ;) > > iain >