On Tue, May 10, 2016 at 01:15:02PM +0200, Nicolas Morey Chaisemartin wrote: > Le 05/10/2016 à 12:01 PM, Jerome Glisse a écrit : > > On Tue, May 10, 2016 at 09:04:36AM +0200, Nicolas Morey Chaisemartin wrote: > >> Le 05/03/2016 à 12:11 PM, Jerome Glisse a écrit : > >>> On Mon, May 02, 2016 at 09:04:02PM -0700, Hugh Dickins wrote: > >>>> On Fri, 29 Apr 2016, Nicolas Morey Chaisemartin wrote:
[...] > >> Hi, > >> > >> I backported the patch to 3.10 (had to copy paste pmd_protnone > >> defitinition from 4.5) and it's working ! > >> I'll open a ticket in Redhat tracker to try and get this fixed in RHEL7. > >> > >> I have a dumb question though: how can we end up in numa/misplaced memory > >> code on a single socket system? > >> > > This patch is not a fix, do you see bug message in kernel log ? Because if > > you do that it means we have a bigger issue. > I don't see any on my 3.10. I have DMA_API_DEBUG enabled but I don't think it > has an impact. My patch can't be backported to 3.10 as is, you most likely need to replace pmd_protnone() by pmd_numa() > > You did not answer one of my previous question, do you set get_user_pages > > with write = 1 as a paremeter ? > For the read from the device, yes: > down_read(¤t->mm->mmap_sem); > res = get_user_pages( > current, > current->mm, > (unsigned long) iov->host_addr, > page_count, > (write_mode == 0) ? 1 : 0, /* write */ > 0, /* force */ > &trans->pages[sg_o], > NULL); > up_read(¤t->mm->mmap_sem); As i don't have context to infer how write_mode is set above, do you mind retesting your driver and always asking for write no matter what ? > > Also it would be a lot easier if you were testing with lastest 4.6 or 4.5 > > not RHEL kernel as they are far appart and what might looks like same issue > > on both might be totaly different bugs. > Is a RPM from elrepo ok? > http://elrepo.org/linux/kernel/el7/SRPMS/ Yes should be ok for testing. Cheers, Jérôme