libata fixes for sparse-found problems
authorAl Viro <viro@ZenIV.linux.org.uk>
Sat, 12 Jan 2008 14:16:14 +0000 (14:16 +0000)
committerJeff Garzik <jeff@garzik.org>
Tue, 15 Jan 2008 20:58:36 +0000 (15:58 -0500)
commitb50e56d81e0df964e9b28001d792021b109cf4f1
treee76679a3230265d1484882fd914e1b7b208004ba
parent38ad9aebe70dc72df08851bbd1620d89329129ba
libata fixes for sparse-found problems

In pata_legacy and pata_winbond we've got bugs - cpu_to_le16() instead
of cpu_to_le32().  Fortunately, both affected suckers are VLB, thus
l-e-only, so we might get away with that unless we hit it with slop == 3
(hadn't checked if playing with badly aligned sg could trigger that).
Still buggy...  Moreover, pata_legacy, pata_winbond and pata_qdi forgot to
initialize pad on the write side of 32bit case in their ->data_xfer().
Hopefully the hardware does't care, but still, sending uninitialized
data to it...

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
drivers/ata/pata_legacy.c
drivers/ata/pata_qdi.c
drivers/ata/pata_winbond.c