>>> On 23.01.17 at 19:20, <venu.busire...@oracle.com> wrote:
> +        overlap = false;
> +        list_for_each_entry(rmrru, &acpi_rmrr_units, list)
> +        {
> +            if ( pfn_to_paddr(base) <= rmrru->end_address &&
> +                 rmrru->base_address <= pfn_to_paddr(end) )

So this now looks correct as long as rmrru->base_address is
page aligned (as required by the spec), which should be good
enough for now (considering that we make this assumption
elsewhere). Nevertheless it would have been nice if you had,
following the subsequent discussion with Elena, accounted for
spec violations here.

> +        rmrr->segment = seg;
> +        rmrr->base_address = pfn_to_paddr(user_rmrrs[i].base_pfn);
> +        /* Align the end_address to the end of the page */
> +        rmrr->end_address = pfn_to_paddr(user_rmrrs[i].end_pfn) | 
> ~PAGE_MASK_4K;

Hmm, Ive just checked - in my reply to Elena I had intentionally used
PAGE_MASK here (and I recall correcting it from PAGE_MASK_4K).
What has led you to use PAGE_MASK_4K here, when pfn_to_paddr()
uses PAGE_SHIFT?

With this corrected (which can be done upon commit, but I'd first
like to understand your reasoning):
Reviewed-by: Jan Beulich <jbeul...@suse.com>

And despite Kevin's ack being present here, in light of what I've
said on the other patch - Kevin, please confirm your ack.

Jan


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel

Reply via email to