[-mm patch] fix getblk_slow "integer constant is too large" warning

Frederik Deweerdt
2007-11-06T13:18:15Z

On Tue, Nov 06, 2007 at 02:33:53AM -0800, akpm@linux-foundation.org wrote:
> The mm snapshot broken-out-2007-11-06-02-32.tar.gz has been uploaded to
>
> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/mm/broken-out-2007-11-06-02-32.tar.gz
>
> It contains the following patches against 2.6.24-rc1:
>
[...]
> getblk-handle-2tb-devices.patch
[...]
0xffffffff00000000 is unsigned long long on 32 bits
fs/buffer.c: In function '__getblk_slow':
fs/buffer.c:1126: warning: integer constant is too large for 'unsigned long' type

Regards,
Frederik

Signed-off-by: Frederik Deweerdt <frederik.deweerdt@gmail.com>

diff --git a/fs/buffer.c b/fs/buffer.c
index ca713df..795fe86 100644
--- a/fs/buffer.c
+++ b/fs/buffer.c
@@ -1123,7 +1123,7 @@ __getblk_slow(struct block_device *bdev, sector_t block, int size)

#if (BITS_PER_LONG == 32) && defined(CONFIG_LBD)
if ((block >> (PAGE_CACHE_SHIFT - bdev->bd_inode->i_blkbits)) &
- 0xffffffff00000000UL) {
+ 0xffffffff00000000ULL) {
/*
* We'll fail because the block is outside the range
* which a 32-bit pagecache index can address