Re: [PATCH 01/45] kstrtox: converting strings to integers done (hopefully) right

From: Arnd Bergmann
Date: Tue Dec 07 2010 - 04:45:52 EST


On Tuesday 07 December 2010 10:32:29 Alexey Dobriyan wrote:
> On Tue, Dec 07, 2010 at 10:04:58AM +0100, Arnd Bergmann wrote:
> > On Monday 06 December 2010 16:16:36 Alexey Dobriyan wrote:
> >
> > > It is used by kstrtol() if "long" and "long long" aren't the same type.
> > > I can't ifdef it because gcc doesn't allow "#if sizeof(long long) == ".
> > > "Do not use" hints "use kstrtol()".
> >
> > Can't you use #ifdef CONFIG_64BIT to see if long is 64 bit wide?
>
> I could, but there are no defines for alignment.

Not sure what you mean here. All architectures always naturally align
'long' variables -- we rely on that elsewhere already. 'long long' is
misaligned on x86-32 and possibly some other 32 bit architectures, but
since that should not cause any problems.

Another option would be to export just the strto{u,s}{8,16,32,64}
functions and define the inline wrappers conditionally on CONFIG_64BIT.

Arnd
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/