25 lines
879 B
Diff
25 lines
879 B
Diff
|
# Commit b1c780cd315eb4db06be3bbb5c6d80b1cabd27a9
|
||
|
# Date 2015-07-15 16:11:42 +0200
|
||
|
# Author Jan Beulich <jbeulich@suse.com>
|
||
|
# Committer Jan Beulich <jbeulich@suse.com>
|
||
|
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), or else
|
||
|
no range gets reported at all in that case.
|
||
|
|
||
|
Signed-off-by: Jan Beulich <jbeulich@suse.com>
|
||
|
Acked-by: Ian Campbell <ian.campbell@citrix.com>
|
||
|
|
||
|
--- 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);
|
||
|
|