]> xenbits.xensource.com Git - people/liuw/xen.git/commitdiff
x86/HVM: adjust hvm_set_mem_pinned_cacheattr() error indications
authorJan Beulich <jbeulich@suse.com>
Fri, 4 Mar 2016 13:15:26 +0000 (14:15 +0100)
committerWei Liu <wei.liu2@citrix.com>
Tue, 15 Mar 2016 16:32:34 +0000 (16:32 +0000)
Make it return an error on bad domain kind or obviously bad GFN range.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com>
xen/arch/x86/hvm/mtrr.c

index dc0bc886ca025591cf767102426673b097c54157..80f868ae6198eb728aa3b142396cdeb6386b956d 100644 (file)
@@ -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 )
     {