From 34c4812366edaa8383efc3221f35d713a3ee1ced Mon Sep 17 00:00:00 2001 From: Heiko Carstens Date: Thu, 7 Nov 2024 16:11:34 +0100 Subject: [PATCH] s390/pageattr: Convert to use flag output macros Use flag output macros in inline asm to allow for better code generation if the compiler has support for the flag output constraint. Reviewed-by: Juergen Christ Signed-off-by: Heiko Carstens --- arch/s390/mm/pageattr.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/arch/s390/mm/pageattr.c b/arch/s390/mm/pageattr.c index aec9eb16b6f7b..4a0f422cfeb64 100644 --- a/arch/s390/mm/pageattr.c +++ b/arch/s390/mm/pageattr.c @@ -12,6 +12,7 @@ #include #include #include +#include #include static inline unsigned long sske_frame(unsigned long addr, unsigned char skey) @@ -414,11 +415,11 @@ bool kernel_page_present(struct page *page) addr = (unsigned long)page_address(page); asm volatile( " lra %[addr],0(%[addr])\n" - " ipm %[cc]\n" - : [cc] "=d" (cc), [addr] "+a" (addr) + CC_IPM(cc) + : CC_OUT(cc, cc), [addr] "+a" (addr) : - : "cc"); - return (cc >> 28) == 0; + : CC_CLOBBER); + return CC_TRANSFORM(cc) == 0; } #if defined(CONFIG_DEBUG_PAGEALLOC) || defined(CONFIG_KFENCE) -- 2.47.3