lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <87sek6iamq.fsf@nvidia.com>
Date: Wed, 11 Jun 2025 14:08:57 +0200
From: Petr Machata <petrm@...dia.com>
To: Joe Perches <joe@...ches.com>
CC: Petr Machata <petrm@...dia.com>, Andy Whitcroft <apw@...onical.com>,
	Dwaipayan Ray <dwaipayanray1@...il.com>, Lukas Bulwahn
	<lukas.bulwahn@...il.com>, <linux-kernel@...r.kernel.org>, Andy Roulin
	<aroulin@...dia.com>
Subject: Re: [PATCH v2] checkpatch: Tolerate upstream commit references


Joe Perches <joe@...ches.com> writes:

> On Tue, 2025-06-10 at 18:31 +0200, Petr Machata wrote:
>> Two forms of upstream commit references are used (and documented) for
>> stable kernels:
>> 
>> - [ Upstream commit <sha1> ]
>> - commit <sha1> upstream.
>
> Is the sha1 never abbreviated?

I mean, as per the spec it isn't. I want to make sure I don't let false
negatives in, that's the motivation for just going purely by the spec.

>> diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
> []
>> @@ -3351,6 +3351,8 @@ sub process {
>>  		if ($perl_version_ok &&
>>  		    $in_commit_log && !$commit_log_possible_stack_dump &&
>>  		    $line !~ /^\s*(?:Link|Patchwork|http|https|BugLink|base-commit):/i &&
>> +		    $line !~ /^\s*\[ Upstream commit [0-9a-f]{40} ]/ &&
>> +		    $line !~ /^\s*commit [0-9a-f]{40}\s*upstream\./ &&
>
> always 40 chars?
>
>>  		    $line !~ /^This reverts commit [0-9a-f]{7,40}/ &&
>>  		    (($line =~ /\bcommit\s+[0-9a-f]{5,}\b/i ||
>>  		      ($line =~ /\bcommit\s*$/i && defined($rawlines[$linenr]) && $rawlines[$linenr] =~ /^\s*[0-9a-f]{5,}\b/i)) ||
>
> In stable I see a few like:
>
> commit fef912bf860e upstream.
> commit 98af4d4df889 upstream.

There are a couple hits, but most come from 2018, one from 2021 and one
from 2022. My intuition is to ignore these because of the combination of
how old and how rare they are, but maybe it's better to assume a slip
like this will come up at some point again.

>
> and
>
> [ commit d3bd7413e0ca40b60cf60d4003246d067cafdeda upstream ]
> [ commit 979d63d50c0c0f7bc537bf821e056cc9fe5abd38 upstream ]

Yeah, there's a bunch of these in 2019.

> and some with an upper case Commit
>
> Commit d6951f582cc50ba0ad22ef46b599740966599b14 upstream.

OK, this one seems to be used on occasion. Even see hits from this year.
I think it might make sense to support this as well. Hmm, and then this
in brackets seems to be used a bunch, too.

So maybe I should generalize it a bit and ignore the hash check if
either of these hits?

(\[ )?[Uu]pstream commit [0-9a-f]{12,40}\.?( ])?
(\[ )?[Cc]ommit [0-9a-f]{12,40} upstream\.?( ])?

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