Re: [PATCH v3 01/14] KVM: s390: pv: add macros for UVC CC values
From: Claudio Imbrenda <imbrenda@linux.ibm.com>
Date: 2021-08-06 09:35:15
Also in:
linux-s390, lkml
On Fri, 6 Aug 2021 09:26:11 +0200 David Hildenbrand [off-list ref] wrote:
On 04.08.21 17:40, Claudio Imbrenda wrote:quoted
Add macros to describe the 4 possible CC values returned by the UVC instruction. Signed-off-by: Claudio Imbrenda <imbrenda@linux.ibm.com> --- arch/s390/include/asm/uv.h | 5 +++++ 1 file changed, 5 insertions(+)diff --git a/arch/s390/include/asm/uv.h b/arch/s390/include/asm/uv.h index 12c5f006c136..b35add51b967 100644 --- a/arch/s390/include/asm/uv.h +++ b/arch/s390/include/asm/uv.h@@ -18,6 +18,11 @@ #include <asm/page.h> #include <asm/gmap.h> +#define UVC_CC_OK 0 +#define UVC_CC_ERROR 1 +#define UVC_CC_BUSY 2 +#define UVC_CC_PARTIAL 3 + #define UVC_RC_EXECUTED 0x0001 #define UVC_RC_INV_CMD 0x0002 #define UVC_RC_INV_STATE 0x0003Do we have any users we could directly fix up? AFAIKs, most users don't really care about the cc value, only about cc vs !cc.
maybe there will be in the future. I wanted to split away this generic change from the patch that uses it, to improve readability
quoted hunk ↗ jump to hunk
The only instances I was able to spot quickly:diff --git a/arch/s390/include/asm/uv.h b/arch/s390/include/asm/uv.h index 12c5f006c136..dd72d325f9e8 100644 --- a/arch/s390/include/asm/uv.h +++ b/arch/s390/include/asm/uv.h@@ -233,7 +233,7 @@ static inline int uv_call(unsigned long r1,unsigned long r2) do { cc = __uv_call(r1, r2); - } while (cc > 1); + } while (cc >= UVC_CC_BUSY); return cc; }@@ -245,7 +245,7 @@ static inline int uv_call_sched(unsigned long r1,unsigned long r2) do { cc = __uv_call(r1, r2); cond_resched(); - } while (cc > 1); + } while (cc >= UVC_CC_BUSY); return cc; } Of course, we could replace all checks for cc vs !cc with "cc != UVC_CC_OK" vs "cc == UVC_CC_OK".