X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=fs%2Fsysfs%2Fsysfs.h;h=ff5d1478a9fa0ae4625c49fe1ded17802adeb01e;hb=eb643825dab24bf61fe40ea800c5be013315220d;hp=96e390a7b99fdfa7b4697473ba3a6d1645917d39;hpb=86090fcac5e27b630656fe3d963a6b80e26dac44;p=linux-2.6.git diff --git a/fs/sysfs/sysfs.h b/fs/sysfs/sysfs.h index 96e390a7b..ff5d1478a 100644 --- a/fs/sysfs/sysfs.h +++ b/fs/sysfs/sysfs.h @@ -11,3 +11,19 @@ extern void sysfs_hash_and_remove(struct dentry * dir, const char * name); extern int sysfs_create_subdir(struct kobject *, const char *, struct dentry **); extern void sysfs_remove_subdir(struct dentry *); + +extern int sysfs_readlink(struct dentry *, char __user *, int ); +extern int sysfs_follow_link(struct dentry *, struct nameidata *); +extern struct rw_semaphore sysfs_rename_sem; + +static inline struct kobject *sysfs_get_kobject(struct dentry *dentry) +{ + struct kobject * kobj = NULL; + + spin_lock(&dcache_lock); + if (!d_unhashed(dentry)) + kobj = kobject_get(dentry->d_fsdata); + spin_unlock(&dcache_lock); + + return kobj; +}