[PATCH 3/4] mm: simplify device private page handling in hmm_range_fault
Jason Gunthorpe
jgg at ziepe.ca
Fri Mar 20 12:58:13 UTC 2020
On Thu, Mar 19, 2020 at 06:33:04PM -0700, Ralph Campbell wrote:
> > > + .default_flags = dmirror_hmm_flags[HMM_PFN_VALID] |
> > > + (write ? dmirror_hmm_flags[HMM_PFN_WRITE] : 0),
> > > + .dev_private_owner = dmirror->mdevice,
> > > + };
> > > + int ret = 0;
> >
> > > +static int dmirror_snapshot(struct dmirror *dmirror,
> > > + struct hmm_dmirror_cmd *cmd)
> > > +{
> > > + struct mm_struct *mm = dmirror->mm;
> > > + unsigned long start, end;
> > > + unsigned long size = cmd->npages << PAGE_SHIFT;
> > > + unsigned long addr;
> > > + unsigned long next;
> > > + uint64_t pfns[64];
> > > + unsigned char perm[64];
> > > + char __user *uptr;
> > > + struct hmm_range range = {
> > > + .pfns = pfns,
> > > + .flags = dmirror_hmm_flags,
> > > + .values = dmirror_hmm_values,
> > > + .pfn_shift = DPT_SHIFT,
> > > + .pfn_flags_mask = ~0ULL,
> >
> > Same here, especially since this is snapshot
> >
> > Jason
>
> Actually, snapshot ignores pfn_flags_mask and default_flags.
Yes, so no reason to set them to not 0..
Jason
More information about the dri-devel
mailing list