From 0681fdbd36acfa314079804d3c30dc1c206e2685 Mon Sep 17 00:00:00 2001 From: Jan Beulich Date: Fri, 4 Mar 2016 14:15:26 +0100 Subject: [PATCH] x86/HVM: adjust hvm_set_mem_pinned_cacheattr() error indications Make it return an error on bad domain kind or obviously bad GFN range. Signed-off-by: Jan Beulich Reviewed-by: Andrew Cooper --- xen/arch/x86/hvm/mtrr.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/xen/arch/x86/hvm/mtrr.c b/xen/arch/x86/hvm/mtrr.c index dc0bc886ca..80f868ae61 100644 --- a/xen/arch/x86/hvm/mtrr.c +++ b/xen/arch/x86/hvm/mtrr.c @@ -591,8 +591,11 @@ int32_t hvm_set_mem_pinned_cacheattr( struct hvm_mem_pinned_cacheattr_range *range; int rc = 1; - if ( !is_hvm_domain(d) || gfn_end < gfn_start ) - return 0; + if ( !is_hvm_domain(d) ) + return -EOPNOTSUPP; + + if ( gfn_end < gfn_start || (gfn_start | gfn_end) >> paddr_bits ) + return -EINVAL; if ( type == XEN_DOMCTL_DELETE_MEM_CACHEATTR ) { -- 2.30.2