Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit eb29d66d authored by Christoph Hellwig's avatar Christoph Hellwig Committed by Christoph Hellwig
Browse files

hfsplus: write up fsync for directories



fsync is supposed to not just work on regular files, but also on
directories.  Fortunately enough hfsplus_file_fsync works just fine
for directories, so we can just wire it up.

Signed-off-by: default avatarChristoph Hellwig <hch@tuxera.com>
parent 28146976
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -485,6 +485,7 @@ const struct inode_operations hfsplus_dir_inode_operations = {
};

const struct file_operations hfsplus_dir_operations = {
	.fsync		= hfsplus_file_fsync,
	.read		= generic_read_dir,
	.readdir	= hfsplus_readdir,
	.unlocked_ioctl = hfsplus_ioctl,
+1 −0
Original line number Diff line number Diff line
@@ -352,6 +352,7 @@ int hfsplus_cat_read_inode(struct inode *, struct hfs_find_data *);
int hfsplus_cat_write_inode(struct inode *);
struct inode *hfsplus_new_inode(struct super_block *, int);
void hfsplus_delete_inode(struct inode *);
int hfsplus_file_fsync(struct file *file, int datasync);

/* ioctl.c */
long hfsplus_ioctl(struct file *filp, unsigned int cmd, unsigned long arg);
+1 −1
Original line number Diff line number Diff line
@@ -302,7 +302,7 @@ static int hfsplus_setattr(struct dentry *dentry, struct iattr *attr)
	return 0;
}

static int hfsplus_file_fsync(struct file *file, int datasync)
int hfsplus_file_fsync(struct file *file, int datasync)
{
	struct inode *inode = file->f_mapping->host;
	struct hfsplus_sb_info *sbi = HFSPLUS_SB(inode->i_sb);