android_kernel_xiaomi_sm8350/drivers/scsi
James Bottomley dde2020754 libata: eliminate the home grown dma padding in favour of
that provided by the block layer

ATA requires that all DMA transfers begin and end on word boundaries.
Because of this, a large amount of machinery grew up in ide to adjust
scatterlists on this basis.  However, as of 2.5, the block layer has a
dma_alignment variable which ensures both the beginning and length of a
DMA transfer are aligned on the dma_alignment boundary.  Although the
block layer does adjust the beginning of the transfer to ensure this
happens, it doesn't actually adjust the length, it merely makes sure
that space is allocated for transfers beyond the declared length.  The
upshot of this is that scatterlists may be padded to any size between
the actual length and the length adjusted to the dma_alignment safely
knowing that memory is allocated in this region.

Right at the moment, SCSI takes the default dma_aligment which is on a
512 byte boundary.  Note that this aligment only applies to transfers
coming in from user space.  However, since all kernel allocations are
automatically aligned on a minimum of 32 byte boundaries, it is safe to
adjust them in this manner as well.

tj: * Adjusting sg after padding is done in block layer.  Make libata
      set queue alignment correctly for ATAPI devices and drop broken
      sg mangling from ata_sg_setup().
    * Use request->raw_data_len for ATAPI transfer chunk size.
    * Killed qc->raw_nbytes.
    * Separated out killing qc->n_iter.

Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
2008-02-19 11:36:56 +01:00
..
aacraid [SCSI] aacraid: informational sysfs value corrections 2008-02-11 10:20:54 -06:00
aic7xxx scsi: fix makefile for aic7(3*x) 2008-02-09 10:43:58 +01:00
aic7xxx_old
aic94xx [SCSI] aic94xx: fix ABORT_TASK define conflict 2008-02-11 13:36:31 -06:00
arcmsr [SCSI] arcmsr: updates (1.20.00.15) 2008-02-07 18:02:44 -06:00
arm [SCSI] fas216: Use scsi_eh API for REQUEST_SENSE invocation 2008-02-11 12:43:12 -06:00
dpt
ibmvscsi Remove pointless casts from void pointers 2008-02-06 10:41:01 -08:00
libsas libata: eliminate the home grown dma padding in favour of 2008-02-19 11:36:56 +01:00
lpfc [SCSI] lpfc 8.2.5 : Update lpfc driver version to 8.2.5 2008-02-11 17:52:58 -06:00
megaraid [SCSI] MegaRAID driver management char device moved to misc 2008-02-11 10:20:53 -06:00
pcmcia pcmcia: convert some internal-only ioaddr_t to unsigned int 2008-02-05 09:44:08 -08:00
qla2xxx [SCSI] qla2xxx: Update version number to 8.02.00-k8. 2008-02-07 18:02:40 -06:00
qla4xxx [SCSI] qla4xxx: add async scan support 2008-02-07 18:02:35 -06:00
sym53c8xx_2 [SCSI] sym53c8xx: fix resid calculation 2008-02-07 18:02:34 -06:00
.gitignore
3w-9xxx.c [SCSI] remove use_sg_chaining 2008-01-30 13:14:02 -06:00
3w-9xxx.h
3w-xxxx.c [SCSI] remove use_sg_chaining 2008-01-30 13:14:02 -06:00
3w-xxxx.h
53c700_d.h_shipped
53c700.c [SCSI] replace sizeof sense_buffer with SCSI_SENSE_BUFFERSIZE 2008-01-23 11:29:27 -06:00
53c700.h
53c700.scr
a100u2w.c [SCSI] remove use_sg_chaining 2008-01-30 13:14:02 -06:00
a100u2w.h
a2091.c cleanup after APUS removal 2008-02-06 10:41:01 -08:00
a2091.h
a3000.c cleanup after APUS removal 2008-02-06 10:41:01 -08:00
a3000.h
a4000t.c
advansys.c [SCSI] advansys: fix overrun_buf aligned bug 2008-02-11 10:20:53 -06:00
aha152x.c
aha152x.h
aha1542.c MAINTAINERS: remove Adam Fritzler, remove his email address in other sources 2008-02-03 16:36:24 +02:00
aha1542.h
aha1740.c [SCSI] remove use_sg_chaining 2008-01-30 13:14:02 -06:00
aha1740.h
aic7xxx_old.c Remove pointless casts from void pointers 2008-02-06 10:41:01 -08:00
atari_dma_emul.c
atari_NCR5380.c [SCSI] atari_NCR5380, sun3_NCR5380: operator precedence fix 2008-01-11 18:28:57 -06:00
atari_scsi.c
atari_scsi.h
atp870u.c
atp870u.h
BusLogic.c [SCSI] remove use_sg_chaining 2008-01-30 13:14:02 -06:00
BusLogic.h
bvme6000_scsi.c
ch.c [SCSI] ch: remove forward declarations 2008-01-25 09:22:12 -06:00
constants.c
dc395x.c [SCSI] dc395x: fix uninitialized var warning 2008-02-07 18:02:43 -06:00
dc395x.h
dmx3191d.c
dpt_i2o.c [SCSI] remove use_sg_chaining 2008-01-30 13:14:02 -06:00
dpti.h
dtc.c
dtc.h
eata_generic.h
eata_pio.c [SCSI] aic7xxx_old, eata_pio, ips, libsas: don't zero out sense_buffer in queuecommand 2008-01-23 11:29:26 -06:00
eata_pio.h
eata.c [SCSI] remove use_sg_chaining 2008-01-30 13:14:02 -06:00
esp_scsi.c
esp_scsi.h
fd_mcs.c
fdomain.c
fdomain.h
FlashPoint.c
g_NCR5380_mmio.c
g_NCR5380.c
g_NCR5380.h
gdth_ioctl.h
gdth_proc.c
gdth_proc.h
gdth.c [SCSI] gdth: update deprecated pci_find_device 2008-02-13 09:33:10 -06:00
gdth.h
gvp11.c cleanup after APUS removal 2008-02-06 10:41:01 -08:00
gvp11.h
hosts.c [SCSI] remove use_sg_chaining 2008-01-30 13:14:02 -06:00
hptiop.c [SCSI] remove use_sg_chaining 2008-01-30 13:14:02 -06:00
hptiop.h
ibmmca.c [SCSI] remove use_sg_chaining 2008-01-30 13:14:02 -06:00
ide-scsi.c ide: add ide_read_[alt]status() inline helpers 2008-02-06 02:57:51 +01:00
imm.c
imm.h
in2000.c
in2000.h
initio.c [SCSI] remove use_sg_chaining 2008-01-30 13:14:02 -06:00
initio.h
ipr.c libata: eliminate the home grown dma padding in favour of 2008-02-19 11:36:56 +01:00
ipr.h
ips.c drivers/scsi/: Spelling fixes 2008-02-03 17:28:22 +02:00
ips.h
iscsi_tcp.c [SCSI] iscsi: fix up iscsi printk prefix 2008-02-07 18:02:37 -06:00
iscsi_tcp.h [SCSI] iscsi_tcp: enable sg chaining 2008-01-11 18:28:48 -06:00
jazz_esp.c
Kconfig [SCSI] gdth: update deprecated pci_find_device 2008-02-13 09:33:10 -06:00
lasi700.c
libiscsi.c [SCSI] libiscsi: fix session age rollover and remove cid encoding 2008-02-07 18:02:37 -06:00
libsrp.c [SCSI] implement scsi_data_buffer 2008-01-30 13:03:40 -06:00
mac53c94.c [SCSI] remove use_sg_chaining 2008-01-30 13:14:02 -06:00
mac53c94.h
mac_scsi.c
mac_scsi.h
Makefile [SCSI] ses: add new Enclosure ULD 2008-02-07 18:04:10 -06:00
megaraid.c [SCSI] remove use_sg_chaining 2008-01-30 13:14:02 -06:00
megaraid.h
mesh.c [SCSI] remove use_sg_chaining 2008-01-30 13:14:02 -06:00
mesh.h
mvme16x_scsi.c
mvme147.c
mvme147.h
ncr53c8xx.c [SCSI] ncr53c8xx: fix sense_buffer access bug 2008-01-30 13:03:39 -06:00
ncr53c8xx.h
NCR53c406a.c [SCSI] remove use_sg_chaining 2008-01-30 13:14:02 -06:00
NCR5380.c [SCSI] NCR5380: fix section mismatch 2008-01-23 13:44:31 -06:00
NCR5380.h
NCR_D700.c
NCR_D700.h
NCR_Q720.c
NCR_Q720.h
nsp32_debug.c
nsp32_io.h
nsp32.c [SCSI] remove use_sg_chaining 2008-01-30 13:14:02 -06:00
nsp32.h
osst_detect.h
osst_options.h
osst.c
osst.h
pas16.c
pas16.h
ppa.c
ppa.h
ps3rom.c [SCSI] ps3rom: sector size should be 512 bytes 2008-02-07 18:02:33 -06:00
ql1040_fw.h
ql1280_fw.h
ql12160_fw.h
qla1280.c [SCSI] remove use_sg_chaining 2008-01-30 13:14:02 -06:00
qla1280.h
qlogicfas408.c
qlogicfas408.h
qlogicfas.c [SCSI] remove use_sg_chaining 2008-01-30 13:14:02 -06:00
qlogicpti_asm.c
qlogicpti.c [SCSI] replace sizeof sense_buffer with SCSI_SENSE_BUFFERSIZE 2008-01-23 11:29:27 -06:00
qlogicpti.h
raid_class.c
script_asm.pl
scsi_debug.c [SCSI] scsi_debug: add XDWRITEREAD_10 support 2008-01-30 13:14:25 -06:00
scsi_debug.h
scsi_devinfo.c
scsi_error.c [SCSI] bidirectional command support 2008-01-30 13:03:41 -06:00
scsi_ioctl.c
scsi_lib_dma.c
scsi_lib.c block: add request->raw_data_len 2008-02-19 11:36:35 +01:00
scsi_logging.h
scsi_module.c
scsi_netlink.c [NETNS]: Consolidate kernel netlink socket destruction. 2008-01-28 15:08:07 -08:00
scsi_priv.h [SCSI] don't use __GFP_DMA for sense buffers if not required 2008-01-23 11:37:44 -06:00
scsi_proc.c
scsi_sas_internal.h
scsi_scan.c [SCSI] add missing transport configure points for target and host 2008-01-23 11:29:17 -06:00
scsi_sysctl.c
scsi_sysfs.c [SCSI] add missing transport configure points for target and host 2008-01-23 11:29:17 -06:00
scsi_tgt_if.c
scsi_tgt_lib.c drivers/scsi/: Spelling fixes 2008-02-03 17:28:22 +02:00
scsi_tgt_priv.h
scsi_transport_api.h
scsi_transport_fc_internal.h
scsi_transport_fc.c
scsi_transport_iscsi.c [SCSI] iscsi: bump version to 2.0-868 2008-02-07 18:02:38 -06:00
scsi_transport_sas.c drivers/scsi/: Spelling fixes 2008-02-03 17:28:22 +02:00
scsi_transport_spi.c [SCSI] scsi_transport_spi: convert to attribute groups 2008-01-23 11:29:18 -06:00
scsi_transport_srp_internal.h
scsi_transport_srp.c
scsi_typedefs.h
scsi_wait_scan.c
scsi.c [SCSI] kernel-doc: fix scsi docbook 2008-02-07 18:02:42 -06:00
scsi.h
scsicam.c
sd.c [SCSI] sd: handle bad lba in sense information 2008-02-07 18:02:41 -06:00
ses.c [SCSI] ses: fix memory leaks 2008-02-11 11:00:48 -06:00
sg.c Convert SG from nopage to fault. 2008-02-07 19:09:22 -08:00
sgiwd93.c [SCSI] sgiwd93: use cached memory access to make driver work on IP28 2008-01-30 13:03:39 -06:00
sim710.c
sni_53c710.c
sr_ioctl.c [SCSI] sr: fix test unit ready responses 2008-02-07 18:02:44 -06:00
sr_vendor.c
sr.c [SCSI] sr: fix test unit ready responses 2008-02-07 18:02:44 -06:00
sr.h [SCSI] sr: fix test unit ready responses 2008-02-07 18:02:44 -06:00
st_options.h
st.c [SCSI] st: convert to unlocked_ioctl 2008-01-23 11:29:29 -06:00
st.h
stex.c [SCSI] remove use_sg_chaining 2008-01-30 13:14:02 -06:00
sun3_NCR5380.c [SCSI] atari_NCR5380, sun3_NCR5380: operator precedence fix 2008-01-11 18:28:57 -06:00
sun3_scsi_vme.c
sun3_scsi.c
sun3_scsi.h
sun3x_esp.c [SCSI] sun3x_esp: convert to esp_scsi 2008-02-07 18:02:33 -06:00
sun_esp.c
sym53c416.c [SCSI] sym53c416: fix module parameters 2008-02-12 15:24:58 -06:00
sym53c416.h
t128.c
t128.h
tmscsim.c [SCSI] replace sizeof sense_buffer with SCSI_SENSE_BUFFERSIZE 2008-01-23 11:29:27 -06:00
tmscsim.h
u14-34f.c [SCSI] u14-34f: fix data direction bug 2008-02-07 18:02:44 -06:00
ultrastor.c [SCSI] remove use_sg_chaining 2008-01-30 13:14:02 -06:00
ultrastor.h
wd33c93.c
wd33c93.h
wd7000.c [SCSI] remove use_sg_chaining 2008-01-30 13:14:02 -06:00
zalon.c
zorro7xx.c