[PATCH 04/25] sysfs: Make sysfs_mount static

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
From: Eric W. Biederman
Date: Tuesday, August 7, 2007 - 2:11 pm

This patch modifies the users of sysfs_mount to use sysfs_root
instead (which is what they are looking for).  It then
makes sysfs_mount static to keep people from using it
by accident.

The net result is slightly faster and cleaner code.

Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
---
 fs/sysfs/dir.c     |    4 +---
 fs/sysfs/mount.c   |    2 +-
 fs/sysfs/symlink.c |    7 +++----
 fs/sysfs/sysfs.h   |    1 -
 4 files changed, 5 insertions(+), 9 deletions(-)

diff --git a/fs/sysfs/dir.c b/fs/sysfs/dir.c
index 55d8299..39df3ce 100644
--- a/fs/sysfs/dir.c
+++ b/fs/sysfs/dir.c
@@ -735,10 +735,8 @@ int sysfs_create_dir(struct kobject * kobj)
 
 	if (kobj->parent)
 		parent_sd = kobj->parent->sd;
-	else if (sysfs_mount && sysfs_mount->mnt_sb)
-		parent_sd = sysfs_mount->mnt_sb->s_root->d_fsdata;
 	else
-		return -EFAULT;
+		parent_sd = &sysfs_root;
 
 	error = create_dir(kobj, parent_sd, kobject_name(kobj), &sd);
 	if (!error)
diff --git a/fs/sysfs/mount.c b/fs/sysfs/mount.c
index d1094c6..9fae7d5 100644
--- a/fs/sysfs/mount.c
+++ b/fs/sysfs/mount.c
@@ -15,7 +15,7 @@
 /* Random magic number */
 #define SYSFS_MAGIC 0x62656572
 
-struct vfsmount *sysfs_mount;
+static struct vfsmount *sysfs_mount;
 struct super_block * sysfs_sb = NULL;
 struct kmem_cache *sysfs_dir_cachep;
 
