X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=fs%2Freiserfs%2Fdir.c;h=d1514a9b0514ecb6d8eaa15fdeba7ef2c38778bd;hb=6a77f38946aaee1cd85eeec6cf4229b204c15071;hp=887fab38a81c0b1692255472558076b88e60f51d;hpb=87fc8d1bb10cd459024a742c6a10961fefcef18f;p=linux-2.6.git diff --git a/fs/reiserfs/dir.c b/fs/reiserfs/dir.c index 887fab38a..d1514a9b0 100644 --- a/fs/reiserfs/dir.c +++ b/fs/reiserfs/dir.c @@ -12,10 +12,10 @@ #include #include -extern struct key MIN_KEY; +extern struct reiserfs_key MIN_KEY; static int reiserfs_readdir (struct file *, void *, filldir_t); -int reiserfs_dir_fsync(struct file *filp, struct dentry *dentry, int datasync) ; +static int reiserfs_dir_fsync(struct file *filp, struct dentry *dentry, int datasync) ; struct file_operations reiserfs_dir_operations = { .read = generic_read_dir, @@ -24,12 +24,15 @@ struct file_operations reiserfs_dir_operations = { .ioctl = reiserfs_ioctl, }; -int reiserfs_dir_fsync(struct file *filp, struct dentry *dentry, int datasync) { +static int reiserfs_dir_fsync(struct file *filp, struct dentry *dentry, int datasync) { struct inode *inode = dentry->d_inode; + int err; reiserfs_write_lock(inode->i_sb); - reiserfs_commit_for_inode(inode) ; + err = reiserfs_commit_for_inode(inode) ; reiserfs_write_unlock(inode->i_sb) ; - return 0 ; + if (err < 0) + return err; + return 0; } @@ -43,7 +46,7 @@ static int reiserfs_readdir (struct file * filp, void * dirent, filldir_t filldi INITIALIZE_PATH (path_to_entry); struct buffer_head * bh; int item_num, entry_num; - const struct key * rkey; + const struct reiserfs_key * rkey; struct item_head * ih, tmp_ih; int search_res; char * local_buf;