kernel-hacking-2024-linux-s.../drivers/scsi
Zhang Rui 91a6902958 sysfs: add parameter "struct bin_attribute *" in .read/.write methods for sysfs binary attributes
Well, first of all, I don't want to change so many files either.

What I do:
Adding a new parameter "struct bin_attribute *" in the
.read/.write methods for the sysfs binary attributes.

In fact, only the four lines change in fs/sysfs/bin.c and
include/linux/sysfs.h do the real work.
But I have to update all the files that use binary attributes
to make them compatible with the new .read and .write methods.
I'm not sure if I missed any. :(

Why I do this:
For a sysfs attribute, we can get a pointer pointing to the
struct attribute in the .show/.store method,
while we can't do this for the binary attributes.
I don't know why this is different, but this does make it not
so handy to use the binary attributes as the regular ones.
So I think this patch is reasonable. :)

Who benefits from it:
The patch that exposes ACPI tables in sysfs
requires such an improvement.
All the table binary attributes share the same .read method.
Parameter "struct bin_attribute *" is used to get
the table signature and instance number which are used to
distinguish different ACPI table binary attributes.

Without this parameter, we need to offer different .read methods
for different ACPI table binary attributes.
This is impossible as there are various ACPI tables on different
platforms, and we don't know what they are until they are loaded.

