On Sat, Jun 28, 2014 at 08:53:19PM -0700, Joe Perches wrote: > On Sun, 2014-06-29 at 05:46 +0200, Stephan Mueller wrote: > > Am Sonntag, 29. Juni 2014, 12:24:02 schrieb Stephen Rothwell: > > > > Hi Stephen, > > > > > Hi Stephan, > > > > > > On Sat, 28 Jun 2014 22:01:46 +0200 Stephan Mueller <smueller@xxxxxxxxxx> > > wrote: > > > > @@ -1987,8 +1987,9 @@ static int __init drbg_init(void) > > > > > > > > if (ARRAY_SIZE(drbg_cores) * 2 > ARRAY_SIZE(drbg_algs)) { > > > > > > > > pr_info("DRBG: Cannot register all DRBG types" > > > > > > > > - "(slots needed: %lu, slots available: %lu)\n", > > > > - ARRAY_SIZE(drbg_cores) * 2, ARRAY_SIZE(drbg_algs)); > > > > + "(slots needed: %u, slots available: %u)\n", > > > > + (unsigned int)ARRAY_SIZE(drbg_cores) * 2, > > > > + (unsigned int)ARRAY_SIZE(drbg_algs)); > > > > > > Doesn't ARRAY_SIZE() always return a size_t? In which case surely we > > > need no casts, but need to us %zu in the format string. > > > > Unfortunately not at all. On my x86_64, I get the compiler warning that > > ARRAY_SIZE is a long unsigned int without the cast. > > This should fix that. > --- > include/linux/kernel.h | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/include/linux/kernel.h b/include/linux/kernel.h > index 6e3d497..58bc57d 100644 > --- a/include/linux/kernel.h > +++ b/include/linux/kernel.h > @@ -51,7 +51,8 @@ > #define PTR_ALIGN(p, a) ((typeof(p))ALIGN((unsigned long)(p), (a))) > #define IS_ALIGNED(x, a) (((x) & ((typeof(x))(a) - 1)) == 0) > > -#define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr)) > +#define ARRAY_SIZE(arr) \ > + (sizeof(arr) / sizeof((arr)[0]) + (size_t)__must_be_array(arr)) This change is a no-op isn't it? I think Stephen Rothwell's suggestion is correct. In linux-next this was changed to %lu which also works... Are there arches %zu and %lu are different? regards, dan carpenter -- To unsubscribe from this list: send the line "unsubscribe linux-crypto" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html