On Fri, 11 Sep 2015 10:26:41 +0200 Paolo Bonzini <pbonzini@xxxxxxxxxx> wrote: > On 11/09/2015 05:17, Jason Wang wrote: > > + int len = r2->len ? r1->len : 0; > > + > > if (r1->addr < r2->addr) > > return -1; > > - if (r1->addr + r1->len > r2->addr + r2->len) > > + if (r1->addr + len > r2->addr + r2->len) > > return 1; > > Perhaps better: > > gpa_t addr1 = r1->addr; > gpa_t addr2 = r2->addr; > > if (addr1 < addr2) > return -1; > > /* If r2->len == 0, match the exact address. If r2->len != 0, > * accept any overlapping write. Any order is acceptable for > * overlapping ranges, because kvm_io_bus_get_first_dev ensures > * we process all of them. > */ > if (r2->len) { > addr1 += r1->len; > addr2 += r2->len; > } > > if (addr1 > addr2) > return 1; > > return 0; > +1 to documenting what the semantics are :) -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html