From: George Anzinger <george@mvista.com>
To: Gerd Knorr <kraxel@suse.de>
Cc: Andrew Morton <akpm@osdl.org>, Roland McGrath <roland@redhat.com>,
linux-kernel@vger.kernel.org,
Linus Torvalds <torvalds@transmeta.com>
Subject: Re: [PATCH] Re: 2.6.12: itimer_real timers don't survive execve() any more
Date: Fri, 05 Aug 2005 08:33:24 -0700 [thread overview]
Message-ID: <42F386C4.2080103@mvista.com> (raw)
In-Reply-To: <20050805084401.GA12145@bytesex>
Gerd Knorr wrote:
> On Thu, Aug 04, 2005 at 03:02:51PM -0700, Andrew Morton wrote:
>
>>Roland McGrath <roland@redhat.com> wrote:
>>
>>>That's wrong. It has to be done only by the last thread in the group to go.
>>>Just revert Ingo's change.
>>>
>>
>>OK..
>>
>>+++ 25-akpm/kernel/exit.c Thu Aug 4 15:01:06 2005
>>@@ -829,8 +829,10 @@ fastcall NORET_TYPE void do_exit(long co
>>- if (group_dead)
>>+ if (group_dead) {
>>+ del_timer_sync(&tsk->signal->real_timer);
>> acct_process(code);
>>+ }
>>+++ 25-akpm/kernel/posix-timers.c Thu Aug 4 15:01:06 2005
>>@@ -1166,7 +1166,6 @@ void exit_itimers(struct signal_struct *
>>- del_timer_sync(&sig->real_timer);
>
>
> That one fixes it for me.
There are other concerns. Let me see if I understand this. A thread
(other than the leader) can exec and we then need to change the
real_timer to wake the new task which will NOT be using the same task
struct.
My looking at the code shows that the thread leader can exit and then
stays around as a zombi until the last thread in the group exits. If an
alarm comes during this wait I suspect it will wake this zombi and cause
problems. So, don't we need to also change real_timer's task when the
exiting task is the real_timer wake up task, assigning it to some other
member of the group? Note, I don't say just if it is the group leader...
Then when we finally release the signal structure, we can "del" the timer.
Did I miss something here?
>
--
George Anzinger george@mvista.com
HRT (High-res-timers): http://sourceforge.net/projects/high-res-timers/
next prev parent reply other threads:[~2005-08-05 15:42 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-08-04 16:45 2.6.12: itimer_real timers don't survive execve() any more Gerd Knorr
2005-08-04 21:22 ` [PATCH] " George Anzinger
2005-08-04 21:34 ` Roland McGrath
2005-08-04 22:02 ` Andrew Morton
2005-08-04 22:10 ` George Anzinger
2005-08-05 8:44 ` Gerd Knorr
2005-08-05 15:33 ` George Anzinger [this message]
2005-08-05 22:10 ` Roland McGrath
2005-08-06 0:50 ` George Anzinger
2005-08-04 21:37 ` Andrew Morton
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=42F386C4.2080103@mvista.com \
--to=george@mvista.com \
--cc=akpm@osdl.org \
--cc=kraxel@suse.de \
--cc=linux-kernel@vger.kernel.org \
--cc=roland@redhat.com \
--cc=torvalds@transmeta.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox