a885c8c431
HDIO_GETGEO is implemented in most block drivers, and all of them have to duplicate the code to copy the structure to userspace, as well as getting the start sector. This patch moves that to common code [1] and adds a ->getgeo method to fill out the raw kernel hd_geometry structure. For many drivers this means ->ioctl can go away now. [1] the s390 block drivers are odd in this respect. xpram sets ->start to 4 always which seems more than odd, and the dasd driver shifts the start offset around, probably because of it's non-standard sector size. Signed-off-by: Christoph Hellwig <hch@lst.de> Cc: Jens Axboe <axboe@suse.de> Cc: <mike.miller@hp.com> Cc: Jeff Dike <jdike@addtoit.com> Cc: Paolo Giarrusso <blaisorblade@yahoo.it> Cc: Bartlomiej Zolnierkiewicz <B.Zolnierkiewicz@elka.pw.edu.pl> Cc: Neil Brown <neilb@cse.unsw.edu.au> Cc: Markus Lidel <Markus.Lidel@shadowconnect.com> Cc: Russell King <rmk@arm.linux.org.uk> Cc: David Woodhouse <dwmw2@infradead.org> Cc: Martin Schwidefsky <schwidefsky@de.ibm.com> Cc: James Bottomley <James.Bottomley@steeleye.com> Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> |
||
---|---|---|
.. | ||
aacraid | ||
aic7xxx | ||
aic7xxx_old | ||
arm | ||
dpt | ||
ibmvscsi | ||
lpfc | ||
megaraid | ||
pcmcia | ||
qla2xxx | ||
sym53c8xx_2 | ||
.gitignore | ||
3w-9xxx.c | ||
3w-9xxx.h | ||
3w-xxxx.c | ||
3w-xxxx.h | ||
53c7xx_d.h_shipped | ||
53c7xx_u.h_shipped | ||
53c7xx.c | ||
53c7xx.h | ||
53c7xx.scr | ||
53c700_d.h_shipped | ||
53c700.c | ||
53c700.h | ||
53c700.scr | ||
a100u2w.c | ||
a100u2w.h | ||
a2091.c | ||
a2091.h | ||
a3000.c | ||
a3000.h | ||
advansys.c | ||
advansys.h | ||
aha152x.c | ||
aha152x.h | ||
aha1542.c | ||
aha1542.h | ||
aha1740.c | ||
aha1740.h | ||
ahci.c | ||
aic7xxx_old.c | ||
amiga7xx.c | ||
amiga7xx.h | ||
ata_piix.c | ||
atari_dma_emul.c | ||
atari_NCR5380.c | ||
atari_scsi.c | ||
atari_scsi.h | ||
atp870u.c | ||
atp870u.h | ||
blz1230.c | ||
blz2060.c | ||
BusLogic.c | ||
BusLogic.h | ||
bvme6000.c | ||
bvme6000.h | ||
ch.c | ||
constants.c | ||
cyberstorm.c | ||
cyberstormII.c | ||
dc395x.c | ||
dc395x.h | ||
dec_esp.c | ||
dmx3191d.c | ||
dpt_i2o.c | ||
dpti.h | ||
dtc.c | ||
dtc.h | ||
eata_generic.h | ||
eata_pio.c | ||
eata_pio.h | ||
eata.c | ||
esp.c | ||
esp.h | ||
fastlane.c | ||
fcal.c | ||
fcal.h | ||
fd_mcs.c | ||
fdomain.c | ||
fdomain.h | ||
FlashPoint.c | ||
g_NCR5380_mmio.c | ||
g_NCR5380.c | ||
g_NCR5380.h | ||
gdth_ioctl.h | ||
gdth_kcompat.h | ||
gdth_proc.c | ||
gdth_proc.h | ||
gdth.c | ||
gdth.h | ||
gvp11.c | ||
gvp11.h | ||
hosts.c | ||
hosts.h | ||
ibmmca.c | ||
ibmmca.h | ||
ide-scsi.c | ||
imm.c | ||
imm.h | ||
in2000.c | ||
in2000.h | ||
initio.c | ||
initio.h | ||
ipr.c | ||
ipr.h | ||
ips.c | ||
ips.h | ||
iscsi_tcp.c | ||
iscsi_tcp.h | ||
jazz_esp.c | ||
Kconfig | ||
lasi700.c | ||
libata-core.c | ||
libata-scsi.c | ||
libata.h | ||
mac53c94.c | ||
mac53c94.h | ||
mac_esp.c | ||
mac_scsi.c | ||
mac_scsi.h | ||
Makefile | ||
mca_53c9x.c | ||
megaraid.c | ||
megaraid.h | ||
mesh.c | ||
mesh.h | ||
mvme16x.c | ||
mvme16x.h | ||
mvme147.c | ||
mvme147.h | ||
ncr53c8xx.c | ||
ncr53c8xx.h | ||
NCR53c406a.c | ||
NCR53C9x.c | ||
NCR53C9x.h | ||
NCR5380.c | ||
NCR5380.h | ||
NCR_D700.c | ||
NCR_D700.h | ||
NCR_Q720.c | ||
NCR_Q720.h | ||
nsp32_debug.c | ||
nsp32_io.h | ||
nsp32.c | ||
nsp32.h | ||
oktagon_esp.c | ||
oktagon_io.S | ||
osst_detect.h | ||
osst_options.h | ||
osst.c | ||
osst.h | ||
pas16.c | ||
pas16.h | ||
pci2000.h | ||
pdc_adma.c | ||
pluto.c | ||
pluto.h | ||
ppa.c | ||
ppa.h | ||
psi240i.c | ||
psi240i.h | ||
psi_chip.h | ||
ql1040_fw.h | ||
ql1280_fw.h | ||
ql12160_fw.h | ||
qla1280.c | ||
qla1280.h | ||
qlogicfas408.c | ||
qlogicfas408.h | ||
qlogicfas.c | ||
qlogicfc_asm.c | ||
qlogicfc.c | ||
qlogicpti_asm.c | ||
qlogicpti.c | ||
qlogicpti.h | ||
raid_class.c | ||
sata_mv.c | ||
sata_nv.c | ||
sata_promise.c | ||
sata_promise.h | ||
sata_qstor.c | ||
sata_sil24.c | ||
sata_sil.c | ||
sata_sis.c | ||
sata_svw.c | ||
sata_sx4.c | ||
sata_uli.c | ||
sata_via.c | ||
sata_vsc.c | ||
script_asm.pl | ||
scsi_debug.c | ||
scsi_debug.h | ||
scsi_devinfo.c | ||
scsi_error.c | ||
scsi_ioctl.c | ||
scsi_lib.c | ||
scsi_logging.h | ||
scsi_module.c | ||
scsi_priv.h | ||
scsi_proc.c | ||
scsi_scan.c | ||
scsi_sysctl.c | ||
scsi_sysfs.c | ||
scsi_transport_fc.c | ||
scsi_transport_iscsi.c | ||
scsi_transport_sas.c | ||
scsi_transport_spi.c | ||
scsi_typedefs.h | ||
scsi.c | ||
scsi.h | ||
scsicam.c | ||
sd.c | ||
seagate.c | ||
seagate.h | ||
sg.c | ||
sgiwd93.c | ||
sim710.c | ||
sr_ioctl.c | ||
sr_vendor.c | ||
sr.c | ||
sr.h | ||
st_options.h | ||
st.c | ||
st.h | ||
sun3_NCR5380.c | ||
sun3_scsi_vme.c | ||
sun3_scsi.c | ||
sun3_scsi.h | ||
sun3x_esp.c | ||
sym53c416.c | ||
sym53c416.h | ||
t128.c | ||
t128.h | ||
tmscsim.c | ||
tmscsim.h | ||
u14-34f.c | ||
ultrastor.c | ||
ultrastor.h | ||
wd33c93.c | ||
wd33c93.h | ||
wd7000.c | ||
zalon.c |