aboutsummaryrefslogtreecommitdiff
path: root/drivers/edac/edac_core.h
diff options
context:
space:
mode:
authorDouglas Thompson <dougthompson@xmission.com>2007-07-19 01:50:29 -0700
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2007-07-19 10:04:57 -0700
commit1c3631ff1f805cb72644fcde02b7c58950f21cd5 (patch)
tree2d0f8867f21cf2dedb7d94a262028898333583f4 /drivers/edac/edac_core.h
parent8096cfafbb7ad3cb1a286ae7e8086167f4ebb4b6 (diff)
drivers/edac: fix edac_device sysfs completion code
With feedback, this patch corrects operation of the kobject release operation on kobjects, attributes and controls for the edac_device. Cc: Alan Cox alan@lxorguk.ukuu.org.uk Signed-off-by: Doug Thompson <dougthompson@xmission.com> Acked-by: Greg KH <greg@kroah.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'drivers/edac/edac_core.h')
-rw-r--r--drivers/edac/edac_core.h10
1 files changed, 6 insertions, 4 deletions
diff --git a/drivers/edac/edac_core.h b/drivers/edac/edac_core.h
index bd7f00cf244..4e31ac43876 100644
--- a/drivers/edac/edac_core.h
+++ b/drivers/edac/edac_core.h
@@ -337,6 +337,9 @@ struct mcidev_sysfs_attribute {
*/
struct mem_ctl_info {
struct list_head link; /* for global list of mem_ctl_info structs */
+
+ struct module *owner; /* Module owner of this control struct */
+
unsigned long mtype_cap; /* memory types supported by mc */
unsigned long edac_ctl_cap; /* Mem controller EDAC capabilities */
unsigned long edac_cap; /* configuration capabilities - this is
@@ -510,7 +513,6 @@ struct edac_device_block {
/* edac sysfs device control */
struct kobject kobj;
- struct completion kobj_complete;
};
/* device instance control structure */
@@ -525,7 +527,6 @@ struct edac_device_instance {
/* edac sysfs device control */
struct kobject kobj;
- struct completion kobj_complete;
};
@@ -537,6 +538,8 @@ struct edac_device_ctl_info {
/* for global list of edac_device_ctl_info structs */
struct list_head link;
+ struct module *owner; /* Module owner of this control struct */
+
int dev_idx;
/* Per instance controls for this edac_device */
@@ -587,7 +590,7 @@ struct edac_device_ctl_info {
* NMI handlers may be traversing list
*/
struct rcu_head rcu;
- struct completion complete;
+ struct completion removal_complete;
/* sysfs top name under 'edac' directory
* and instance name:
@@ -611,7 +614,6 @@ struct edac_device_ctl_info {
* device this structure controls
*/
struct kobject kobj;
- struct completion kobj_complete;
};
/* To get from the instance's wq to the beginning of the ctl structure */