Signed-off-by: Zhang Rui <rui.zhang@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2007-07-11 16:09:09 -07:00
..
aacraid [SCSI] aacraid: fix shutdown handler to also disable interrupts. 2007-06-01 11:42:19 -04:00
aic7xxx potential parse error in ifdef 2007-06-01 08:18:27 -07:00
aic7xxx_old
aic94xx [SCSI] aic94xx: asd_clear_nexus should fail if the cleared task does not complete 2007-05-22 14:12:45 -05:00
arcmsr sysfs: add parameter "struct bin_attribute *" in .read/.write methods for sysfs binary attributes 2007-07-11 16:09:09 -07:00
arm [ARM] ecard: add ecardm_iomap() / ecardm_iounmap() 2007-05-11 17:19:02 +01:00
dpt [SCSI] dpt: whitespace cleanup 2007-04-01 10:10:04 -05:00
ibmvscsi Merge branch 'linux-2.6' 2007-05-08 13:37:51 +10:00
libsas sysfs: add parameter "struct bin_attribute *" in .read/.write methods for sysfs binary attributes 2007-07-11 16:09:09 -07:00
lpfc sysfs: add parameter "struct bin_attribute *" in .read/.write methods for sysfs binary attributes 2007-07-11 16:09:09 -07:00
megaraid Merge master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-rc-fixes-2.6 2007-05-29 13:39:52 -07:00
pcmcia [SCSI] pcmcia: allow drivers to be built non-modular 2007-04-01 10:07:14 -05:00
qla2xxx sysfs: add parameter "struct bin_attribute *" in .read/.write methods for sysfs binary attributes 2007-07-11 16:09:09 -07:00
qla4xxx [SCSI] qla4xxx: possible cleanups 2007-05-06 09:33:16 -05:00
sym53c8xx_2 Fix misspellings of "agressive". 2007-02-17 19:20:16 +01:00
.gitignore
3w-9xxx.c [PATCH] mark struct file_operations const 6 2007-02-12 09:48:45 -08:00
3w-9xxx.h
3w-xxxx.c [SCSI] 3w-xxxx: fix oops caused by incorrect REQUEST_SENSE handling 2007-04-14 08:49:03 -05:00
3w-xxxx.h
53c7xx.c Merge master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6 2007-02-11 11:44:25 -08:00
53c7xx.h
53c7xx.scr
53c7xx_d.h_shipped
53c7xx_u.h_shipped
53c700.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
53c700.h
53c700.scr
53c700_d.h_shipped
a100u2w.c drivers/scsi/a100u2w.c: trivial typo patch 2007-02-17 19:18:52 +01:00
a100u2w.h
a2091.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
a2091.h
a3000.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
a3000.h
advansys.c [SCSI] advansys: clean up warnings 2007-02-07 18:32:18 -05:00
advansys.h
aha152x.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
aha152x.h
aha1542.c PCI: Cleanup the includes of <linux/pci.h> 2007-05-02 19:02:35 -07:00
aha1542.h
aha1740.c
aha1740.h
aic7xxx_old.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
amiga7xx.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
amiga7xx.h
atari_dma_emul.c
atari_NCR5380.c [SCSI] atari_NCR5380: update_timeout removal 2007-06-04 09:55:15 -05:00
atari_scsi.c m68k: Atari SCSI driver compile fixes 2007-05-04 17:59:05 -07:00
atari_scsi.h m68k: Atari SCSI driver compile fixes 2007-05-04 17:59:05 -07:00
atp870u.c
atp870u.h
blz1230.c [TC] dec_esp: Driver model for the PMAZ-A 2007-02-09 16:23:17 +00:00
blz2060.c [TC] dec_esp: Driver model for the PMAZ-A 2007-02-09 16:23:17 +00:00
BusLogic.c [SCSI] BusLogic: stop using check_region 2007-04-17 18:04:20 -04:00
BusLogic.h [SCSI] BusLogic: Replace 'boolean' by 'bool' 2007-02-07 18:32:29 -05:00
bvme6000.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
bvme6000.h
ch.c [SCSI] ch: kmalloc/memset->kzalloc 2007-05-06 09:33:11 -05:00
constants.c [SCSI] constants.c: Update ASC list and make it const 2007-03-11 11:21:25 -05:00
cyberstorm.c [TC] dec_esp: Driver model for the PMAZ-A 2007-02-09 16:23:17 +00:00
cyberstormII.c [TC] dec_esp: Driver model for the PMAZ-A 2007-02-09 16:23:17 +00:00
dc395x.c Fix occurrences of "the the " 2007-05-09 08:57:56 +02:00
dc395x.h
dec_esp.c [TC] dec_esp: Driver model for the PMAZ-A 2007-02-09 16:23:17 +00:00
dmx3191d.c
dpt_i2o.c Merge master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6 2007-05-08 20:32:16 -07:00
dpti.h
dtc.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
dtc.h
eata.c
eata_generic.h [SCSI] eata_pio: Remove FALSE/TRUE defines 2007-03-20 11:27:03 -05:00
eata_pio.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
eata_pio.h
esp_scsi.c [SCSI] ESP: Don't forget to clear ESP_FLAG_RESETTING. 2007-06-13 13:38:01 -07:00
esp_scsi.h [SCSI] SUNESP: Complete driver rewrite to version 2.0 2007-04-27 00:26:46 -07:00
fastlane.c [TC] dec_esp: Driver model for the PMAZ-A 2007-02-09 16:23:17 +00:00
fcal.c
fcal.h
fd_mcs.c
fdomain.c
fdomain.h
FlashPoint.c [SCSI] BusLogic: Replace 'boolean' by 'bool' 2007-02-07 18:32:29 -05:00
g_NCR5380.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
g_NCR5380.h
g_NCR5380_mmio.c
gdth.c [SCSI] gdth: fix oops in gdth_copy_cmd() 2007-03-11 10:58:49 -05:00
gdth.h
gdth_ioctl.h
gdth_kcompat.h
gdth_proc.c
gdth_proc.h
gvp11.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
gvp11.h
hosts.c SCSI: use the proper semaphore to protect the class lists 2007-04-27 10:57:30 -07:00
hptiop.c
hptiop.h
ibmmca.c
ibmmca.h
ide-scsi.c ide-scsi: fix OOPS in idescsi_expiry() 2007-06-16 02:24:44 +02:00
imm.c
imm.h
in2000.c
in2000.h
initio.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
initio.h
ipr.c sysfs: add parameter "struct bin_attribute *" in .read/.write methods for sysfs binary attributes 2007-07-11 16:09:09 -07:00
ipr.h [SCSI] ipr: Use PCI-E reset API for new ipr adapter 2007-05-08 11:54:40 -05:00
ips.c
ips.h
iscsi_tcp.c [SCSI] iscsi_tcp: print useful error message when iscsi crc23c allocation fails 2007-03-11 11:30:11 -05:00
iscsi_tcp.h
jazz_esp.c [SCSI] jazz_esp: Converted to use esp_core. 2007-05-29 02:49:19 -07:00
Kconfig scsi disk help file is not complete 2007-07-02 10:12:34 -04:00
lasi700.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
libiscsi.c [SCSI] libiscsi: use get_unaligned 2007-03-11 11:28:09 -05:00
libsrp.c [SCSI] tgt: fix a rdma indirect transfer error bug 2007-05-16 12:45:17 -04:00
mac53c94.c [POWERPC] Rename get_property to of_get_property: drivers 2007-05-02 20:04:32 +10:00
mac53c94.h
mac_esp.c [TC] dec_esp: Driver model for the PMAZ-A 2007-02-09 16:23:17 +00:00
mac_scsi.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
mac_scsi.h
Makefile [SCSI] ESP: Kill SCSI_ESP_CORE and link directly just like jazz_esp 2007-05-29 02:49:20 -07:00
mca_53c9x.c [TC] dec_esp: Driver model for the PMAZ-A 2007-02-09 16:23:17 +00:00
megaraid.c [SCSI] megaraid: replace yield() with cond_resched() 2007-05-08 11:16:44 -05:00
megaraid.h [SCSI] megaraid: fix warnings when CONFIG_PROC_FS=n 2007-05-08 11:15:08 -05:00
mesh.c Merge master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6 2007-05-08 20:32:16 -07:00
mesh.h
mvme16x.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
mvme16x.h
mvme147.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
mvme147.h
ncr53c8xx.c
ncr53c8xx.h
NCR53C9x.c [TC] dec_esp: Driver model for the PMAZ-A 2007-02-09 16:23:17 +00:00
NCR53C9x.h [TC] dec_esp: Driver model for the PMAZ-A 2007-02-09 16:23:17 +00:00
NCR53c406a.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
NCR5380.c parse errors in ifdefs 2007-06-01 08:18:28 -07:00
NCR5380.h
NCR_D700.c [SCSI] NCR_D700: fix compile error 2007-01-27 09:28:58 -06:00
NCR_D700.h
NCR_Q720.c
NCR_Q720.h
nsp32.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
nsp32.h
nsp32_debug.c
nsp32_io.h
oktagon_esp.c [TC] dec_esp: Driver model for the PMAZ-A 2007-02-09 16:23:17 +00:00
oktagon_io.S
osst.c [SCSI] modalias for scsi devices 2007-04-17 18:15:04 -04:00
osst.h [PATCH] osst endianness annotations 2007-02-09 09:14:07 -08:00
osst_detect.h
osst_options.h
pas16.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
pas16.h
pluto.c [SCSI] pluto: Use wait_for_completion_timeout. 2007-05-29 02:49:05 -07:00
pluto.h
ppa.c
ppa.h
psi240i.c
psi240i.h
psi_chip.h
ql1040_fw.h
ql1280_fw.h
ql12160_fw.h
qla1280.c [SCSI] qla1280: use DMA_64BIT_MASK instead of ~ 0ULL 2007-05-06 09:33:11 -05:00
qla1280.h
qlogicfas.c
qlogicfas408.c
qlogicfas408.h
qlogicpti.c [SPARC/64] constify of_get_property return: drivers 2007-04-26 01:54:27 -07:00
qlogicpti.h
qlogicpti_asm.c
raid_class.c
script_asm.pl
scsi.c [SCSI] Make error printing more verbose 2007-03-11 11:17:49 -05:00
scsi.h
scsi_debug.c header cleaning: don't include smp_lock.h when not used 2007-05-08 11:15:07 -07:00
scsi_debug.h
scsi_devinfo.c [SCSI] stex: fix id mapping issue 2007-05-16 12:40:21 -04:00
scsi_error.c [SCSI] use sysfs configured timeout for EH Start Unit timeout 2007-05-06 09:33:12 -05:00
scsi_ioctl.c
scsi_lib.c Fix occurrences of "the the " 2007-05-09 08:57:56 +02:00
scsi_logging.h
scsi_module.c
scsi_netlink.c [NETLINK]: Switch cb_lock spinlock to mutex and allow to override it 2007-04-25 22:29:03 -07:00
scsi_priv.h [SCSI] scsi_error.c: Export some scsi_eh_* functions 2007-01-27 10:06:34 -06:00
scsi_proc.c [SCSI] scsi_proc.c: display sdev->scsi_level correctly 2007-02-16 11:12:07 -06:00
scsi_sas_internal.h
scsi_scan.c [SCSI] fix CONFIG_SCSI_WAIT_SCAN=m 2007-05-30 09:16:38 -05:00
scsi_sysctl.c [PATCH] sysctl: remove insert_at_head from register_sysctl 2007-02-14 08:09:59 -08:00
scsi_sysfs.c Merge master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6 2007-05-05 13:30:44 -07:00
scsi_tgt_if.c [SCSI] tgt: fix sesnse buffer problems 2007-03-11 11:39:27 -05:00
scsi_tgt_lib.c [SCSI] tgt: remove the code to build sense 2007-03-20 10:52:59 -05:00
scsi_tgt_priv.h [SCSI] tgt: fix sesnse buffer problems 2007-03-11 11:39:27 -05:00
scsi_transport_api.h
scsi_transport_fc.c [SCSI] fc_transport: make all rports wait dev_loss_tmo before removing them 2007-05-06 09:33:20 -05:00
scsi_transport_iscsi.c Merge master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6 2007-05-05 13:30:44 -07:00
scsi_transport_sas.c Fix typos concerning hierarchy 2007-02-17 19:23:03 +01:00
scsi_transport_spi.c [SCSI] spi transport class: export spi_dv_pending 2007-02-02 20:44:25 -06:00
scsi_typedefs.h
scsi_wait_scan.c
scsicam.c
sd.c [SCSI] sd: fix refcounting regression in suspend/resume routines 2007-05-22 14:08:24 -05:00
seagate.c
sg.c header cleaning: don't include smp_lock.h when not used 2007-05-08 11:15:07 -07:00
sgiwd93.c Convert SGI IP22 and specific drivers to platform_device. 2007-05-11 17:00:29 +01:00
sim710.c
sni_53c710.c Replace deprecated SA_xxx interrupt flags 2007-05-08 11:15:08 -07:00
sr.c [SCSI] modalias for scsi devices 2007-04-17 18:15:04 -04:00
sr.h
sr_ioctl.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
sr_vendor.c
st.c [SCSI] modalias for scsi devices 2007-04-17 18:15:04 -04:00
st.h [SCSI] st: fix Tape dies if wrong block size used, bug 7919 2007-02-03 08:05:47 -06:00
st_options.h
stex.c [SCSI] stex: minor cleanup and version update 2007-05-16 12:41:39 -04:00
sun3_NCR5380.c
sun3_scsi.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
sun3_scsi.h
sun3_scsi_vme.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
sun3x_esp.c [TC] dec_esp: Driver model for the PMAZ-A 2007-02-09 16:23:17 +00:00
sun_esp.c [SCSI] SUNESP: sun_esp.c needs linux/delay.h 2007-05-06 22:43:41 -07:00
sym53c416.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
sym53c416.h
t128.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
t128.h
tmscsim.c [SCSI] tmscsim: Remove the last bus_to_virt() 2007-05-06 09:33:21 -05:00
tmscsim.h [SCSI] tmscsim: remove bogus endianness conversions 2007-05-06 09:33:21 -05:00
u14-34f.c
ultrastor.c
ultrastor.h
wd33c93.c [SCSI] wd33c93: Fast SCSI with WD33C93B 2007-02-16 09:22:11 -06:00
wd33c93.h [SCSI] wd33c93: Fast SCSI with WD33C93B 2007-02-16 09:22:11 -06:00
wd7000.c
zalon.c