hpfs: remember free space
authorMikulas Patocka <mikulas@artax.karlin.mff.cuni.cz>
Tue, 28 Jan 2014 23:10:44 +0000 (00:10 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 6 Feb 2014 19:22:21 +0000 (11:22 -0800)
commit29b49c82199f85661963e52c8dea0e8563bc09e8
treed31a2ec2cc17cb8a41274a2ee3f57de296c861f2
parent940a96a5511e1b0a330e5b9b73956e3280f519de
hpfs: remember free space

commit 2cbe5c76fc5e38e9af4b709593146e4b8272b69e upstream.

Previously, hpfs scanned all bitmaps each time the user asked for free
space using statfs.  This patch changes it so that hpfs scans the
bitmaps only once, remembes the free space and on next invocation of
statfs it returns the value instantly.

New versions of wine are hammering on the statfs syscall very heavily,
making some games unplayable when they're stored on hpfs, with load
times in minutes.

This should be backported to the stable kernels because it fixes
user-visible problem (excessive level load times in wine).

Signed-off-by: Mikulas Patocka <mikulas@artax.karlin.mff.cuni.cz>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
fs/hpfs/alloc.c
fs/hpfs/hpfs_fn.h
fs/hpfs/super.c