diff options
-rw-r--r-- | drivers/block/drbd/drbd_debugfs.c | 6 | ||||
-rw-r--r-- | drivers/scsi/lpfc/lpfc_debugfs.c | 4 | ||||
-rw-r--r-- | drivers/staging/lustre/lustre/llite/file.c | 12 | ||||
-rw-r--r-- | fs/ceph/dir.c | 6 | ||||
-rw-r--r-- | fs/ceph/file.c | 2 | ||||
-rw-r--r-- | fs/cifs/readdir.c | 2 | ||||
-rw-r--r-- | fs/ecryptfs/crypto.c | 2 | ||||
-rw-r--r-- | fs/ecryptfs/mmap.c | 2 | ||||
-rw-r--r-- | fs/efivarfs/file.c | 4 | ||||
-rw-r--r-- | fs/sync.c | 2 | ||||
-rw-r--r-- | include/linux/cgroup.h | 4 | ||||
-rw-r--r-- | kernel/auditsc.c | 2 | ||||
-rw-r--r-- | kernel/events/core.c | 2 | ||||
-rw-r--r-- | kernel/taskstats.c | 2 | ||||
-rw-r--r-- | mm/memcontrol.c | 4 | ||||
-rw-r--r-- | security/commoncap.c | 2 | ||||
-rw-r--r-- | security/integrity/ima/ima_api.c | 4 | ||||
-rw-r--r-- | security/integrity/ima/ima_appraise.c | 4 | ||||
-rw-r--r-- | security/integrity/ima/ima_template_lib.c | 2 |
19 files changed, 31 insertions, 37 deletions
diff --git a/drivers/block/drbd/drbd_debugfs.c b/drivers/block/drbd/drbd_debugfs.c index 900d4d3272d1..9a950022ff88 100644 --- a/drivers/block/drbd/drbd_debugfs.c +++ b/drivers/block/drbd/drbd_debugfs.c | |||
@@ -419,7 +419,7 @@ static int in_flight_summary_show(struct seq_file *m, void *pos) | |||
419 | return 0; | 419 | return 0; |
420 | } | 420 | } |
421 | 421 | ||
422 | /* simple_positive(file->f_dentry) respectively debugfs_positive(), | 422 | /* simple_positive(file->f_path.dentry) respectively debugfs_positive(), |
423 | * but neither is "reachable" from here. | 423 | * but neither is "reachable" from here. |
424 | * So we have our own inline version of it above. :-( */ | 424 | * So we have our own inline version of it above. :-( */ |
425 | static inline int debugfs_positive(struct dentry *dentry) | 425 | static inline int debugfs_positive(struct dentry *dentry) |
@@ -437,14 +437,14 @@ static int drbd_single_open(struct file *file, int (*show)(struct seq_file *, vo | |||
437 | 437 | ||
438 | /* Are we still linked, | 438 | /* Are we still linked, |
439 | * or has debugfs_remove() already been called? */ | 439 | * or has debugfs_remove() already been called? */ |
440 | parent = file->f_dentry->d_parent; | 440 | parent = file->f_path.dentry->d_parent; |
441 | /* not sure if this can happen: */ | 441 | /* not sure if this can happen: */ |
442 | if (!parent || !parent->d_inode) | 442 | if (!parent || !parent->d_inode) |
443 | goto out; | 443 | goto out; |
444 | /* serialize with d_delete() */ | 444 | /* serialize with d_delete() */ |
445 | mutex_lock(&parent->d_inode->i_mutex); | 445 | mutex_lock(&parent->d_inode->i_mutex); |
446 | /* Make sure the object is still alive */ | 446 | /* Make sure the object is still alive */ |
447 | if (debugfs_positive(file->f_dentry) | 447 | if (debugfs_positive(file->f_path.dentry) |
448 | && kref_get_unless_zero(kref)) | 448 | && kref_get_unless_zero(kref)) |
449 | ret = 0; | 449 | ret = 0; |
450 | mutex_unlock(&parent->d_inode->i_mutex); | 450 | mutex_unlock(&parent->d_inode->i_mutex); |
diff --git a/drivers/scsi/lpfc/lpfc_debugfs.c b/drivers/scsi/lpfc/lpfc_debugfs.c index 1311ab15243e..5633e7dadc08 100644 --- a/drivers/scsi/lpfc/lpfc_debugfs.c +++ b/drivers/scsi/lpfc/lpfc_debugfs.c | |||
@@ -1011,7 +1011,7 @@ static ssize_t | |||
1011 | lpfc_debugfs_dif_err_read(struct file *file, char __user *buf, | 1011 | lpfc_debugfs_dif_err_read(struct file *file, char __user *buf, |
1012 | size_t nbytes, loff_t *ppos) | 1012 | size_t nbytes, loff_t *ppos) |
1013 | { | 1013 | { |
1014 | struct dentry *dent = file->f_dentry; | 1014 | struct dentry *dent = file->f_path.dentry; |
1015 | struct lpfc_hba *phba = file->private_data; | 1015 | struct lpfc_hba *phba = file->private_data; |
1016 | char cbuf[32]; | 1016 | char cbuf[32]; |
1017 | uint64_t tmp = 0; | 1017 | uint64_t tmp = 0; |
@@ -1052,7 +1052,7 @@ static ssize_t | |||
1052 | lpfc_debugfs_dif_err_write(struct file *file, const char __user *buf, | 1052 | lpfc_debugfs_dif_err_write(struct file *file, const char __user *buf, |
1053 | size_t nbytes, loff_t *ppos) | 1053 | size_t nbytes, loff_t *ppos) |
1054 | { | 1054 | { |
1055 | struct dentry *dent = file->f_dentry; | 1055 | struct dentry *dent = file->f_path.dentry; |
1056 | struct lpfc_hba *phba = file->private_data; | 1056 | struct lpfc_hba *phba = file->private_data; |
1057 | char dstbuf[32]; | 1057 | char dstbuf[32]; |
1058 | uint64_t tmp = 0; | 1058 | uint64_t tmp = 0; |
diff --git a/drivers/staging/lustre/lustre/llite/file.c b/drivers/staging/lustre/lustre/llite/file.c index c99b74117152..08e77492da8f 100644 --- a/drivers/staging/lustre/lustre/llite/file.c +++ b/drivers/staging/lustre/lustre/llite/file.c | |||
@@ -2092,7 +2092,7 @@ putgl: | |||
2092 | rc = 0; | 2092 | rc = 0; |
2093 | if (llss->ia2.ia_valid != 0) { | 2093 | if (llss->ia2.ia_valid != 0) { |
2094 | mutex_lock(&llss->inode1->i_mutex); | 2094 | mutex_lock(&llss->inode1->i_mutex); |
2095 | rc = ll_setattr(file1->f_dentry, &llss->ia2); | 2095 | rc = ll_setattr(file1->f_path.dentry, &llss->ia2); |
2096 | mutex_unlock(&llss->inode1->i_mutex); | 2096 | mutex_unlock(&llss->inode1->i_mutex); |
2097 | } | 2097 | } |
2098 | 2098 | ||
@@ -2100,7 +2100,7 @@ putgl: | |||
2100 | int rc1; | 2100 | int rc1; |
2101 | 2101 | ||
2102 | mutex_lock(&llss->inode2->i_mutex); | 2102 | mutex_lock(&llss->inode2->i_mutex); |
2103 | rc1 = ll_setattr(file2->f_dentry, &llss->ia1); | 2103 | rc1 = ll_setattr(file2->f_path.dentry, &llss->ia1); |
2104 | mutex_unlock(&llss->inode2->i_mutex); | 2104 | mutex_unlock(&llss->inode2->i_mutex); |
2105 | if (rc == 0) | 2105 | if (rc == 0) |
2106 | rc = rc1; | 2106 | rc = rc1; |
@@ -2185,7 +2185,7 @@ static int ll_hsm_import(struct inode *inode, struct file *file, | |||
2185 | 2185 | ||
2186 | mutex_lock(&inode->i_mutex); | 2186 | mutex_lock(&inode->i_mutex); |
2187 | 2187 | ||
2188 | rc = ll_setattr_raw(file->f_dentry, attr, true); | 2188 | rc = ll_setattr_raw(file->f_path.dentry, attr, true); |
2189 | if (rc == -ENODATA) | 2189 | if (rc == -ENODATA) |
2190 | rc = 0; | 2190 | rc = 0; |
2191 | 2191 | ||
@@ -2622,12 +2622,6 @@ int cl_sync_file_range(struct inode *inode, loff_t start, loff_t end, | |||
2622 | return result; | 2622 | return result; |
2623 | } | 2623 | } |
2624 | 2624 | ||
2625 | /* | ||
2626 | * When dentry is provided (the 'else' case), *file->f_dentry may be | ||
2627 | * null and dentry must be used directly rather than pulled from | ||
2628 | * *file->f_dentry as is done otherwise. | ||
2629 | */ | ||
2630 | |||
2631 | int ll_fsync(struct file *file, loff_t start, loff_t end, int datasync) | 2625 | int ll_fsync(struct file *file, loff_t start, loff_t end, int datasync) |
2632 | { | 2626 | { |
2633 | struct dentry *dentry = file->f_dentry; | 2627 | struct dentry *dentry = file->f_dentry; |
diff --git a/fs/ceph/dir.c b/fs/ceph/dir.c index 766ec35f988e..681a8537b64f 100644 --- a/fs/ceph/dir.c +++ b/fs/ceph/dir.c | |||
@@ -123,7 +123,7 @@ static int __dcache_readdir(struct file *file, struct dir_context *ctx, | |||
123 | u32 shared_gen) | 123 | u32 shared_gen) |
124 | { | 124 | { |
125 | struct ceph_file_info *fi = file->private_data; | 125 | struct ceph_file_info *fi = file->private_data; |
126 | struct dentry *parent = file->f_dentry; | 126 | struct dentry *parent = file->f_path.dentry; |
127 | struct inode *dir = parent->d_inode; | 127 | struct inode *dir = parent->d_inode; |
128 | struct list_head *p; | 128 | struct list_head *p; |
129 | struct dentry *dentry, *last; | 129 | struct dentry *dentry, *last; |
@@ -274,7 +274,7 @@ static int ceph_readdir(struct file *file, struct dir_context *ctx) | |||
274 | off = 1; | 274 | off = 1; |
275 | } | 275 | } |
276 | if (ctx->pos == 1) { | 276 | if (ctx->pos == 1) { |
277 | ino_t ino = parent_ino(file->f_dentry); | 277 | ino_t ino = parent_ino(file->f_path.dentry); |
278 | dout("readdir off 1 -> '..'\n"); | 278 | dout("readdir off 1 -> '..'\n"); |
279 | if (!dir_emit(ctx, "..", 2, | 279 | if (!dir_emit(ctx, "..", 2, |
280 | ceph_translate_ino(inode->i_sb, ino), | 280 | ceph_translate_ino(inode->i_sb, ino), |
@@ -337,7 +337,7 @@ more: | |||
337 | } | 337 | } |
338 | req->r_inode = inode; | 338 | req->r_inode = inode; |
339 | ihold(inode); | 339 | ihold(inode); |
340 | req->r_dentry = dget(file->f_dentry); | 340 | req->r_dentry = dget(file->f_path.dentry); |
341 | /* hints to request -> mds selection code */ | 341 | /* hints to request -> mds selection code */ |
342 | req->r_direct_mode = USE_AUTH_MDS; | 342 | req->r_direct_mode = USE_AUTH_MDS; |
343 | req->r_direct_hash = ceph_frag_value(frag); | 343 | req->r_direct_hash = ceph_frag_value(frag); |
diff --git a/fs/ceph/file.c b/fs/ceph/file.c index db2c967950f7..9f8e3572040e 100644 --- a/fs/ceph/file.c +++ b/fs/ceph/file.c | |||
@@ -211,7 +211,7 @@ int ceph_open(struct inode *inode, struct file *file) | |||
211 | 211 | ||
212 | req->r_num_caps = 1; | 212 | req->r_num_caps = 1; |
213 | if (flags & O_CREAT) | 213 | if (flags & O_CREAT) |
214 | parent_inode = ceph_get_dentry_parent_inode(file->f_dentry); | 214 | parent_inode = ceph_get_dentry_parent_inode(file->f_path.dentry); |
215 | err = ceph_mdsc_do_request(mdsc, parent_inode, req); | 215 | err = ceph_mdsc_do_request(mdsc, parent_inode, req); |
216 | iput(parent_inode); | 216 | iput(parent_inode); |
217 | if (!err) | 217 | if (!err) |
diff --git a/fs/cifs/readdir.c b/fs/cifs/readdir.c index d19f1996a6ea..d116ca8ce4c0 100644 --- a/fs/cifs/readdir.c +++ b/fs/cifs/readdir.c | |||
@@ -753,7 +753,7 @@ static int cifs_filldir(char *find_entry, struct file *file, | |||
753 | */ | 753 | */ |
754 | fattr.cf_flags |= CIFS_FATTR_NEED_REVAL; | 754 | fattr.cf_flags |= CIFS_FATTR_NEED_REVAL; |
755 | 755 | ||
756 | cifs_prime_dcache(file->f_dentry, &name, &fattr); | 756 | cifs_prime_dcache(file->f_path.dentry, &name, &fattr); |
757 | 757 | ||
758 | ino = cifs_uniqueid_to_ino_t(fattr.cf_uniqueid); | 758 | ino = cifs_uniqueid_to_ino_t(fattr.cf_uniqueid); |
759 | return !dir_emit(ctx, name.name, name.len, ino, fattr.cf_dtype); | 759 | return !dir_emit(ctx, name.name, name.len, ino, fattr.cf_dtype); |
diff --git a/fs/ecryptfs/crypto.c b/fs/ecryptfs/crypto.c index 2f6735dbf1a9..c2d6604667b0 100644 --- a/fs/ecryptfs/crypto.c +++ b/fs/ecryptfs/crypto.c | |||
@@ -1373,7 +1373,7 @@ out: | |||
1373 | int ecryptfs_read_xattr_region(char *page_virt, struct inode *ecryptfs_inode) | 1373 | int ecryptfs_read_xattr_region(char *page_virt, struct inode *ecryptfs_inode) |
1374 | { | 1374 | { |
1375 | struct dentry *lower_dentry = | 1375 | struct dentry *lower_dentry = |
1376 | ecryptfs_inode_to_private(ecryptfs_inode)->lower_file->f_dentry; | 1376 | ecryptfs_inode_to_private(ecryptfs_inode)->lower_file->f_path.dentry; |
1377 | ssize_t size; | 1377 | ssize_t size; |
1378 | int rc = 0; | 1378 | int rc = 0; |
1379 | 1379 | ||
diff --git a/fs/ecryptfs/mmap.c b/fs/ecryptfs/mmap.c index 564a1fa34b99..4626976794e7 100644 --- a/fs/ecryptfs/mmap.c +++ b/fs/ecryptfs/mmap.c | |||
@@ -419,7 +419,7 @@ static int ecryptfs_write_inode_size_to_xattr(struct inode *ecryptfs_inode) | |||
419 | ssize_t size; | 419 | ssize_t size; |
420 | void *xattr_virt; | 420 | void *xattr_virt; |
421 | struct dentry *lower_dentry = | 421 | struct dentry *lower_dentry = |
422 | ecryptfs_inode_to_private(ecryptfs_inode)->lower_file->f_dentry; | 422 | ecryptfs_inode_to_private(ecryptfs_inode)->lower_file->f_path.dentry; |
423 | struct inode *lower_inode = lower_dentry->d_inode; | 423 | struct inode *lower_inode = lower_dentry->d_inode; |
424 | int rc; | 424 | int rc; |
425 | 425 | ||
diff --git a/fs/efivarfs/file.c b/fs/efivarfs/file.c index cdb2971192a5..90001da9abfd 100644 --- a/fs/efivarfs/file.c +++ b/fs/efivarfs/file.c | |||
@@ -47,8 +47,8 @@ static ssize_t efivarfs_file_write(struct file *file, | |||
47 | 47 | ||
48 | if (bytes == -ENOENT) { | 48 | if (bytes == -ENOENT) { |
49 | drop_nlink(inode); | 49 | drop_nlink(inode); |
50 | d_delete(file->f_dentry); | 50 | d_delete(file->f_path.dentry); |
51 | dput(file->f_dentry); | 51 | dput(file->f_path.dentry); |
52 | } else { | 52 | } else { |
53 | mutex_lock(&inode->i_mutex); | 53 | mutex_lock(&inode->i_mutex); |
54 | i_size_write(inode, datasize + sizeof(attributes)); | 54 | i_size_write(inode, datasize + sizeof(attributes)); |
@@ -154,7 +154,7 @@ SYSCALL_DEFINE1(syncfs, int, fd) | |||
154 | 154 | ||
155 | if (!f.file) | 155 | if (!f.file) |
156 | return -EBADF; | 156 | return -EBADF; |
157 | sb = f.file->f_dentry->d_sb; | 157 | sb = f.file->f_path.dentry->d_sb; |
158 | 158 | ||
159 | down_read(&sb->s_umount); | 159 | down_read(&sb->s_umount); |
160 | ret = sync_filesystem(sb); | 160 | ret = sync_filesystem(sb); |
diff --git a/include/linux/cgroup.h b/include/linux/cgroup.h index 1d5196889048..27b0c9105da5 100644 --- a/include/linux/cgroup.h +++ b/include/linux/cgroup.h | |||
@@ -367,8 +367,8 @@ struct css_set { | |||
367 | * struct cftype: handler definitions for cgroup control files | 367 | * struct cftype: handler definitions for cgroup control files |
368 | * | 368 | * |
369 | * When reading/writing to a file: | 369 | * When reading/writing to a file: |
370 | * - the cgroup to use is file->f_dentry->d_parent->d_fsdata | 370 | * - the cgroup to use is file->f_path.dentry->d_parent->d_fsdata |
371 | * - the 'cftype' of the file is file->f_dentry->d_fsdata | 371 | * - the 'cftype' of the file is file->f_path.dentry->d_fsdata |
372 | */ | 372 | */ |
373 | 373 | ||
374 | /* cftype->flags */ | 374 | /* cftype->flags */ |
diff --git a/kernel/auditsc.c b/kernel/auditsc.c index e420a0c41b5f..06820657c8ca 100644 --- a/kernel/auditsc.c +++ b/kernel/auditsc.c | |||
@@ -2373,7 +2373,7 @@ int __audit_log_bprm_fcaps(struct linux_binprm *bprm, | |||
2373 | ax->d.next = context->aux; | 2373 | ax->d.next = context->aux; |
2374 | context->aux = (void *)ax; | 2374 | context->aux = (void *)ax; |
2375 | 2375 | ||
2376 | dentry = dget(bprm->file->f_dentry); | 2376 | dentry = dget(bprm->file->f_path.dentry); |
2377 | get_vfs_caps_from_disk(dentry, &vcaps); | 2377 | get_vfs_caps_from_disk(dentry, &vcaps); |
2378 | dput(dentry); | 2378 | dput(dentry); |
2379 | 2379 | ||
diff --git a/kernel/events/core.c b/kernel/events/core.c index 1425d07018de..446fbeefad1c 100644 --- a/kernel/events/core.c +++ b/kernel/events/core.c | |||
@@ -614,7 +614,7 @@ static inline int perf_cgroup_connect(int fd, struct perf_event *event, | |||
614 | if (!f.file) | 614 | if (!f.file) |
615 | return -EBADF; | 615 | return -EBADF; |
616 | 616 | ||
617 | css = css_tryget_online_from_dir(f.file->f_dentry, | 617 | css = css_tryget_online_from_dir(f.file->f_path.dentry, |
618 | &perf_event_cgrp_subsys); | 618 | &perf_event_cgrp_subsys); |
619 | if (IS_ERR(css)) { | 619 | if (IS_ERR(css)) { |
620 | ret = PTR_ERR(css); | 620 | ret = PTR_ERR(css); |
diff --git a/kernel/taskstats.c b/kernel/taskstats.c index b312fcc73024..670fff88a961 100644 --- a/kernel/taskstats.c +++ b/kernel/taskstats.c | |||
@@ -459,7 +459,7 @@ static int cgroupstats_user_cmd(struct sk_buff *skb, struct genl_info *info) | |||
459 | stats = nla_data(na); | 459 | stats = nla_data(na); |
460 | memset(stats, 0, sizeof(*stats)); | 460 | memset(stats, 0, sizeof(*stats)); |
461 | 461 | ||
462 | rc = cgroupstats_build(stats, f.file->f_dentry); | 462 | rc = cgroupstats_build(stats, f.file->f_path.dentry); |
463 | if (rc < 0) { | 463 | if (rc < 0) { |
464 | nlmsg_free(rep_skb); | 464 | nlmsg_free(rep_skb); |
465 | goto err; | 465 | goto err; |
diff --git a/mm/memcontrol.c b/mm/memcontrol.c index 23976fd885fd..8c3385181b16 100644 --- a/mm/memcontrol.c +++ b/mm/memcontrol.c | |||
@@ -5055,7 +5055,7 @@ static ssize_t memcg_write_event_control(struct kernfs_open_file *of, | |||
5055 | * | 5055 | * |
5056 | * DO NOT ADD NEW FILES. | 5056 | * DO NOT ADD NEW FILES. |
5057 | */ | 5057 | */ |
5058 | name = cfile.file->f_dentry->d_name.name; | 5058 | name = cfile.file->f_path.dentry->d_name.name; |
5059 | 5059 | ||
5060 | if (!strcmp(name, "memory.usage_in_bytes")) { | 5060 | if (!strcmp(name, "memory.usage_in_bytes")) { |
5061 | event->register_event = mem_cgroup_usage_register_event; | 5061 | event->register_event = mem_cgroup_usage_register_event; |
@@ -5079,7 +5079,7 @@ static ssize_t memcg_write_event_control(struct kernfs_open_file *of, | |||
5079 | * automatically removed on cgroup destruction but the removal is | 5079 | * automatically removed on cgroup destruction but the removal is |
5080 | * asynchronous, so take an extra ref on @css. | 5080 | * asynchronous, so take an extra ref on @css. |
5081 | */ | 5081 | */ |
5082 | cfile_css = css_tryget_online_from_dir(cfile.file->f_dentry->d_parent, | 5082 | cfile_css = css_tryget_online_from_dir(cfile.file->f_path.dentry->d_parent, |
5083 | &memory_cgrp_subsys); | 5083 | &memory_cgrp_subsys); |
5084 | ret = -EINVAL; | 5084 | ret = -EINVAL; |
5085 | if (IS_ERR(cfile_css)) | 5085 | if (IS_ERR(cfile_css)) |
diff --git a/security/commoncap.c b/security/commoncap.c index bab0611afc1e..2915d8503054 100644 --- a/security/commoncap.c +++ b/security/commoncap.c | |||
@@ -446,7 +446,7 @@ static int get_file_caps(struct linux_binprm *bprm, bool *effective, bool *has_c | |||
446 | if (bprm->file->f_path.mnt->mnt_flags & MNT_NOSUID) | 446 | if (bprm->file->f_path.mnt->mnt_flags & MNT_NOSUID) |
447 | return 0; | 447 | return 0; |
448 | 448 | ||
449 | dentry = dget(bprm->file->f_dentry); | 449 | dentry = dget(bprm->file->f_path.dentry); |
450 | 450 | ||
451 | rc = get_vfs_caps_from_disk(dentry, &vcaps); | 451 | rc = get_vfs_caps_from_disk(dentry, &vcaps); |
452 | if (rc < 0) { | 452 | if (rc < 0) { |
diff --git a/security/integrity/ima/ima_api.c b/security/integrity/ima/ima_api.c index 86885979918c..f92be1b14089 100644 --- a/security/integrity/ima/ima_api.c +++ b/security/integrity/ima/ima_api.c | |||
@@ -196,7 +196,7 @@ int ima_collect_measurement(struct integrity_iint_cache *iint, | |||
196 | { | 196 | { |
197 | const char *audit_cause = "failed"; | 197 | const char *audit_cause = "failed"; |
198 | struct inode *inode = file_inode(file); | 198 | struct inode *inode = file_inode(file); |
199 | const char *filename = file->f_dentry->d_name.name; | 199 | const char *filename = file->f_path.dentry->d_name.name; |
200 | int result = 0; | 200 | int result = 0; |
201 | struct { | 201 | struct { |
202 | struct ima_digest_data hdr; | 202 | struct ima_digest_data hdr; |
@@ -204,7 +204,7 @@ int ima_collect_measurement(struct integrity_iint_cache *iint, | |||
204 | } hash; | 204 | } hash; |
205 | 205 | ||
206 | if (xattr_value) | 206 | if (xattr_value) |
207 | *xattr_len = ima_read_xattr(file->f_dentry, xattr_value); | 207 | *xattr_len = ima_read_xattr(file->f_path.dentry, xattr_value); |
208 | 208 | ||
209 | if (!(iint->flags & IMA_COLLECTED)) { | 209 | if (!(iint->flags & IMA_COLLECTED)) { |
210 | u64 i_version = file_inode(file)->i_version; | 210 | u64 i_version = file_inode(file)->i_version; |
diff --git a/security/integrity/ima/ima_appraise.c b/security/integrity/ima/ima_appraise.c index 922685483bd3..c2f203accbd1 100644 --- a/security/integrity/ima/ima_appraise.c +++ b/security/integrity/ima/ima_appraise.c | |||
@@ -189,7 +189,7 @@ int ima_appraise_measurement(int func, struct integrity_iint_cache *iint, | |||
189 | { | 189 | { |
190 | static const char op[] = "appraise_data"; | 190 | static const char op[] = "appraise_data"; |
191 | char *cause = "unknown"; | 191 | char *cause = "unknown"; |
192 | struct dentry *dentry = file->f_dentry; | 192 | struct dentry *dentry = file->f_path.dentry; |
193 | struct inode *inode = dentry->d_inode; | 193 | struct inode *inode = dentry->d_inode; |
194 | enum integrity_status status = INTEGRITY_UNKNOWN; | 194 | enum integrity_status status = INTEGRITY_UNKNOWN; |
195 | int rc = xattr_len, hash_start = 0; | 195 | int rc = xattr_len, hash_start = 0; |
@@ -289,7 +289,7 @@ out: | |||
289 | */ | 289 | */ |
290 | void ima_update_xattr(struct integrity_iint_cache *iint, struct file *file) | 290 | void ima_update_xattr(struct integrity_iint_cache *iint, struct file *file) |
291 | { | 291 | { |
292 | struct dentry *dentry = file->f_dentry; | 292 | struct dentry *dentry = file->f_path.dentry; |
293 | int rc = 0; | 293 | int rc = 0; |
294 | 294 | ||
295 | /* do not collect and update hash for digital signatures */ | 295 | /* do not collect and update hash for digital signatures */ |
diff --git a/security/integrity/ima/ima_template_lib.c b/security/integrity/ima/ima_template_lib.c index 1506f0248572..bcfc36cbde6a 100644 --- a/security/integrity/ima/ima_template_lib.c +++ b/security/integrity/ima/ima_template_lib.c | |||
@@ -284,7 +284,7 @@ static int ima_eventname_init_common(struct integrity_iint_cache *iint, | |||
284 | } | 284 | } |
285 | 285 | ||
286 | if (file) { | 286 | if (file) { |
287 | cur_filename = file->f_dentry->d_name.name; | 287 | cur_filename = file->f_path.dentry->d_name.name; |
288 | cur_filename_len = strlen(cur_filename); | 288 | cur_filename_len = strlen(cur_filename); |
289 | } else | 289 | } else |
290 | /* | 290 | /* |