]> xenbits.xensource.com Git - people/dwmw2/xen.git/commitdiff
rangeset: make inquiry functions tolerate NULL inputs
authorJan Beulich <jbeulich@suse.com>
Fri, 14 Sep 2018 11:04:44 +0000 (13:04 +0200)
committerJan Beulich <jbeulich@suse.com>
Fri, 14 Sep 2018 11:04:44 +0000 (13:04 +0200)
Rather than special casing the ->iomem_caps check in x86's
get_page_from_l1e() for the dom_xen case, let's be more tolerant in
general, along the lines of rangeset_is_empty(): A never allocated
rangeset can't possibly contain or overlap any range.

Reported-by: Andrew Cooper <andrew.cooper3@citrix.com>
Signed-off-by: Jan Beulich <jbeulich@suse.com>
Reviewed-by: Roger Pau Monné <roger.pau@citrix.com>
Reviewed-by: Wei Liu <wei.liu2@citrix.com>
master commit: ad0a9f273d6d6f0545cd9b708b2d4be581a6cadd
master date: 2018-08-17 13:54:40 +0200

xen/common/rangeset.c

index bb68ce62e40002eee704b99f9a10983b85b084fc..7788cdd2412b338c6e4236f3cbc8509bff480634 100644 (file)
@@ -256,6 +256,9 @@ bool_t rangeset_contains_range(
 
     ASSERT(s <= e);
 
+    if ( !r )
+        return false;
+
     read_lock(&r->lock);
     x = find_range(r, s);
     contains = (x && (x->e >= e));
@@ -272,6 +275,9 @@ bool_t rangeset_overlaps_range(
 
     ASSERT(s <= e);
 
+    if ( !r )
+        return false;
+
     read_lock(&r->lock);
     x = find_range(r, e);
     overlaps = (x && (s <= x->e));