]>
Commit | Line | Data |
---|---|---|
760f7b32 | 1 | --- old/fs/binfmt_elf.c Fri Jan 16 12:12:24 2004 |
2 | +++ new/fs/binfmt_elf.c Mon Feb 2 19:31:42 2004 | |
3 | @@ -1441,12 +1441,22 @@ | |
4 | DUMP_SEEK (file->f_pos + PAGE_SIZE); | |
5 | } else { | |
6 | if (page == ZERO_PAGE(addr)) { | |
7 | - DUMP_SEEK (file->f_pos + PAGE_SIZE); | |
8 | + if (!dump_seek(file, | |
9 | + file->f_pos + PAGE_SIZE)) { | |
10 | + page_cache_release(page); | |
11 | + goto end_coredump; | |
12 | + } | |
13 | } else { | |
14 | void *kaddr; | |
15 | flush_cache_page(vma, addr); | |
16 | kaddr = kmap(page); | |
17 | - DUMP_WRITE(kaddr, PAGE_SIZE); | |
18 | + if ((size += PAGE_SIZE) > limit || | |
19 | + !dump_write(file, kaddr, | |
20 | + PAGE_SIZE)) { | |
21 | + kunmap(page); | |
22 | + page_cache_release(page); | |
23 | + goto end_coredump; | |
24 | + } | |
25 | kunmap(page); | |
26 | } | |
27 | page_cache_release(page); |