[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <4E6FD232.6030000@linux.vnet.ibm.com>
Date: Tue, 13 Sep 2011 16:59:14 -0500
From: Seth Jennings <sjenning@...ux.vnet.ibm.com>
To: Dan Magenheimer <dan.magenheimer@...cle.com>
CC: linux-kernel@...r.kernel.org, linux-mm@...ck.org, jeremy@...p.org,
hughd@...gle.com, ngupta@...are.org,
Konrad Wilk <konrad.wilk@...cle.com>, JBeulich@...ell.com,
Kurt Hackel <kurt.hackel@...cle.com>, npiggin@...nel.dk,
akpm@...ux-foundation.org, riel@...hat.com, hannes@...xchg.org,
matthew@....cx, Chris Mason <chris.mason@...cle.com>,
kamezawa.hiroyu@...fujitsu.com, jackdachef@...il.com,
cyclonusj@...il.com, levinsasha928@...il.com
Subject: Re: [PATCH V9 3/6] mm: frontswap: core frontswap functionality
On 09/13/2011 03:50 PM, Dan Magenheimer wrote:
>> From: Seth Jennings [mailto:sjenning@...ux.vnet.ibm.com]
>> Subject: Re: [PATCH V9 3/6] mm: frontswap: core frontswap functionality
>>
>> Hey Dan,
>>
>> I get the following compile warnings:
>>
>> mm/frontswap.c: In function 'init_frontswap':
>> mm/frontswap.c:264:5: warning: passing argument 4 of 'debugfs_create_size_t' from incompatible pointer
>> type
>> include/linux/debugfs.h:68:16: note: expected 'size_t *' but argument is of type 'long unsigned int *'
>> mm/frontswap.c:266:5: warning: passing argument 4 of 'debugfs_create_size_t' from incompatible pointer
>> type
>> include/linux/debugfs.h:68:16: note: expected 'size_t *' but argument is of type 'long unsigned int *'
>> mm/frontswap.c:268:5: warning: passing argument 4 of 'debugfs_create_size_t' from incompatible pointer
>> type
>> include/linux/debugfs.h:68:16: note: expected 'size_t *' but argument is of type 'long unsigned int *'
>> mm/frontswap.c:270:5: warning: passing argument 4 of 'debugfs_create_size_t' from incompatible pointer
>> type
>> include/linux/debugfs.h:68:16: note: expected 'size_t *' but argument is of type 'long unsigned int *'
>
> Thanks for checking on 32-bit!
>
>> size_t is platform dependent but is generally "unsigned int"
>> for 32-bit and "unsigned long" for 64-bit.
>>
>> I think just typecasting these to size_t * would fix it.
>
> Actually, I think the best fix is likely to change the variables
> and the debugfs calls to u64 since even on 32-bit, the
> counters may exceed 2**32 on a heavily-loaded long-running
> system.
>
That was going to be my other suggestion :) I thought I'd suggest
the route that didn't involve you having to retype the counters. But
the u64 solution is cleaner and, as Andrew pointed out, less risky.
> I'll give it a day or two to see if anyone else has any feedback
> before I fix this for V10.
>
> Dan
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists