Re: [PATCH] vfs: remove unnecessary fl_owner_t typedef

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sat, Mar 17 2018, J. Bruce Fields wrote:

> This is a pretty simple patch that touches a lot of files.  What's the
> procedure for handling patches like this?  I haven't had to do this
> before.
>
> --b.
>
> commit 4e446db46b83
> Author: J. Bruce Fields <bfields@xxxxxxxxxx>
> Date:   Thu Sep 7 17:45:21 2017 -0400
>
>     vfs: remove unnecessary fl_owner_t typedef
>     
>     The convention is to avoid this kind of typedef.  It doesn't seem
>     useful, and it requires a lot of casts.

Does it requires a lot of casts?
I just tried removing a couple of casts and gcc didn't complain.

NeilBrown


>     
>     Reviewed-by: NeilBrown <neilb@xxxxxxxx>
>     Signed-off-by: J. Bruce Fields <bfields@xxxxxxxxxx>
>
> diff --git a/Documentation/filesystems/vfs.txt b/Documentation/filesystems/vfs.txt
> index 5fd325df59e2..7e22079c7396 100644
> --- a/Documentation/filesystems/vfs.txt
> +++ b/Documentation/filesystems/vfs.txt
> @@ -862,7 +862,7 @@ struct file_operations {
>  	int (*mmap) (struct file *, struct vm_area_struct *);
>  	int (*mremap)(struct file *, struct vm_area_struct *);
>  	int (*open) (struct inode *, struct file *);
> -	int (*flush) (struct file *, fl_owner_t id);
> +	int (*flush) (struct file *, void *id);
>  	int (*release) (struct inode *, struct file *);
>  	int (*fsync) (struct file *, loff_t, loff_t, int datasync);
>  	int (*fasync) (int, struct file *, int);
> diff --git a/arch/ia64/kernel/perfmon.c b/arch/ia64/kernel/perfmon.c
> index 8fb280e33114..c78e62a76d20 100644
> --- a/arch/ia64/kernel/perfmon.c
> +++ b/arch/ia64/kernel/perfmon.c
> @@ -1809,7 +1809,7 @@ pfm_syswide_cleanup_other_cpu(pfm_context_t *ctx)
>   * When caller is self-monitoring, the context is unloaded.
>   */
>  static int
> -pfm_flush(struct file *filp, fl_owner_t id)
> +pfm_flush(struct file *filp, void *id)
>  {
>  	pfm_context_t *ctx;
>  	struct task_struct *task;
> diff --git a/arch/powerpc/platforms/cell/spufs/file.c b/arch/powerpc/platforms/cell/spufs/file.c
> index 469bdd0b748f..e5a204f8169b 100644
> --- a/arch/powerpc/platforms/cell/spufs/file.c
> +++ b/arch/powerpc/platforms/cell/spufs/file.c
> @@ -1720,7 +1720,7 @@ static __poll_t spufs_mfc_poll(struct file *file,poll_table *wait)
>  	return mask;
>  }
>  
> -static int spufs_mfc_flush(struct file *file, fl_owner_t id)
> +static int spufs_mfc_flush(struct file *file, void *id)
>  {
>  	struct spu_context *ctx = file->private_data;
>  	int ret;
> diff --git a/arch/tile/kernel/hardwall.c b/arch/tile/kernel/hardwall.c
> index 2fd1694ac1d0..b2cf21d1edb0 100644
> --- a/arch/tile/kernel/hardwall.c
> +++ b/arch/tile/kernel/hardwall.c
> @@ -1030,7 +1030,7 @@ static long hardwall_compat_ioctl(struct file *file,
>  #endif
>  
>  /* The user process closed the file; revoke access to user networks. */
> -static int hardwall_flush(struct file *file, fl_owner_t owner)
> +static int hardwall_flush(struct file *file, void *owner)
>  {
>  	struct hardwall_info *info = file->private_data;
>  	struct task_struct *task, *tmp;
> diff --git a/drivers/android/binder.c b/drivers/android/binder.c
> index 15e3d3c2260d..f7706142974c 100644
> --- a/drivers/android/binder.c
> +++ b/drivers/android/binder.c
> @@ -4776,7 +4776,7 @@ static int binder_open(struct inode *nodp, struct file *filp)
>  	return 0;
>  }
>  
> -static int binder_flush(struct file *filp, fl_owner_t id)
> +static int binder_flush(struct file *filp, void *id)
>  {
>  	struct binder_proc *proc = filp->private_data;
>  
> diff --git a/drivers/char/ps3flash.c b/drivers/char/ps3flash.c
> index b526dc15c271..5a03dd0eb2f1 100644
> --- a/drivers/char/ps3flash.c
> +++ b/drivers/char/ps3flash.c
> @@ -281,7 +281,7 @@ static ssize_t ps3flash_kernel_write(const void *buf, size_t count,
>  	return res;
>  }
>  
> -static int ps3flash_flush(struct file *file, fl_owner_t id)
> +static int ps3flash_flush(struct file *file, void *id)
>  {
>  	return ps3flash_writeback(ps3flash_dev);
>  }
> diff --git a/drivers/char/xillybus/xillybus_core.c b/drivers/char/xillybus/xillybus_core.c
> index a11af94e2e65..b76074c976b9 100644
> --- a/drivers/char/xillybus/xillybus_core.c
> +++ b/drivers/char/xillybus/xillybus_core.c
> @@ -1156,7 +1156,7 @@ static int xillybus_myflush(struct xilly_channel *channel, long timeout)
>  	return rc;
>  }
>  
> -static int xillybus_flush(struct file *filp, fl_owner_t id)
> +static int xillybus_flush(struct file *filp, void *id)
>  {
>  	if (!(filp->f_mode & FMODE_WRITE))
>  		return 0;
> diff --git a/drivers/firmware/efi/capsule-loader.c b/drivers/firmware/efi/capsule-loader.c
> index e456f4602df1..ba444f726465 100644
> --- a/drivers/firmware/efi/capsule-loader.c
> +++ b/drivers/firmware/efi/capsule-loader.c
> @@ -246,7 +246,7 @@ static ssize_t efi_capsule_write(struct file *file, const char __user *buff,
>   *	will be treated as upload termination and will free those completed
>   *	buffer pages and -ECANCELED will be returned.
>   **/
> -static int efi_capsule_flush(struct file *file, fl_owner_t id)
> +static int efi_capsule_flush(struct file *file, void *id)
>  {
>  	int ret = 0;
>  	struct capsule_info *cap_info = file->private_data;
> diff --git a/drivers/input/evdev.c b/drivers/input/evdev.c
> index c81c79d01d93..fd9e02e133b1 100644
> --- a/drivers/input/evdev.c
> +++ b/drivers/input/evdev.c
> @@ -348,7 +348,7 @@ static int evdev_fasync(int fd, struct file *file, int on)
>  	return fasync_helper(fd, file, on, &client->fasync);
>  }
>  
> -static int evdev_flush(struct file *file, fl_owner_t id)
> +static int evdev_flush(struct file *file, void *id)
>  {
>  	struct evdev_client *client = file->private_data;
>  	struct evdev *evdev = client->evdev;
> diff --git a/drivers/misc/mic/scif/scif_fd.c b/drivers/misc/mic/scif/scif_fd.c
> index 5c2a57ae4f85..e8baa7b93c05 100644
> --- a/drivers/misc/mic/scif/scif_fd.c
> +++ b/drivers/misc/mic/scif/scif_fd.c
> @@ -48,7 +48,7 @@ static __poll_t scif_fdpoll(struct file *f, poll_table *wait)
>  	return __scif_pollfd(f, wait, priv);
>  }
>  
> -static int scif_fdflush(struct file *f, fl_owner_t id)
> +static int scif_fdflush(struct file *f, void *id)
>  {
>  	struct scif_endpt *ep = f->private_data;
>  
> diff --git a/drivers/scsi/osst.c b/drivers/scsi/osst.c
> index 20ec1c01dbd5..fdb213261249 100644
> --- a/drivers/scsi/osst.c
> +++ b/drivers/scsi/osst.c
> @@ -4822,7 +4822,7 @@ static int os_scsi_tape_open(struct inode * inode, struct file * filp)
>  
>  
>  /* Flush the tape buffer before close */
> -static int os_scsi_tape_flush(struct file * filp, fl_owner_t id)
> +static int os_scsi_tape_flush(struct file * filp, void *id)
>  {
>  	int		      result = 0, result2;
>  	struct osst_tape    * STp    = filp->private_data;
> diff --git a/drivers/scsi/st.c b/drivers/scsi/st.c
> index 6c399480783d..ed01299f6f51 100644
> --- a/drivers/scsi/st.c
> +++ b/drivers/scsi/st.c
> @@ -1338,7 +1338,7 @@ static int st_open(struct inode *inode, struct file *filp)
>
>  
>  /* Flush the tape buffer before close */
> -static int st_flush(struct file *filp, fl_owner_t id)
> +static int st_flush(struct file *filp, void *id)
>  {
>  	int result = 0, result2;
>  	unsigned char cmd[MAX_COMMAND_SIZE];
> diff --git a/drivers/staging/lustre/lustre/llite/file.c b/drivers/staging/lustre/lustre/llite/file.c
> index 938b859b6650..a8fe2072ea7c 100644
> --- a/drivers/staging/lustre/lustre/llite/file.c
> +++ b/drivers/staging/lustre/lustre/llite/file.c
> @@ -2281,7 +2281,7 @@ static loff_t ll_file_seek(struct file *file, loff_t offset, int origin)
>  					ll_file_maxbytes(inode), eof);
>  }
>  
> -static int ll_flush(struct file *file, fl_owner_t id)
> +static int ll_flush(struct file *file, void *id)
>  {
>  	struct inode *inode = file_inode(file);
>  	struct ll_inode_info *lli = ll_i2info(inode);
> diff --git a/drivers/usb/class/cdc-wdm.c b/drivers/usb/class/cdc-wdm.c
> index a0d284ef3f40..bda5b9812ccb 100644
> --- a/drivers/usb/class/cdc-wdm.c
> +++ b/drivers/usb/class/cdc-wdm.c
> @@ -581,7 +581,7 @@ static ssize_t wdm_read
>  	return rv;
>  }
>  
> -static int wdm_flush(struct file *file, fl_owner_t id)
> +static int wdm_flush(struct file *file, void *id)
>  {
>  	struct wdm_device *desc = file->private_data;
>  
> diff --git a/drivers/usb/usb-skeleton.c b/drivers/usb/usb-skeleton.c
> index 26ca0ec01fd5..d20a23d77fbe 100644
> --- a/drivers/usb/usb-skeleton.c
> +++ b/drivers/usb/usb-skeleton.c
> @@ -132,7 +132,7 @@ static int skel_release(struct inode *inode, struct file *file)
>  	return 0;
>  }
>  
> -static int skel_flush(struct file *file, fl_owner_t id)
> +static int skel_flush(struct file *file, void *id)
>  {
>  	struct usb_skel *dev;
>  	int res;
> diff --git a/fs/afs/internal.h b/fs/afs/internal.h
> index f38d6a561a84..18b1e2bc2a14 100644
> --- a/fs/afs/internal.h
> +++ b/fs/afs/internal.h
> @@ -947,7 +947,7 @@ extern int afs_writepage(struct page *, struct writeback_control *);
>  extern int afs_writepages(struct address_space *, struct writeback_control *);
>  extern void afs_pages_written_back(struct afs_vnode *, struct afs_call *);
>  extern ssize_t afs_file_write(struct kiocb *, struct iov_iter *);
> -extern int afs_flush(struct file *, fl_owner_t);
> +extern int afs_flush(struct file *, void *);
>  extern int afs_fsync(struct file *, loff_t, loff_t, int);
>  extern int afs_page_mkwrite(struct vm_fault *);
>  extern void afs_prune_wb_keys(struct afs_vnode *);
> diff --git a/fs/afs/write.c b/fs/afs/write.c
> index 9370e2feb999..b4ecbe4e46a4 100644
> --- a/fs/afs/write.c
> +++ b/fs/afs/write.c
> @@ -737,7 +737,7 @@ int afs_fsync(struct file *file, loff_t start, loff_t end, int datasync)
>   * Flush out all outstanding writes on a file opened for writing when it is
>   * closed.
>   */
> -int afs_flush(struct file *file, fl_owner_t id)
> +int afs_flush(struct file *file, void *id)
>  {
>  	_enter("");
>  
> diff --git a/fs/cifs/cifsfs.h b/fs/cifs/cifsfs.h
> index 013ba2aed8d9..09de0b6bd6a7 100644
> --- a/fs/cifs/cifsfs.h
> +++ b/fs/cifs/cifsfs.h
> @@ -108,7 +108,7 @@ extern ssize_t cifs_strict_writev(struct kiocb *iocb, struct iov_iter *from);
>  extern int cifs_lock(struct file *, int, struct file_lock *);
>  extern int cifs_fsync(struct file *, loff_t, loff_t, int);
>  extern int cifs_strict_fsync(struct file *, loff_t, loff_t, int);
> -extern int cifs_flush(struct file *, fl_owner_t id);
> +extern int cifs_flush(struct file *, void *id);
>  extern int cifs_file_mmap(struct file * , struct vm_area_struct *);
>  extern int cifs_file_strict_mmap(struct file * , struct vm_area_struct *);
>  extern const struct file_operations cifs_dir_ops;
> diff --git a/fs/cifs/file.c b/fs/cifs/file.c
> index 7cee97b93a61..835c155e64ed 100644
> --- a/fs/cifs/file.c
> +++ b/fs/cifs/file.c
> @@ -1174,7 +1174,7 @@ cifs_push_mandatory_locks(struct cifsFileInfo *cfile)
>  }
>  
>  static __u32
> -hash_lockowner(fl_owner_t owner)
> +hash_lockowner(void *owner)
>  {
>  	return cifs_lock_secret ^ hash32_ptr((const void *)owner);
>  }
> @@ -2393,7 +2393,7 @@ int cifs_fsync(struct file *file, loff_t start, loff_t end, int datasync)
>   * As file closes, flush all cached write data for this inode checking
>   * for write behind errors.
>   */
> -int cifs_flush(struct file *file, fl_owner_t id)
> +int cifs_flush(struct file *file, void *id)
>  {
>  	struct inode *inode = file_inode(file);
>  	int rc = 0;
> diff --git a/fs/ecryptfs/file.c b/fs/ecryptfs/file.c
> index c74ed3ca3372..78fb58667791 100644
> --- a/fs/ecryptfs/file.c
> +++ b/fs/ecryptfs/file.c
> @@ -290,7 +290,7 @@ static int ecryptfs_dir_open(struct inode *inode, struct file *file)
>  	return 0;
>  }
>  
> -static int ecryptfs_flush(struct file *file, fl_owner_t td)
> +static int ecryptfs_flush(struct file *file, void *td)
>  {
>  	struct file *lower_file = ecryptfs_file_to_lower(file);
>  
> diff --git a/fs/exofs/file.c b/fs/exofs/file.c
> index a94594ea2aa3..86d27d835a11 100644
> --- a/fs/exofs/file.c
> +++ b/fs/exofs/file.c
> @@ -58,7 +58,7 @@ static int exofs_file_fsync(struct file *filp, loff_t start, loff_t end,
>  	return ret;
>  }
>  
> -static int exofs_flush(struct file *file, fl_owner_t id)
> +static int exofs_flush(struct file *file, void *id)
>  {
>  	int ret = vfs_fsync(file, 0);
>  	/* TODO: Flush the OSD target */
> diff --git a/fs/fuse/file.c b/fs/fuse/file.c
> index a201fb0ac64f..746624182249 100644
> --- a/fs/fuse/file.c
> +++ b/fs/fuse/file.c
> @@ -254,8 +254,7 @@ void fuse_release_common(struct file *file, int opcode)
>  	if (ff->flock) {
>  		struct fuse_release_in *inarg = &req->misc.release.in;
>  		inarg->release_flags |= FUSE_RELEASE_FLOCK_UNLOCK;
> -		inarg->lock_owner = fuse_lock_owner_id(ff->fc,
> -						       (fl_owner_t) file);
> +		inarg->lock_owner = fuse_lock_owner_id(ff->fc, file);
>  	}
>  	/* Hold inode until release is finished */
>  	req->misc.release.inode = igrab(file_inode(file));
> @@ -307,7 +306,7 @@ EXPORT_SYMBOL_GPL(fuse_sync_release);
>   * Scramble the ID space with XTEA, so that the value of the files_struct
>   * pointer is not exposed to userspace.
>   */
> -u64 fuse_lock_owner_id(struct fuse_conn *fc, fl_owner_t id)
> +u64 fuse_lock_owner_id(struct fuse_conn *fc, void *id)
>  {
>  	u32 *k = fc->scramble_key;
>  	u64 v = (unsigned long) id;
> @@ -390,7 +389,7 @@ static void fuse_sync_writes(struct inode *inode)
>  	fuse_release_nowrite(inode);
>  }
>  
> -static int fuse_flush(struct file *file, fl_owner_t id)
> +static int fuse_flush(struct file *file, void *id)
>  {
>  	struct inode *inode = file_inode(file);
>  	struct fuse_conn *fc = get_fuse_conn(inode);
> @@ -643,7 +642,7 @@ static size_t fuse_async_req_send(struct fuse_conn *fc, struct fuse_req *req,
>  }
>  
>  static size_t fuse_send_read(struct fuse_req *req, struct fuse_io_priv *io,
> -			     loff_t pos, size_t count, fl_owner_t owner)
> +			     loff_t pos, size_t count, void *owner)
>  {
>  	struct file *file = io->iocb->ki_filp;
>  	struct fuse_file *ff = file->private_data;
> @@ -958,7 +957,7 @@ static void fuse_write_fill(struct fuse_req *req, struct fuse_file *ff,
>  }
>  
>  static size_t fuse_send_write(struct fuse_req *req, struct fuse_io_priv *io,
> -			      loff_t pos, size_t count, fl_owner_t owner)
> +			      loff_t pos, size_t count, void *owner)
>  {
>  	struct kiocb *iocb = io->iocb;
>  	struct file *file = iocb->ki_filp;
> @@ -1358,7 +1357,7 @@ ssize_t fuse_direct_io(struct fuse_io_priv *io, struct iov_iter *iter,
>  	io->should_dirty = !write && iter_is_iovec(iter);
>  	while (count) {
>  		size_t nres;
> -		fl_owner_t owner = current->files;
> +		void *owner = current->files;
>  		size_t nbytes = min(count, nmax);
>  		err = fuse_get_user_pages(req, iter, &nbytes, write);
>  		if (err && !nbytes)
> diff --git a/fs/fuse/fuse_i.h b/fs/fuse/fuse_i.h
> index c4c093bbf456..e4c2da57c16c 100644
> --- a/fs/fuse/fuse_i.h
> +++ b/fs/fuse/fuse_i.h
> @@ -900,7 +900,7 @@ int fuse_valid_type(int m);
>   */
>  int fuse_allow_current_process(struct fuse_conn *fc);
>  
> -u64 fuse_lock_owner_id(struct fuse_conn *fc, fl_owner_t id);
> +u64 fuse_lock_owner_id(struct fuse_conn *fc, void *id);
>  
>  void fuse_update_ctime(struct inode *inode);
>  
> diff --git a/fs/lockd/clntproc.c b/fs/lockd/clntproc.c
> index a2c0dfc6fdc0..a42dff055260 100644
> --- a/fs/lockd/clntproc.c
> +++ b/fs/lockd/clntproc.c
> @@ -81,7 +81,7 @@ static inline uint32_t __nlm_alloc_pid(struct nlm_host *host)
>  	return res;
>  }
>  
> -static struct nlm_lockowner *__nlm_find_lockowner(struct nlm_host *host, fl_owner_t owner)
> +static struct nlm_lockowner *__nlm_find_lockowner(struct nlm_host *host, void *owner)
>  {
>  	struct nlm_lockowner *lockowner;
>  	list_for_each_entry(lockowner, &host->h_lockowners, list) {
> @@ -92,7 +92,7 @@ static struct nlm_lockowner *__nlm_find_lockowner(struct nlm_host *host, fl_owne
>  	return NULL;
>  }
>  
> -static struct nlm_lockowner *nlm_find_lockowner(struct nlm_host *host, fl_owner_t owner)
> +static struct nlm_lockowner *nlm_find_lockowner(struct nlm_host *host, void *owner)
>  {
>  	struct nlm_lockowner *res, *new = NULL;
>  
> diff --git a/fs/lockd/svc4proc.c b/fs/lockd/svc4proc.c
> index 1bddf70d9656..004777845b61 100644
> --- a/fs/lockd/svc4proc.c
> +++ b/fs/lockd/svc4proc.c
> @@ -46,7 +46,7 @@ nlm4svc_retrieve_args(struct svc_rqst *rqstp, struct nlm_args *argp,
>  
>  		/* Set up the missing parts of the file_lock structure */
>  		lock->fl.fl_file  = file->f_file;
> -		lock->fl.fl_owner = (fl_owner_t) host;
> +		lock->fl.fl_owner = host;
>  		lock->fl.fl_lmops = &nlmsvc_lock_operations;
>  	}
>  
> diff --git a/fs/lockd/svcproc.c b/fs/lockd/svcproc.c
> index ea77c66d3cc3..bbf2329821db 100644
> --- a/fs/lockd/svcproc.c
> +++ b/fs/lockd/svcproc.c
> @@ -76,7 +76,7 @@ nlmsvc_retrieve_args(struct svc_rqst *rqstp, struct nlm_args *argp,
>  
>  		/* Set up the missing parts of the file_lock structure */
>  		lock->fl.fl_file  = file->f_file;
> -		lock->fl.fl_owner = (fl_owner_t) host;
> +		lock->fl.fl_owner = host;
>  		lock->fl.fl_lmops = &nlmsvc_lock_operations;
>  	}
>  
> diff --git a/fs/locks.c b/fs/locks.c
> index d6ff4beb70ce..63aa52bcdf5a 100644
> --- a/fs/locks.c
> +++ b/fs/locks.c
> @@ -2462,7 +2462,7 @@ int fcntl_setlk64(unsigned int fd, struct file *filp, unsigned int cmd,
>   * from the task's fd array.  POSIX locks belonging to this task
>   * are deleted at this time.
>   */
> -void locks_remove_posix(struct file *filp, fl_owner_t owner)
> +void locks_remove_posix(struct file *filp, void *owner)
>  {
>  	int error;
>  	struct inode *inode = locks_inode(filp);
> diff --git a/fs/nfs/file.c b/fs/nfs/file.c
> index 81cca49a8375..922ea233c391 100644
> --- a/fs/nfs/file.c
> +++ b/fs/nfs/file.c
> @@ -136,7 +136,7 @@ EXPORT_SYMBOL_GPL(nfs_file_llseek);
>   * Flush all dirty pages, and check for write errors.
>   */
>  static int
> -nfs_file_flush(struct file *file, fl_owner_t id)
> +nfs_file_flush(struct file *file, void *id)
>  {
>  	struct inode	*inode = file_inode(file);
>  
> diff --git a/fs/nfs/inode.c b/fs/nfs/inode.c
> index 7d893543cf3b..0b2d6f839bc2 100644
> --- a/fs/nfs/inode.c
> +++ b/fs/nfs/inode.c
> @@ -927,7 +927,7 @@ struct nfs_open_context *alloc_nfs_open_context(struct dentry *dentry,
>  	ctx->mode = f_mode;
>  	ctx->flags = 0;
>  	ctx->error = 0;
> -	ctx->flock_owner = (fl_owner_t)filp;
> +	ctx->flock_owner = filp;
>  	nfs_init_lock_context(&ctx->lock_context);
>  	ctx->lock_context.open_context = ctx;
>  	INIT_LIST_HEAD(&ctx->list);
> diff --git a/fs/nfs/nfs4_fs.h b/fs/nfs/nfs4_fs.h
> index b374f680830c..5079334cdf37 100644
> --- a/fs/nfs/nfs4_fs.h
> +++ b/fs/nfs/nfs4_fs.h
> @@ -146,7 +146,7 @@ struct nfs4_lock_state {
>  	struct nfs_seqid_counter	ls_seqid;
>  	nfs4_stateid		ls_stateid;
>  	refcount_t		ls_count;
> -	fl_owner_t		ls_owner;
> +	void *			ls_owner;
>  };
>  
>  /* bits for nfs4_state->flags */
> diff --git a/fs/nfs/nfs4file.c b/fs/nfs/nfs4file.c
> index 6b3b372b59b9..7045ff1fb46d 100644
> --- a/fs/nfs/nfs4file.c
> +++ b/fs/nfs/nfs4file.c
> @@ -107,7 +107,7 @@ nfs4_file_open(struct inode *inode, struct file *filp)
>   * Flush all dirty pages, and check for write errors.
>   */
>  static int
> -nfs4_file_flush(struct file *file, fl_owner_t id)
> +nfs4_file_flush(struct file *file, void *id)
>  {
>  	struct inode	*inode = file_inode(file);
>  
> diff --git a/fs/nfs/nfs4state.c b/fs/nfs/nfs4state.c
> index 91a4d4eeb235..7938ef7b8b27 100644
> --- a/fs/nfs/nfs4state.c
> +++ b/fs/nfs/nfs4state.c
> @@ -822,7 +822,7 @@ void nfs4_close_sync(struct nfs4_state *state, fmode_t fmode)
>   */
>  static struct nfs4_lock_state *
>  __nfs4_find_lock_state(struct nfs4_state *state,
> -		       fl_owner_t fl_owner, fl_owner_t fl_owner2)
> +		       void *fl_owner, void *fl_owner2)
>  {
>  	struct nfs4_lock_state *pos, *ret = NULL;
>  	list_for_each_entry(pos, &state->lock_states, ls_locks) {
> @@ -843,7 +843,7 @@ __nfs4_find_lock_state(struct nfs4_state *state,
>   * exists, return an uninitialized one.
>   *
>   */
> -static struct nfs4_lock_state *nfs4_alloc_lock_state(struct nfs4_state *state, fl_owner_t fl_owner)
> +static struct nfs4_lock_state *nfs4_alloc_lock_state(struct nfs4_state *state, void *fl_owner)
>  {
>  	struct nfs4_lock_state *lsp;
>  	struct nfs_server *server = state->owner->so_server;
> @@ -877,7 +877,7 @@ void nfs4_free_lock_state(struct nfs_server *server, struct nfs4_lock_state *lsp
>   * exists, return an uninitialized one.
>   *
>   */
> -static struct nfs4_lock_state *nfs4_get_lock_state(struct nfs4_state *state, fl_owner_t owner)
> +static struct nfs4_lock_state *nfs4_get_lock_state(struct nfs4_state *state, void *owner)
>  {
>  	struct nfs4_lock_state *lsp, *new = NULL;
>  	
> @@ -968,7 +968,7 @@ static int nfs4_copy_lock_stateid(nfs4_stateid *dst,
>  		const struct nfs_lock_context *l_ctx)
>  {
>  	struct nfs4_lock_state *lsp;
> -	fl_owner_t fl_owner, fl_flock_owner;
> +	void *fl_owner, *fl_flock_owner;
>  	int ret = -ENOENT;
>  
>  	if (l_ctx == NULL)
> diff --git a/fs/nfsd/nfs4state.c b/fs/nfsd/nfs4state.c
> index 150521c9671b..1bdfefe2e6ec 100644
> --- a/fs/nfsd/nfs4state.c
> +++ b/fs/nfsd/nfs4state.c
> @@ -1204,7 +1204,7 @@ static void nfs4_free_lock_stateid(struct nfs4_stid *stid)
>  
>  	file = find_any_file(stp->st_stid.sc_file);
>  	if (file)
> -		filp_close(file, (fl_owner_t)lo);
> +		filp_close(file, lo);
>  	nfs4_free_ol_stateid(stid);
>  }
>  
> @@ -4268,7 +4268,7 @@ static struct file_lock *nfs4_alloc_init_lease(struct nfs4_file *fp, int flag)
>  	fl->fl_flags = FL_DELEG;
>  	fl->fl_type = flag == NFS4_OPEN_DELEGATE_READ? F_RDLCK: F_WRLCK;
>  	fl->fl_end = OFFSET_MAX;
> -	fl->fl_owner = (fl_owner_t)fp;
> +	fl->fl_owner = fp;
>  	fl->fl_pid = current->tgid;
>  	return fl;
>  }
> @@ -5563,8 +5563,8 @@ nfs4_transform_lock_offset(struct file_lock *lock)
>  		lock->fl_end = OFFSET_MAX;
>  }
>  
> -static fl_owner_t
> -nfsd4_fl_get_owner(fl_owner_t owner)
> +static void *
> +nfsd4_fl_get_owner(void *owner)
>  {
>  	struct nfs4_lockowner *lo = (struct nfs4_lockowner *)owner;
>  
> @@ -5573,7 +5573,7 @@ nfsd4_fl_get_owner(fl_owner_t owner)
>  }
>  
>  static void
> -nfsd4_fl_put_owner(fl_owner_t owner)
> +nfsd4_fl_put_owner(void *owner)
>  {
>  	struct nfs4_lockowner *lo = (struct nfs4_lockowner *)owner;
>  
> @@ -6008,7 +6008,7 @@ nfsd4_lock(struct svc_rqst *rqstp, struct nfsd4_compound_state *cstate,
>  
>  	file_lock = &nbl->nbl_lock;
>  	file_lock->fl_type = fl_type;
> -	file_lock->fl_owner = (fl_owner_t)lockowner(nfs4_get_stateowner(&lock_sop->lo_owner));
> +	file_lock->fl_owner = lockowner(nfs4_get_stateowner(&lock_sop->lo_owner));
>  	file_lock->fl_pid = current->tgid;
>  	file_lock->fl_file = filp;
>  	file_lock->fl_flags = fl_flags;
> @@ -6162,7 +6162,7 @@ nfsd4_lockt(struct svc_rqst *rqstp, struct nfsd4_compound_state *cstate,
>  
>  	lo = find_lockowner_str(cstate->clp, &lockt->lt_owner);
>  	if (lo)
> -		file_lock->fl_owner = (fl_owner_t)lo;
> +		file_lock->fl_owner = lo;
>  	file_lock->fl_pid = current->tgid;
>  	file_lock->fl_flags = FL_POSIX;
>  
> @@ -6224,7 +6224,7 @@ nfsd4_locku(struct svc_rqst *rqstp, struct nfsd4_compound_state *cstate,
>  	}
>  
>  	file_lock->fl_type = F_UNLCK;
> -	file_lock->fl_owner = (fl_owner_t)lockowner(nfs4_get_stateowner(stp->st_stateowner));
> +	file_lock->fl_owner = lockowner(nfs4_get_stateowner(stp->st_stateowner));
>  	file_lock->fl_pid = current->tgid;
>  	file_lock->fl_file = filp;
>  	file_lock->fl_flags = FL_POSIX;
> @@ -6283,7 +6283,7 @@ check_for_locks(struct nfs4_file *fp, struct nfs4_lockowner *lowner)
>  	if (flctx && !list_empty_careful(&flctx->flc_posix)) {
>  		spin_lock(&flctx->flc_lock);
>  		list_for_each_entry(fl, &flctx->flc_posix, fl_list) {
> -			if (fl->fl_owner == (fl_owner_t)lowner) {
> +			if (fl->fl_owner == lowner) {
>  				status = true;
>  				break;
>  			}
> diff --git a/fs/notify/dnotify/dnotify.c b/fs/notify/dnotify/dnotify.c
> index 63a1ca4b9dee..6b309bd1552d 100644
> --- a/fs/notify/dnotify/dnotify.c
> +++ b/fs/notify/dnotify/dnotify.c
> @@ -145,7 +145,7 @@ static const struct fsnotify_ops dnotify_fsnotify_ops = {
>   * dnotify_struct.  If that was the last dnotify_struct also remove the
>   * fsnotify_mark.
>   */
> -void dnotify_flush(struct file *filp, fl_owner_t id)
> +void dnotify_flush(struct file *filp, void *id)
>  {
>  	struct fsnotify_mark *fsn_mark;
>  	struct dnotify_mark *dn_mark;
> @@ -223,7 +223,7 @@ static __u32 convert_arg(unsigned long arg)
>   * that list, or it |= the mask onto an existing dnofiy_struct.
>   */
>  static int attach_dn(struct dnotify_struct *dn, struct dnotify_mark *dn_mark,
> -		     fl_owner_t id, int fd, struct file *filp, __u32 mask)
> +		     void *id, int fd, struct file *filp, __u32 mask)
>  {
>  	struct dnotify_struct *odn;
>  
> @@ -259,7 +259,7 @@ int fcntl_dirnotify(int fd, struct file *filp, unsigned long arg)
>  	struct fsnotify_mark *new_fsn_mark, *fsn_mark;
>  	struct dnotify_struct *dn;
>  	struct inode *inode;
> -	fl_owner_t id = current->files;
> +	void *id = current->files;
>  	struct file *f;
>  	int destroy = 0, error = 0;
>  	__u32 mask;
> diff --git a/fs/open.c b/fs/open.c
> index 7ea118471dce..b04595bca741 100644
> --- a/fs/open.c
> +++ b/fs/open.c
> @@ -1123,7 +1123,7 @@ SYSCALL_DEFINE2(creat, const char __user *, pathname, umode_t, mode)
>   * "id" is the POSIX thread ID. We use the
>   * files pointer for this..
>   */
> -int filp_close(struct file *filp, fl_owner_t id)
> +int filp_close(struct file *filp, void *id)
>  {
>  	int retval = 0;
>  
> diff --git a/include/linux/dnotify.h b/include/linux/dnotify.h
> index 0aad774beaec..4be77f0e8c58 100644
> --- a/include/linux/dnotify.h
> +++ b/include/linux/dnotify.h
> @@ -14,7 +14,7 @@ struct dnotify_struct {
>  	__u32			dn_mask;
>  	int			dn_fd;
>  	struct file *		dn_filp;
> -	fl_owner_t		dn_owner;
> +	void *			dn_owner;
>  };
>  
>  #ifdef __KERNEL__
> @@ -30,12 +30,12 @@ struct dnotify_struct {
>  			    FS_MOVED_FROM | FS_MOVED_TO)
>  
>  extern int dir_notify_enable;
> -extern void dnotify_flush(struct file *, fl_owner_t);
> +extern void dnotify_flush(struct file *, void *);
>  extern int fcntl_dirnotify(int, struct file *, unsigned long);
>  
>  #else
>  
> -static inline void dnotify_flush(struct file *filp, fl_owner_t id)
> +static inline void dnotify_flush(struct file *filp, void *id)
>  {
>  }
>  
> diff --git a/include/linux/fs.h b/include/linux/fs.h
> index 2a815560fda0..ef9269bf7e69 100644
> --- a/include/linux/fs.h
> +++ b/include/linux/fs.h
> @@ -942,9 +942,6 @@ static inline struct file *get_file(struct file *f)
>   */
>  #define FILE_LOCK_DEFERRED 1
>  
> -/* legacy typedef, should eventually be removed */
> -typedef void *fl_owner_t;
> -
>  struct file_lock;
>  
>  struct file_lock_operations {
> @@ -955,8 +952,8 @@ struct file_lock_operations {
>  struct lock_manager_operations {
>  	int (*lm_compare_owner)(struct file_lock *, struct file_lock *);
>  	unsigned long (*lm_owner_key)(struct file_lock *);
> -	fl_owner_t (*lm_get_owner)(fl_owner_t);
> -	void (*lm_put_owner)(fl_owner_t);
> +	void *(*lm_get_owner)(void *);
> +	void (*lm_put_owner)(void *);
>  	void (*lm_notify)(struct file_lock *);	/* unblock callback */
>  	int (*lm_grant)(struct file_lock *, int);
>  	bool (*lm_break)(struct file_lock *);
> @@ -1004,7 +1001,7 @@ struct file_lock {
>  	struct list_head fl_list;	/* link into file_lock_context */
>  	struct hlist_node fl_link;	/* node in global lists */
>  	struct list_head fl_block;	/* circular list of blocked processes */
> -	fl_owner_t fl_owner;
> +	void *fl_owner;
>  	unsigned int fl_flags;
>  	unsigned char fl_type;
>  	unsigned int fl_pid;
> @@ -1080,7 +1077,7 @@ extern void locks_init_lock(struct file_lock *);
>  extern struct file_lock * locks_alloc_lock(void);
>  extern void locks_copy_lock(struct file_lock *, struct file_lock *);
>  extern void locks_copy_conflock(struct file_lock *, struct file_lock *);
> -extern void locks_remove_posix(struct file *, fl_owner_t);
> +extern void locks_remove_posix(struct file *, void *);
>  extern void locks_remove_file(struct file *);
>  extern void locks_release_private(struct file_lock *);
>  extern void posix_test_lock(struct file *, struct file_lock *);
> @@ -1154,7 +1151,7 @@ static inline void locks_copy_lock(struct file_lock *new, struct file_lock *fl)
>  	return;
>  }
>  
> -static inline void locks_remove_posix(struct file *filp, fl_owner_t owner)
> +static inline void locks_remove_posix(struct file *filp, void *owner)
>  {
>  	return;
>  }
> @@ -1713,7 +1710,7 @@ struct file_operations {
>  	int (*mmap) (struct file *, struct vm_area_struct *);
>  	unsigned long mmap_supported_flags;
>  	int (*open) (struct inode *, struct file *);
> -	int (*flush) (struct file *, fl_owner_t id);
> +	int (*flush) (struct file *, void *id);
>  	int (*release) (struct inode *, struct file *);
>  	int (*fsync) (struct file *, loff_t, loff_t, int datasync);
>  	int (*fasync) (int, struct file *, int);
> @@ -2397,7 +2394,7 @@ extern struct file *filp_open(const char *, int, umode_t);
>  extern struct file *file_open_root(struct dentry *, struct vfsmount *,
>  				   const char *, int, umode_t);
>  extern struct file * dentry_open(const struct path *, int, const struct cred *);
> -extern int filp_close(struct file *, fl_owner_t id);
> +extern int filp_close(struct file *, void *id);
>  
>  extern struct filename *getname_flags(const char __user *, int, int *);
>  extern struct filename *getname(const char __user *);
> diff --git a/include/linux/lockd/lockd.h b/include/linux/lockd/lockd.h
> index 4fd95dbeb52f..484156a8f11a 100644
> --- a/include/linux/lockd/lockd.h
> +++ b/include/linux/lockd/lockd.h
> @@ -119,14 +119,14 @@ static inline struct sockaddr *nlm_srcaddr(const struct nlm_host *host)
>  }
>  
>  /*
> - * Map an fl_owner_t into a unique 32-bit "pid"
> + * Map a lock owner into a unique 32-bit "pid"
>   */
>  struct nlm_lockowner {
>  	struct list_head list;
>  	refcount_t count;
>  
>  	struct nlm_host *host;
> -	fl_owner_t owner;
> +	void *owner;
>  	uint32_t pid;
>  };
>  
> diff --git a/include/linux/nfs_fs.h b/include/linux/nfs_fs.h
> index 38187c68063d..889d3494dbbb 100644
> --- a/include/linux/nfs_fs.h
> +++ b/include/linux/nfs_fs.h
> @@ -60,14 +60,14 @@ struct nfs_lock_context {
>  	refcount_t count;
>  	struct list_head list;
>  	struct nfs_open_context *open_context;
> -	fl_owner_t lockowner;
> +	void *lockowner;
>  	atomic_t io_count;
>  };
>  
>  struct nfs4_state;
>  struct nfs_open_context {
>  	struct nfs_lock_context lock_context;
> -	fl_owner_t flock_owner;
> +	void *flock_owner;
>  	struct dentry *dentry;
>  	struct rpc_cred *cred;
>  	struct nfs4_state *state;
> diff --git a/include/trace/events/filelock.h b/include/trace/events/filelock.h
> index d1faf3597b9d..345fdb312cab 100644
> --- a/include/trace/events/filelock.h
> +++ b/include/trace/events/filelock.h
> @@ -69,7 +69,7 @@ DECLARE_EVENT_CLASS(filelock_lock,
>  		__field(unsigned long, i_ino)
>  		__field(dev_t, s_dev)
>  		__field(struct file_lock *, fl_next)
> -		__field(fl_owner_t, fl_owner)
> +		__field(void *, fl_owner)
>  		__field(unsigned int, fl_pid)
>  		__field(unsigned int, fl_flags)
>  		__field(unsigned char, fl_type)
> @@ -123,7 +123,7 @@ DECLARE_EVENT_CLASS(filelock_lease,
>  		__field(unsigned long, i_ino)
>  		__field(dev_t, s_dev)
>  		__field(struct file_lock *, fl_next)
> -		__field(fl_owner_t, fl_owner)
> +		__field(void *, fl_owner)
>  		__field(unsigned int, fl_flags)
>  		__field(unsigned char, fl_type)
>  		__field(unsigned long, fl_break_time)
> @@ -176,7 +176,7 @@ TRACE_EVENT(generic_add_lease,
>  		__field(int, dcount)
>  		__field(int, icount)
>  		__field(dev_t, s_dev)
> -		__field(fl_owner_t, fl_owner)
> +		__field(void *, fl_owner)
>  		__field(unsigned int, fl_flags)
>  		__field(unsigned char, fl_type)
>  	),
> diff --git a/ipc/mqueue.c b/ipc/mqueue.c
> index d7f309f74dec..197cb72af8de 100644
> --- a/ipc/mqueue.c
> +++ b/ipc/mqueue.c
> @@ -557,7 +557,7 @@ static ssize_t mqueue_read_file(struct file *filp, char __user *u_data,
>  	return ret;
>  }
>  
> -static int mqueue_flush_file(struct file *filp, fl_owner_t id)
> +static int mqueue_flush_file(struct file *filp, void *id)
>  {
>  	struct mqueue_inode_info *info = MQUEUE_I(file_inode(filp));
>  

Attachment: signature.asc
Description: PGP signature


[Index of Archives]     [Linux Filesystem Development]     [Linux USB Development]     [Linux Media Development]     [Video for Linux]     [Linux NILFS]     [Linux Audio Users]     [Yosemite Info]     [Linux SCSI]

  Powered by Linux