From 0c9580cebb5065c7ef25d48f61222aaf46932a0f Mon Sep 17 00:00:00 2001 From: Heiko Carstens Date: Thu, 7 Mar 2024 13:28:13 +0100 Subject: [PATCH] s390/cio,idal: remove superfluous virt_to_phys() conversion Only the last 12 bits of virtual / physical addresses are used when masking with IDA_BLOCK_SIZE - 1. Given that the bits are the same regardless of virtual or physical address, remove the virtual to physical address conversion. Signed-off-by: Heiko Carstens --- arch/s390/include/asm/idals.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/arch/s390/include/asm/idals.h b/arch/s390/include/asm/idals.h index 462109777547..1ceefc9f6fbe 100644 --- a/arch/s390/include/asm/idals.h +++ b/arch/s390/include/asm/idals.h @@ -41,7 +41,7 @@ static inline unsigned int idal_nr_words(void *vaddr, unsigned int length) { unsigned int cidaw; - cidaw = __pa(vaddr) & (IDA_BLOCK_SIZE - 1); + cidaw = (unsigned long)vaddr & (IDA_BLOCK_SIZE - 1); cidaw += length + IDA_BLOCK_SIZE - 1; cidaw >>= IDA_SIZE_SHIFT; return cidaw; @@ -54,7 +54,7 @@ static inline unsigned int idal_2k_nr_words(void *vaddr, unsigned int length) { unsigned int cidaw; - cidaw = __pa(vaddr) & (IDA_2K_BLOCK_SIZE - 1); + cidaw = (unsigned long)vaddr & (IDA_2K_BLOCK_SIZE - 1); cidaw += length + IDA_2K_BLOCK_SIZE - 1; cidaw >>= IDA_2K_SIZE_SHIFT; return cidaw;