* [GIT PATCH] driver core fixes for 2.6.23-rc1
@ 2007-07-30 22:08 Greg KH
2007-07-30 22:09 ` [PATCH 01/11] HOWTO: adjust translation header of Japanese stable_api_nonsense.txt Greg Kroah-Hartman
0 siblings, 1 reply; 12+ messages in thread
From: Greg KH @ 2007-07-30 22:08 UTC (permalink / raw)
To: Linus Torvalds, Andrew Morton; +Cc: linux-kernel
Here are some driver core fixes and documentation updates against your
2.6.23-rc1 git tree.
They fix the CONFIG_HOTPLUG=n build error and help provide a better hint
at what is going wrong when loading modules cause sysfs errors. And
there are a bunch of documentation updates in here too, as well as a
driver model fix that causes some people problems with the input
subsystem.
Please pull from:
master.kernel.org:/pub/scm/linux/kernel/git/gregkh/driver-2.6.git/
Patches will be sent as a follow-on to this message to lkml for people
to see.
thanks,
greg k-h
Documentation/ja_JP/HOWTO | 66 +++++-----
Documentation/ja_JP/stable_api_nonsense.txt | 20 ++--
Documentation/kobject.txt | 178 +++++++++------------------
Documentation/stable_api_nonsense.txt | 2 +-
Documentation/sysfs-rules.txt | 72 +++++------
drivers/base/core.c | 5 +-
drivers/base/firmware_class.c | 1 +
drivers/pci/pci.c | 2 +-
include/linux/kobject.h | 26 ++--
kernel/params.c | 7 +-
lib/kobject_uevent.c | 16 ++--
11 files changed, 171 insertions(+), 224 deletions(-)
---------------
Cornelia Huck (3):
kobject: fix link error when CONFIG_HOTPLUG is disabled
driver core: revert "device" link creation check
kobject: update documentation
Greg Kroah-Hartman (2):
kobject: put kobject_actions in kobject.h
modules: better error messages when modules fail to load due to a sysfs problem.
IKEDA, Munehiro (1):
HOWTO: adjust translation header of Japanese stable_api_nonsense.txt
Juan Lang (1):
stable_api_nonsense.txt: Disambiguate the use of "this" by using "that" to refer to the syscall interface
Randy Dunlap (3):
kernel-doc fixes for PCI and drivers/base/
Fix Doc/sysfs-rules typos
kset: kernel-doc cleanups
Tsugikazu Shibata (1):
HOWTO: sync Japanese HOWTO
^ permalink raw reply [flat|nested] 12+ messages in thread
* [PATCH 01/11] HOWTO: adjust translation header of Japanese stable_api_nonsense.txt
2007-07-30 22:08 [GIT PATCH] driver core fixes for 2.6.23-rc1 Greg KH
@ 2007-07-30 22:09 ` Greg Kroah-Hartman
2007-07-30 22:09 ` [PATCH 02/11] HOWTO: sync Japanese HOWTO Greg Kroah-Hartman
0 siblings, 1 reply; 12+ messages in thread
From: Greg Kroah-Hartman @ 2007-07-30 22:09 UTC (permalink / raw)
To: linux-kernel; +Cc: Greg Kroah-Hartman
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 1826 bytes --]
From: IKEDA, Munehiro <m-ikeda@ds.jp.nec.com>
Signed-off-by: IKEDA, Munehiro <m-ikeda@ds.jp.nec.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
---
Documentation/ja_JP/stable_api_nonsense.txt | 20 ++++++++++----------
1 files changed, 10 insertions(+), 10 deletions(-)
diff --git a/Documentation/ja_JP/stable_api_nonsense.txt b/Documentation/ja_JP/stable_api_nonsense.txt
index b3f2b27..7653b5c 100644
--- a/Documentation/ja_JP/stable_api_nonsense.txt
+++ b/Documentation/ja_JP/stable_api_nonsense.txt
@@ -1,17 +1,17 @@
NOTE:
-This is a Japanese translated version of
-"Documentation/stable_api_nonsense.txt".
-This one is maintained by
-IKEDA, Munehiro <m-ikeda@ds.jp.nec.com>
-and JF Project team <http://www.linux.or.jp/JF/>.
-If you find difference with original file or problem in translation,
+This is a version of Documentation/stable_api_nonsense.txt into Japanese.
+This document is maintained by IKEDA, Munehiro <m-ikeda@ds.jp.nec.com>
+and the JF Project team <http://www.linux.or.jp/JF/>.
+If you find any difference between this document and the original file
+or a problem with the translation,
please contact the maintainer of this file or JF project.
-Please also note that purpose of this file is easier to read for non
-English natives and not to be intended to fork. So, if you have any
-comments or updates of this file, please try to update
-Original(English) file at first.
+Please also note that the purpose of this file is to be easier to read
+for non English (read: Japanese) speakers and is not intended as a
+fork. So if you have any comments or updates of this file, please try
+to update the original English file first.
+Last Updated: 2007/07/18
==================================
これは、
linux-2.6.22-rc4/Documentation/stable_api_nonsense.txt の和訳
--
1.5.2.2
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [PATCH 02/11] HOWTO: sync Japanese HOWTO
2007-07-30 22:09 ` [PATCH 01/11] HOWTO: adjust translation header of Japanese stable_api_nonsense.txt Greg Kroah-Hartman
@ 2007-07-30 22:09 ` Greg Kroah-Hartman
2007-07-30 22:09 ` [PATCH 03/11] kobject: fix link error when CONFIG_HOTPLUG is disabled Greg Kroah-Hartman
0 siblings, 1 reply; 12+ messages in thread
From: Greg Kroah-Hartman @ 2007-07-30 22:09 UTC (permalink / raw)
To: linux-kernel; +Cc: Tsugikazu Shibata, Greg Kroah-Hartman
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 7458 bytes --]
From: Tsugikazu Shibata <tshibata@ab.jp.nec.com>
Signed-off-by: Tsugikazu Shibata <tshibata@ab.jp.nec.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
---
Documentation/ja_JP/HOWTO | 66 ++++++++++++++++++++++++---------------------
1 files changed, 35 insertions(+), 31 deletions(-)
diff --git a/Documentation/ja_JP/HOWTO b/Documentation/ja_JP/HOWTO
index b2446a0..9f08dab 100644
--- a/Documentation/ja_JP/HOWTO
+++ b/Documentation/ja_JP/HOWTO
@@ -1,23 +1,24 @@
-NOTE:
-This is Japanese translated version of "Documentation/HOWTO".
-This one is maintained by Tsugikazu Shibata <tshibata@ab.jp.nec.com>
-and JF Project team <www.linux.or.jp/JF>.
-If you find difference with original file or problem in translation,
-please contact maintainer of this file or JF project.
-
-Please also note that purpose of this file is easier to read for non
-English natives and not to be intended to fork. So, if you have any
-comments or updates of this file, please try to update Original(English)
-file at first.
-
-Last Updated: 2007/06/04
+NOTE:
+This is a version of Documentation/HOWTO translated into Japanese.
+This document is maintained by Tsugikazu Shibata <tshibata@ab.jp.nec.com>
+and the JF Project team <www.linux.or.jp/JF>.
+If you find any difference between this document and the original file
+or a problem with the translation,
+please contact the maintainer of this file or JF project.
+
+Please also note that the purpose of this file is to be easier to read
+for non English (read: Japanese) speakers and is not intended as a
+fork. So if you have any comments or updates for this file, please try
+to update the original English file first.
+
+Last Updated: 2007/07/18
==================================
ããã¯ã
-linux-2.6.21/Documentation/HOWTO
+linux-2.6.22/Documentation/HOWTO
ã®å訳ã§ãã
翻訳å£ä½ï¼ JF ããã¸ã§ã¯ã < http://www.linux.or.jp/JF/ >
-翻訳æ¥ï¼ 2007/06/04
+翻訳æ¥ï¼ 2007/07/16
翻訳è
ï¼ Tsugikazu Shibata <tshibata at ab dot jp dot nec dot com>
æ ¡æ£è
ï¼ æ¾åãã <nbh--mats at nifty dot com>
å°æ é
å
¸ãã (Masanori Kobayasi) <zap03216 at nifty dot ne dot jp>
@@ -52,6 +53,7 @@ Linux ã«ã¼ãã«éçºã³ãã¥ããã£ã¨å
±ã«æ´»åããããæ¹ãå¦ã
ã¾ãããã®ã³ãã¥ããã£ããªãä»ãã¾ãã¾ãã£ã¦ããã®ãã¨ããçç±ã®ä¸é¨ã
説æãããã¨è©¦ã¿ã¦ãã¾ãã
+
ã«ã¼ãã«ã¯ å°éã®ã¢ã¼ããã¯ãã£ä¾åé¨åãã¢ã»ã³ããªè¨èªã§æ¸ããã¦ãã
以å¤ã¯å¤§é¨å㯠C è¨èªã§æ¸ããã¦ãã¾ããCè¨èªãããçè§£ãã¦ãããã¨ã¯ã«ã¼
ãã«éçºè
ã«ã¯å¿
è¦ã§ããã¢ã¼ããã¯ãã£åãã®ä½ã¬ãã«é¨åã®éçºãããã®
@@ -141,6 +143,7 @@ Linux ã«ã¼ãã«ã½ã¼ã¹ããªã¼ã¯å¹
åºãç¯å²ã®ããã¥ã¡ã³ããå
ãããã®ã«ã¼ã«ã«å¾ãã°ãã¾ããããã¨ãä¿è¨¼ãããã¨ã§ã¯ããã¾ãã
ã (ãã¹ã¦ã®ãããã¯å
容ã¨ã¹ã¿ã¤ã«ã«ã¤ãã¦ç²¾æ»ãåããã®ã§)ã
ã«ã¼ã«ã«å¾ããªããã°ééããªããã¾ããããªãã§ãããã
+
ãã®ä»ã«ããããä½ãæ¹æ³ã«ã¤ãã¦ã®ããã§ããè¨è¿°ã¯-
"The Perfect Patch"
@@ -360,44 +363,42 @@ linux-kernel ã¡ã¼ãªã³ã°ãªã¹ãã§åéããã夿°ã®ãããã¨åæ
git ããªã¼-
- Kbuild ã®éçºããªã¼ãSam Ravnborg <sam@ravnborg.org>
- kernel.org:/pub/scm/linux/kernel/git/sam/kbuild.git
+ git.kernel.org:/pub/scm/linux/kernel/git/sam/kbuild.git
- ACPI ã®éçºããªã¼ã Len Brown <len.brown@intel.com>
- kernel.org:/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6.git
+ git.kernel.org:/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6.git
- Block ã®éçºããªã¼ãJens Axboe <axboe@suse.de>
- kernel.org:/pub/scm/linux/kernel/git/axboe/linux-2.6-block.git
+ git.kernel.org:/pub/scm/linux/kernel/git/axboe/linux-2.6-block.git
- DRM ã®éçºããªã¼ãDave Airlie <airlied@linux.ie>
- kernel.org:/pub/scm/linux/kernel/git/airlied/drm-2.6.git
+ git.kernel.org:/pub/scm/linux/kernel/git/airlied/drm-2.6.git
- ia64 ã®éçºããªã¼ãTony Luck <tony.luck@intel.com>
- kernel.org:/pub/scm/linux/kernel/git/aegl/linux-2.6.git
-
- - ieee1394 ã®éçºããªã¼ãJody McIntyre <scjody@modernduck.com>
- kernel.org:/pub/scm/linux/kernel/git/scjody/ieee1394.git
+ git.kernel.org:/pub/scm/linux/kernel/git/aegl/linux-2.6.git
- infiniband, Roland Dreier <rolandd@cisco.com>
- kernel.org:/pub/scm/linux/kernel/git/roland/infiniband.git
+ git.kernel.org:/pub/scm/linux/kernel/git/roland/infiniband.git
- libata, Jeff Garzik <jgarzik@pobox.com>
- kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev.git
+ git.kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev.git
- ãããã¯ã¼ã¯ãã©ã¤ã, Jeff Garzik <jgarzik@pobox.com>
- kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6.git
+ git.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6.git
- pcmcia, Dominik Brodowski <linux@dominikbrodowski.net>
- kernel.org:/pub/scm/linux/kernel/git/brodo/pcmcia-2.6.git
+ git.kernel.org:/pub/scm/linux/kernel/git/brodo/pcmcia-2.6.git
- SCSI, James Bottomley <James.Bottomley@SteelEye.com>
- kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6.git
-
- ãã®ä»ã® git ã«ã¼ãã«ããªã¼ã¯ http://kernel.org/git ã«ä¸è¦§è¡¨ãããã¾
- ãã
+ git.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6.git
quilt ããªã¼-
- USB, PCI ãã©ã¤ãã³ã¢ã¨ I2C, Greg Kroah-Hartman <gregkh@suse.de>
kernel.org/pub/linux/kernel/people/gregkh/gregkh-2.6/
+ - x86-64 㨠i386 ã®ä»²é Andi Kleen <ak@suse.de>
+
+ ãã®ä»ã®ã«ã¼ãã«ããªã¼ã¯ http://git.kernel.org/ 㨠MAINTAINERS ãã¡
+ ã¤ã«ã«ä¸è¦§è¡¨ãããã¾ãã
ãã°ã¬ãã¼ã
-------------
@@ -508,6 +509,7 @@ MAINTAINERS ãã¡ã¤ã«ã«ãªã¹ããããã¾ãã®ã§åç
§ãã¦ãã ãã
ãã*ãåã«èªåã®ãããã«å¯¾ãã¦ææãããåé¡ãå
¨ã¦ä¿®æ£ãã¦åéããã°
ããã®ã§ãã
+
ã«ã¼ãã«ã³ãã¥ããã£ã¨ä¼æ¥çµç¹ã®ã¡ãã
-----------------------------------------------------------------
@@ -577,6 +579,7 @@ Linux ã«ã¼ãã«ã³ãã¥ããã£ã¯ãä¸åº¦ã«å¤§éã®ã³ã¼ãã®å¡ãå
ããã500è¡ã®ãããã¯ãæ£ãããã¨ãã¬ãã¥ã¼ããã®ã«æ°æéããããã
ããã¾ãã(æéã¯ãããã®ãµã¤ãºãªã©ã«ããææ°é¢æ°ã«æ¯ä¾ãã¦ãããã¾
ã)
+
å°ãããããã¯ä½ããã£ãã¨ãã«ãããã°ãã¨ã¦ãç°¡åã«ãªãã¾ãããã
ãã1å1ååãé¤ãã®ã¯ãã¨ã¦ã大ããªããããå½ã¦ãå¾ã«(ãã¤ãä½ãã
ããããªã£ãå¾ã§)è§£åããã®ã«æ¯ã¹ãã°ã¨ã¦ãç°¡åã§ãã
@@ -591,6 +594,7 @@ Linux ã«ã¼ãã«ã³ãã¥ããã£ã¯ãä¸åº¦ã«å¤§éã®ã³ã¼ãã®å¡ãå
ããå
çã¯ç°¡æ½ãªæé«ã®è§£ãã¿ããã®ã§ããè¯ãçå¾ã¯ãããç¥ã£ã¦
ãããããã¦æçµè§£ã®åã®ä¸é使¥ãæåºãããã¨ã¯æ±ºãã¦ãªãã®ã§
ã"
+
ã«ã¼ãã«éçºã§ãããã¯åãã§ããã¡ã³ããã¼éã¨ã¬ãã¥ã¼ã¢éã¯ã
åé¡ã解決ããè§£ã®èå¾ã«ãªãæèããã»ã¹ãã¿ããã¨ã¯æãã¾ããã
å½¼ãã¯åç´ã§ãããããªè§£æ±ºæ¹æ³ãã¿ããã®ã§ãã
--
1.5.2.2
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [PATCH 03/11] kobject: fix link error when CONFIG_HOTPLUG is disabled
2007-07-30 22:09 ` [PATCH 02/11] HOWTO: sync Japanese HOWTO Greg Kroah-Hartman
@ 2007-07-30 22:09 ` Greg Kroah-Hartman
2007-07-30 22:09 ` [PATCH 04/11] kobject: put kobject_actions in kobject.h Greg Kroah-Hartman
0 siblings, 1 reply; 12+ messages in thread
From: Greg Kroah-Hartman @ 2007-07-30 22:09 UTC (permalink / raw)
To: linux-kernel; +Cc: Cornelia Huck, Kay Sievers, Greg Kroah-Hartman
From: Cornelia Huck <cornelia.huck@de.ibm.com>
Leaving kobject_actions[] in kobject_uevent.c, but putting it outside
the #ifdef looks indeed like the best solution to me. This way, we
avoid adding #ifdef CONFIG_HOTPLUG into core.c, when all other
functions called do not need such a thing.
Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Cc: Kay Sievers <kay.sievers@vrfy.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
---
lib/kobject_uevent.c | 16 ++++++++--------
1 files changed, 8 insertions(+), 8 deletions(-)
diff --git a/lib/kobject_uevent.c b/lib/kobject_uevent.c
index 6a80c78..df02814 100644
--- a/lib/kobject_uevent.c
+++ b/lib/kobject_uevent.c
@@ -25,14 +25,6 @@
#define BUFFER_SIZE 2048 /* buffer for the variables */
#define NUM_ENVP 32 /* number of env pointers */
-#if defined(CONFIG_HOTPLUG)
-u64 uevent_seqnum;
-char uevent_helper[UEVENT_HELPER_PATH_LEN] = "/sbin/hotplug";
-static DEFINE_SPINLOCK(sequence_lock);
-#if defined(CONFIG_NET)
-static struct sock *uevent_sock;
-#endif
-
/* the strings here must match the enum in include/linux/kobject.h */
const char *kobject_actions[] = {
"add",
@@ -43,6 +35,14 @@ const char *kobject_actions[] = {
"offline",
};
+#if defined(CONFIG_HOTPLUG)
+u64 uevent_seqnum;
+char uevent_helper[UEVENT_HELPER_PATH_LEN] = "/sbin/hotplug";
+static DEFINE_SPINLOCK(sequence_lock);
+#if defined(CONFIG_NET)
+static struct sock *uevent_sock;
+#endif
+
/**
* kobject_uevent_env - send an uevent with environmental data
*
--
1.5.2.2
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [PATCH 04/11] kobject: put kobject_actions in kobject.h
2007-07-30 22:09 ` [PATCH 03/11] kobject: fix link error when CONFIG_HOTPLUG is disabled Greg Kroah-Hartman
@ 2007-07-30 22:09 ` Greg Kroah-Hartman
2007-07-30 22:09 ` [PATCH 05/11] kernel-doc fixes for PCI and drivers/base/ Greg Kroah-Hartman
0 siblings, 1 reply; 12+ messages in thread
From: Greg Kroah-Hartman @ 2007-07-30 22:09 UTC (permalink / raw)
To: linux-kernel; +Cc: Greg Kroah-Hartman, Kay Sievers, Andrew Morton
This prevents the extern declaration in the driver core.
Cc: Kay Sievers <kay.sievers@vrfy.org>
Cc: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
---
drivers/base/core.c | 2 --
include/linux/kobject.h | 3 +++
2 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/drivers/base/core.c b/drivers/base/core.c
index 3599ab2..b9bb399 100644
--- a/drivers/base/core.c
+++ b/drivers/base/core.c
@@ -24,8 +24,6 @@
#include "base.h"
#include "power/power.h"
-extern const char *kobject_actions[];
-
int (*platform_notify)(struct device * dev) = NULL;
int (*platform_notify_remove)(struct device * dev) = NULL;
diff --git a/include/linux/kobject.h b/include/linux/kobject.h
index aa2fe22..49a08f8 100644
--- a/include/linux/kobject.h
+++ b/include/linux/kobject.h
@@ -56,6 +56,9 @@ enum kobject_action {
KOBJ_MAX
};
+/* The list of strings defining the valid kobject actions as specified above */
+extern const char *kobject_actions[];
+
struct kobject {
const char * k_name;
char name[KOBJ_NAME_LEN];
--
1.5.2.2
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [PATCH 05/11] kernel-doc fixes for PCI and drivers/base/
2007-07-30 22:09 ` [PATCH 04/11] kobject: put kobject_actions in kobject.h Greg Kroah-Hartman
@ 2007-07-30 22:09 ` Greg Kroah-Hartman
2007-07-30 22:09 ` [PATCH 06/11] Fix Doc/sysfs-rules typos Greg Kroah-Hartman
0 siblings, 1 reply; 12+ messages in thread
From: Greg Kroah-Hartman @ 2007-07-30 22:09 UTC (permalink / raw)
To: linux-kernel; +Cc: Randy Dunlap, Greg Kroah-Hartman
From: Randy Dunlap <randy.dunlap@oracle.com>
Fix undocumented function parameters in PCI and drivers/base.
Warning(linux-2.6.23-rc1//drivers/pci/pci.c:1526): No description found for parameter 'rq'
Warning(linux-2.6.23-rc1//drivers/base/firmware_class.c:245): No description found for parameter 'bin_attr'
Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
---
drivers/base/firmware_class.c | 1 +
drivers/pci/pci.c | 2 +-
2 files changed, 2 insertions(+), 1 deletions(-)
diff --git a/drivers/base/firmware_class.c b/drivers/base/firmware_class.c
index 53f0ee6..b24efd4 100644
--- a/drivers/base/firmware_class.c
+++ b/drivers/base/firmware_class.c
@@ -232,6 +232,7 @@ fw_realloc_buffer(struct firmware_priv *fw_priv, int min_size)
/**
* firmware_data_write - write method for firmware
* @kobj: kobject for the device
+ * @bin_attr: bin_attr structure
* @buffer: buffer being written
* @offset: buffer offset for write in total data store area
* @count: buffer size
diff --git a/drivers/pci/pci.c b/drivers/pci/pci.c
index fba319d..1ee9cd9 100644
--- a/drivers/pci/pci.c
+++ b/drivers/pci/pci.c
@@ -1517,7 +1517,7 @@ EXPORT_SYMBOL(pcie_get_readrq);
/**
* pcie_set_readrq - set PCI Express maximum memory read request
* @dev: PCI device to query
- * @count: maximum memory read count in bytes
+ * @rq: maximum memory read count in bytes
* valid values are 128, 256, 512, 1024, 2048, 4096
*
* If possible sets maximum read byte count
--
1.5.2.2
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [PATCH 06/11] Fix Doc/sysfs-rules typos
2007-07-30 22:09 ` [PATCH 05/11] kernel-doc fixes for PCI and drivers/base/ Greg Kroah-Hartman
@ 2007-07-30 22:09 ` Greg Kroah-Hartman
2007-07-30 22:09 ` [PATCH 07/11] stable_api_nonsense.txt: Disambiguate the use of "this" by using "that" to refer to the syscall interface Greg Kroah-Hartman
0 siblings, 1 reply; 12+ messages in thread
From: Greg Kroah-Hartman @ 2007-07-30 22:09 UTC (permalink / raw)
To: linux-kernel; +Cc: Randy Dunlap, Greg Kroah-Hartman
From: Randy Dunlap <randy.dunlap@oracle.com>
Fix typos only (spelling, grammar, duplicate words, etc.).
Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
Cc: Kay Sievers <kay.sievers@vrfy.org
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
---
Documentation/sysfs-rules.txt | 72 ++++++++++++++++++++---------------------
1 files changed, 35 insertions(+), 37 deletions(-)
diff --git a/Documentation/sysfs-rules.txt b/Documentation/sysfs-rules.txt
index 42861bb..80ef562 100644
--- a/Documentation/sysfs-rules.txt
+++ b/Documentation/sysfs-rules.txt
@@ -1,19 +1,18 @@
Rules on how to access information in the Linux kernel sysfs
-The kernel exported sysfs exports internal kernel implementation-details
+The kernel-exported sysfs exports internal kernel implementation details
and depends on internal kernel structures and layout. It is agreed upon
by the kernel developers that the Linux kernel does not provide a stable
internal API. As sysfs is a direct export of kernel internal
-structures, the sysfs interface can not provide a stable interface eighter,
+structures, the sysfs interface cannot provide a stable interface either;
it may always change along with internal kernel changes.
To minimize the risk of breaking users of sysfs, which are in most cases
low-level userspace applications, with a new kernel release, the users
-of sysfs must follow some rules to use an as abstract-as-possible way to
+of sysfs must follow some rules to use an as-abstract-as-possible way to
access this filesystem. The current udev and HAL programs already
implement this and users are encouraged to plug, if possible, into the
-abstractions these programs provide instead of accessing sysfs
-directly.
+abstractions these programs provide instead of accessing sysfs directly.
But if you really do want or need to access sysfs directly, please follow
the following rules and then your programs should work with future
@@ -25,22 +24,22 @@ versions of the sysfs interface.
implementation details in its own API. Therefore it is not better than
reading directories and opening the files yourself.
Also, it is not actively maintained, in the sense of reflecting the
- current kernel-development. The goal of providing a stable interface
- to sysfs has failed, it causes more problems, than it solves. It
+ current kernel development. The goal of providing a stable interface
+ to sysfs has failed; it causes more problems than it solves. It
violates many of the rules in this document.
- sysfs is always at /sys
Parsing /proc/mounts is a waste of time. Other mount points are a
system configuration bug you should not try to solve. For test cases,
possibly support a SYSFS_PATH environment variable to overwrite the
- applications behavior, but never try to search for sysfs. Never try
+ application's behavior, but never try to search for sysfs. Never try
to mount it, if you are not an early boot script.
- devices are only "devices"
There is no such thing like class-, bus-, physical devices,
interfaces, and such that you can rely on in userspace. Everything is
just simply a "device". Class-, bus-, physical, ... types are just
- kernel implementation details, which should not be expected by
+ kernel implementation details which should not be expected by
applications that look for devices in sysfs.
The properties of a device are:
@@ -48,11 +47,11 @@ versions of the sysfs interface.
- identical to the DEVPATH value in the event sent from the kernel
at device creation and removal
- the unique key to the device at that point in time
- - the kernels path to the device-directory without the leading
+ - the kernel's path to the device directory without the leading
/sys, and always starting with with a slash
- all elements of a devpath must be real directories. Symlinks
pointing to /sys/devices must always be resolved to their real
- target, and the target path must be used to access the device.
+ target and the target path must be used to access the device.
That way the devpath to the device matches the devpath of the
kernel used at event time.
- using or exposing symlink values as elements in a devpath string
@@ -73,17 +72,17 @@ versions of the sysfs interface.
link
- it is retrieved by reading the "driver"-link and using only the
last element of the target path
- - devices which do not have "driver"-link, just do not have a
- driver; copying the driver value in a child device context, is a
+ - devices which do not have "driver"-link just do not have a
+ driver; copying the driver value in a child device context is a
bug in the application
o attributes
- - the files in the device directory or files below a subdirectories
+ - the files in the device directory or files below subdirectories
of the same device directory
- accessing attributes reached by a symlink pointing to another device,
like the "device"-link, is a bug in the application
- Everything else is just a kernel driver-core implementation detail,
+ Everything else is just a kernel driver-core implementation detail
that should not be assumed to be stable across kernel releases.
- Properties of parent devices never belong into a child device.
@@ -91,25 +90,25 @@ versions of the sysfs interface.
context properties. If the device 'eth0' or 'sda' does not have a
"driver"-link, then this device does not have a driver. Its value is empty.
Never copy any property of the parent-device into a child-device. Parent
- device-properties may change dynamically without any notice to the
+ device properties may change dynamically without any notice to the
child device.
-- Hierarchy in a single device-tree
+- Hierarchy in a single device tree
There is only one valid place in sysfs where hierarchy can be examined
and this is below: /sys/devices.
- It is planned, that all device directories will end up in the tree
+ It is planned that all device directories will end up in the tree
below this directory.
- Classification by subsystem
There are currently three places for classification of devices:
/sys/block, /sys/class and /sys/bus. It is planned that these will
- not contain any device-directories themselves, but only flat lists of
+ not contain any device directories themselves, but only flat lists of
symlinks pointing to the unified /sys/devices tree.
All three places have completely different rules on how to access
device information. It is planned to merge all three
- classification-directories into one place at /sys/subsystem,
- following the layout of the bus-directories. All buses and
- classes, including the converted block-subsystem, will show up
+ classification directories into one place at /sys/subsystem,
+ following the layout of the bus directories. All buses and
+ classes, including the converted block subsystem, will show up
there.
The devices belonging to a subsystem will create a symlink in the
"devices" directory at /sys/subsystem/<name>/devices.
@@ -121,38 +120,38 @@ versions of the sysfs interface.
subsystem name.
Assuming /sys/class/<subsystem> and /sys/bus/<subsystem>, or
- /sys/block and /sys/class/block are not interchangeable, is a bug in
+ /sys/block and /sys/class/block are not interchangeable is a bug in
the application.
- Block
- The converted block-subsystem at /sys/class/block, or
+ The converted block subsystem at /sys/class/block or
/sys/subsystem/block will contain the links for disks and partitions
- at the same level, never in a hierarchy. Assuming the block-subsytem to
- contain only disks and not partition-devices in the same flat list is
+ at the same level, never in a hierarchy. Assuming the block subsytem to
+ contain only disks and not partition devices in the same flat list is
a bug in the application.
- "device"-link and <subsystem>:<kernel name>-links
Never depend on the "device"-link. The "device"-link is a workaround
- for the old layout, where class-devices are not created in
- /sys/devices/ like the bus-devices. If the link-resolving of a
- device-directory does not end in /sys/devices/, you can use the
+ for the old layout, where class devices are not created in
+ /sys/devices/ like the bus devices. If the link-resolving of a
+ device directory does not end in /sys/devices/, you can use the
"device"-link to find the parent devices in /sys/devices/. That is the
- single valid use of the "device"-link, it must never appear in any
+ single valid use of the "device"-link; it must never appear in any
path as an element. Assuming the existence of the "device"-link for
a device in /sys/devices/ is a bug in the application.
Accessing /sys/class/net/eth0/device is a bug in the application.
Never depend on the class-specific links back to the /sys/class
directory. These links are also a workaround for the design mistake
- that class-devices are not created in /sys/devices. If a device
+ that class devices are not created in /sys/devices. If a device
directory does not contain directories for child devices, these links
may be used to find the child devices in /sys/class. That is the single
- valid use of these links, they must never appear in any path as an
+ valid use of these links; they must never appear in any path as an
element. Assuming the existence of these links for devices which are
- real child device directories in the /sys/devices tree, is a bug in
+ real child device directories in the /sys/devices tree is a bug in
the application.
- It is planned to remove all these links when when all class-device
+ It is planned to remove all these links when all class device
directories live in /sys/devices.
- Position of devices along device chain can change.
@@ -161,6 +160,5 @@ versions of the sysfs interface.
the chain. You must always request the parent device you are looking for
by its subsystem value. You need to walk up the chain until you find
the device that matches the expected subsystem. Depending on a specific
- position of a parent device, or exposing relative paths, using "../" to
- access the chain of parents, is a bug in the application.
-
+ position of a parent device or exposing relative paths using "../" to
+ access the chain of parents is a bug in the application.
--
1.5.2.2
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [PATCH 07/11] stable_api_nonsense.txt: Disambiguate the use of "this" by using "that" to refer to the syscall interface
2007-07-30 22:09 ` [PATCH 06/11] Fix Doc/sysfs-rules typos Greg Kroah-Hartman
@ 2007-07-30 22:09 ` Greg Kroah-Hartman
2007-07-30 22:09 ` [PATCH 08/11] driver core: revert "device" link creation check Greg Kroah-Hartman
0 siblings, 1 reply; 12+ messages in thread
From: Greg Kroah-Hartman @ 2007-07-30 22:09 UTC (permalink / raw)
To: linux-kernel; +Cc: Juan Lang, Greg Kroah-Hartman
From: Juan Lang <juan.lang@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
---
Documentation/stable_api_nonsense.txt | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/Documentation/stable_api_nonsense.txt b/Documentation/stable_api_nonsense.txt
index a2afca3..847b342 100644
--- a/Documentation/stable_api_nonsense.txt
+++ b/Documentation/stable_api_nonsense.txt
@@ -10,7 +10,7 @@ kernel to userspace interfaces. The kernel to userspace interface is
the one that application programs use, the syscall interface. That
interface is _very_ stable over time, and will not break. I have old
programs that were built on a pre 0.9something kernel that still work
-just fine on the latest 2.6 kernel release. This interface is the one
+just fine on the latest 2.6 kernel release. That interface is the one
that users and application programmers can count on being stable.
--
1.5.2.2
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [PATCH 08/11] driver core: revert "device" link creation check
2007-07-30 22:09 ` [PATCH 07/11] stable_api_nonsense.txt: Disambiguate the use of "this" by using "that" to refer to the syscall interface Greg Kroah-Hartman
@ 2007-07-30 22:09 ` Greg Kroah-Hartman
2007-07-30 22:09 ` [PATCH 09/11] kset: kernel-doc cleanups Greg Kroah-Hartman
0 siblings, 1 reply; 12+ messages in thread
From: Greg Kroah-Hartman @ 2007-07-30 22:09 UTC (permalink / raw)
To: linux-kernel; +Cc: Cornelia Huck, Greg Kroah-Hartman
From: Cornelia Huck <cornelia.huck@de.ibm.com>
driver core: revert "device" link creation check
Commit 2ee97caf0a6602f749ddbfdb1449e383e1212707 introduced an extra
check on when to create the "device" symlink. Unfortunately, this
breaks input, so let's revert to the old behaviour.
Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Acked-by: Kay Sievers <kay.sievers@vrfy.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
---
drivers/base/core.c | 3 +--
1 files changed, 1 insertions(+), 2 deletions(-)
diff --git a/drivers/base/core.c b/drivers/base/core.c
index b9bb399..e6738bc 100644
--- a/drivers/base/core.c
+++ b/drivers/base/core.c
@@ -678,8 +678,7 @@ static int device_add_class_symlinks(struct device *dev)
if (error)
goto out_subsys;
}
- /* only bus-device parents get a "device"-link */
- if (dev->parent && dev->parent->bus) {
+ if (dev->parent) {
error = sysfs_create_link(&dev->kobj, &dev->parent->kobj,
"device");
if (error)
--
1.5.2.2
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [PATCH 09/11] kset: kernel-doc cleanups
2007-07-30 22:09 ` [PATCH 08/11] driver core: revert "device" link creation check Greg Kroah-Hartman
@ 2007-07-30 22:09 ` Greg Kroah-Hartman
2007-07-30 22:09 ` [PATCH 10/11] kobject: update documentation Greg Kroah-Hartman
0 siblings, 1 reply; 12+ messages in thread
From: Greg Kroah-Hartman @ 2007-07-30 22:09 UTC (permalink / raw)
To: linux-kernel; +Cc: Randy Dunlap, Greg Kroah-Hartman
From: Randy Dunlap <randy.dunlap@oracle.com>
Removed kernel-doc marker (/**) from struct kset -- each struct member
still needs annotation.
Corrected one parameter name so that kernel-doc matches the macro.
Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
---
include/linux/kobject.h | 23 +++++++++++------------
1 files changed, 11 insertions(+), 12 deletions(-)
diff --git a/include/linux/kobject.h b/include/linux/kobject.h
index 49a08f8..949706c 100644
--- a/include/linux/kobject.h
+++ b/include/linux/kobject.h
@@ -111,9 +111,15 @@ struct kobj_type {
struct attribute ** default_attrs;
};
+struct kset_uevent_ops {
+ int (*filter)(struct kset *kset, struct kobject *kobj);
+ const char *(*name)(struct kset *kset, struct kobject *kobj);
+ int (*uevent)(struct kset *kset, struct kobject *kobj, char **envp,
+ int num_envp, char *buffer, int buffer_size);
+};
-/**
- * kset - a set of kobjects of a specific type, belonging
+/*
+ * struct kset - a set of kobjects of a specific type, belonging
* to a specific subsystem.
*
* All kobjects of a kset should be embedded in an identical
@@ -129,13 +135,6 @@ struct kobj_type {
* supress the event generation or add subsystem specific
* variables carried with the event.
*/
-struct kset_uevent_ops {
- int (*filter)(struct kset *kset, struct kobject *kobj);
- const char *(*name)(struct kset *kset, struct kobject *kobj);
- int (*uevent)(struct kset *kset, struct kobject *kobj, char **envp,
- int num_envp, char *buffer, int buffer_size);
-};
-
struct kset {
struct kobj_type * ktype;
struct list_head list;
@@ -176,7 +175,7 @@ static inline struct kobj_type * get_ktype(struct kobject * k)
extern struct kobject * kset_find_obj(struct kset *, const char *);
-/**
+/*
* Use this when initializing an embedded kset with no other
* fields to initialize.
*/
@@ -201,7 +200,7 @@ extern struct kset kernel_subsys;
/* The global /sys/hypervisor/ subsystem */
extern struct kset hypervisor_subsys;
-/**
+/*
* Helpers for setting the kset of registered objects.
* Often, a registered object belongs to a kset embedded in a
* subsystem. These do no magic, just make the resulting code
@@ -236,7 +235,7 @@ extern struct kset hypervisor_subsys;
/**
* subsys_set_kset(obj,subsys) - set kset for subsystem
* @obj: ptr to some object type.
- * @subsys: a subsystem object (not a ptr).
+ * @_subsys: a subsystem object (not a ptr).
*
* Can be used for any object type with an embedded ->subsys.
* Sets the kset of @obj's kobject to @subsys.kset. This makes
--
1.5.2.2
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [PATCH 10/11] kobject: update documentation
2007-07-30 22:09 ` [PATCH 09/11] kset: kernel-doc cleanups Greg Kroah-Hartman
@ 2007-07-30 22:09 ` Greg Kroah-Hartman
2007-07-30 22:09 ` [PATCH 11/11] modules: better error messages when modules fail to load due to a sysfs problem Greg Kroah-Hartman
0 siblings, 1 reply; 12+ messages in thread
From: Greg Kroah-Hartman @ 2007-07-30 22:09 UTC (permalink / raw)
To: linux-kernel; +Cc: Cornelia Huck, Greg Kroah-Hartman
From: Cornelia Huck <cornelia.huck@de.ibm.com>
Update kobject documentation:
- Update structure definitions.
- Remove documentation of removed struct subsystem.
(First shot, uevent_ops probably need some documentation as well.)
Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
---
Documentation/kobject.txt | 178 +++++++++++++++------------------------------
1 files changed, 59 insertions(+), 119 deletions(-)
diff --git a/Documentation/kobject.txt b/Documentation/kobject.txt
index e448555..8ee49ee 100644
--- a/Documentation/kobject.txt
+++ b/Documentation/kobject.txt
@@ -27,7 +27,6 @@ in detail, and briefly here:
- kobjects a simple object.
- kset a set of objects of a certain type.
- ktype a set of helpers for objects of a common type.
-- subsystem a controlling object for a number of ksets.
The kobject infrastructure maintains a close relationship with the
@@ -54,13 +53,15 @@ embedded in larger data structures and replace fields they duplicate.
1.2 Definition
struct kobject {
+ const char * k_name;
char name[KOBJ_NAME_LEN];
- atomic_t refcount;
+ struct kref kref;
struct list_head entry;
struct kobject * parent;
struct kset * kset;
struct kobj_type * ktype;
- struct dentry * dentry;
+ struct sysfs_dirent * sd;
+ wait_queue_head_t poll;
};
void kobject_init(struct kobject *);
@@ -137,8 +138,7 @@ If a kobject does not have a parent when it is registered, its parent
becomes its dominant kset.
If a kobject does not have a parent nor a dominant kset, its directory
-is created at the top-level of the sysfs partition. This should only
-happen for kobjects that are embedded in a struct subsystem.
+is created at the top-level of the sysfs partition.
@@ -150,10 +150,10 @@ A kset is a set of kobjects that are embedded in the same type.
struct kset {
- struct subsystem * subsys;
struct kobj_type * ktype;
struct list_head list;
struct kobject kobj;
+ struct kset_uevent_ops * uevent_ops;
};
@@ -169,8 +169,7 @@ struct kobject * kset_find_obj(struct kset *, char *);
The type that the kobjects are embedded in is described by the ktype
-pointer. The subsystem that the kobject belongs to is pointed to by the
-subsys pointer.
+pointer.
A kset contains a kobject itself, meaning that it may be registered in
the kobject hierarchy and exported via sysfs. More importantly, the
@@ -209,6 +208,58 @@ the hierarchy.
kset_find_obj() may be used to locate a kobject with a particular
name. The kobject, if found, is returned.
+There are also some helper functions which names point to the formerly
+existing "struct subsystem", whose functions have been taken over by
+ksets.
+
+
+decl_subsys(name,type,uevent_ops)
+
+Declares a kset named '<name>_subsys' of type <type> with
+uevent_ops <uevent_ops>. For example,
+
+decl_subsys(devices, &ktype_device, &device_uevent_ops);
+
+is equivalent to doing:
+
+struct kset devices_subsys = {
+ .kobj = {
+ .name = "devices",
+ },
+ .ktype = &ktype_devices,
+ .uevent_ops = &device_uevent_ops,
+};
+
+
+The objects that are registered with a subsystem that use the
+subsystem's default list must have their kset ptr set properly. These
+objects may have embedded kobjects or ksets. The
+following helpers make setting the kset easier:
+
+
+kobj_set_kset_s(obj,subsys)
+
+- Assumes that obj->kobj exists, and is a struct kobject.
+- Sets the kset of that kobject to the kset <subsys>.
+
+
+kset_set_kset_s(obj,subsys)
+
+- Assumes that obj->kset exists, and is a struct kset.
+- Sets the kset of the embedded kobject to the kset <subsys>.
+
+subsys_set_kset(obj,subsys)
+
+- Assumes obj->subsys exists, and is a struct subsystem.
+- Sets obj->subsys.kset.kobj.kset to the subsystem's embedded kset.
+
+void subsystem_init(struct kset *s);
+int subsystem_register(struct kset *s);
+void subsystem_unregister(struct kset *s);
+struct kset *subsys_get(struct kset *s);
+void kset_put(struct kset *s);
+
+These are just wrappers around the respective kset_* functions.
2.3 sysfs
@@ -254,114 +305,3 @@ Instances of struct kobj_type are not registered; only referenced by
the kset. A kobj_type may be referenced by an arbitrary number of
ksets, as there may be disparate sets of identical objects.
-
-
-4. subsystems
-
-4.1 Description
-
-A subsystem represents a significant entity of code that maintains an
-arbitrary number of sets of objects of various types. Since the number
-of ksets and the type of objects they contain are variable, a
-generic representation of a subsystem is minimal.
-
-
-struct subsystem {
- struct kset kset;
- struct rw_semaphore rwsem;
-};
-
-int subsystem_register(struct subsystem *);
-void subsystem_unregister(struct subsystem *);
-
-struct subsystem * subsys_get(struct subsystem * s);
-void subsys_put(struct subsystem * s);
-
-
-A subsystem contains an embedded kset so:
-
-- It can be represented in the object hierarchy via the kset's
- embedded kobject.
-
-- It can maintain a default list of objects of one type.
-
-Additional ksets may attach to the subsystem simply by referencing the
-subsystem before they are registered. (This one-way reference means
-that there is no way to determine the ksets that are attached to the
-subsystem.)
-
-All ksets that are attached to a subsystem share the subsystem's R/W
-semaphore.
-
-
-4.2 subsystem Programming Interface.
-
-The subsystem programming interface is simple and does not offer the
-flexibility that the kset and kobject programming interfaces do. They
-may be registered and unregistered, as well as reference counted. Each
-call forwards the calls to their embedded ksets (which forward the
-calls to their embedded kobjects).
-
-
-4.3 Helpers
-
-A number of macros are available to make dealing with subsystems and
-their embedded objects easier.
-
-
-decl_subsys(name,type)
-
-Declares a subsystem named '<name>_subsys', with an embedded kset of
-type <type>. For example,
-
-decl_subsys(devices,&ktype_devices);
-
-is equivalent to doing:
-
-struct subsystem device_subsys = {
- .kset = {
- .kobj = {
- .name = "devices",
- },
- .ktype = &ktype_devices,
- }
-};
-
-
-The objects that are registered with a subsystem that use the
-subsystem's default list must have their kset ptr set properly. These
-objects may have embedded kobjects, ksets, or other subsystems. The
-following helpers make setting the kset easier:
-
-
-kobj_set_kset_s(obj,subsys)
-
-- Assumes that obj->kobj exists, and is a struct kobject.
-- Sets the kset of that kobject to the subsystem's embedded kset.
-
-
-kset_set_kset_s(obj,subsys)
-
-- Assumes that obj->kset exists, and is a struct kset.
-- Sets the kset of the embedded kobject to the subsystem's
- embedded kset.
-
-subsys_set_kset(obj,subsys)
-
-- Assumes obj->subsys exists, and is a struct subsystem.
-- Sets obj->subsys.kset.kobj.kset to the subsystem's embedded kset.
-
-
-4.4 sysfs
-
-subsystems are represented in sysfs via their embedded kobjects. They
-follow the same rules as previously mentioned with no exceptions. They
-typically receive a top-level directory in sysfs, except when their
-embedded kobject is part of another kset, or the parent of the
-embedded kobject is explicitly set.
-
-Note that the subsystem's embedded kset must be 'attached' to the
-subsystem itself in order to use its rwsem. This is done after
-kset_add() has been called. (Not before, because kset_add() uses its
-subsystem for a default parent if it doesn't already have one).
-
--
1.5.2.2
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [PATCH 11/11] modules: better error messages when modules fail to load due to a sysfs problem.
2007-07-30 22:09 ` [PATCH 10/11] kobject: update documentation Greg Kroah-Hartman
@ 2007-07-30 22:09 ` Greg Kroah-Hartman
0 siblings, 0 replies; 12+ messages in thread
From: Greg Kroah-Hartman @ 2007-07-30 22:09 UTC (permalink / raw)
To: linux-kernel; +Cc: Greg Kroah-Hartman
This helps people when debugging problems like the ones that were in the
recent -mm releases.
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
---
kernel/params.c | 7 ++++++-
1 files changed, 6 insertions(+), 1 deletions(-)
diff --git a/kernel/params.c b/kernel/params.c
index effbaae..4e57732 100644
--- a/kernel/params.c
+++ b/kernel/params.c
@@ -567,7 +567,12 @@ static void __init kernel_param_sysfs_setup(const char *name,
kobject_set_name(&mk->kobj, name);
kobject_init(&mk->kobj);
ret = kobject_add(&mk->kobj);
- BUG_ON(ret < 0);
+ if (ret) {
+ printk(KERN_ERR "Module '%s' failed to be added to sysfs, "
+ "error number %d\n", name, ret);
+ printk(KERN_ERR "The system will be unstable now.\n");
+ return;
+ }
param_sysfs_setup(mk, kparam, num_params, name_skip);
kobject_uevent(&mk->kobj, KOBJ_ADD);
}
--
1.5.2.2
^ permalink raw reply related [flat|nested] 12+ messages in thread
end of thread, other threads:[~2007-07-30 22:14 UTC | newest]
Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-07-30 22:08 [GIT PATCH] driver core fixes for 2.6.23-rc1 Greg KH
2007-07-30 22:09 ` [PATCH 01/11] HOWTO: adjust translation header of Japanese stable_api_nonsense.txt Greg Kroah-Hartman
2007-07-30 22:09 ` [PATCH 02/11] HOWTO: sync Japanese HOWTO Greg Kroah-Hartman
2007-07-30 22:09 ` [PATCH 03/11] kobject: fix link error when CONFIG_HOTPLUG is disabled Greg Kroah-Hartman
2007-07-30 22:09 ` [PATCH 04/11] kobject: put kobject_actions in kobject.h Greg Kroah-Hartman
2007-07-30 22:09 ` [PATCH 05/11] kernel-doc fixes for PCI and drivers/base/ Greg Kroah-Hartman
2007-07-30 22:09 ` [PATCH 06/11] Fix Doc/sysfs-rules typos Greg Kroah-Hartman
2007-07-30 22:09 ` [PATCH 07/11] stable_api_nonsense.txt: Disambiguate the use of "this" by using "that" to refer to the syscall interface Greg Kroah-Hartman
2007-07-30 22:09 ` [PATCH 08/11] driver core: revert "device" link creation check Greg Kroah-Hartman
2007-07-30 22:09 ` [PATCH 09/11] kset: kernel-doc cleanups Greg Kroah-Hartman
2007-07-30 22:09 ` [PATCH 10/11] kobject: update documentation Greg Kroah-Hartman
2007-07-30 22:09 ` [PATCH 11/11] modules: better error messages when modules fail to load due to a sysfs problem Greg Kroah-Hartman
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox