make rangeset_report_ranges() report all ranges find_range() returns NULL when s is below the lowest range, so we have to use first_range() here (which is as good performance wise). Signed-off-by: Jan Beulich --- a/xen/common/rangeset.c +++ b/xen/common/rangeset.c @@ -289,7 +289,7 @@ int rangeset_report_ranges( read_lock(&r->lock); - for ( x = find_range(r, s); x && (x->s <= e) && !rc; x = next_range(r, x) ) + for ( x = first_range(r); x && (x->s <= e) && !rc; x = next_range(r, x) ) if ( x->e >= s ) rc = cb(max(x->s, s), min(x->e, e), ctxt);