Re: [PATCH] coredump: kill mm->core_done
From: Johannes Weiner
Date: Sun Jul 20 2008 - 07:43:13 EST
Hi,
Oleg Nesterov <oleg@xxxxxxxxxx> writes:
> On 07/20, Johannes Weiner wrote:
>>
>> Oleg Nesterov <oleg@xxxxxxxxxx> writes:
>>
>> > --- 26-rc2/kernel/exit.c~5_KILL_CORE_DONE 2008-07-13 19:58:19.000000000 +0400
>> > +++ 26-rc2/kernel/exit.c 2008-07-15 17:06:58.000000000 +0400
>> > @@ -680,7 +680,13 @@ static void exit_mm(struct task_struct *
>> > if (atomic_dec_and_test(&core_state->nr_threads))
>> > complete(&core_state->startup);
>> >
>> > - wait_for_completion(&mm->core_done);
>> > + for (;;) {
>> > + set_task_state(tsk, TASK_UNINTERRUPTIBLE);
>> > + if (!self.task) /* see coredump_finish() */
>>
>> kernel/exit.c: In function `exit_mm':
>> kernel/exit.c:686: error: `self' undeclared (first use in this function)
>> kernel/exit.c:686: error: (Each undeclared identifier is reported only once
>> kernel/exit.c:686: error: for each function it appears in.)
>> make[1]: *** [kernel/exit.o] Error 1
>
> This is on top of other patches in -mm tree,
>
> coredump-zap_threads-comments-use-while_each_thread.patch
> introduce-pf_kthread-flag.patch
> kill-pf_borrowed_mm-in-favour-of-pf_kthread.patch
> coredump-zap_threads-must-skip-kernel-threads.patch
> coredump-elf_core_dump-skip-kernel-threads.patch
> coredump-turn-mm-core_startup_done-into-the-pointer-to-struct-core_state.patch
> coredump-move-mm-core_waiters-into-struct-core_state.patch
> coredump-simplify-core_state-nr_threads-calculation.patch
> coredump-turn-core_state-nr_threads-into-atomic_t.patch
> coredump-make-mm-core_state-visible-to-core_dump.patch
> coredump-construct-the-list-of-coredumping-threads-at-startup-time.patch
> coredump-elf_core_dump-use-core_state-dumper-list.patch
> coredump-elf_fdpic_core_dump-use-core_state-dumper-list.patch
> coredump-kill-mm-core_done.patch
Sorry, I should have given more information.
I was building -mm directly with all these patches applied. I did not
cherry-pick this exact patch into some other tree.
But I still can not find anything defining `self' in these patches:
$ grep self coredump-*.patch \
introduce-pf_kthread-flag.patch \
kill-pf_borrowed_mm-in-favour-of-pf_kthread.patch
coredump-kill-mm-core_done.patch:+ if (!self.task) /* see coredump_finish() */
cscope finds some other definitions of self in the tree, but nothing
relevant.
Hannes
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/