Messages in this thread | | | Date | Wed, 16 Jun 2010 12:40:48 +0300 | From | Avi Kivity <> | Subject | Re: [PATCH 3/6] KVM: MMU: introduce gfn_to_page_atomic() and gfn_to_pfn_atomic() |
| |
On 06/16/2010 11:49 AM, Andi Kleen wrote: >> The page is fine, the page tables are not. Another task can munmap() the >> thing while is_hwpoison_address() is running. >> > Ok that boils down to me not seeing that source. > > If it accesses the page tables yes then it's racy. But whoever > looked up the page tables in the first place should have > returned an -EFAULT. There's no useful address attached > to poison. >
We need to distinguish between genuine -EFAULT and poisoned address.
That's why I suggested get_user_pages_ptes_fast. You can return page = NULL (-EFAULT) and the pte in the same go. No race, and useful for other cases.
-- error compiling committee.c: too many arguments to function
| |