On Thu, 2022-04-14 at 10:03 +0200, Claudio Imbrenda wrote: > diff --git a/arch/s390/kernel/uv.c b/arch/s390/kernel/uv.c > index e358b8bd864b..43393568f844 100644 > --- a/arch/s390/kernel/uv.c > +++ b/arch/s390/kernel/uv.c > @@ -236,7 +236,8 @@ static int make_secure_pte(pte_t *ptep, unsigned > long addr, > > static bool should_export_before_import(struct uv_cb_header *uvcb, > struct mm_struct *mm) > { > - return uvcb->cmd != UVC_CMD_UNPIN_PAGE_SHARED && > + return !test_bit_inv(BIT_UV_FEAT_MISC, > &uv_info.uv_feature_indications) && > + uvcb->cmd != UVC_CMD_UNPIN_PAGE_SHARED && > atomic_read(&mm->context.protected_count) > 1; This might be nicer to read like this: if (test_bit_inv(BIT_UV_FEAT_MISC, &uv_info.uv_feature_indications)) return false; if (uvcb->cmd == UVC_CMD_UNPIN_PAGE_SHARED) return false; return atomic_read(&mm->context.protected_count) > 1;