All of lore.kernel.org
 help / color / mirror / Atom feed
From: John Zielinski <grim@undead.cc>
To: linux-kernel@vger.kernel.org
Subject: [RFC] sysfs kobject that doesn't trigger hotplug events
Date: Tue, 18 May 2004 22:11:56 -0400	[thread overview]
Message-ID: <40AAC26C.2080803@undead.cc> (raw)

[-- Attachment #1: Type: text/plain, Size: 728 bytes --]

I'm adding some data structures to a device and want them to appear 
under that device in sysfs in subdirectories.  These data structures are 
linked together in a tree like layout so it would make sense to have 
them have a subdirectory tree representing them.  These data structures 
have a kobject for reference counting and I can use kobject_add and 
kobject_del to add them to the sysfs tree.

Looking through the kobject.c code I noticed that this would create a 
lot of hotplug events which would burn up a bit of processor time.  
These events are not necessary as these are not device kobjects.  I've 
enclosed a patch to my solution for this.  I'd like to know if there are 
any side effects with this method.

John



[-- Attachment #2: kobject_no_hotplug --]
[-- Type: text/plain, Size: 826 bytes --]

diff -urNX dontdiff linux-2.6.6/include/linux/kobject.h linux/include/linux/kobject.h
--- linux-2.6.6/include/linux/kobject.h	2004-05-09 22:31:59.000000000 -0400
+++ linux/include/linux/kobject.h	2004-05-18 20:29:43.000000000 -0400
@@ -62,6 +62,7 @@
 	void (*release)(struct kobject *);
 	struct sysfs_ops	* sysfs_ops;
 	struct attribute	** default_attrs;
+	int			no_hotplug;
 };
 
 
diff -urNX dontdiff linux-2.6.6/lib/kobject.c linux/lib/kobject.c
--- linux-2.6.6/lib/kobject.c	2004-05-09 22:33:19.000000000 -0400
+++ linux/lib/kobject.c	2004-05-18 20:50:42.000000000 -0400
@@ -203,6 +203,9 @@
 {
 	struct kobject * top_kobj = kobj;
 
+	if (kobj->ktype && kobj->ktype->no_hotplug)
+		return;
+
 	/* If this kobj does not belong to a kset,
 	   try to find a parent that does. */
 	if (!top_kobj->kset && top_kobj->parent) {

             reply	other threads:[~2004-05-19  2:12 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-05-19  2:11 John Zielinski [this message]
2004-05-19  3:18 ` [RFC] sysfs kobject that doesn't trigger hotplug events Dmitry Torokhov
2004-05-21  1:19   ` John Zielinski
2004-05-19  3:34 ` Greg KH
2004-05-19  4:43   ` John Zielinski
2004-05-19  5:16     ` Greg KH
2004-05-22  1:38       ` John Zielinski

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=40AAC26C.2080803@undead.cc \
    --to=grim@undead.cc \
    --cc=linux-kernel@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.