Re: [PATCH v1 1/2] gpiolib: Never return internal error codes to user space

From: Andy Shevchenko
Date: Thu May 20 2021 - 09:15:13 EST


On Thu, May 20, 2021 at 4:08 PM Bartosz Golaszewski
<bgolaszewski@xxxxxxxxxxxx> wrote:
> On Wed, May 19, 2021 at 10:30 AM Andy Shevchenko
> <andriy.shevchenko@xxxxxxxxxxxxxxx> wrote:
> > On Wed, May 19, 2021 at 04:04:34PM +0800, Kent Gibson wrote:
> > > On Wed, May 19, 2021 at 10:45:16AM +0300, Andy Shevchenko wrote:
> > > > On Wed, May 19, 2021 at 07:24:51AM +0800, Kent Gibson wrote:
> > > > > On Tue, May 18, 2021 at 06:50:12PM +0300, Andy Shevchenko wrote:

...

> > > > > > Fixes: d7c51b47ac11 ("gpio: userspace ABI for reading/writing GPIO lines")
> > > > > > Fixes: 61f922db7221 ("gpio: userspace ABI for reading GPIO line events")
> > > > > > Fixes: 3c0d9c635ae2 ("gpiolib: cdev: support GPIO_V2_GET_LINE_IOCTL and GPIO_V2_LINE_GET_VALUES_IOCTL")

...

> > > > > You immediately revert this patch in patch 2.
> > > > > My understanding is that is not allowed within a patch set.
> > > >
> > > > > Why split the patches instead of going direct to the new helper?
> > > >
> > > > It's for backporting to make it easier. (I deliberately left the context above)
> > > >
> > > > I can fold them if maintainers think it's okay to do.
> > > >
> > >
> > > Not sure what the constraints are on backporting, but wouldn't it be
> > > simpler and cleaner to backport the new helper?
> >
> > Logically (and ideally) it would be three different patches:
> > 1) introduce helper
> > 2) use helper
> > 3) fix places where it's needed to be done
> >
> > But the above scheme doesn't fit backporting idea (we don't backport new
> > features and APIs without really necessity). So, the options left are:
> >
> > Option a: One patch (feels a bit like above)
> > Option b: Two patches like in this series (yes, you are correct about
> > disadvantages)
> >
> > > But, as you say, it is the maintainers' call.

> Third option is to backport this patch but apply the helper
> immediately to master.

If I got you correctly, you want to have two patches, one for
backporting and one for current, correct? But how can we backport
something which has never been upstreamed?

--
With Best Regards,
Andy Shevchenko