X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;ds=sidebyside;f=drivers%2Foprofile%2Foprofilefs.c;h=d6bae699749af49785577284c130e5128c28e9d3;hb=6a77f38946aaee1cd85eeec6cf4229b204c15071;hp=d9746f1b51376d042f9bfc22db777e56c10745e3;hpb=87fc8d1bb10cd459024a742c6a10961fefcef18f;p=linux-2.6.git diff --git a/drivers/oprofile/oprofilefs.c b/drivers/oprofile/oprofilefs.c index d9746f1b5..d6bae6997 100644 --- a/drivers/oprofile/oprofilefs.c +++ b/drivers/oprofile/oprofilefs.c @@ -21,7 +21,7 @@ #define OPROFILEFS_MAGIC 0x6f70726f -spinlock_t oprofilefs_lock = SPIN_LOCK_UNLOCKED; +DEFINE_SPINLOCK(oprofilefs_lock); static struct inode * oprofilefs_get_inode(struct super_block * sb, int mode) { @@ -135,11 +135,8 @@ static struct dentry * __oprofilefs_create_file(struct super_block * sb, { struct dentry * dentry; struct inode * inode; - struct qstr qname; - qname.name = name; - qname.len = strlen(name); - qname.hash = full_name_hash(qname.name, qname.len); - dentry = d_alloc(root, &qname); + + dentry = d_alloc_name(root, name); if (!dentry) return NULL; inode = oprofilefs_get_inode(sb, S_IFREG | perm); @@ -228,11 +225,8 @@ struct dentry * oprofilefs_mkdir(struct super_block * sb, { struct dentry * dentry; struct inode * inode; - struct qstr qname; - qname.name = name; - qname.len = strlen(name); - qname.hash = full_name_hash(qname.name, qname.len); - dentry = d_alloc(root, &qname); + + dentry = d_alloc_name(root, name); if (!dentry) return NULL; inode = oprofilefs_get_inode(sb, S_IFDIR | 0755); @@ -256,6 +250,7 @@ static int oprofilefs_fill_super(struct super_block * sb, void * data, int silen sb->s_blocksize_bits = PAGE_CACHE_SHIFT; sb->s_magic = OPROFILEFS_MAGIC; sb->s_op = &s_ops; + sb->s_time_gran = 1; root_inode = oprofilefs_get_inode(sb, S_IFDIR | 0755); if (!root_inode)