diff --git a/fs/sysfs/symlink.c b/fs/sysfs/symlink.c
index f77ad61..46f8fd4 100644
--- a/fs/sysfs/symlink.c
+++ b/fs/sysfs/symlink.c
@@ -60,10 +60,9 @@ int sysfs_create_link(struct kobject * kobj, struct kobject * target, const char
 
 	BUG_ON(!name);
 
-	if (!kobj) {
-		if (sysfs_mount && sysfs_mount->mnt_sb)
-			parent_sd = sysfs_mount->mnt_sb->s_root->d_fsdata;
-	} else
+	if (!kobj)
+		parent_sd = &sysfs_root;
+	else
 		parent_sd = kobj->sd;
 
 	error = -EFAULT;
diff --git a/fs/sysfs/sysfs.h b/fs/sysfs/sysfs.h
index 8a0aea1..77253aa 100644
--- a/fs/sysfs/sysfs.h
+++ b/fs/sysfs/sysfs.h
@@ -51,7 +51,6 @@ struct sysfs_addrm_cxt {
 	int			cnt;
 };
 
-extern struct vfsmount * sysfs_mount;
 extern struct sysfs_dirent sysfs_root;
 extern struct kmem_cache *sysfs_dir_cachep;
 
-- 
1.5.1.1.181.g2de0

-
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
[PATCH 2/5] sysfs: simplify sysfs_rename_dir(), Tejun Heo, (Thu Aug 2, 5:38 am)
[PATCH 0/25] Sysfs cleanups &amp; tagged directory support, Eric W. Biederman, (Tue Aug 7, 2:06 pm)
[PATCH 02/25] sysfs: Remove sysfs_instantiate, Eric W. Biederman, (Tue Aug 7, 2:08 pm)
[PATCH 03/25] sysfs: Use kill_anon_super, Eric W. Biederman, (Tue Aug 7, 2:10 pm)
[PATCH 04/25] sysfs: Make sysfs_mount static, Eric W. Biederman, (Tue Aug 7, 2:11 pm)
[PATCH 06/25] sysfs: Simplify readdir., Eric W. Biederman, (Tue Aug 7, 2:13 pm)
[PATCH 07/25] sysfs: Rewrite sysfs_drop_dentry., Eric W. Biederman, (Tue Aug 7, 2:14 pm)
[PATCH 08/25] sysfs: Implement __sysfs_get_dentry, Eric W. Biederman, (Tue Aug 7, 2:16 pm)
[PATCH 10/25] sysfs: Rewrite sysfs_get_dentry in terms of ..., Eric W. Biederman, (Tue Aug 7, 2:18 pm)
[PATCH 11/25] sysfs: Remove s_dentry, Eric W. Biederman, (Tue Aug 7, 2:19 pm)
[PATCH 12/25] sysfs: Introduce sysfs_rename_mutex, Eric W. Biederman, (Tue Aug 7, 2:21 pm)
[PATCH 13/25] sysfs: Simply sysfs_get_dentry, Eric W. Biederman, (Tue Aug 7, 2:22 pm)
[PATCH 14/25] sysfs: Don't use lookup_one_len_kern, Eric W. Biederman, (Tue Aug 7, 2:23 pm)
[PATCH 15/25] vfs: Remove lookup_one_len_kern, Eric W. Biederman, (Tue Aug 7, 2:25 pm)
[PATCH 16/25] sysfs: Support for preventing unmounts., Eric W. Biederman, (Tue Aug 7, 2:26 pm)
[PATCH 17/25] sysfs: Rewrite rename in terms of sysfs dirents, Eric W. Biederman, (Tue Aug 7, 2:27 pm)
[PATCH 19/25] sysfs: sysfs_get_dentry add a sb parameter, Eric W. Biederman, (Tue Aug 7, 2:29 pm)
[PATCH 20/25] sysfs: Rename Support multiple superblocks, Eric W. Biederman, (Tue Aug 7, 2:31 pm)
Re: [PATCH 02/25] sysfs: Remove sysfs_instantiate, Tejun Heo, (Tue Aug 7, 11:37 pm)
Re: [PATCH 03/25] sysfs: Use kill_anon_super, Tejun Heo, (Tue Aug 7, 11:50 pm)
Re: [PATCH 04/25] sysfs: Make sysfs_mount static, Tejun Heo, (Tue Aug 7, 11:51 pm)
Re: [PATCH 06/25] sysfs: Simplify readdir., Tejun Heo, (Wed Aug 8, 12:12 am)
Re: [PATCH 07/25] sysfs: Rewrite sysfs_drop_dentry., Tejun Heo, (Wed Aug 8, 12:35 am)
Re: [PATCH 11/25] sysfs: Remove s_dentry, Tejun Heo, (Wed Aug 8, 12:46 am)
Re: [PATCH 0/25] Sysfs cleanups &amp; tagged directory support, Eric W. Biederman, (Wed Aug 8, 12:47 am)
Re: [PATCH 0/25] Sysfs cleanups &amp; tagged directory support, Eric W. Biederman, (Wed Aug 8, 12:57 am)
Re: [PATCH 13/25] sysfs: Simply sysfs_get_dentry, Tejun Heo, (Wed Aug 8, 1:24 am)
Re: [PATCH 12/25] sysfs: Introduce sysfs_rename_mutex, Eric W. Biederman, (Wed Aug 8, 1:28 am)
Re: [PATCH 15/25] vfs: Remove lookup_one_len_kern, Tejun Heo, (Wed Aug 8, 1:39 am)
Re: [PATCH 14/25] sysfs: Don't use lookup_one_len_kern, Eric W. Biederman, (Wed Aug 8, 8:26 am)
Re: [PATCH 17/25] sysfs: Rewrite rename in terms of sysfs ..., Eric W. Biederman, (Wed Aug 8, 8:32 am)
Re: [PATCH 19/25] sysfs: sysfs_get_dentry add a sb parameter, Eric W. Biederman, (Wed Aug 8, 8:34 am)
Re: [PATCH 20/25] sysfs: Rename Support multiple superblocks, Eric W. Biederman, (Wed Aug 8, 8:45 am)
Re: alternative approached at tagged nodes, Tejun Heo, (Wed Aug 8, 9:31 am)
Re: [PATCH 20/25] sysfs: Rename Support multiple superblocks, Eric W. Biederman, (Wed Aug 8, 9:35 am)
Re: [PATCH 20/25] sysfs: Rename Support multiple superblocks, Eric W. Biederman, (Wed Aug 8, 9:55 am)