]> err.no Git - linux-2.6/blobdiff - fs/binfmt_elf_fdpic.c
coredump: move mm->core_waiters into struct core_state
[linux-2.6] / fs / binfmt_elf_fdpic.c
index ddd35d87339143207f6074a49752dcc40a4b5003..71bcc4b4d0884625868fa07f8e3397ffb3133ba2 100644 (file)
@@ -390,7 +390,7 @@ static int load_elf_fdpic_binary(struct linux_binprm *bprm,
        }
 
        /* expand the stack mapping to use up the entire allocation granule */
-       fullsize = ksize((char *) current->mm->start_brk);
+       fullsize = kobjsize((char *) current->mm->start_brk);
        if (!IS_ERR_VALUE(do_mremap(current->mm->start_brk, stack_size,
                                    fullsize, 0, 0)))
                stack_size = fullsize;
@@ -1626,6 +1626,9 @@ static int elf_fdpic_core_dump(long signr, struct pt_regs *regs,
                rcu_read_lock();
                do_each_thread(g,p)
                        if (current->mm == p->mm && current != p) {
+                               if (p->flags & PF_KTHREAD)
+                                       continue;
+
                                tmp = kzalloc(sizeof(*tmp), GFP_ATOMIC);
                                if (!tmp) {
                                        rcu_read_unlock();