From: Heiko Carstens Date: Thu, 7 Mar 2024 12:28:13 +0000 (+0100) Subject: s390/cio,idal: remove superfluous virt_to_phys() conversion X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=0c9580cebb5065c7ef25d48f61222aaf46932a0f;p=linux.git 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 --- diff --git a/arch/s390/include/asm/idals.h b/arch/s390/include/asm/idals.h index 4621097775476..1ceefc9f6fbeb 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;