Re: [patch] proposed fix for ptrace() SMP race

David Mosberger (davidm@hpl.hp.com)
Mon, 10 Sep 2001 10:20:49 -0700


>>>>> On Sat, 8 Sep 2001 19:11:08 +0200, Andrea Arcangeli <andrea@suse.de> said:

Andrea> On Fri, Sep 07, 2001 at 08:35:31AM -0700, David Mosberger
Andrea> wrote:
>> Also, other signals will still wake up the task. Yes, it won't
>> get very far as do_signal() will notify the parent instead, but
>> still, the task will run and that could be enough to create some
>> race condition.

Andrea> this is the real issue, agreed.

Good.

Andrea> However still I don't like the cpus_allowed racy approch. I
Andrea> either prefer to force the deschedule with a new ptrace
Andrea> bitflag with new hooks in the scheduler or with a blocker
Andrea> (delayer) to the signals again with a new ptrace bitflag but
Andrea> in this case with hooks in the signal code. I think putting
Andrea> the hooks in the signal code is better.

Yes, though I don't really see how you could do this without any
change to the scheduler.

Andrea> BTW, checking this stuff I found two bugs, one is the check
Andrea> for cpus_allowed before calling reschedule_idle, such check
Andrea> has to be removed, then it also seems the signals seems to
Andrea> wakeup the task two times unless I've overlooked something.

Andrea> You may want to make a new patch at the light of those
Andrea> considerations otherwise I'll put this in my todo list once
Andrea> more important things are solved.

Why don't you keep it on your todo list. I too have a couple of other
things I need to finish first so it will be a while before I'd get to
this (not before November, I'd guess). But I'll keep it in mind as
well.

Thanks,

--david
-
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/