search for: 2884a3d11a1f

Displaying 3 results from an estimated 3 matches for "2884a3d11a1f".

2020 Mar 17
2
[PATCH 3/4] mm: simplify device private page handling in hmm_range_fault
On Tue, Mar 17, 2020 at 09:15:36AM -0300, Jason Gunthorpe wrote: > > Getting rid of HMM_PFN_DEVICE_PRIVATE seems reasonable to me since a driver can > > look at the struct page but what if a driver needs to fault in a page from > > another device's private memory? Should it call handle_mm_fault()? > > Isn't that what this series basically does? > > The
2020 Mar 17
0
[PATCH 3/4] mm: simplify device private page handling in hmm_range_fault
...> > No, with this series (and all actual callers before this series) > we never fault in device private pages. IFF we want to fault it in we'd need something like this. But I'd really prefer to see test cases for that first. diff --git a/mm/hmm.c b/mm/hmm.c index b75b3750e03d..2884a3d11a1f 100644 --- a/mm/hmm.c +++ b/mm/hmm.c @@ -276,7 +276,7 @@ static int hmm_vma_handle_pte(struct mm_walk *walk, unsigned long addr, if (!fault && !write_fault) return 0; - if (!non_swap_entry(entry)) + if (!non_swap_entry(entry) || is_device_private_entry(entry)) goto fault;...
2020 Mar 17
3
[PATCH 3/4] mm: simplify device private page handling in hmm_range_fault
...rd failure, and generates faults. AFAIK, GUP will fault in this case? I need this for making ODP use this API. ODP is the one that is highly likely to see other driver's device_private pages and must have them always fault to CPU. > diff --git a/mm/hmm.c b/mm/hmm.c > index b75b3750e03d..2884a3d11a1f 100644 > +++ b/mm/hmm.c > @@ -276,7 +276,7 @@ static int hmm_vma_handle_pte(struct mm_walk *walk, unsigned long addr, > if (!fault && !write_fault) > return 0; > > - if (!non_swap_entry(entry)) > + if (!non_swap_entry(entry) || is_device_private_entry(entry))...