summaryrefslogtreecommitdiff
path: root/include/linux/attribute_container.h
AgeCommit message (Collapse)Author
2007-07-16Remove unnecessary includes of spinlock.h under include/linuxRobert P. J. Day
Remove the obviously unnecessary includes of <linux/spinlock.h> under the include/linux/ directory, and fix the couple errors that are introduced as a result of that. Signed-off-by: Robert P. J. Day <rpjday@mindspring.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2005-08-30[SCSI] correct attribute_container list usageJames Bottomley
One of the changes in the attribute_container code in the scsi-misc tree was to add a lock to protect the list of devices per container. This, unfortunately, leads to potential scheduling while atomic problems if there's a sleep in the function called by a trigger. The correct solution is to use the kernel klist infrastructure instead which allows lockless traversal of a list. Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
2005-08-28[SCSI] add missing attribute container function prototypeJames Bottomley
attribute_container_classdev_to_container is an exported function of the attribute_container.c file. However, there's no prototype for it. Now I actually want to use it, so add one. Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
2005-08-14[SCSI] correct transport class abstraction to work outside SCSIJames Bottomley
I recently tried to construct a totally generic transport class and found there were certain features missing from the current abstract transport class. Most notable is that you have to hang the data on the class_device but most of the API is framed in terms of the generic device, not the class_device. These changes are two fold - Provide the class_device to all of the setup and configure APIs - Provide and extra API to take the device and the attribute class and return the corresponding class_device Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
2005-01-31Fix missed class_remove_file in attribute_containerJames Bottomley
This moves attribute addition (and removal) to where it should have been in the first place, namely in the attribute_container class. Without this, the transport classes were leaving dangling attributes when the devices were removed. Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
2005-01-17Add attribute container to generic device modelJames Bottomley
Attribute containers allows a single device to belong to an arbitrary number of classes, each with an arbitrary number of attributes. This will be used as the basis for a generic transport class Signed-off-by: Greg Kroah-Hartman <greg@kroah.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>