Re: [PATCH v6] taskstats: fix data-race

From: Will Deacon
Date: Fri Nov 29 2019 - 12:58:05 EST


On Mon, Oct 21, 2019 at 01:33:27PM +0200, Christian Brauner wrote:
> When assiging and testing taskstats in taskstats_exit() there's a race
> when writing and reading sig->stats when a thread-group with more than
> one thread exits:
>
> cpu0:
> thread catches fatal signal and whole thread-group gets taken down
> do_exit()
> do_group_exit()

Nit: I don't think this is the signal-handling path.

> taskstats_exit()
> taskstats_tgid_alloc()
> The tasks reads sig->stats without holding sighand lock.
>
> cpu1:
> task calls exit_group()
> do_exit()
> do_group_exit()

Nit: These ^^ seem to be the wrong way round.

Will