From: Alexander Gordeev Date: Wed, 26 Jan 2022 12:47:58 +0000 (+0100) Subject: s390/sclp_sdias: fix sclp_sdias_copy() virtual vs physical address confusion X-Git-Tag: v6.1-rc5~1732^2~62 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=628c66942e233d73def54fa458641cfc96be6660;p=platform%2Fkernel%2Flinux-starfive.git s390/sclp_sdias: fix sclp_sdias_copy() virtual vs physical address confusion Due to historical reasons sclp_sdias_copy() misuses the notion of physical vs virtual addresses difference. Note: this does not fix a bug currently, since virtual and physical addresses are identical. Reviewed-by: Heiko Carstens Signed-off-by: Alexander Gordeev Signed-off-by: Vasily Gorbik --- diff --git a/drivers/s390/char/sclp_sdias.c b/drivers/s390/char/sclp_sdias.c index 215d4b4a5ff5..e915a343fcf5 100644 --- a/drivers/s390/char/sclp_sdias.c +++ b/drivers/s390/char/sclp_sdias.c @@ -184,7 +184,7 @@ int sclp_sdias_copy(void *dest, int start_blk, int nr_blks) sccb->evbuf.asa_size = SDIAS_ASA_SIZE_64; sccb->evbuf.event_status = 0; sccb->evbuf.blk_cnt = nr_blks; - sccb->evbuf.asa = (unsigned long)dest; + sccb->evbuf.asa = __pa(dest); sccb->evbuf.fbn = start_blk; sccb->evbuf.lbn = 0; sccb->evbuf.dbs = 1;