summaryrefslogtreecommitdiff
path: root/fs/sysv/dir.c
diff options
context:
space:
mode:
authorAl Viro <viro@zeniv.linux.org.uk>2009-06-17 07:59:37 +0400
committerAl Viro <viro@zeniv.linux.org.uk>2009-06-17 08:36:37 +0400
commit5ac3455a843d2ca77333c954eea83aa4514c8199 (patch)
tree12c12ef1dd13a1bd9a8b61ec9af1f2cc3d845ba5 /fs/sysv/dir.c
parentcc46759a8c0ac4c6f13aa4b0f470305c05f600e1 (diff)
downloadlinux-5ac3455a843d2ca77333c954eea83aa4514c8199.tar.xz
get rid of BKL in fs/sysv
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'fs/sysv/dir.c')
-rw-r--r--fs/sysv/dir.c5
1 files changed, 1 insertions, 4 deletions
diff --git a/fs/sysv/dir.c b/fs/sysv/dir.c
index c7798079e644..4e50286a4cc3 100644
--- a/fs/sysv/dir.c
+++ b/fs/sysv/dir.c
@@ -15,13 +15,13 @@
#include <linux/pagemap.h>
#include <linux/highmem.h>
-#include <linux/smp_lock.h>
#include <linux/swap.h>
#include "sysv.h"
static int sysv_readdir(struct file *, void *, filldir_t);
const struct file_operations sysv_dir_operations = {
+ .llseek = generic_file_llseek,
.read = generic_read_dir,
.readdir = sysv_readdir,
.fsync = simple_fsync,
@@ -74,8 +74,6 @@ static int sysv_readdir(struct file * filp, void * dirent, filldir_t filldir)
unsigned long n = pos >> PAGE_CACHE_SHIFT;
unsigned long npages = dir_pages(inode);
- lock_kernel();
-
pos = (pos + SYSV_DIRSIZE-1) & ~(SYSV_DIRSIZE-1);
if (pos >= inode->i_size)
goto done;
@@ -113,7 +111,6 @@ static int sysv_readdir(struct file * filp, void * dirent, filldir_t filldir)
done:
filp->f_pos = ((loff_t)n << PAGE_CACHE_SHIFT) | offset;
- unlock_kernel();
return 0;
}