aboutsummaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorMiklos Szeredi <mszeredi@suse.cz>2010-08-10 05:41:37 -0400
committerAl Viro <viro@zeniv.linux.org.uk>2010-08-11 00:28:21 -0400
commit7ae6bdbd9b9d42da53ea809875c0a6cda3de694c (patch)
tree859d250ba47b550a3b1135fa5faa0638e9a937c3 /arch
parentf7ad3c6be90809b53b7f0ae9d4eaa45ce2564a79 (diff)
ia64: perfmon: add d_dname method
Switch ia64/perfmon to using the d_dname() instead of relying on __d_path() to prepend the name of the root dentry to the path. CC: Tony Luck <tony.luck@intel.com> CC: Fenghua Yu <fenghua.yu@intel.com> Signed-off-by: Miklos Szeredi <mszeredi@suse.cz> Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'arch')
-rw-r--r--arch/ia64/kernel/perfmon.c15
1 files changed, 8 insertions, 7 deletions
diff --git a/arch/ia64/kernel/perfmon.c b/arch/ia64/kernel/perfmon.c
index 744329072f33..cce050e85c73 100644
--- a/arch/ia64/kernel/perfmon.c
+++ b/arch/ia64/kernel/perfmon.c
@@ -2191,8 +2191,15 @@ pfmfs_delete_dentry(struct dentry *dentry)
2191 return 1; 2191 return 1;
2192} 2192}
2193 2193
2194static char *pfmfs_dname(struct dentry *dentry, char *buffer, int buflen)
2195{
2196 return dynamic_dname(dentry, buffer, buflen, "pfm:[%lu]",
2197 dentry->d_inode->i_ino);
2198}
2199
2194static const struct dentry_operations pfmfs_dentry_operations = { 2200static const struct dentry_operations pfmfs_dentry_operations = {
2195 .d_delete = pfmfs_delete_dentry, 2201 .d_delete = pfmfs_delete_dentry,
2202 .d_dname = pfmfs_dname,
2196}; 2203};
2197 2204
2198 2205
@@ -2202,8 +2209,7 @@ pfm_alloc_file(pfm_context_t *ctx)
2202 struct file *file; 2209 struct file *file;
2203 struct inode *inode; 2210 struct inode *inode;
2204 struct path path; 2211 struct path path;
2205 char name[32]; 2212 struct qstr this = { .name = "" };
2206 struct qstr this;
2207 2213
2208 /* 2214 /*
2209 * allocate a new inode 2215 * allocate a new inode
@@ -2218,11 +2224,6 @@ pfm_alloc_file(pfm_context_t *ctx)
2218 inode->i_uid = current_fsuid(); 2224 inode->i_uid = current_fsuid();
2219 inode->i_gid = current_fsgid(); 2225 inode->i_gid = current_fsgid();
2220 2226
2221 sprintf(name, "[%lu]", inode->i_ino);
2222 this.name = name;
2223 this.len = strlen(name);
2224 this.hash = inode->i_ino;
2225
2226 /* 2227 /*
2227 * allocate a new dcache entry 2228 * allocate a new dcache entry
2228 */ 2229 */