On 03/17/2014 12:49 PM, Jan Kara wrote: > +int get_vaddr_pfns(unsigned long start, int nr_pfns, int write, int force, > + struct pinned_pfns *pfns) > +{ ... > + if (!(vma->vm_flags & (VM_IO | VM_PFNMAP))) { > + pfns->got_ref = 1; > + pfns->is_pages = 1; > + ret = get_user_pages(current, mm, start, nr_pfns, write, force, > + pfns_vector_pages(pfns), NULL); > + goto out; > + } Have you given any thought to how this should deal with VM_MIXEDMAP vmas? get_user_pages() will freak when it hits the !vm_normal_page() test on the pfnmapped ones, and jump out. Shouldn't get_vaddr_pfns() be able to handle those too? -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html