aboutsummaryrefslogtreecommitdiffstats
path: root/block
diff options
context:
space:
mode:
authorTakashi Sato <sho@tnes.nec.co.jp>2006-03-26 01:37:51 -0800
committerLinus Torvalds <torvalds@g5.osdl.org>2006-03-26 08:57:00 -0800
commitabcb6c9fd13fc2ad7757b818924dc8109a0e3775 (patch)
tree39a1d5660d2bd92cffa8eef09d489b241e4072a1 /block
parent[PATCH] mempool: use mempool_create_slab_pool() (diff)
downloadlinux-dev-abcb6c9fd13fc2ad7757b818924dc8109a0e3775.tar.xz
linux-dev-abcb6c9fd13fc2ad7757b818924dc8109a0e3775.zip
[PATCH] 2TB files: st_blocks is invalid when calling stat64
This patch series fixes the following problems on 32 bits architecture. o stat64 returns the lower 32 bits of blocks, although userland st_blocks has 64 bits, because i_blocks has only 32 bits. The ioctl with FIOQSIZE has the same problem. o As Dave Kleikamp said, making >2TB file on JFS results in writing an invalid block number to disk inode. The cause is the same as above too. o In generic quota code dquot_transfer(), the file usage is calculated from i_blocks via inode_get_bytes(). If the file is over 2TB, the change of usage is less than expected. The cause is the same as above too. o As Trond Myklebust said, statfs64's entries related to blocks are invalid on statfs64 for a network filesystem which has more than 2^32-1 blocks with CONFIG_LBD disabled. [PATCH 3/3] We made patches to fix problems that occur when handling a large filesystem and a large file. It was discussed on the mails titled "stat64 for over 2TB file returned invalid st_blocks". Signed-off-by: Takashi Sato <sho@tnes.nec.co.jp> Cc: Dave Kleikamp <shaggy@austin.ibm.com> Cc: Jan Kara <jack@ucw.cz> Cc: Trond Myklebust <trond.myklebust@fys.uio.no> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'block')
0 files changed, 0 insertions, 0 deletions