linux/drivers/base
Jiri Kosina e1955ca0ee sysfs: use sysfs_bin_attr_init in firmware class driver
Annotate dynamic sysfs attribute in fw_setup_device(). This gets
rid of the following lockdep warning:

bnx2 0000:08:00.0: firmware: requesting bnx2/bnx2-mips-06-5.0.0.j6.fw
BUG: key ffff880008293470 not in .data!
------------[ cut here ]------------
WARNING: at kernel/lockdep.c:2706 lockdep_init_map+0x562/0x620()
Modules linked in: bnx2(+) sg tpm_bios floppy rtc_lib usb_storage i2c_piix4 joydev button container shpchp i2c_core sr_mod cdrom pci_hotplug usbhid hid ohci_hcd ehci_hcd sd_mod usbcore edd ext3 mbcache jbd fan ata_generic sata_svw pata_serverworks libata scsi_mod thermal processor
Pid: 1915, comm: work_for_cpu Not tainted 2.6.34-rc1-default #81
Call Trace:
 [<ffffffff8107c1d2>] ? lockdep_init_map+0x562/0x620
 [<ffffffff81049fd8>] warn_slowpath_common+0x78/0xd0
 [<ffffffff8104a03f>] warn_slowpath_null+0xf/0x20
 [<ffffffff8107c1d2>] lockdep_init_map+0x562/0x620
 [<ffffffff8117a236>] ? sysfs_new_dirent+0x76/0x120
 [<ffffffff8126edb2>] ? put_device+0x12/0x20
 [<ffffffff811797cc>] sysfs_add_file_mode+0x6c/0xd0
 [<ffffffff8117983c>] sysfs_add_file+0xc/0x10
 [<ffffffff8117bf61>] sysfs_create_bin_file+0x21/0x30
 [<ffffffff81279c61>] _request_firmware+0x2f1/0x650
 [<ffffffff8127a04e>] request_firmware+0xe/0x10
 [<ffffffffa01ec19e>] bnx2_init_one+0x8f5/0x177e [bnx2]
 [<ffffffff81389eab>] ? _raw_spin_unlock_irq+0x2b/0x40
 [<ffffffff81040ed9>] ? finish_task_switch+0x69/0x100
 [<ffffffff81040e70>] ? finish_task_switch+0x0/0x100
 [<ffffffff81064b40>] ? do_work_for_cpu+0x0/0x30
 [<ffffffff811e6302>] local_pci_probe+0x12/0x20
 [<ffffffff81064b53>] do_work_for_cpu+0x13/0x30
 [<ffffffff81064b40>] ? do_work_for_cpu+0x0/0x30
 [<ffffffff81068c56>] kthread+0x96/0xa0
 [<ffffffff81003e64>] kernel_thread_helper+0x4/0x10
 [<ffffffff8138a350>] ? restore_args+0x0/0x30
 [<ffffffff81068bc0>] ? kthread+0x0/0xa0
 [<ffffffff81003e60>] ? kernel_thread_helper+0x0/0x10
---[ end trace a2ecee9c9602d195 ]---

Cc: Eric W. Biederman <ebiederm@xmission.com>
Cc: Greg Kroah-Hartman <gregkh@suse.de>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-03-19 07:12:10 -07:00
..
power Driver core: create lock/unlock functions for struct device 2010-03-07 17:04:52 -08:00
attribute_container.c
base.h
bus.c Driver core: create lock/unlock functions for struct device 2010-03-07 17:04:52 -08:00
class.c Driver core: Constify struct sysfs_ops in struct kobj_type 2010-03-07 17:04:49 -08:00
core.c driver core: Use sysfs_rename_link in device_rename 2010-03-07 17:04:52 -08:00
cpu.c sysdev: fix up the probe/release attributes 2010-03-07 17:04:49 -08:00
dd.c Driver core: create lock/unlock functions for struct device 2010-03-07 17:04:52 -08:00
devres.c
devtmpfs.c Driver-Core: devtmpfs - reset inode permissions before unlinking 2010-03-07 17:04:48 -08:00
dma-coherent.c
dma-mapping.c
driver.c Driver core: driver_attribute parameters can often be const* 2009-12-23 11:23:43 -08:00
firmware_class.c sysfs: use sysfs_bin_attr_init in firmware class driver 2010-03-19 07:12:10 -07:00
firmware.c
hypervisor.c
init.c
iommu.c
isa.c
Kconfig Driver-Core: disable /sbin/hotplug by default 2010-03-07 17:04:48 -08:00
Makefile
map.c
memory.c kobject: Constify struct kset_uevent_ops 2010-03-07 17:04:49 -08:00
module.c
node.c sysdev: Use sysdev_class attribute arrays in node driver 2010-03-07 17:04:47 -08:00
platform.c Driver core: Fix first line of kernel-doc for a few functions 2010-03-07 17:04:51 -08:00
sys.c Driver core: Constify struct sysfs_ops in struct kobj_type 2010-03-07 17:04:49 -08:00
topology.c
transport_class.c