Why get_user_pages fails?

From: Pan, Weimin
Date: Mon Jun 30 2008 - 15:33:38 EST


I booted the kernel and set "mem=512M" and then mmapped the physical memory above 512M to user space and got the user space virtual address for that memory.
When I passed that address to my driver to do direct IO. The get_user_pages() in my driver fails. I found that this is due to the VM_IO and VM_PFNMAP are set. Does that mean the page structures are not built when I mmapped physical memory to user space (using remap_pfn_range())?

Do I have a way to solve this problem? How can I map the physical memory to user space virtual address and can pass this address to my driver to do direct IO by using get_user_pages() function?

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/