pata_legacy: fix a couple uninitialized variable bugs
authorDan Carpenter <dan.carpenter@oracle.com>
Wed, 6 Oct 2021 07:34:19 +0000 (10:34 +0300)
committerDamien Le Moal <damien.lemoal@wdc.com>
Tue, 12 Oct 2021 00:52:35 +0000 (09:52 +0900)
The last byte of "pad" is used without being initialized.

Fixes: 55dba3120fbc ("libata: update ->data_xfer hook for ATAPI")
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Damien Le Moal <damien.lemoal@wdc.com>
drivers/ata/pata_legacy.c

index c3e6592..0a8bf09 100644 (file)
@@ -352,7 +352,8 @@ static unsigned int pdc_data_xfer_vlb(struct ata_queued_cmd *qc,
                        iowrite32_rep(ap->ioaddr.data_addr, buf, buflen >> 2);
 
                if (unlikely(slop)) {
-                       __le32 pad;
+                       __le32 pad = 0;
+
                        if (rw == READ) {
                                pad = cpu_to_le32(ioread32(ap->ioaddr.data_addr));
                                memcpy(buf + buflen - slop, &pad, slop);
@@ -742,7 +743,8 @@ static unsigned int vlb32_data_xfer(struct ata_queued_cmd *qc,
                        ioread32_rep(ap->ioaddr.data_addr, buf, buflen >> 2);
 
                if (unlikely(slop)) {
-                       __le32 pad;
+                       __le32 pad = 0;
+
                        if (rw == WRITE) {
                                memcpy(&pad, buf + buflen - slop, slop);
                                iowrite32(le32_to_cpu(pad), ap->ioaddr.data_addr);