Staging: zram: Fix kunmapping order
PATCH 1/1 Staging: zram: Fix kunmapping order
This patch fixes the unmapping order of KM_USER0/1 in handle_uncompressed_page() and zram_read() so that kmap()/kunmap() calls are correctly nested.
Reported-by Nitin Gupta <[email protected]>
Signed-off-by Jerome Marchand <[email protected]>
--- zram_drv.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
drivers/staging/zram/zram_drv.c +2 -2
@@ -199,8 +199,8 @@ static void handle_uncompressed_page(struct zram *zram, struct bio_vec *bvec, cmem =kmap_atomic (zram->table[index].page,KM_USER1 );memcpy (user_mem + bvec->bv_offset, cmem + offset, bvec->bv_len); -kunmap_atomic (user_mem,KM_USER0 );kunmap_atomic (cmem,KM_USER1 ); +kunmap_atomic (user_mem,KM_USER0 );flush_dcache_page (page); }
@@ -267,8 +267,8 @@ static int zram_bvec_read(struct zram *zram, struct bio_vec *bvec,kfree (uncmem); } -kunmap_atomic (user_mem,KM_USER0 );kunmap_atomic (cmem,KM_USER1 ); +kunmap_atomic (user_mem,KM_USER0 );/* Should NEVER happen. Return bio error if it does. */ if (unlikely (ret !=LZO_E_OK )) {
Quoted 7 lines · Jerome Marchand
This patch fixes the unmapping order of KM_USER0/1 in
handle_uncompressed_page()andzram_read()so that kmap()/kunmap() calls are correctly nested.Reported-by Nitin Gupta <[email protected]>Signed-off-by Jerome Marchand <[email protected]>
Thanks for the fix.
Reviewed-by Nitin Gupta <[email protected]>
Nitin