Commit c26ddc49 authored by Fabio M. De Francesco's avatar Fabio M. De Francesco Committed by Al Viro
Browse files

fs/sysv: Use dir_put_page() in sysv_rename()



Use the dir_put_page() helper in sysv_rename() instead of open-coding two
kunmap() + put_page().

Cc: Al Viro <viro@zeniv.linux.org.uk>
Suggested-by: default avatarIra Weiny <ira.weiny@intel.com>
Signed-off-by: default avatarFabio M. De Francesco <fmdefrancesco@gmail.com>
Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
parent 8dd6c7b2
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -28,7 +28,7 @@ const struct file_operations sysv_dir_operations = {
	.fsync		= generic_file_fsync,
};

static inline void dir_put_page(struct page *page)
inline void dir_put_page(struct page *page)
{
	kunmap(page);
	put_page(page);
+3 −6
Original line number Diff line number Diff line
@@ -250,13 +250,10 @@ static int sysv_rename(struct user_namespace *mnt_userns, struct inode *old_dir,
	return 0;

out_dir:
	if (dir_de) {
		kunmap(dir_page);
		put_page(dir_page);
	}
	if (dir_de)
		dir_put_page(dir_page);
out_old:
	kunmap(old_page);
	put_page(old_page);
	dir_put_page(old_page);
out:
	return err;
}
+1 −0
Original line number Diff line number Diff line
@@ -148,6 +148,7 @@ extern void sysv_destroy_icache(void);


/* dir.c */
extern void dir_put_page(struct page *page);
extern struct sysv_dir_entry *sysv_find_entry(struct dentry *, struct page **);
extern int sysv_add_link(struct dentry *, struct inode *);
extern int sysv_delete_entry(struct sysv_dir_entry *, struct page *);