Messages in this thread | | | Date | Fri, 14 Oct 2011 22:45:09 +0800 | Subject | Re: [PATCH] binfmt_elf.c: core file shrinking | From | Hillf Danton <> |
| |
On Fri, Oct 14, 2011 at 4:52 PM, Thanh-Lam NGUYEN <thanh-lam.nguyen@alcatel-lucent.com> wrote: > Sorry for upping the patch, > as it is my first contribution I would like to know if there is any > problem with it. > > Best regard > Thanh lam NGUYEN > > On 11/10/2011 17:36, Thanh-Lam NGUYEN wrote: > >> The vma_shrink function looks for the 1st allocated and the last >> allocated page. Only this part is dumped to the disk (the virual >> start address and the size are dupdated to reflect the new dumped >> information). >> >> Signed-off-by: Thanh Lam NGUYEN <thanh-lam.nguyen@alcatel-lucent.com> >> Signed-off-by: Benjamin ZORES <Benjamin.Zores@alcatel-lucent.com> >> --- >> linux/fs/binfmt_elf.c | 54 >> ++++++++++++++++++++++++++++++++++++++++++++++----
corrupted message?
>> 1 file changed, 55 insertions(+), 4 deletions(-) >> >> --- linux/fs/binfmt_elf.c >> +++ linux/fs/binfmt_elf.c >> @@ -1085,6 +1085,48 @@ >> * Jeremy Fitzhardinge <jeremy@sw.oz.au> >> */ >> >> +/* >> + * Search for 1st and last allocated page from vma_start to vma_end. >> + * Update vma_start and vma_end to reflect the result. >> + */ >> +void vma_shrink(struct vm_area_struct *vma, unsigned long *vma_start, >> + unsigned long *vma_end) >> +{ >> + int allocated; >> + unsigned long start, addr, end; >> + >> + allocated = 0; >> + start = end = *vma_start; >> + for (addr = *vma_start; _addr < *vma_end; addr += PAGE_SIZE) { -----^ where is _addr from?
>> + struct page *page; >> + if (get_user_pages(current, current->mm, addr, 1, 0, 1, >> + &page, NULL) <= 0) { >> + /* NO PAGE */ -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |