Skip to content

Commit 7ea8085

Browse files
Christoph HellwigAl Viro
authored andcommitted
drop unused dentry argument to ->fsync
Signed-off-by: Christoph Hellwig <[email protected]> Signed-off-by: Al Viro <[email protected]>
1 parent cc967be commit 7ea8085

File tree

69 files changed

+129
-157
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

69 files changed

+129
-157
lines changed

Documentation/filesystems/Locking

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -380,7 +380,7 @@ prototypes:
380380
int (*open) (struct inode *, struct file *);
381381
int (*flush) (struct file *);
382382
int (*release) (struct inode *, struct file *);
383-
int (*fsync) (struct file *, struct dentry *, int datasync);
383+
int (*fsync) (struct file *, int datasync);
384384
int (*aio_fsync) (struct kiocb *, int datasync);
385385
int (*fasync) (int, struct file *, int);
386386
int (*lock) (struct file *, int, struct file_lock *);

Documentation/filesystems/vfs.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -729,7 +729,7 @@ struct file_operations {
729729
int (*open) (struct inode *, struct file *);
730730
int (*flush) (struct file *);
731731
int (*release) (struct inode *, struct file *);
732-
int (*fsync) (struct file *, struct dentry *, int datasync);
732+
int (*fsync) (struct file *, int datasync);
733733
int (*aio_fsync) (struct kiocb *, int datasync);
734734
int (*fasync) (int, struct file *, int);
735735
int (*lock) (struct file *, int, struct file_lock *);

arch/powerpc/platforms/cell/spufs/file.c

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1849,8 +1849,7 @@ static int spufs_mfc_flush(struct file *file, fl_owner_t id)
18491849
return ret;
18501850
}
18511851

1852-
static int spufs_mfc_fsync(struct file *file, struct dentry *dentry,
1853-
int datasync)
1852+
static int spufs_mfc_fsync(struct file *file, int datasync)
18541853
{
18551854
return spufs_mfc_flush(file, NULL);
18561855
}

drivers/char/ps3flash.c

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -305,8 +305,7 @@ static int ps3flash_flush(struct file *file, fl_owner_t id)
305305
return ps3flash_writeback(ps3flash_dev);
306306
}
307307

308-
static int ps3flash_fsync(struct file *file, struct dentry *dentry,
309-
int datasync)
308+
static int ps3flash_fsync(struct file *file, int datasync)
310309
{
311310
return ps3flash_writeback(ps3flash_dev);
312311
}

drivers/mtd/ubi/cdev.c

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -189,8 +189,7 @@ static loff_t vol_cdev_llseek(struct file *file, loff_t offset, int origin)
189189
return new_offset;
190190
}
191191

192-
static int vol_cdev_fsync(struct file *file, struct dentry *dentry,
193-
int datasync)
192+
static int vol_cdev_fsync(struct file *file, int datasync)
194193
{
195194
struct ubi_volume_desc *desc = file->private_data;
196195
struct ubi_device *ubi = desc->vol->ubi;

drivers/staging/pohmelfs/inode.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -880,7 +880,7 @@ static struct inode *pohmelfs_alloc_inode(struct super_block *sb)
880880
/*
881881
* We want fsync() to work on POHMELFS.
882882
*/
883-
static int pohmelfs_fsync(struct file *file, struct dentry *dentry, int datasync)
883+
static int pohmelfs_fsync(struct file *file, int datasync)
884884
{
885885
struct inode *inode = file->f_mapping->host;
886886
struct writeback_control wbc = {

drivers/usb/gadget/printer.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -794,7 +794,7 @@ printer_write(struct file *fd, const char __user *buf, size_t len, loff_t *ptr)
794794
}
795795

796796
static int
797-
printer_fsync(struct file *fd, struct dentry *dentry, int datasync)
797+
printer_fsync(struct file *fd, int datasync)
798798
{
799799
struct printer_dev *dev = fd->private_data;
800800
unsigned long flags;

drivers/video/fb_defio.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@ static int fb_deferred_io_fault(struct vm_area_struct *vma,
6666
return 0;
6767
}
6868

69-
int fb_deferred_io_fsync(struct file *file, struct dentry *dentry, int datasync)
69+
int fb_deferred_io_fsync(struct file *file, int datasync)
7070
{
7171
struct fb_info *info = file->private_data;
7272

fs/9p/vfs_file.c

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -257,15 +257,13 @@ v9fs_file_write(struct file *filp, const char __user * data,
257257
return total;
258258
}
259259

260-
static int v9fs_file_fsync(struct file *filp, struct dentry *dentry,
261-
int datasync)
260+
static int v9fs_file_fsync(struct file *filp, int datasync)
262261
{
263262
struct p9_fid *fid;
264263
struct p9_wstat wstat;
265264
int retval;
266265

267-
P9_DPRINTK(P9_DEBUG_VFS, "filp %p dentry %p datasync %x\n", filp,
268-
dentry, datasync);
266+
P9_DPRINTK(P9_DEBUG_VFS, "filp %p datasync %x\n", filp, datasync);
269267

270268
fid = filp->private_data;
271269
v9fs_blank_wstat(&wstat);

fs/affs/affs.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -183,7 +183,7 @@ extern int affs_add_entry(struct inode *dir, struct inode *inode, struct dent
183183

184184
void affs_free_prealloc(struct inode *inode);
185185
extern void affs_truncate(struct inode *);
186-
int affs_file_fsync(struct file *, struct dentry *, int);
186+
int affs_file_fsync(struct file *, int);
187187

188188
/* dir.c */
189189

fs/affs/file.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -916,9 +916,9 @@ affs_truncate(struct inode *inode)
916916
affs_free_prealloc(inode);
917917
}
918918

919-
int affs_file_fsync(struct file *filp, struct dentry *dentry, int datasync)
919+
int affs_file_fsync(struct file *filp, int datasync)
920920
{
921-
struct inode * inode = dentry->d_inode;
921+
struct inode *inode = filp->f_mapping->host;
922922
int ret, err;
923923

924924
ret = write_inode_now(inode, 0);

fs/afs/internal.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -740,7 +740,7 @@ extern void afs_pages_written_back(struct afs_vnode *, struct afs_call *);
740740
extern ssize_t afs_file_write(struct kiocb *, const struct iovec *,
741741
unsigned long, loff_t);
742742
extern int afs_writeback_all(struct afs_vnode *);
743-
extern int afs_fsync(struct file *, struct dentry *, int);
743+
extern int afs_fsync(struct file *, int);
744744

745745

746746
/*****************************************************************************/

fs/afs/write.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -701,8 +701,9 @@ int afs_writeback_all(struct afs_vnode *vnode)
701701
* - the return status from this call provides a reliable indication of
702702
* whether any write errors occurred for this process.
703703
*/
704-
int afs_fsync(struct file *file, struct dentry *dentry, int datasync)
704+
int afs_fsync(struct file *file, int datasync)
705705
{
706+
struct dentry *dentry = file->f_path.dentry;
706707
struct afs_writeback *wb, *xwb;
707708
struct afs_vnode *vnode = AFS_FS_I(dentry->d_inode);
708709
int ret;

fs/bad_inode.c

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -93,8 +93,7 @@ static int bad_file_release(struct inode *inode, struct file *filp)
9393
return -EIO;
9494
}
9595

96-
static int bad_file_fsync(struct file *file, struct dentry *dentry,
97-
int datasync)
96+
static int bad_file_fsync(struct file *file, int datasync)
9897
{
9998
return -EIO;
10099
}

fs/block_dev.c

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -358,12 +358,7 @@ static loff_t block_llseek(struct file *file, loff_t offset, int origin)
358358
return retval;
359359
}
360360

361-
/*
362-
* Filp is never NULL; the only case when ->fsync() is called with
363-
* NULL first argument is nfsd_sync_dir() and that's not a directory.
364-
*/
365-
366-
int blkdev_fsync(struct file *filp, struct dentry *dentry, int datasync)
361+
int blkdev_fsync(struct file *filp, int datasync)
367362
{
368363
struct inode *bd_inode = filp->f_mapping->host;
369364
struct block_device *bdev = I_BDEV(bd_inode);

fs/btrfs/ctree.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2434,7 +2434,7 @@ void btrfs_update_iflags(struct inode *inode);
24342434
void btrfs_inherit_iflags(struct inode *inode, struct inode *dir);
24352435

24362436
/* file.c */
2437-
int btrfs_sync_file(struct file *file, struct dentry *dentry, int datasync);
2437+
int btrfs_sync_file(struct file *file, int datasync);
24382438
int btrfs_drop_extent_cache(struct inode *inode, u64 start, u64 end,
24392439
int skip_pinned);
24402440
int btrfs_check_file(struct btrfs_root *root, struct inode *inode);

fs/btrfs/file.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1101,8 +1101,9 @@ int btrfs_release_file(struct inode *inode, struct file *filp)
11011101
* important optimization for directories because holding the mutex prevents
11021102
* new operations on the dir while we write to disk.
11031103
*/
1104-
int btrfs_sync_file(struct file *file, struct dentry *dentry, int datasync)
1104+
int btrfs_sync_file(struct file *file, int datasync)
11051105
{
1106+
struct dentry *dentry = file->f_path.dentry;
11061107
struct inode *inode = dentry->d_inode;
11071108
struct btrfs_root *root = BTRFS_I(inode)->root;
11081109
int ret = 0;

fs/ceph/caps.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1776,9 +1776,9 @@ static void sync_write_wait(struct inode *inode)
17761776
spin_unlock(&ci->i_unsafe_lock);
17771777
}
17781778

1779-
int ceph_fsync(struct file *file, struct dentry *dentry, int datasync)
1779+
int ceph_fsync(struct file *file, int datasync)
17801780
{
1781-
struct inode *inode = dentry->d_inode;
1781+
struct inode *inode = file->f_mapping->host;
17821782
struct ceph_inode_info *ci = ceph_inode(inode);
17831783
unsigned flush_tid;
17841784
int ret;

fs/ceph/dir.c

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1107,10 +1107,9 @@ static ssize_t ceph_read_dir(struct file *file, char __user *buf, size_t size,
11071107
* an fsync() on a dir will wait for any uncommitted directory
11081108
* operations to commit.
11091109
*/
1110-
static int ceph_dir_fsync(struct file *file, struct dentry *dentry,
1111-
int datasync)
1110+
static int ceph_dir_fsync(struct file *file, int datasync)
11121111
{
1113-
struct inode *inode = dentry->d_inode;
1112+
struct inode *inode = file->f_path.dentry->d_inode;
11141113
struct ceph_inode_info *ci = ceph_inode(inode);
11151114
struct list_head *head = &ci->i_unsafe_dirops;
11161115
struct ceph_mds_request *req;

fs/ceph/super.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -811,7 +811,7 @@ extern void ceph_put_cap(struct ceph_cap *cap);
811811

812812
extern void ceph_queue_caps_release(struct inode *inode);
813813
extern int ceph_write_inode(struct inode *inode, struct writeback_control *wbc);
814-
extern int ceph_fsync(struct file *file, struct dentry *dentry, int datasync);
814+
extern int ceph_fsync(struct file *file, int datasync);
815815
extern void ceph_kick_flushing_caps(struct ceph_mds_client *mdsc,
816816
struct ceph_mds_session *session);
817817
extern int ceph_get_cap_mds(struct inode *inode);

fs/cifs/cifsfs.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,7 @@ extern ssize_t cifs_user_read(struct file *file, char __user *read_data,
8484
extern ssize_t cifs_user_write(struct file *file, const char __user *write_data,
8585
size_t write_size, loff_t *poffset);
8686
extern int cifs_lock(struct file *, int, struct file_lock *);
87-
extern int cifs_fsync(struct file *, struct dentry *, int);
87+
extern int cifs_fsync(struct file *, int);
8888
extern int cifs_flush(struct file *, fl_owner_t id);
8989
extern int cifs_file_mmap(struct file * , struct vm_area_struct *);
9090
extern const struct file_operations cifs_dir_ops;

fs/cifs/file.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1676,7 +1676,7 @@ static int cifs_write_end(struct file *file, struct address_space *mapping,
16761676
return rc;
16771677
}
16781678

1679-
int cifs_fsync(struct file *file, struct dentry *dentry, int datasync)
1679+
int cifs_fsync(struct file *file, int datasync)
16801680
{
16811681
int xid;
16821682
int rc = 0;
@@ -1688,7 +1688,7 @@ int cifs_fsync(struct file *file, struct dentry *dentry, int datasync)
16881688
xid = GetXid();
16891689

16901690
cFYI(1, "Sync file - name: %s datasync: 0x%x",
1691-
dentry->d_name.name, datasync);
1691+
file->f_path.dentry->d_name.name, datasync);
16921692

16931693
rc = filemap_write_and_wait(inode->i_mapping);
16941694
if (rc == 0) {

fs/coda/coda_int.h

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,7 @@ extern int coda_fake_statfs;
1111

1212
void coda_destroy_inodecache(void);
1313
int coda_init_inodecache(void);
14-
int coda_fsync(struct file *coda_file, struct dentry *coda_dentry,
15-
int datasync);
14+
int coda_fsync(struct file *coda_file, int datasync);
1615
void coda_sysctl_init(void);
1716
void coda_sysctl_clean(void);
1817

fs/coda/file.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -202,10 +202,10 @@ int coda_release(struct inode *coda_inode, struct file *coda_file)
202202
return 0;
203203
}
204204

205-
int coda_fsync(struct file *coda_file, struct dentry *coda_dentry, int datasync)
205+
int coda_fsync(struct file *coda_file, int datasync)
206206
{
207207
struct file *host_file;
208-
struct inode *coda_inode = coda_dentry->d_inode;
208+
struct inode *coda_inode = coda_file->f_path.dentry->d_inode;
209209
struct coda_file_info *cfi;
210210
int err = 0;
211211

fs/ecryptfs/file.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -274,7 +274,7 @@ static int ecryptfs_release(struct inode *inode, struct file *file)
274274
}
275275

276276
static int
277-
ecryptfs_fsync(struct file *file, struct dentry *dentry, int datasync)
277+
ecryptfs_fsync(struct file *file, int datasync)
278278
{
279279
return vfs_fsync(ecryptfs_file_to_lower(file), datasync);
280280
}

fs/exofs/file.c

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -40,12 +40,11 @@ static int exofs_release_file(struct inode *inode, struct file *filp)
4040
return 0;
4141
}
4242

43-
static int exofs_file_fsync(struct file *filp, struct dentry *dentry,
44-
int datasync)
43+
static int exofs_file_fsync(struct file *filp, int datasync)
4544
{
4645
int ret;
4746
struct address_space *mapping = filp->f_mapping;
48-
struct inode *inode = dentry->d_inode;
47+
struct inode *inode = mapping->host;
4948
struct super_block *sb;
5049

5150
ret = filemap_write_and_wait(mapping);
@@ -66,7 +65,7 @@ static int exofs_file_fsync(struct file *filp, struct dentry *dentry,
6665

6766
static int exofs_flush(struct file *file, fl_owner_t id)
6867
{
69-
exofs_file_fsync(file, file->f_path.dentry, 1);
68+
exofs_file_fsync(file, 1);
7069
/* TODO: Flush the OSD target */
7170
return 0;
7271
}

fs/ext2/ext2.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -155,7 +155,7 @@ extern void ext2_write_super (struct super_block *);
155155
extern const struct file_operations ext2_dir_operations;
156156

157157
/* file.c */
158-
extern int ext2_fsync(struct file *file, struct dentry *dentry, int datasync);
158+
extern int ext2_fsync(struct file *file, int datasync);
159159
extern const struct inode_operations ext2_file_inode_operations;
160160
extern const struct file_operations ext2_file_operations;
161161
extern const struct file_operations ext2_xip_file_operations;

fs/ext2/file.c

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -40,13 +40,13 @@ static int ext2_release_file (struct inode * inode, struct file * filp)
4040
return 0;
4141
}
4242

43-
int ext2_fsync(struct file *file, struct dentry *dentry, int datasync)
43+
int ext2_fsync(struct file *file, int datasync)
4444
{
4545
int ret;
46-
struct super_block *sb = dentry->d_inode->i_sb;
46+
struct super_block *sb = file->f_mapping->host->i_sb;
4747
struct address_space *mapping = sb->s_bdev->bd_inode->i_mapping;
4848

49-
ret = simple_fsync(file, dentry, datasync);
49+
ret = simple_fsync(file, datasync);
5050
if (ret == -EIO || test_and_clear_bit(AS_EIO, &mapping->flags)) {
5151
/* We don't really know where the IO error happened... */
5252
ext2_error(sb, __func__,

fs/ext3/fsync.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -43,9 +43,9 @@
4343
* inode to disk.
4444
*/
4545

46-
int ext3_sync_file(struct file * file, struct dentry *dentry, int datasync)
46+
int ext3_sync_file(struct file *file, int datasync)
4747
{
48-
struct inode *inode = dentry->d_inode;
48+
struct inode *inode = file->f_mapping->host;
4949
struct ext3_inode_info *ei = EXT3_I(inode);
5050
journal_t *journal = EXT3_SB(inode->i_sb)->s_journal;
5151
int ret, needs_barrier = 0;

fs/ext4/ext4.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1519,7 +1519,7 @@ extern int ext4_htree_store_dirent(struct file *dir_file, __u32 hash,
15191519
extern void ext4_htree_free_dir_info(struct dir_private_info *p);
15201520

15211521
/* fsync.c */
1522-
extern int ext4_sync_file(struct file *, struct dentry *, int);
1522+
extern int ext4_sync_file(struct file *, int);
15231523

15241524
/* hash.c */
15251525
extern int ext4fs_dirhash(const char *name, int len, struct

fs/ext4/fsync.c

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -71,17 +71,17 @@ static void ext4_sync_parent(struct inode *inode)
7171
* i_mutex lock is held when entering and exiting this function
7272
*/
7373

74-
int ext4_sync_file(struct file *file, struct dentry *dentry, int datasync)
74+
int ext4_sync_file(struct file *file, int datasync)
7575
{
76-
struct inode *inode = dentry->d_inode;
76+
struct inode *inode = file->f_mapping->host;
7777
struct ext4_inode_info *ei = EXT4_I(inode);
7878
journal_t *journal = EXT4_SB(inode->i_sb)->s_journal;
7979
int ret;
8080
tid_t commit_tid;
8181

8282
J_ASSERT(ext4_journal_current_handle() == NULL);
8383

84-
trace_ext4_sync_file(file, dentry, datasync);
84+
trace_ext4_sync_file(file, datasync);
8585

8686
if (inode->i_sb->s_flags & MS_RDONLY)
8787
return 0;
@@ -91,7 +91,7 @@ int ext4_sync_file(struct file *file, struct dentry *dentry, int datasync)
9191
return ret;
9292

9393
if (!journal) {
94-
ret = simple_fsync(file, dentry, datasync);
94+
ret = simple_fsync(file, datasync);
9595
if (!ret && !list_empty(&inode->i_dentry))
9696
ext4_sync_parent(inode);
9797
return ret;

fs/fat/fat.h

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -309,8 +309,7 @@ extern int fat_setattr(struct dentry * dentry, struct iattr * attr);
309309
extern void fat_truncate(struct inode *inode);
310310
extern int fat_getattr(struct vfsmount *mnt, struct dentry *dentry,
311311
struct kstat *stat);
312-
extern int fat_file_fsync(struct file *file, struct dentry *dentry,
313-
int datasync);
312+
extern int fat_file_fsync(struct file *file, int datasync);
314313

315314
/* fat/inode.c */
316315
extern void fat_attach(struct inode *inode, loff_t i_pos);

fs/fat/file.c

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -149,12 +149,12 @@ static int fat_file_release(struct inode *inode, struct file *filp)
149149
return 0;
150150
}
151151

152-
int fat_file_fsync(struct file *filp, struct dentry *dentry, int datasync)
152+
int fat_file_fsync(struct file *filp, int datasync)
153153
{
154-
struct inode *inode = dentry->d_inode;
154+
struct inode *inode = filp->f_mapping->host;
155155
int res, err;
156156

157-
res = simple_fsync(filp, dentry, datasync);
157+
res = simple_fsync(filp, datasync);
158158
err = sync_mapping_buffers(MSDOS_SB(inode->i_sb)->fat_inode->i_mapping);
159159

160160
return res ? res : err;

0 commit comments

Comments
 (0)