Re: linux-next: Signed-off-by missing for commits in the v4l-dvb tree

Mauro Carvalho Chehab
2020-09-01T12:21:39Z

Em Tue, 1 Sep 2020 12:52:16 +0200
Mauro Carvalho Chehab <mchehab@kernel.org> escreveu:

> Hi Julia,
>
> Em Tue, 1 Sep 2020 12:05:51 +0200 (CEST)
> Julia Lawall <julia.lawall@inria.fr> escreveu:
>
> > On Tue, 1 Sep 2020, Stephen Rothwell wrote:
> >
> > > Hi all,
> > >
> > > Commits
> > >
> > > 063a27cb9820 ("media: tm6000: drop unnecessary list_empty")
> > > 1c047c859965 ("media: saa7134: drop unnecessary list_empty")
> > > 3fdcea7c763a ("media: cx231xx: drop unnecessary list_empty")
> > >
> > > are missing a Signed-off-by from their author.
> >
> > My record of these patches all have their Signed-off-bys. Mauro, do you
> > want me to send them again?
>
> No need. Yeah, I received them with your SoB, at least on my e-mail.
>
> The one I applied came from this pull request:
>
> https://patchwork.linuxtv.org/project/linux-media/patch/87327e52-44cc-a2b8-c3fe-619bd6022264@xs4all.nl/
>
> Unfortunately, it sounds that Hans already dropped the original tag:
>
> https://git.linuxtv.org/hverkuil/media_tree.git/refs/tags
>
> So, hard to know where the SoB got dropped. It could be due to some
> bug on my scripts - or it can be due to some issue when Hans picked
> them.
>
> In any case, I'll rewrite the git history with your SoB properly
> added.

Ok, I was able to find a backup of the patch I applied, as my scripts
safe a copy before applying.

One of the scripts I use has a logic to get just the header of a message,
excluding the diff:

$ githead.pl 0019-0040-cx231xx-drop-unnecessary-list_empty.patch
[media] cx231xx: drop unnecessary list_empty
# Original subject: [PATCH 3/7] [media] cx231xx: drop unnecessary list_empty

# Meta data:
GIT_AUTHOR_DATE=1595761108
GIT_AUTHOR_NAME=Julia Lawall
GIT_AUTHOR_EMAIL=Julia.Lawall@inria.fr
# X-Patchwork-Submitter: Julia Lawall <Julia.Lawall@inria.fr>
# X-Patchwork-Id: 65835
# X-IronPort-AV: E=Sophos;i="5.75,398,1589234400"; d="scan'208";a="355309545"
# Cc: kernel-janitors@vger.kernel.org, linux-media@vger.kernel.org, linux-kernel@vger.kernel.org # Date: Sun, 26 Jul 2020 12:58:28 +0200
# X-LSpam-Score: -2.4 (--)
# X-LSpam-Report: No, score=-2.4 required=5.0 tests=BAYES_00=-1.9,HEADER_FROM_DIFFERENT_DOMAINS=0.5,MAILING_LIST_MULTI=-1 autolearn=ham autolearn_force=no
#
list_for_each_entry is able to handle an empty list.
The only effect of avoiding the loop is not initializing the
index variable.
Drop list_empty tests in cases where these variables are not
used.

Note that list_for_each_entry is defined in terms of list_first_entry,
which indicates that it should not be used on an empty list. But in
list_for_each_entry, the element obtained by list_first_entry is not
really accessed, only the address of its list_head field is compared
to the address of the list head, so the list_first_entry is safe.

The semantic patch that makes this change is as follows:
(http://coccinelle.lip6.fr/)

<smpl>
@@
expression x,e;
iterator name list_for_each_entry;
statement S;
identifier i;
@@

-if (!(list_empty(x))) {
list_for_each_entry(i,x,...) S

Among other things, such script ignores everything after /^---\n/
regex.

Yet, the smpl patch hit some bug on it, making it lose this part:

- }
... when != i
? i = e
</smpl>

Signed-off-by: Julia Lawall <Julia.Lawall@inria.fr>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>

Because it contains this regex: /^-\s/

Making it think that this would have some mangled patch on it.

That part came from the old days where we used CVS (and later
mercurial) and some diffs were not strictly following the
pattern generated by git those days.

I changed my script to avoid this issue to happen again.

Thanks,
Mauro