lkml.org 
[lkml]   [2003]   [Jul]   [3]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
SubjectRe: [PATCH] PCI and sysfs fixes for 2.5.74
From
Date
ChangeSet 1.1374, 2003/07/03 17:43:18-07:00, greg@kroah.com

[PATCH] sysfs: add sysfs_rename_dir()
Based on a patch written by Dan Aloni <da-x@gmx.net>


fs/sysfs/dir.c | 22 ++++++++++++++++++++++
include/linux/sysfs.h | 3 +++
2 files changed, 25 insertions(+)


diff -Nru a/fs/sysfs/dir.c b/fs/sysfs/dir.c
--- a/fs/sysfs/dir.c Thu Jul 3 18:15:51 2003
+++ b/fs/sysfs/dir.c Thu Jul 3 18:15:51 2003
@@ -121,7 +121,29 @@
dput(parent);
}

+void sysfs_rename_dir(struct kobject * kobj, char *new_name)
+{
+ struct dentry * new_dentry, * parent;
+
+ if (!strcmp(kobj->name, new_name))
+ return;
+
+ if (!kobj->parent)
+ return;
+
+ parent = kobj->parent->dentry;
+
+ down(&parent->d_inode->i_sem);
+
+ new_dentry = sysfs_get_dentry(parent, new_name);
+ d_move(kobj->dentry, new_dentry);
+
+ strlcpy(kobj->name, new_name, KOBJ_NAME_LEN);
+
+ up(&parent->d_inode->i_sem);
+}

EXPORT_SYMBOL(sysfs_create_dir);
EXPORT_SYMBOL(sysfs_remove_dir);
+EXPORT_SYMBOL(sysfs_rename_dir);

diff -Nru a/include/linux/sysfs.h b/include/linux/sysfs.h
--- a/include/linux/sysfs.h Thu Jul 3 18:15:51 2003
+++ b/include/linux/sysfs.h Thu Jul 3 18:15:51 2003
@@ -39,6 +39,9 @@
extern void
sysfs_remove_dir(struct kobject *);

+extern void
+sysfs_rename_dir(struct kobject *, char *new_name);
+
extern int
sysfs_create_file(struct kobject *, struct attribute *);

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 13:46    [W:0.058 / U:0.968 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site