whack-a-mole: cropped up open-coded file_inode() uses...
-----BEGIN PGP SIGNATURE----- iHUEABYIAB0WIQQqUNBr3gm4hGXdBJlZ7Krx/gZQ6wUCYzxj0gAKCRBZ7Krx/gZQ 66/1AQC/KfIAINNOPxozsZaxOaOKo0ouVJ7sJV4ZGsPKpU69gwD/UodJZCtyZ52h wwkmfzTDjAgGt1QCKj96zk2XFqg4swE= =u0pv -----END PGP SIGNATURE----- Merge tag 'pull-file_inode' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs Pull file_inode() updates from Al Vrio: "whack-a-mole: cropped up open-coded file_inode() uses..." * tag 'pull-file_inode' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs: orangefs: use ->f_mapping _nfs42_proc_copy(): use ->f_mapping instead of file_inode()->i_mapping dma_buf: no need to bother with file_inode()->i_mapping nfs_finish_open(): don't open-code file_inode() bprm_fill_uid(): don't open-code file_inode() sgx: use ->f_mapping... exfat_iterate(): don't open-code file_inode(file) ibmvmc: don't open-code file_inode()
This commit is contained in:
commit
ab29622157
@ -912,8 +912,7 @@ const cpumask_t *sgx_encl_cpumask(struct sgx_encl *encl)
|
||||
static struct page *sgx_encl_get_backing_page(struct sgx_encl *encl,
|
||||
pgoff_t index)
|
||||
{
|
||||
struct inode *inode = encl->backing->f_path.dentry->d_inode;
|
||||
struct address_space *mapping = inode->i_mapping;
|
||||
struct address_space *mapping = encl->backing->f_mapping;
|
||||
gfp_t gfpmask = mapping_gfp_mask(mapping);
|
||||
|
||||
return shmem_read_mapping_page_gfp(mapping, index, gfpmask);
|
||||
|
@ -213,7 +213,7 @@ static long udmabuf_create(struct miscdevice *device,
|
||||
memfd = fget(list[i].memfd);
|
||||
if (!memfd)
|
||||
goto err;
|
||||
mapping = file_inode(memfd)->i_mapping;
|
||||
mapping = memfd->f_mapping;
|
||||
if (!shmem_mapping(mapping) && !is_file_hugepages(memfd))
|
||||
goto err;
|
||||
seals = memfd_fcntl(memfd, F_GET_SEALS, 0);
|
||||
|
@ -1039,6 +1039,7 @@ static unsigned int ibmvmc_poll(struct file *file, poll_table *wait)
|
||||
static ssize_t ibmvmc_write(struct file *file, const char *buffer,
|
||||
size_t count, loff_t *ppos)
|
||||
{
|
||||
struct inode *inode;
|
||||
struct ibmvmc_buffer *vmc_buffer;
|
||||
struct ibmvmc_file_session *session;
|
||||
struct crq_server_adapter *adapter;
|
||||
@ -1122,8 +1123,9 @@ static ssize_t ibmvmc_write(struct file *file, const char *buffer,
|
||||
if (p == buffer)
|
||||
goto out;
|
||||
|
||||
file->f_path.dentry->d_inode->i_mtime = current_time(file_inode(file));
|
||||
mark_inode_dirty(file->f_path.dentry->d_inode);
|
||||
inode = file_inode(file);
|
||||
inode->i_mtime = current_time(inode);
|
||||
mark_inode_dirty(inode);
|
||||
|
||||
dev_dbg(adapter->dev, "write: file = 0x%lx, count = 0x%lx\n",
|
||||
(unsigned long)file, (unsigned long)count);
|
||||
|
@ -1587,7 +1587,7 @@ static void bprm_fill_uid(struct linux_binprm *bprm, struct file *file)
|
||||
{
|
||||
/* Handle suid and sgid on files */
|
||||
struct user_namespace *mnt_userns;
|
||||
struct inode *inode;
|
||||
struct inode *inode = file_inode(file);
|
||||
unsigned int mode;
|
||||
kuid_t uid;
|
||||
kgid_t gid;
|
||||
@ -1598,7 +1598,6 @@ static void bprm_fill_uid(struct linux_binprm *bprm, struct file *file)
|
||||
if (task_no_new_privs(current))
|
||||
return;
|
||||
|
||||
inode = file->f_path.dentry->d_inode;
|
||||
mode = READ_ONCE(inode->i_mode);
|
||||
if (!(mode & (S_ISUID|S_ISGID)))
|
||||
return;
|
||||
|
@ -212,9 +212,9 @@ static void exfat_free_namebuf(struct exfat_dentry_namebuf *nb)
|
||||
|
||||
/* skip iterating emit_dots when dir is empty */
|
||||
#define ITER_POS_FILLED_DOTS (2)
|
||||
static int exfat_iterate(struct file *filp, struct dir_context *ctx)
|
||||
static int exfat_iterate(struct file *file, struct dir_context *ctx)
|
||||
{
|
||||
struct inode *inode = filp->f_path.dentry->d_inode;
|
||||
struct inode *inode = file_inode(file);
|
||||
struct super_block *sb = inode->i_sb;
|
||||
struct inode *tmp;
|
||||
struct exfat_dir_entry de;
|
||||
@ -228,7 +228,7 @@ static int exfat_iterate(struct file *filp, struct dir_context *ctx)
|
||||
mutex_lock(&EXFAT_SB(sb)->s_lock);
|
||||
|
||||
cpos = ctx->pos;
|
||||
if (!dir_emit_dots(filp, ctx))
|
||||
if (!dir_emit_dots(file, ctx))
|
||||
goto unlock;
|
||||
|
||||
if (ctx->pos == ITER_POS_FILLED_DOTS) {
|
||||
|
@ -2022,7 +2022,7 @@ static int nfs_finish_open(struct nfs_open_context *ctx,
|
||||
err = finish_open(file, dentry, do_open);
|
||||
if (err)
|
||||
goto out;
|
||||
if (S_ISREG(file->f_path.dentry->d_inode->i_mode))
|
||||
if (S_ISREG(file_inode(file)->i_mode))
|
||||
nfs_file_set_open_context(file, ctx);
|
||||
else
|
||||
err = -EOPENSTALE;
|
||||
|
@ -341,7 +341,7 @@ static ssize_t _nfs42_proc_copy(struct file *src,
|
||||
return status;
|
||||
}
|
||||
}
|
||||
status = nfs_filemap_write_and_wait_range(file_inode(src)->i_mapping,
|
||||
status = nfs_filemap_write_and_wait_range(src->f_mapping,
|
||||
pos_src, pos_src + (loff_t)count - 1);
|
||||
if (status)
|
||||
return status;
|
||||
|
@ -417,9 +417,7 @@ static int orangefs_file_release(struct inode *inode, struct file *file)
|
||||
* readahead cache (if any); this forces an expensive refresh of
|
||||
* data for the next caller of mmap (or 'get_block' accesses)
|
||||
*/
|
||||
if (file_inode(file) &&
|
||||
file_inode(file)->i_mapping &&
|
||||
mapping_nrpages(&file_inode(file)->i_data)) {
|
||||
if (mapping_nrpages(file->f_mapping)) {
|
||||
if (orangefs_features & ORANGEFS_FEATURE_READAHEAD) {
|
||||
gossip_debug(GOSSIP_INODE_DEBUG,
|
||||
"calling flush_racache on %pU\n",
|
||||
|
Loading…
Reference in New Issue
Block a user