Re: [PATCH 4.19 119/131] tracing: Fix event trigger to accept redundant spaces

From: Sasha Levin
Date: Sun Jul 05 2020 - 09:30:19 EST


On Fri, Jul 03, 2020 at 09:21:03PM +0200, Pavel Machek wrote:

> > commit 6784beada631800f2c5afd567e5628c843362cee upstream.
> >
> > Fix the event trigger to accept redundant spaces in
> > the trigger input.
> >
> > For example, these return -EINVAL
> >
> > echo " traceon" > events/ftrace/print/trigger
> > echo "traceon if common_pid == 0" > events/ftrace/print/trigger
> > echo "disable_event:kmem:kmalloc " > events/ftrace/print/trigger
> >
> > But these are hard to find what is wrong.
> >
> > To fix this issue, use skip_spaces() to remove spaces
> > in front of actual tokens, and set NULL if there is no
> > token.
>
> For the record, I'm not fan of this one. It is ABI change, not a
> bugfix.
>
> Yes, it makes kernel interface "easier to use". It also changes
> interface in the middle of stable series, and if people start relying
> on new interface and start putting extra spaces, they'll get nasty
> surprise when they move code to the older kernel.

If an interface changes anywhere that breaks userspace, it needs to be
not done, stable kernels are not an issue here or not.

I'm not saying it is a regression; I'd scream way more if that was the
case. I'm saying it is nowhere near a fix.

We really don't want userspace doing:

> > echo " traceon" > events/ftrace/print/trigger

Because it does not work on older kernels. It will work on 4.19.131
and break on 5.6.19.

Moving to an EOL kernel is very much unsupported.

--
Thanks,
Sasha