diff options
author | David S. Miller <davem@davemloft.net> | 2010-01-04 15:33:22 -0800 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2010-01-04 15:33:22 -0800 |
commit | 5958eed76ccc8c361f872829bdc4b8c6dc9cd379 (patch) | |
tree | 8f8dfcced082db674b0ae3ca3af9fdb6dde59dae /arch/ia64/kernel/perfmon.c | |
parent | c7c17c2779075e675cb3c7fe2ecde67e226771fb (diff) | |
parent | c5974b835a909ff15c3b7e6cf6789b5eb919f419 (diff) | |
download | kernel-crypto-5958eed76ccc8c361f872829bdc4b8c6dc9cd379.tar.gz kernel-crypto-5958eed76ccc8c361f872829bdc4b8c6dc9cd379.tar.xz kernel-crypto-5958eed76ccc8c361f872829bdc4b8c6dc9cd379.zip |
Merge branch 'master' of /home/davem/src/GIT/linux-2.6/
Diffstat (limited to 'arch/ia64/kernel/perfmon.c')
-rw-r--r-- | arch/ia64/kernel/perfmon.c | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/arch/ia64/kernel/perfmon.c b/arch/ia64/kernel/perfmon.c index 599b233bef7..5246285a95f 100644 --- a/arch/ia64/kernel/perfmon.c +++ b/arch/ia64/kernel/perfmon.c @@ -2200,7 +2200,7 @@ pfm_alloc_file(pfm_context_t *ctx) { struct file *file; struct inode *inode; - struct dentry *dentry; + struct path path; char name[32]; struct qstr this; @@ -2225,18 +2225,19 @@ pfm_alloc_file(pfm_context_t *ctx) /* * allocate a new dcache entry */ - dentry = d_alloc(pfmfs_mnt->mnt_sb->s_root, &this); - if (!dentry) { + path.dentry = d_alloc(pfmfs_mnt->mnt_sb->s_root, &this); + if (!path.dentry) { iput(inode); return ERR_PTR(-ENOMEM); } + path.mnt = mntget(pfmfs_mnt); - dentry->d_op = &pfmfs_dentry_operations; - d_add(dentry, inode); + path.dentry->d_op = &pfmfs_dentry_operations; + d_add(path.dentry, inode); - file = alloc_file(pfmfs_mnt, dentry, FMODE_READ, &pfm_file_ops); + file = alloc_file(&path, FMODE_READ, &pfm_file_ops); if (!file) { - dput(dentry); + path_put(&path); return ERR_PTR(-ENFILE); } |