]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
mmc: loongson2: Fix sg iteration in data reorder functions
authorBinbin Zhou <zhoubinbin@loongson.cn>
Tue, 4 Aug 2026 06:12:00 +0000 (14:12 +0800)
committerUlf Hansson <ulfh@kernel.org>
Tue, 4 Aug 2026 13:39:11 +0000 (15:39 +0200)
commit00179ed9fbe07799676e2cb63c4e7f0e7cd80a5c
treeb9a32693fda0ed6c3d51cdde320ae7fbc26f1a0b
parentf64ea900e4bda3055ef24a2c906f8d049cf1c3bd
mmc: loongson2: Fix sg iteration in data reorder functions

In ls2k0500_mmc_reorder_cmd_data() and ls2k2000_mmc_reorder_cmd_data(),
the for_each_sg() macro already iterates over the scatterlist entries,
with 'sg' pointing to the current entry. However, the code incorrectly
uses '&sg[i]' and 'sg_dma_len(&sg[i])' inside the loop, which treats
'sg' as an array base and indexes it again, leading to access of
wrong sg entries (or out-of-bounds if the list is not an array).

Cc: stable@vger.kernel.org
Fixes: d0f8e961deae ("mmc: loongson2: Add Loongson-2K2000 SD/SDIO/eMMC controller driver")
Fixes: 2115772014bd ("mmc: loongson2: Add Loongson-2K SD/SDIO controller driver")
Signed-off-by: Binbin Zhou <zhoubinbin@loongson.cn>
Signed-off-by: Ulf Hansson <ulfh@kernel.org>
drivers/mmc/host/loongson2-mmc.c