nfsd4: use common rpc_cred for all callbacks
[safe/jmp/linux-2.6] / fs / minix / dir.c
index f704338..d407e7a 100644 (file)
@@ -11,7 +11,6 @@
 #include "minix.h"
 #include <linux/buffer_head.h>
 #include <linux/highmem.h>
-#include <linux/smp_lock.h>
 #include <linux/swap.h>
 
 typedef struct minix_dir_entry minix_dirent;
@@ -20,9 +19,10 @@ typedef struct minix3_dir_entry minix3_dirent;
 static int minix_readdir(struct file *, void *, filldir_t);
 
 const struct file_operations minix_dir_operations = {
+       .llseek         = generic_file_llseek,
        .read           = generic_read_dir,
        .readdir        = minix_readdir,
-       .fsync          = minix_sync_file,
+       .fsync          = simple_fsync,
 };
 
 static inline void dir_put_page(struct page *page)
@@ -102,8 +102,6 @@ static int minix_readdir(struct file * filp, void * dirent, filldir_t filldir)
        char *name;
        __u32 inumber;
 
-       lock_kernel();
-
        pos = (pos + chunk_size-1) & ~(chunk_size-1);
        if (pos >= inode->i_size)
                goto done;
@@ -146,7 +144,6 @@ static int minix_readdir(struct file * filp, void * dirent, filldir_t filldir)
 
 done:
        filp->f_pos = (n << PAGE_CACHE_SHIFT) | offset;
-       unlock_kernel();
        return 0;
 }
 
@@ -280,7 +277,7 @@ int minix_add_link(struct dentry *dentry, struct inode *inode)
        return -EINVAL;
 
 got_it:
-       pos = (page->index >> PAGE_CACHE_SHIFT) + p - (char*)page_address(page);
+       pos = page_offset(page) + p - (char *)page_address(page);
        err = __minix_write_begin(NULL, page->mapping, pos, sbi->s_dirsize,
                                        AOP_FLAG_UNINTERRUPTIBLE, &page, NULL);
        if (err)