linux-stable/drivers
Tejun Heo 140b5e5911 libata: fix ATAPI draining
With ATAPI transfer chunk size properly programmed, libata PIO HSM
should be able to handle full spurious data chunks.  Also, it's a good
idea to suppress trailing data warning for misc ATAPI commands as
there can be many of them per command - for example, if the chunk size
is 16 and the drive tries to transfer 510 bytes, there can be 31
trailing data messages.

This patch makes the following updates to libata ATAPI PIO HSM
implementation.

* Make it drain full spurious chunks.

* Suppress trailing data warning message for misc commands.

* Put limit on how many bytes can be drained.

* If odd, round up consumed bytes and the number of bytes to be
  drained.  This gets the number of bytes to drain right for drivers
  which do 16bit PIO.

This patch is partial backport of improve-ATAPI-data-xfer patchset
pending for #upstream.

Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-12-17 20:43:28 -05:00
..
acorn/char
acpi Pull bugzilla-9362 into release branch 2007-12-14 15:14:52 -05:00
amba
ata libata: fix ATAPI draining 2007-12-17 20:43:28 -05:00
atm [ATM]: Fix compiler warning noise with FORE200E driver 2007-12-14 13:54:39 -08:00
auxdisplay
base create /sys/.../power when CONFIG_PM is set 2007-11-28 13:53:53 -08:00
block Fix NULL dereference in umem.c 2007-12-10 19:43:55 -08:00
bluetooth
cdrom
char Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-2.6 2007-12-17 13:33:47 -08:00
clocksource
connector
cpufreq
cpuidle
crypto uml: add !UML dependencies 2007-12-03 08:13:17 -08:00
dca
dio
dma dmaengine: correct invalid assumptions in the Kconfig text 2007-11-29 09:24:53 -08:00
edac
eisa
firewire firewire: OHCI 1.0 Isochronous Receive support 2007-12-10 21:55:19 +01:00
firmware
hid
hwmon HWMON: coretemp, suspend fix 2007-12-04 01:35:32 -05:00
i2c i2c/isp1301_omap: Build fix 2007-12-12 13:45:25 +01:00
ide ide: fix ->io_32bit race in set_io_32bit() 2007-12-12 23:32:00 +01:00
ieee1394
infiniband IB/ehca: Fix lock flag variable location, bump version number 2007-12-13 09:37:23 -08:00
input spi: use simplified spi_sync() calling convention 2007-12-05 09:21:19 -08:00
isdn I4L: fix isdn_ioctl memory overrun vulnerability 2007-12-03 08:13:17 -08:00
kvm KVM: SVM: Fix FPU leak while emulating clts 2007-11-27 15:38:18 +02:00
leds leds: Fix led trigger locking bugs 2007-12-07 09:06:53 +00:00
lguest
macintosh
mca
md
media V4L/DVB (6820): s5h1409: QAM SNR related fixes 2007-12-13 17:58:06 -02:00
message
mfd MFD: SM501 debug typo fix 2007-11-29 09:24:53 -08:00
misc ACPI: thinkpad-acpi: fix lenovo keymap for brightness 2007-12-13 21:59:59 -05:00
mmc spi: use simplified spi_sync() calling convention 2007-12-05 09:21:19 -08:00
mtd
net Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6 2007-12-17 08:43:49 -08:00
nubus
of
oprofile
parisc [PARISC] lba_pci: pci_claim_resources disabled expansion roms 2007-12-06 09:38:26 -08:00
parport
pci PCI: Restore PCI expansion ROM P2P prefetch window creation 2007-12-17 10:41:19 -08:00
pcmcia pcmcia: fix kernel-doc comments 2007-12-10 19:43:54 -08:00
pnp drivers/pnp/resource.c: Add missing pci_dev_put 2007-11-29 09:24:52 -08:00
power
ps3 ps3: prefix all ps3-specific kernel modules with `ps3-' 2007-11-29 09:24:51 -08:00
rapidio
rtc spi: use simplified spi_sync() calling convention 2007-12-05 09:21:19 -08:00
s390 [S390]: Fix use of skb after netif_rx 2007-12-11 02:45:29 -08:00
sbus
scsi ide-scsi: add ide_scsi_hex_dump() helper 2007-12-12 23:31:57 +01:00
serial [SERIAL] sparc: Infrastructure to fix section mismatch bugs. 2007-12-12 07:36:34 -08:00
sh
sn
spi atmel_spi: reload RCR before TCR 2007-12-10 19:43:55 -08:00
ssb
tc
telephony
uio
usb USB: revert portions of "UNUSUAL_DEV: Sync up some reported devices from Ubuntu" 2007-12-17 10:47:16 -08:00
video x86_64 EFI boot support: EFI frame buffer driver 2007-11-29 09:24:54 -08:00
virtio
w1
watchdog [WATCHDOG] add Nano 7240 driver 2007-12-04 16:48:06 +00:00
xen
zorro Amiga zorro bus: Add missing zorro_device_remove() 2007-11-26 19:15:31 -08:00
Kconfig
Makefile