udf: atomically read inode size
[sfrench/cifs-2.6.git] / fs / udf / lowlevel.c
index 6ad5a453af97a60a9adfd12f38e788e887f8b417..5c7ec121990dac4368ec5cc5109b57d5da4424c1 100644 (file)
@@ -58,7 +58,7 @@ unsigned long udf_get_last_block(struct super_block *sb)
         */
        if (ioctl_by_bdev(bdev, CDROM_LAST_WRITTEN, (unsigned long) &lblock) ||
            lblock == 0)
-               lblock = bdev->bd_inode->i_size >> sb->s_blocksize_bits;
+               lblock = i_size_read(bdev->bd_inode) >> sb->s_blocksize_bits;
 
        if (lblock)
                return lblock - 1;