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

From: David Mosberger (davidm@hpl.hp.com)
Date: Mon Sep 10 2001 - 12:20:49 EST


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



This archive was generated by hypermail 2b29 : Sat Sep 15 2001 - 21:00:27 EST