Yeah, you'll need to change the PTEs for those pages you created by calling get_user_page() by calling an mprotect like function; perhaps something like:
Thanks. I've incorporated your changes (updated patch attached).
> + /* Move stack pages down in memory. */ > + if (stack_shift) { > + // FIXME: Verify the shift is OK. > + What exactly are you wondering about? the call to move_vma looks sane to me
My concern was that the binfmt handler may have setup other vm areas which overlap the new range. The move_vma() function doesn't do overlap checking. I'm not sure if this is something I need to guard against, or if it falls in the "Don't do that!" category. Ollie
Attachment:
no_MAX_ARG_PAGES.patch
Description: Binary data
- Follow-Ups:
- Re: Removing MAX_ARG_PAGES (request for comments/assistance)
- From: "Ollie Wild" <aaw@google.com>
- Re: Removing MAX_ARG_PAGES (request for comments/assistance)
- References:
- Removing MAX_ARG_PAGES (request for comments/assistance)
- From: "Ollie Wild" <aaw@google.com>
- Re: Removing MAX_ARG_PAGES (request for comments/assistance)
- From: Peter Zijlstra <a.p.zijlstra@chello.nl>
- Removing MAX_ARG_PAGES (request for comments/assistance)
- Prev by Date: [PATCH] drivers/{mmc,misc}: handle PCI errors on resume
- Next by Date: [PATCH] PCMCIA: handle sysfs, PCI errors
- Previous by thread: Re: Removing MAX_ARG_PAGES (request for comments/assistance)
- Next by thread: Re: Removing MAX_ARG_PAGES (request for comments/assistance)
- Index(es):