Re: [patch 07/44] posix-cpu-timers: Simplify sighand locking in run_posix_cpu_timers()

From: Thomas Gleixner
Date: Wed Aug 21 2019 - 09:25:08 EST


On Wed, 21 Aug 2019, Frederic Weisbecker wrote:

> On Mon, Aug 19, 2019 at 04:31:48PM +0200, Thomas Gleixner wrote:
> > run_posix_cpu_timers() is called from the timer interrupt. The posix timer
> > expiry always affects the current task which got interrupted.
> >
> > sighand locking is only racy when done on a foreign task, which must use
> > lock_task_sighand(). But in case of run_posix_cpu_timers() that's
> > pointless.
> >
> > sighand of a task can only be dropped or changed by the task itself. Drop
> > happens in do_exit()
>
> Well, that's only in case of autoreap. Otherwise this is dropped by the reaper.

Right, but in the reaper case the task cannot be on the CPU running and
being interrupted by the tick. I might be missing something subtle though.

Thanks,

tglx