vfs: make get_sb_pseudo set s_maxbytes to value that can be cast to signed
authorJeff Layton <[email protected]>
Tue, 18 Aug 2009 21:11:08 +0000 (14:11 -0700)
committerLinus Torvalds <[email protected]>
Tue, 18 Aug 2009 23:31:12 +0000 (16:31 -0700)
get_sb_pseudo sets s_maxbytes to ~0ULL which becomes negative when cast
to a signed value.  Fix it to use MAX_LFS_FILESIZE which casts properly
to a positive signed value.

Signed-off-by: Jeff Layton <[email protected]>
Reviewed-by: Johannes Weiner <[email protected]>
Acked-by: Steve French <[email protected]>
Reviewed-by: Christoph Hellwig <[email protected]>
Cc: Al Viro <[email protected]>
Cc: Robert Love <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
fs/libfs.c

index ddfa89948c3f1e6cbf553f213883cb2ca2a4ed5e..dcec3d3ea64f944cd51d36f35b4150279c5659f2 100644 (file)
@@ -217,7 +217,7 @@ int get_sb_pseudo(struct file_system_type *fs_type, char *name,
                return PTR_ERR(s);
 
        s->s_flags = MS_NOUSER;
-       s->s_maxbytes = ~0ULL;
+       s->s_maxbytes = MAX_LFS_FILESIZE;
        s->s_blocksize = PAGE_SIZE;
        s->s_blocksize_bits = PAGE_SHIFT;
        s->s_magic = magic;