[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20090324182651.GA13408@redhat.com>
Date: Tue, 24 Mar 2009 19:26:51 +0100
From: Oleg Nesterov <oleg@...hat.com>
To: linux-tip-commits@...r.kernel.org
Cc: linux-kernel@...r.kernel.org, hpa@...or.com, mingo@...hat.com,
peterz@...radead.org, ia6432@...ox.ru, roland@...hat.com,
tglx@...utronix.de, mingo@...e.hu
Subject: Re: [tip:timers/urgent] posix timers: fix RLIMIT_CPU && fork()
On 03/23, Oleg Nesterov wrote:
>
> Commit-ID: 37bebc70d7ad4144c571d74500db3bb26ec0c0eb
> Gitweb: http://git.kernel.org/tip/37bebc70d7ad4144c571d74500db3bb26ec0c0eb
> Author: Oleg Nesterov <oleg@...hat.com>
> AuthorDate: Mon, 23 Mar 2009 20:34:11 +0100
> Committer: Ingo Molnar <mingo@...e.hu>
> CommitDate: Mon, 23 Mar 2009 20:43:35 +0100
>
> posix timers: fix RLIMIT_CPU && fork()
>
> See http://bugzilla.kernel.org/show_bug.cgi?id=12911
>
> copy_signal() copies signal->rlim, but RLIMIT_CPU is "lost". Because
> posix_cpu_timers_init_group() sets cputime_expires.prof_exp = 0 and thus
> fastpath_timer_check() returns false unless we have other cpu timers.
>
> This is the minimal fix for 2.6.29 (tested) and 2.6.28. The patch is not
> optimal,
Ingo, please drop this patch, it is very suboptimal.
My intent was to make the obviously correct patch for 2.6.29, but since
it was already released I'll send another one.
And,
> we need further cleanups here. With this patch update_rlimit_cpu()
> is not really needed, but I don't think it should be removed.
>
> The proper fix (I think) is:
>
> - set_process_cpu_timer() should just start the cputimer->running
> logic (it does), no need to change cputime_expires.xxx_exp
I am stupid, of course we should set cputime_expires.xxx_exp to avoid
the slow path in run_posix_cpu_timers().
Oleg.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists