|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH] x86: add locking to map_pages_to_xen()
On 15/07/2013 11:08, "Jan Beulich" <JBeulich@xxxxxxxx> wrote:
> While boot time calls don't need this, run time uses of the function
> which may result in L2 page tables getting populated need to be
> serialized to avoid two CPUs populating the same L2 (or L3) entry,
> overwriting each other's results.
>
> This is expected to fix what would seem to be a regression from commit
> b0581b92 ("x86: make map_domain_page_global() a simple wrapper around
> vmap()"), albeit that change only made more readily visible the already
> existing issue.
>
> This patch intentionally does not
> - add locking to the page table de-allocation logic in
> destroy_xen_mappings() (the only user having potential races here,
> msix_put_fixmap(), gets converted to use __set_fixmap() instead)
> - avoid races between super page splitting and reconstruction in
> map_pages_to_xen() (no such uses exist; races between multiple
> splitting attempts or between multiple reconstruction attempts are
> being taken care of)
> If we wanted to take care of these, we'd need to alter the behavior
> of virt_to_xen_l?e() - they would need to return with the lock held
> then.
>
> Signed-off-by: Jan Beulich <jbeulich@xxxxxxxx>
Acked-by: Keir Fraser <keir@xxxxxxx>
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |