Subject: Re: [PATCH net-next] net: dsa: use capital "OR" for multiple licenses in SPDX

From: Kurt Kanzenbach <[email-masked]>
Date: Wed, 23 Aug 2023 12:54:37 +0200

On Wed Aug 23 2023, Krzysztof Kozlowski wrote:
> On 23/08/2023 11:32, Kurt Kanzenbach wrote:
>> On Wed Aug 23 2023, Krzysztof Kozlowski wrote:
>>> Documentation/process/license-rules.rst and checkpatch expect the SPDX
>>> identifier syntax for multiple licenses to use capital "OR".  Correct it
>>> to keep consistent format and avoid copy-paste issues.
>>>
>>> Signed-off-by: Krzysztof Kozlowski <[email-masked]>
>> 
>> Reviewed-by: Kurt Kanzenbach <[email-masked]>
>> 
>> Side note: The SPDX spec in section D.2 says: "License expression
>> operators (AND, OR and WITH) should be matched in a case-sensitive
>> manner.". Should is not must. So I assume checkpatch and spdxcheck
>> should handle both cases. Especially because:
>> 
>> |linux (git)-[master] % git grep 'SPDX' | grep ' or ' | wc -l
>> |370
>> 
>
> But "should" denotes preferred rule:

Yes, of course :).

You mentioned checkpatch. But checkpatch doesn't warn about it. Or does
it? 

|linux (git)-[master] % ./scripts/checkpatch.pl -- drivers/net/dsa/hirschmann/hellcreek.h
|total: 0 errors, 0 warnings, 0 checks, 321 lines checked
|
|drivers/net/dsa/hirschmann/hellcreek.h has no obvious style problems and
|is ready for submission.

What about something like this?

|linux (git)-[master*] % ./scripts/checkpatch.pl -- drivers/net/dsa/hirschmann/hellcreek.h
|WARNING: License expression operators (AND, OR, WITH) should be upper case
|#1: FILE: drivers/net/dsa/hirschmann/hellcreek.h:1:
|+/* SPDX-License-Identifier: (GPL-2.0 or MIT) */
|
|total: 0 errors, 1 warnings, 0 checks, 321 lines checked
|
|NOTE: For some of the reported defects, checkpatch may be able to
|      mechanically convert to the typical style using --fix or --fix-inplace.
|
|drivers/net/dsa/hirschmann/hellcreek.h has style problems, please review.
|
|NOTE: If any of the errors are false positives, please report
|      them to the maintainer, see CHECKPATCH in MAINTAINERS.

Thanks,
Kurt