Re: Nick's core remove PageReserved broke vmware...

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Petr Vandrovec wrote:
Hello Nick,
what's the reason behind disallowing get_user_pages() on VM_RESERVED regions? vmmon uses VM_RESERVED on its 'vma' as otherwise some kernels used by SUSE complained loudly about mismatch between PageReserved() and VM_RESERVED flags.


Hi Petr,

The reason is that VM_RESERVED indicates that the core vm is not allowed
to touch any 'struct page' through this mapping, which get_user_pages
would do.

I'll remove it from vmmon for >= 2.6.14 kernels as that bogus test never made to Linux kernel, but I cannot find any reason why get_user_pages() should not work on VM_RESERVED (or VM_IO for that matter) user pages. Can you show me reasoning behind that decision ?

The reasoning behind the decision was so VM_RESERVED is usable for a
complete replacement to PageReserved. For example mappings through
/dev/mem should not touch the page count.

You may be able to go a step further and clear PageReserved from your
pages as well, and thus have a working driver without special casing
for both kernels.

Thanks,
Nick

--
SUSE Labs, Novell Inc.

Send instant messages to your online friends http://au.messenger.yahoo.com -
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux