Re: VM_LOCKED in pci_mmap_page_range?

Jesse Barnes
2004-11-20T00:07:34Z

[-- Attachment #1: Type: text/plain, Size: 553 bytes --]

On Friday, November 19, 2004 3:57 pm, Jesse Barnes wrote:
> Should pci_mmap_page_range marked the pages as VM_LOCKED that it's about to
> request be remapped via remap_pfn_range? I'm seeing userspace apps hang on
> mmaping of /proc/bus/pci unless I remove it.

I just read the thread "loops in get_user_pages() for VM_IO" on lkml and it
appears that VM_LOCKED shouldn't be set for IO mappings. Or is this fixed
upstream and I haven't updated my tree? If not, then this fixes it for me.

Signed-off-by: Jesse Barnes <jbarnes@sgi.com>

Thanks,
Jesse

[-- Attachment #2: pci-mmap-reserved-fix.patch --]
[-- Type: text/plain, Size: 469 bytes --]

===== arch/ia64/pci/pci.c 1.59 vs edited =====
--- 1.59/arch/ia64/pci/pci.c 2004-11-05 11:55:25 -08:00
+++ edited/arch/ia64/pci/pci.c 2004-11-19 16:01:45 -08:00
@@ -518,7 +518,7 @@
* Leave vm_pgoff as-is, the PCI space address is the physical
* address on this platform.
*/
- vma->vm_flags |= (VM_SHM | VM_LOCKED | VM_IO);
+ vma->vm_flags |= (VM_SHM | VM_RESERVED | VM_IO);

if (write_combine)
vma->vm_page_prot = pgprot_writecombine(vma->vm_page_prot);