Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1508540
| From | Roman Penyaev <roman.penyaev@profitbricks.com> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | Re: [PATCH v3 1/1] workqueue: ignore dead tasks in a workqueue sleep hook |
| Date | 2016-10-25 20:20 +0200 |
| Message-ID | <sweul-Lo-11@gated-at.bofh.it> (permalink) |
| References | (1 earlier) <sw9uG-5Lw-7@gated-at.bofh.it> <sw9El-641-23@gated-at.bofh.it> <swaTM-6Oo-17@gated-at.bofh.it> <swciW-7zc-5@gated-at.bofh.it> <swcsx-7SW-11@gated-at.bofh.it> |
| Organization | linux.* mail to news gateway |
On Tue, Oct 25, 2016 at 6:08 PM, Oleg Nesterov <oleg@redhat.com> wrote:
> sorry for noise, forgot to mention...
>
> On 10/25, Oleg Nesterov wrote:
>>
>> On 10/25, Oleg Nesterov wrote:
>> >
>> > void oops_end_exit(void)
>> > {
>> > current->flags &= ~PF_WQ_WORKER;
>> > perhaps sonething else;
>> > }
>> >
>> > called by oops_end() before rewind_stack_do_exit() ?
>>
>> and "perhaps sonething else" above should probably clear current->plug,
>> it likely points to "struct blk_plug" on stack.
>>
>> and perhaps call task_work_run(). Currently only irq_thread() uses the
>> "destructor" work on stack, but think can have more users.
>
> and, probably absorb some code from do_exit(), say set_fs(USER_DS) and/or
> PF_EXITING check.
I agree that for stack which was rewound we need more cleanups. But in the
current patch I do not want to mix several cases. Here I try to avoid access
to a NULL pointer of a dead task. That is not related to a corrupted stack.
Regarding the PF_WQ_WORKER flags. I liked the idea that workqueue itself
should be able to detect that task is dead. Spreading the code which does
flags cleanup for a special workqueue case IMO is not nice.
And, indeed, PF_EXITING looks more generic. Thanks. I will resend this.
--
Roman
Back to linux.kernel | Previous | Next — Previous in thread | Find similar | Unroll thread
[PATCH v3 1/1] workqueue: ignore dead tasks in a workqueue sleep hook Roman Pen <roman.penyaev@profitbricks.com> - 2016-10-25 13:10 +0200
Re: [PATCH v3 1/1] workqueue: ignore dead tasks in a workqueue sleep hook Oleg Nesterov <oleg@redhat.com> - 2016-10-25 15:00 +0200
Re: [PATCH v3 1/1] workqueue: ignore dead tasks in a workqueue sleep hook Roman Penyaev <roman.penyaev@profitbricks.com> - 2016-10-25 15:10 +0200
Re: [PATCH v3 1/1] workqueue: ignore dead tasks in a workqueue sleep hook Oleg Nesterov <oleg@redhat.com> - 2016-10-25 16:30 +0200
Re: [PATCH v3 1/1] workqueue: ignore dead tasks in a workqueue sleep hook Oleg Nesterov <oleg@redhat.com> - 2016-10-25 18:00 +0200
Re: [PATCH v3 1/1] workqueue: ignore dead tasks in a workqueue sleep hook Oleg Nesterov <oleg@redhat.com> - 2016-10-25 18:10 +0200
Re: [PATCH v3 1/1] workqueue: ignore dead tasks in a workqueue sleep hook Roman Penyaev <roman.penyaev@profitbricks.com> - 2016-10-25 20:20 +0200
csiph-web