diff options
author | Mikulas Patocka <mikulas@artax.karlin.mff.cuni.cz> | 2014-01-29 00:10:44 +0100 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2014-02-02 16:24:07 -0800 |
commit | 2cbe5c76fc5e38e9af4b709593146e4b8272b69e (patch) | |
tree | de283447508e3d0ef3645f65f5adb5f9becdaf30 /fs/hpfs/hpfs_fn.h | |
parent | 602456bf169926d331246de9cc5593b962cea0dc (diff) | |
download | linux-2cbe5c76fc5e38e9af4b709593146e4b8272b69e.tar.gz linux-2cbe5c76fc5e38e9af4b709593146e4b8272b69e.tar.bz2 linux-2cbe5c76fc5e38e9af4b709593146e4b8272b69e.zip |
hpfs: remember free space
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>
Cc: stable@vger.kernel.org
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'fs/hpfs/hpfs_fn.h')
-rw-r--r-- | fs/hpfs/hpfs_fn.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/hpfs/hpfs_fn.h b/fs/hpfs/hpfs_fn.h index 6797bf80f6e2..3ba49c080e42 100644 --- a/fs/hpfs/hpfs_fn.h +++ b/fs/hpfs/hpfs_fn.h @@ -312,7 +312,7 @@ static inline struct hpfs_sb_info *hpfs_sb(struct super_block *sb) __printf(2, 3) void hpfs_error(struct super_block *, const char *, ...); int hpfs_stop_cycles(struct super_block *, int, int *, int *, char *); -unsigned hpfs_count_one_bitmap(struct super_block *, secno); +unsigned hpfs_get_free_dnodes(struct super_block *); /* * local time (HPFS) to GMT (Unix) |