summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRené Scharfe <l.s.r@web.de>2003-12-12 19:45:10 -0800
committerLinus Torvalds <torvalds@home.osdl.org>2003-12-12 19:45:10 -0800
commit14c5d2d2e97f75e744fd7b62c8e5bd826c1402c7 (patch)
treed527b0c3943b189569e84eb2ec8a1ec8b83eaea7
parent5965168e8e5392eded4c40eaf0c7e96be2346529 (diff)
[PATCH] HPFS: missing lock_kernel() in hpfs_readdir()
In 2.5.x, the BKL was pushed from vfs_readdir() into the filesystem specific functions. But only the unlock_kernel() made it into the HPFS code, lock_kernel() got lost on the way. This rendered the filesystem unusable. This adds the missing lock_kernel(). It's been tested by Timo Maier who also reported the problem earlier today.
-rw-r--r--fs/hpfs/dir.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/fs/hpfs/dir.c b/fs/hpfs/dir.c
index 9f0a0d3b2382..92057d8c3859 100644
--- a/fs/hpfs/dir.c
+++ b/fs/hpfs/dir.c
@@ -65,6 +65,8 @@ int hpfs_readdir(struct file *filp, void *dirent, filldir_t filldir)
int c1, c2 = 0;
int ret = 0;
+ lock_kernel();
+
if (hpfs_sb(inode->i_sb)->sb_chk) {
if (hpfs_chk_sectors(inode->i_sb, inode->i_ino, 1, "dir_fnode")) {
ret = -EFSERROR;