diff options
author | Marc Dionne <marc.c.dionne@gmail.com> | 2009-12-01 09:09:24 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2009-12-01 10:35:11 -0500 |
commit | 3350b2acdd39d23db52710045536b943fe38a35c (patch) | |
tree | cafa0bd2883411209fd99aeddb92550802510298 | |
parent | fa1dae4906982b5d896c07613b1fe42456133b1c (diff) |
CacheFiles: Update IMA counters when using dentry_open
When IMA is active, using dentry_open without updating the
IMA counters will result in free/open imbalance errors when
fput is eventually called.
Signed-off-by: Marc Dionne <marc.c.dionne@gmail.com>
Signed-off-by: David Howells <dhowells@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-rw-r--r-- | fs/cachefiles/rdwr.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/fs/cachefiles/rdwr.c b/fs/cachefiles/rdwr.c index 1d8332563863..a6c8c6fe8df9 100644 --- a/fs/cachefiles/rdwr.c +++ b/fs/cachefiles/rdwr.c | |||
@@ -11,6 +11,7 @@ | |||
11 | 11 | ||
12 | #include <linux/mount.h> | 12 | #include <linux/mount.h> |
13 | #include <linux/file.h> | 13 | #include <linux/file.h> |
14 | #include <linux/ima.h> | ||
14 | #include "internal.h" | 15 | #include "internal.h" |
15 | 16 | ||
16 | /* | 17 | /* |
@@ -922,6 +923,7 @@ int cachefiles_write_page(struct fscache_storage *op, struct page *page) | |||
922 | if (IS_ERR(file)) { | 923 | if (IS_ERR(file)) { |
923 | ret = PTR_ERR(file); | 924 | ret = PTR_ERR(file); |
924 | } else { | 925 | } else { |
926 | ima_counts_get(file); | ||
925 | ret = -EIO; | 927 | ret = -EIO; |
926 | if (file->f_op->write) { | 928 | if (file->f_op->write) { |
927 | pos = (loff_t) page->index << PAGE_SHIFT; | 929 | pos = (loff_t) page->index << PAGE_SHIFT; |