Re: brcm80211 typedef bug

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Sep 16, 2010 at 06:05:59PM -0700, Henry Ptasinski wrote:
> On Thu, Sep 16, 2010 at 01:35:15PM -0700, Jason wrote:
> > Greg,
> > 
> > Sorry, forgot to include the list.
> > 
> > Please forgive the simple question, but I want to make sure I'm doing this right.  In the adventure that has become typedef removal for brcm80211 I found this in or around drivers/staging/brcm80211/include/typedefs.h:73
> > 
> > #ifndef TYPEDEF_UINT32
> > typedef unsigned int uint32;
> > #endif
> > 
> > By itself, this should break 64bit builds, right?  As I carefully sed out uint32, should I do their literal substitution, 'unsigned int', or fix it with 'unsigned long'/'uint32_t'?
> > 
> > Up to this point, I've been strictly doing literal substitutions...
> > 
> 
> Jason,
> 
> Thanks for embarking on this adventure!
> 
> When replacing explicitly-sized (i.e. uint32, int16) types, the substitution
> should be with the native type of the same explicit size.  I.e. uint32 should
> be replaced with uint32_t, int16 should be replaced with int16_t.

But if you note, the code above does not really do that for 64bit
kernels, right?  Are you sure this is correct?

And never use the _t versions in the kernel please, use 'u32' instead,
the _t types are for userspace programming only and make no sense in the
kernel.

thanks,

greg k-h
_______________________________________________
devel mailing list
devel@xxxxxxxxxxxxxxxxxxxxxx
http://driverdev.linuxdriverproject.org/mailman/listinfo/devel


[Index of Archives]     [Linux Driver Backports]     [DMA Engine]     [Linux GPIO]     [Linux SPI]     [Video for Linux]     [Linux USB Devel]     [Linux Coverity]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux