Re: [PATCH 3.4 033/176] KVM: s390: flush CPU on load control

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Am 09.04.2015 um 10:44 schrieb lizf@xxxxxxxxxx:
> From: Christian Borntraeger <borntraeger@xxxxxxxxxx>
> 
> 3.4.107-rc1 review patch.  If anyone has any objections, please let me know.
> 
> ------------------
> 
> 
> commit 2dca485f8740208604543c3960be31a5dd3ea603 upstream.

Hmmm, I just realized that this patch only makes a difference with 

commit d3d692c82e4ed79ae7c85f8825ccfdb7d11819da ("KVM: s390: implement KVM_REQ_TLB_FLUSH and make use of it")

It should not hurt to have this patch as far as I can tell,
but it makes no difference. This is also true for other
stable versions < 3.18 - sorry for noticing it that late.

commit d3d692c82e4ed79ae7c85f8825ccfdb7d11819da on the other hand
is not that easy to backport into Linux versions < 3.16.

So maybe just drop this patch?

Christian






> 
> some control register changes will flush some aspects of the CPU, e.g.
> POP explicitely mentions that for CR9-CR11 "TLBs may be cleared".
> Instead of trying to be clever and only flush on specific CRs, let
> play safe and flush on all lctl(g) as future machines might define
> new bits in CRs. Load control intercept should not happen that often.
> 
> Signed-off-by: Christian Borntraeger <borntraeger@xxxxxxxxxx>
> Acked-by: Cornelia Huck <cornelia.huck@xxxxxxxxxx>
> Reviewed-by: David Hildenbrand <dahi@xxxxxxxxxxxxxxxxxx>
> [lizf: Backported to 3.4:
>  - adjust filename
>  - adjust context]
> Signed-off-by: Zefan Li <lizefan@xxxxxxxxxx>
> ---
>  arch/s390/kvm/intercept.c | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/arch/s390/kvm/intercept.c b/arch/s390/kvm/intercept.c
> index 3614565..f10fef6 100644
> --- a/arch/s390/kvm/intercept.c
> +++ b/arch/s390/kvm/intercept.c
> @@ -58,6 +58,7 @@ static int handle_lctlg(struct kvm_vcpu *vcpu)
>  			break;
>  		reg = (reg + 1) % 16;
>  	} while (1);
> +	kvm_make_request(KVM_REQ_TLB_FLUSH, vcpu);
>  	return 0;
>  }
> 
> @@ -97,6 +98,7 @@ static int handle_lctl(struct kvm_vcpu *vcpu)
>  			break;
>  		reg = (reg + 1) % 16;
>  	} while (1);
> +	kvm_make_request(KVM_REQ_TLB_FLUSH, vcpu);
>  	return 0;
>  }
> 

--
To unsubscribe from this list: send the line "unsubscribe stable" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]