Re: perf_event_open+clone = unkillable process

From: Dmitry Vyukov
Date: Mon Feb 04 2019 - 04:38:22 EST


On Mon, Feb 4, 2019 at 10:27 AM Thomas Gleixner <tglx@xxxxxxxxxxxxx> wrote:
>
> On Fri, 1 Feb 2019, Dmitry Vyukov wrote:
>
> > On Fri, Feb 1, 2019 at 5:48 PM Dmitry Vyukov <dvyukov@xxxxxxxxxx> wrote:
> > >
> > > Hello,
> > >
> > > The following program creates an unkillable process that eats CPU.
> > > /proc/pid/stack is empty, I am not sure what other info I can provide.
> > >
> > > Tested is on upstream commit 4aa9fc2a435abe95a1e8d7f8c7b3d6356514b37a.
> > > Config is attached.
> >
> > Looking through other reproducers that create unkillable processes, I
> > think I found a much simpler reproducer (below). It's single threaded
> > and just setups SIGBUS handler and does timer_create+timer_settime to
> > send repeated SIGBUS. The resulting process can't be killed with
> > SIGKILL.
> > +Thomas for timers.
>
> +Oleg, Eric
>
> That's odd. With some tracing I can see that SIGKILL is generated and
> queued, but its not delivered by some weird reason. I'm traveling in the
> next days, so I won't be able to do much about it. Will look later this
> week.

Just a random though looking at the repro: can constant SIGBUS
delivery starve delivery of all other signals (incl SIGKILL)?