Btrfs: Do not truncate sector_t on 32-bit with CONFIG_LBDAF=y
authorGeert Uytterhoeven <geert@linux-m68k.org>
Tue, 20 Aug 2013 11:20:17 +0000 (13:20 +0200)
committerChris Mason <chris.mason@fusionio.com>
Sun, 1 Sep 2013 12:16:18 +0000 (08:16 -0400)
sector_t may be either "u64" (always 64 bit) or "unsigned long" (32 or 64
bit).  Casting it to "unsigned long" will truncate it on 32-bit platforms
where CONFIG_LBDAF=y.

Cast to "unsigned long long" and format using "ll" instead.

Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Josef Bacik <jbacik@fusionio.com>
Signed-off-by: Chris Mason <chris.mason@fusionio.com>
fs/btrfs/check-integrity.c

index 3c6379987a97ed5729c782222f9bea09174ed7bb..45bc95570c7f5897525591c0dac4ab6dd1c306f6 100644 (file)
@@ -2958,9 +2958,10 @@ int btrfsic_submit_bh(int rw, struct buffer_head *bh)
                if (dev_state->state->print_mask &
                    BTRFSIC_PRINT_MASK_SUBMIT_BIO_BH)
                        printk(KERN_INFO
-                              "submit_bh(rw=0x%x, blocknr=%lu (bytenr %llu),"
+                              "submit_bh(rw=0x%x, blocknr=%llu (bytenr %llu),"
                               " size=%lu, data=%p, bdev=%p)\n",
-                              rw, (unsigned long)bh->b_blocknr, dev_bytenr,
+                              rw, (unsigned long long)bh->b_blocknr,
+                              dev_bytenr,
                               (unsigned long)bh->b_size, bh->b_data,
                               bh->b_bdev);
                btrfsic_process_written_block(dev_state, dev_bytenr,
@@ -3027,9 +3028,10 @@ void btrfsic_submit_bio(int rw, struct bio *bio)
                    BTRFSIC_PRINT_MASK_SUBMIT_BIO_BH)
                        printk(KERN_INFO
                               "submit_bio(rw=0x%x, bi_vcnt=%u,"
-                              " bi_sector=%lu (bytenr %llu), bi_bdev=%p)\n",
-                              rw, bio->bi_vcnt, (unsigned long)bio->bi_sector,
-                              dev_bytenr, bio->bi_bdev);
+                              " bi_sector=%llu (bytenr %llu), bi_bdev=%p)\n",
+                              rw, bio->bi_vcnt,
+                              (unsigned long long)bio->bi_sector, dev_bytenr,
+                              bio->bi_bdev);
 
                mapped_datav = kmalloc(sizeof(*mapped_datav) * bio->bi_vcnt,
                                       GFP_NOFS);