libata: fix ata_pio_sector for CONFIG_HIGHMEM
authorChristoph Hellwig <hch@lst.de>
Fri, 9 Jul 2021 13:02:37 +0000 (15:02 +0200)
committerJens Axboe <axboe@kernel.dk>
Fri, 9 Jul 2021 14:28:20 +0000 (08:28 -0600)
commitecef6a9effe49e8e2635c839020b9833b71e934c
treef02339010c9edf059f25aee1ce55b5285fe53407
parentf55966571d5eb2876a11e48e798b4592fa1ffbb7
libata: fix ata_pio_sector for CONFIG_HIGHMEM

Data transfers are not required to be block aligned in memory, so they
span two pages.  Fix this by splitting the call to >sff_data_xfer into
two for that case.

This has been broken since the initial libata import before the damn
of git, but was uncovered by the legacy ide driver removal.

Reported-by: kernel test robot <oliver.sang@intel.com>
Signed-off-by: Christoph Hellwig <hch@lst.de>
Link: https://lore.kernel.org/r/20210709130237.3730959-1-hch@lst.de
Signed-off-by: Jens Axboe <axboe@kernel.dk>
drivers/ata/libata-sff.c