mbox series

[v2,00/10] Treewide GPL SPDX conversion and cleanup (in response to Didi's GPL full name fixes)

Message ID 20230512100620.36807-1-bagasdotme@gmail.com
Headers show
Series Treewide GPL SPDX conversion and cleanup (in response to Didi's GPL full name fixes) | expand

Message

Bagas Sanjaya May 12, 2023, 10:06 a.m. UTC
I trigger this patch series as a response to Didi's GPL full name fix
patches [1], for which all of them had been NAKed. In many cases, the
appropriate correction is to use SPDX license identifier instead.

Often, when replacing license notice boilerplates with their equivalent
SPDX identifier, the notice doesn't mention explicit GPL version. Greg
[2] replied this question by falling back to GPL 1.0 (more precisely
GPL 1.0+ in order to be compatible with GPL 2.0 used by Linux kernel),
although there are exceptions (mostly resolved by inferring from
older patches covering similar situation).

The series covers the same directories touched as Didi's ones, minus
Documentation/ (as should have been inferred by SPDX tags on respective
docs).

Changes since v1 ([3]):
  * Cc: additional original authors that are missed in v1
  * Pick up Reviewed-by: and Acked-by: tags from review
  * Fix spdxcheck and SPDX-related checkpatch warnings
  * Fix a few tag oversights.

[1]: https://lore.kernel.org/all/?q=f%3A%22didi.debian%40cknow.org%22+AND+s%3A%22GPL%22+AND+NOT+s%3A%22Re%3A%22
[2]: https://lore.kernel.org/all/20181028112728.GD8826@kroah.com/ 
[3]: https://lore.kernel.org/netdev/20230511133406.78155-1-bagasdotme@gmail.com/

Bagas Sanjaya (10):
  agp/amd64: Remove GPL distribution notice
  mISDN: Replace GPL notice boilerplate with SPDX identifier
  net: bonding: Add SPDX identifier to remaining files
  net: ethernet: 8390: Replace GPL boilerplate with SPDX identifier
  net: ethernet: i825xx: Replace GPL boilerplate with SPDX identifier
  pcmcia: Add SPDX identifier
  drivers: staging: wlan-ng: Remove GPL/MPL boilerplate
  drivers: watchdog: Replace GPL license notice with SPDX identifier
  udf: Replace license notice with SPDX identifier
  include: synclink: Replace GPL license notice with SPDX identifier

 drivers/char/agp/amd64-agp.c               |  1 -
 drivers/isdn/mISDN/dsp_audio.c             |  4 +---
 drivers/isdn/mISDN/dsp_blowfish.c          |  4 +---
 drivers/isdn/mISDN/dsp_cmx.c               |  4 +---
 drivers/isdn/mISDN/dsp_core.c              |  3 +--
 drivers/isdn/mISDN/dsp_dtmf.c              |  4 +---
 drivers/isdn/mISDN/dsp_tones.c             |  4 +---
 drivers/net/bonding/bond_main.c            |  3 ++-
 drivers/net/bonding/bonding_priv.h         |  4 +---
 drivers/net/ethernet/8390/8390.h           |  2 ++
 drivers/net/ethernet/8390/apne.c           |  7 +------
 drivers/net/ethernet/8390/axnet_cs.c       |  6 +++---
 drivers/net/ethernet/8390/hydra.c          |  6 ++----
 drivers/net/ethernet/8390/lib8390.c        |  5 ++---
 drivers/net/ethernet/8390/mac8390.c        |  6 ++----
 drivers/net/ethernet/8390/mcf8390.c        |  4 +---
 drivers/net/ethernet/8390/ne.c             |  4 +---
 drivers/net/ethernet/8390/ne2k-pci.c       |  8 +-------
 drivers/net/ethernet/8390/pcnet_cs.c       |  5 ++---
 drivers/net/ethernet/8390/smc-ultra.c      |  4 +---
 drivers/net/ethernet/8390/stnic.c          |  5 +----
 drivers/net/ethernet/8390/wd.c             |  4 +---
 drivers/net/ethernet/8390/zorro8390.c      |  7 +------
 drivers/net/ethernet/i825xx/82596.c        |  5 ++---
 drivers/net/ethernet/i825xx/lasi_82596.c   |  5 ++---
 drivers/net/ethernet/i825xx/lib82596.c     |  5 ++---
 drivers/net/ethernet/i825xx/sun3_82586.c   |  4 +---
 drivers/net/ethernet/i825xx/sun3_82586.h   |  4 +---
 drivers/pcmcia/bcm63xx_pcmcia.c            |  5 +----
 drivers/pcmcia/cirrus.h                    | 21 +------------------
 drivers/pcmcia/i82365.c                    | 22 +-------------------
 drivers/pcmcia/i82365.h                    | 21 +------------------
 drivers/pcmcia/o2micro.h                   | 21 +------------------
 drivers/pcmcia/pd6729.c                    |  3 +--
 drivers/pcmcia/pxa2xx_base.h               |  1 +
 drivers/pcmcia/ricoh.h                     | 21 +------------------
 drivers/pcmcia/sa1100_generic.c            | 22 +-------------------
 drivers/pcmcia/sa11xx_base.c               | 22 +-------------------
 drivers/pcmcia/sa11xx_base.h               | 22 +-------------------
 drivers/pcmcia/soc_common.c                | 22 +-------------------
 drivers/pcmcia/tcic.c                      | 22 +-------------------
 drivers/pcmcia/tcic.h                      | 21 +------------------
 drivers/pcmcia/ti113x.h                    | 21 +------------------
 drivers/pcmcia/topic.h                     | 23 +--------------------
 drivers/pcmcia/vg468.h                     | 21 +------------------
 drivers/staging/wlan-ng/hfa384x.h          | 21 -------------------
 drivers/staging/wlan-ng/hfa384x_usb.c      | 21 -------------------
 drivers/staging/wlan-ng/p80211conv.c       | 21 -------------------
 drivers/staging/wlan-ng/p80211conv.h       | 21 -------------------
 drivers/staging/wlan-ng/p80211hdr.h        | 21 -------------------
 drivers/staging/wlan-ng/p80211ioctl.h      | 21 -------------------
 drivers/staging/wlan-ng/p80211metadef.h    | 21 -------------------
 drivers/staging/wlan-ng/p80211metastruct.h | 21 -------------------
 drivers/staging/wlan-ng/p80211mgmt.h       | 21 -------------------
 drivers/staging/wlan-ng/p80211msg.h        | 21 -------------------
 drivers/staging/wlan-ng/p80211netdev.c     | 21 -------------------
 drivers/staging/wlan-ng/p80211netdev.h     | 21 -------------------
 drivers/staging/wlan-ng/p80211req.c        | 21 -------------------
 drivers/staging/wlan-ng/p80211req.h        | 21 -------------------
 drivers/staging/wlan-ng/p80211types.h      | 21 -------------------
 drivers/staging/wlan-ng/p80211wep.c        | 21 -------------------
 drivers/staging/wlan-ng/prism2fw.c         | 21 -------------------
 drivers/staging/wlan-ng/prism2mgmt.c       | 21 -------------------
 drivers/staging/wlan-ng/prism2mgmt.h       | 21 -------------------
 drivers/staging/wlan-ng/prism2mib.c        | 21 -------------------
 drivers/staging/wlan-ng/prism2sta.c        | 21 -------------------
 drivers/watchdog/ep93xx_wdt.c              |  5 +----
 drivers/watchdog/ibmasr.c                  |  3 +--
 drivers/watchdog/m54xx_wdt.c               |  4 +---
 drivers/watchdog/max63xx_wdt.c             |  5 +----
 drivers/watchdog/moxart_wdt.c              |  4 +---
 drivers/watchdog/octeon-wdt-nmi.S          |  5 +----
 drivers/watchdog/orion_wdt.c               |  4 +---
 drivers/watchdog/rtd119x_wdt.c             |  2 +-
 drivers/watchdog/sb_wdog.c                 |  5 +----
 drivers/watchdog/sbc_fitpc2_wdt.c          |  4 +---
 drivers/watchdog/ts4800_wdt.c              |  4 +---
 drivers/watchdog/ts72xx_wdt.c              |  4 +---
 fs/udf/balloc.c                            |  6 +-----
 fs/udf/dir.c                               |  6 +-----
 fs/udf/directory.c                         |  6 +-----
 fs/udf/ecma_167.h                          | 24 +---------------------
 fs/udf/file.c                              |  6 +-----
 fs/udf/ialloc.c                            |  6 +-----
 fs/udf/inode.c                             |  6 +-----
 fs/udf/lowlevel.c                          |  6 +-----
 fs/udf/misc.c                              |  6 +-----
 fs/udf/namei.c                             |  6 +-----
 fs/udf/osta_udf.h                          | 24 +---------------------
 fs/udf/partition.c                         |  6 +-----
 fs/udf/super.c                             |  6 +-----
 fs/udf/symlink.c                           |  6 +-----
 fs/udf/truncate.c                          |  6 +-----
 fs/udf/udftime.c                           | 19 +----------------
 fs/udf/unicode.c                           |  6 +-----
 include/linux/synclink.h                   |  3 +--
 include/net/bonding.h                      |  4 +---
 97 files changed, 86 insertions(+), 1000 deletions(-)


base-commit: ac9a78681b921877518763ba0e89202254349d1b

Comments

Greg KH May 12, 2023, 11:23 a.m. UTC | #1
On Fri, May 12, 2023 at 05:06:11PM +0700, Bagas Sanjaya wrote:
> I trigger this patch series as a response to Didi's GPL full name fix
> patches [1], for which all of them had been NAKed. In many cases, the
> appropriate correction is to use SPDX license identifier instead.
> 
> Often, when replacing license notice boilerplates with their equivalent
> SPDX identifier, the notice doesn't mention explicit GPL version. Greg
> [2] replied this question by falling back to GPL 1.0 (more precisely
> GPL 1.0+ in order to be compatible with GPL 2.0 used by Linux kernel),
> although there are exceptions (mostly resolved by inferring from
> older patches covering similar situation).
> 
> The series covers the same directories touched as Didi's ones, minus
> Documentation/ (as should have been inferred by SPDX tags on respective
> docs).
>

I'm glad to take these types of changes through the SPDX tree, but
please break them up into smaller changes that show the justification
for each type of change in each subsystem, so that we can evaluate them
on an individual basis.  As you did here, you are lumping things
together only by the existance of the file in the tree, not by the
logical type of change happening, which isn't ok.

Also, you can send them as subsystem-specific series, so as to not have
to cross-post all of the changes all over the place.  I doubt the drm
developers care about ethernet driver license issues :)

thanks,

greg k-h
Richard Fontana May 12, 2023, 12:46 p.m. UTC | #2
On Fri, May 12, 2023 at 6:07 AM Bagas Sanjaya <bagasdotme@gmail.com> wrote:


> diff --git a/drivers/watchdog/sb_wdog.c b/drivers/watchdog/sb_wdog.c
> index 504be461f992a9..822bf8905bf3ce 100644
> --- a/drivers/watchdog/sb_wdog.c
> +++ b/drivers/watchdog/sb_wdog.c
> @@ -1,3 +1,4 @@
> +// SPDX-License-Identifier: GPL-1.0+
>  /*
>   * Watchdog driver for SiByte SB1 SoCs
>   *
> @@ -38,10 +39,6 @@
>   *     (c) Copyright 1996 Alan Cox <alan@lxorguk.ukuu.org.uk>,
>   *                                             All Rights Reserved.
>   *
> - *     This program is free software; you can redistribute it and/or
> - *     modify it under the terms of the GNU General Public License
> - *     version 1 or 2 as published by the Free Software Foundation.

Shouldn't this be
// SPDX-License-Identifier: GPL-1.0 OR GPL-2.0
(or in current SPDX notation GPL-1.0-only OR GPL-2.0-only) ?
Bagas Sanjaya May 12, 2023, 12:50 p.m. UTC | #3
On 5/12/23 17:06, Bagas Sanjaya wrote:
> diff --git a/drivers/watchdog/octeon-wdt-nmi.S b/drivers/watchdog/octeon-wdt-nmi.S
> index 97f6eb7b5a8e04..57bb0845de477d 100644
> --- a/drivers/watchdog/octeon-wdt-nmi.S
> +++ b/drivers/watchdog/octeon-wdt-nmi.S
> @@ -1,8 +1,5 @@
> +/* SPDX-License-Identifier: GPL-1.0+ */
>  /*
> - * This file is subject to the terms and conditions of the GNU General Public
> - * License.  See the file "COPYING" in the main directory of this archive
> - * for more details.
> - *

Oops, still incorrect tag. Will fix in v3 (should be out on next Monday).
Andreas Färber May 12, 2023, 1:14 p.m. UTC | #4
Hi,

Am 12.05.23 um 12:06 schrieb Bagas Sanjaya:
> Many watchdog drivers's source files has already SPDX license
> identifier, while some remaining doesn't.
> 
> Convert notices on remaining files to SPDX identifier. While at it,
> also move SPDX identifier for drivers/watchdog/rtd119x_wdt.c to the
> top of file (as in other files).
> 
> Cc: Ray Lehtiniemi <rayl@mail.com>
> Cc: Alessandro Zummo <a.zummo@towertech.it>
> Cc: Andrey Panin <pazke@donpac.ru>
> Cc: Oleg Drokin <green@crimea.edu>
> Cc: Marc Zyngier <maz@kernel.org>
> Cc: Jonas Jensen <jonas.jensen@gmail.com>
> Cc: Sylver Bruneau <sylver.bruneau@googlemail.com>
> Cc: Andrew Sharp <andy.sharp@lsi.com>
> Cc: Denis Turischev <denis@compulab.co.il>
> Cc: Mika Westerberg <mika.westerberg@linux.intel.com>
> Cc: Alan Cox <alan@linux.intel.com>
> Reviewed-by: Simon Horman <simon.horman@corigine.com>
> Signed-off-by: Bagas Sanjaya <bagasdotme@gmail.com>
> ---
[...]
> diff --git a/drivers/watchdog/rtd119x_wdt.c b/drivers/watchdog/rtd119x_wdt.c
> index 95c8d7abce42e6..984905695dde51 100644
> --- a/drivers/watchdog/rtd119x_wdt.c
> +++ b/drivers/watchdog/rtd119x_wdt.c
> @@ -1,9 +1,9 @@
> +// SPDX-License-Identifier: GPL-2.0+
>   /*
>    * Realtek RTD129x watchdog
>    *
>    * Copyright (c) 2017 Andreas Färber
>    *
> - * SPDX-License-Identifier: GPL-2.0+
>    */
>   
>   #include <linux/bitops.h>

Acked-by: Andreas Färber <afaerber@suse.de> # for RTD119x

Thanks,
Andreas
Richard Fontana May 12, 2023, 1:21 p.m. UTC | #5
On Fri, May 12, 2023 at 6:07 AM Bagas Sanjaya <bagasdotme@gmail.com> wrote:

> diff --git a/fs/udf/ecma_167.h b/fs/udf/ecma_167.h
> index de17a97e866742..b2b5bca45758df 100644
> --- a/fs/udf/ecma_167.h
> +++ b/fs/udf/ecma_167.h
> @@ -1,3 +1,4 @@
> +/* SPDX-License-Identifier: BSD-2-Clause OR GPL-1.0+ */
>  /*
>   * ecma_167.h
>   *
> @@ -8,29 +9,6 @@
>   * Copyright (c) 2017-2019  Pali Rohár <pali@kernel.org>
>   * All rights reserved.
>   *
> - * Redistribution and use in source and binary forms, with or without
> - * modification, are permitted provided that the following conditions
> - * are met:
> - * 1. Redistributions of source code must retain the above copyright
> - *    notice, this list of conditions, and the following disclaimer,
> - *    without modification.
> - * 2. The name of the author may not be used to endorse or promote products
> - *    derived from this software without specific prior written permission.
> - *
> - * Alternatively, this software may be distributed under the terms of the
> - * GNU Public License ("GPL").
> - *
> - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
> - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
> - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
> - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR
> - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
> - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
> - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
> - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
> - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
> - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
> - * SUCH DAMAGE.
>   */

This is not BSD-2-Clause. Ignoring the interior statement about the
GPL, I think the closest SPDX identifier might be
https://spdx.org/licenses/BSD-Source-Code.html
but it doesn't quite match.


> diff --git a/fs/udf/osta_udf.h b/fs/udf/osta_udf.h
> index 157de0ec0cd530..6c09a4cb46f4a7 100644
> --- a/fs/udf/osta_udf.h
> +++ b/fs/udf/osta_udf.h
> @@ -1,3 +1,4 @@
> +/* SPDX-License-Identifier: BSD-2-Clause OR GPL-1.0+ */
>  /*
>   * osta_udf.h
>   *
> @@ -8,29 +9,6 @@
>   * Copyright (c) 2017-2019  Pali Rohár <pali@kernel.org>
>   * All rights reserved.
>   *
> - * Redistribution and use in source and binary forms, with or without
> - * modification, are permitted provided that the following conditions
> - * are met:
> - * 1. Redistributions of source code must retain the above copyright
> - *    notice, this list of conditions, and the following disclaimer,
> - *    without modification.
> - * 2. The name of the author may not be used to endorse or promote products
> - *    derived from this software without specific prior written permission.
> - *
> - * Alternatively, this software may be distributed under the terms of the
> - * GNU Public License ("GPL").
> - *
> - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
> - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
> - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
> - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR
> - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
> - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
> - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
> - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
> - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
> - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
> - * SUCH DAMAGE.
>   */

Same comment - this is not BSD-2-Clause.

> diff --git a/fs/udf/udftime.c b/fs/udf/udftime.c
> index fce4ad976c8c29..d0fce5348fd3f3 100644
> --- a/fs/udf/udftime.c
> +++ b/fs/udf/udftime.c
> @@ -1,21 +1,4 @@
> -/* Copyright (C) 1993, 1994, 1995, 1996, 1997 Free Software Foundation, Inc.
> -   This file is part of the GNU C Library.
> -   Contributed by Paul Eggert (eggert@twinsun.com).
> -
> -   The GNU C Library is free software; you can redistribute it and/or
> -   modify it under the terms of the GNU Library General Public License as
> -   published by the Free Software Foundation; either version 2 of the
> -   License, or (at your option) any later version.
> -
> -   The GNU C Library is distributed in the hope that it will be useful,
> -   but WITHOUT ANY WARRANTY; without even the implied warranty of
> -   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
> -   Library General Public License for more details.
> -
> -   You should have received a copy of the GNU Library General Public
> -   License along with the GNU C Library; see the file COPYING.LIB.  If not,
> -   write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
> -   Boston, MA 02111-1307, USA.  */
> +// SPDX-License-Identifier: GPL-2.0-only

Shouldn't this be
// SPDX-License-Identifier: LGPL-2.0-or-later ?
(or are you implicitly using the obscure LGPLv2.x section ... 3 mechanism?)

Richard
Bagas Sanjaya May 13, 2023, 9:25 a.m. UTC | #6
On 5/12/23 18:23, Greg Kroah-Hartman wrote:
> I'm glad to take these types of changes through the SPDX tree, but
> please break them up into smaller changes that show the justification
> for each type of change in each subsystem, so that we can evaluate them
> on an individual basis.  As you did here, you are lumping things
> together only by the existance of the file in the tree, not by the
> logical type of change happening, which isn't ok.
> 
> Also, you can send them as subsystem-specific series, so as to not have
> to cross-post all of the changes all over the place.  I doubt the drm
> developers care about ethernet driver license issues :)
> 

OK, thanks!
Pali Rohár May 13, 2023, 9:48 a.m. UTC | #7
On Friday 12 May 2023 17:06:20 Bagas Sanjaya wrote:
> diff --git a/fs/udf/udftime.c b/fs/udf/udftime.c
> index fce4ad976c8c29..d0fce5348fd3f3 100644
> --- a/fs/udf/udftime.c
> +++ b/fs/udf/udftime.c
> @@ -1,21 +1,4 @@
> -/* Copyright (C) 1993, 1994, 1995, 1996, 1997 Free Software Foundation, Inc.
> -   This file is part of the GNU C Library.
> -   Contributed by Paul Eggert (eggert@twinsun.com).
> -
> -   The GNU C Library is free software; you can redistribute it and/or
> -   modify it under the terms of the GNU Library General Public License as
> -   published by the Free Software Foundation; either version 2 of the
> -   License, or (at your option) any later version.
> -
> -   The GNU C Library is distributed in the hope that it will be useful,
> -   but WITHOUT ANY WARRANTY; without even the implied warranty of
> -   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
> -   Library General Public License for more details.
> -
> -   You should have received a copy of the GNU Library General Public
> -   License along with the GNU C Library; see the file COPYING.LIB.  If not,
> -   write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
> -   Boston, MA 02111-1307, USA.  */
> +// SPDX-License-Identifier: GPL-2.0-only
>  
>  /*
>   * dgb 10/02/98: ripped this from glibc source to help convert timestamps

Please, dot not do this. It is really rude to people who worked on it in
past (even if they do not care about this particular file anymore) as
technically they still have ownership of this code / file. And such
change never remove their ownership or copyright in most countries.
Bagas Sanjaya May 13, 2023, 10:52 a.m. UTC | #8
On 5/12/23 19:46, Richard Fontana wrote:
> On Fri, May 12, 2023 at 6:07 AM Bagas Sanjaya <bagasdotme@gmail.com> wrote:
> 
> 
>> diff --git a/drivers/watchdog/sb_wdog.c b/drivers/watchdog/sb_wdog.c
>> index 504be461f992a9..822bf8905bf3ce 100644
>> --- a/drivers/watchdog/sb_wdog.c
>> +++ b/drivers/watchdog/sb_wdog.c
>> @@ -1,3 +1,4 @@
>> +// SPDX-License-Identifier: GPL-1.0+
>>  /*
>>   * Watchdog driver for SiByte SB1 SoCs
>>   *
>> @@ -38,10 +39,6 @@
>>   *     (c) Copyright 1996 Alan Cox <alan@lxorguk.ukuu.org.uk>,
>>   *                                             All Rights Reserved.
>>   *
>> - *     This program is free software; you can redistribute it and/or
>> - *     modify it under the terms of the GNU General Public License
>> - *     version 1 or 2 as published by the Free Software Foundation.
> 
> Shouldn't this be
> // SPDX-License-Identifier: GPL-1.0 OR GPL-2.0
> (or in current SPDX notation GPL-1.0-only OR GPL-2.0-only) ?
> 

Nope, as it will fail spdxcheck.py. Also, SPDX specification [1]
doesn't have negation operator (NOT), thus the licensing requirement
on the above notice can't be expressed reliably in SPDX here.

[1]: https://spdx.github.io/spdx-spec/v2.3/SPDX-license-expressions/
Richard Fontana May 13, 2023, 1:43 p.m. UTC | #9
On Sat, May 13, 2023 at 6:53 AM Bagas Sanjaya <bagasdotme@gmail.com> wrote:
>
> On 5/12/23 19:46, Richard Fontana wrote:
> > On Fri, May 12, 2023 at 6:07 AM Bagas Sanjaya <bagasdotme@gmail.com> wrote:
> >
> >
> >> diff --git a/drivers/watchdog/sb_wdog.c b/drivers/watchdog/sb_wdog.c
> >> index 504be461f992a9..822bf8905bf3ce 100644
> >> --- a/drivers/watchdog/sb_wdog.c
> >> +++ b/drivers/watchdog/sb_wdog.c
> >> @@ -1,3 +1,4 @@
> >> +// SPDX-License-Identifier: GPL-1.0+
> >>  /*
> >>   * Watchdog driver for SiByte SB1 SoCs
> >>   *
> >> @@ -38,10 +39,6 @@
> >>   *     (c) Copyright 1996 Alan Cox <alan@lxorguk.ukuu.org.uk>,
> >>   *                                             All Rights Reserved.
> >>   *
> >> - *     This program is free software; you can redistribute it and/or
> >> - *     modify it under the terms of the GNU General Public License
> >> - *     version 1 or 2 as published by the Free Software Foundation.
> >
> > Shouldn't this be
> > // SPDX-License-Identifier: GPL-1.0 OR GPL-2.0
> > (or in current SPDX notation GPL-1.0-only OR GPL-2.0-only) ?
> >
>
> Nope, as it will fail spdxcheck.py. Also, SPDX specification [1]
> doesn't have negation operator (NOT), thus the licensing requirement
> on the above notice can't be expressed reliably in SPDX here.
>
> [1]: https://spdx.github.io/spdx-spec/v2.3/SPDX-license-expressions/

The GPL identifiers in recent versions of SPDX include an `-only` and
an `-or-later` variant. So I don't see why you can't represent it as
`GPL-1.0-only OR GPL-2.0-only`. From what I understand the kernel
requires/prefers use of the earlier approach to GPL identifiers (which
was better in my opinion) under which `GPL-1.0 OR GPL-2.0` would at
least be semantically similar. I don't see why you need a negation
operator in this case. You have other patches where you used the
`-only` identifiers.

Richard
Greg KH May 13, 2023, 3:07 p.m. UTC | #10
On Sat, May 13, 2023 at 09:43:39AM -0400, Richard Fontana wrote:
> On Sat, May 13, 2023 at 6:53 AM Bagas Sanjaya <bagasdotme@gmail.com> wrote:
> >
> > On 5/12/23 19:46, Richard Fontana wrote:
> > > On Fri, May 12, 2023 at 6:07 AM Bagas Sanjaya <bagasdotme@gmail.com> wrote:
> > >
> > >
> > >> diff --git a/drivers/watchdog/sb_wdog.c b/drivers/watchdog/sb_wdog.c
> > >> index 504be461f992a9..822bf8905bf3ce 100644
> > >> --- a/drivers/watchdog/sb_wdog.c
> > >> +++ b/drivers/watchdog/sb_wdog.c
> > >> @@ -1,3 +1,4 @@
> > >> +// SPDX-License-Identifier: GPL-1.0+
> > >>  /*
> > >>   * Watchdog driver for SiByte SB1 SoCs
> > >>   *
> > >> @@ -38,10 +39,6 @@
> > >>   *     (c) Copyright 1996 Alan Cox <alan@lxorguk.ukuu.org.uk>,
> > >>   *                                             All Rights Reserved.
> > >>   *
> > >> - *     This program is free software; you can redistribute it and/or
> > >> - *     modify it under the terms of the GNU General Public License
> > >> - *     version 1 or 2 as published by the Free Software Foundation.
> > >
> > > Shouldn't this be
> > > // SPDX-License-Identifier: GPL-1.0 OR GPL-2.0
> > > (or in current SPDX notation GPL-1.0-only OR GPL-2.0-only) ?
> > >
> >
> > Nope, as it will fail spdxcheck.py. Also, SPDX specification [1]
> > doesn't have negation operator (NOT), thus the licensing requirement
> > on the above notice can't be expressed reliably in SPDX here.
> >
> > [1]: https://spdx.github.io/spdx-spec/v2.3/SPDX-license-expressions/
> 
> The GPL identifiers in recent versions of SPDX include an `-only` and
> an `-or-later` variant.

But Linux does not use the newer versions of SPDX given that we started
the conversion before the "-only" variant came out.  Let's stick with
the original one please before worrying about converting to a newer
version of SPDX and mixing things up.

thanks,

greg k-h
Guenter Roeck May 14, 2023, 1:08 p.m. UTC | #11
On Sun, May 14, 2023 at 12:07:28AM +0900, Greg Kroah-Hartman wrote:
> On Sat, May 13, 2023 at 09:43:39AM -0400, Richard Fontana wrote:
> > On Sat, May 13, 2023 at 6:53 AM Bagas Sanjaya <bagasdotme@gmail.com> wrote:
> > >
> > > On 5/12/23 19:46, Richard Fontana wrote:
> > > > On Fri, May 12, 2023 at 6:07 AM Bagas Sanjaya <bagasdotme@gmail.com> wrote:
> > > >
> > > >
> > > >> diff --git a/drivers/watchdog/sb_wdog.c b/drivers/watchdog/sb_wdog.c
> > > >> index 504be461f992a9..822bf8905bf3ce 100644
> > > >> --- a/drivers/watchdog/sb_wdog.c
> > > >> +++ b/drivers/watchdog/sb_wdog.c
> > > >> @@ -1,3 +1,4 @@
> > > >> +// SPDX-License-Identifier: GPL-1.0+
> > > >>  /*
> > > >>   * Watchdog driver for SiByte SB1 SoCs
> > > >>   *
> > > >> @@ -38,10 +39,6 @@
> > > >>   *     (c) Copyright 1996 Alan Cox <alan@lxorguk.ukuu.org.uk>,
> > > >>   *                                             All Rights Reserved.
> > > >>   *
> > > >> - *     This program is free software; you can redistribute it and/or
> > > >> - *     modify it under the terms of the GNU General Public License
> > > >> - *     version 1 or 2 as published by the Free Software Foundation.
> > > >
> > > > Shouldn't this be
> > > > // SPDX-License-Identifier: GPL-1.0 OR GPL-2.0
> > > > (or in current SPDX notation GPL-1.0-only OR GPL-2.0-only) ?
> > > >
> > >
> > > Nope, as it will fail spdxcheck.py. Also, SPDX specification [1]
> > > doesn't have negation operator (NOT), thus the licensing requirement
> > > on the above notice can't be expressed reliably in SPDX here.
> > >
> > > [1]: https://spdx.github.io/spdx-spec/v2.3/SPDX-license-expressions/
> > 
> > The GPL identifiers in recent versions of SPDX include an `-only` and
> > an `-or-later` variant.
> 
> But Linux does not use the newer versions of SPDX given that we started
> the conversion before the "-only" variant came out.  Let's stick with
> the original one please before worrying about converting to a newer
> version of SPDX and mixing things up.
> 

Either case I'd prefer to have no conversion if there is no means
to express the original license (ie GPL-1.0 or GPL-2.0 and nothing else)
in acceptable SPDX form.

Thanks,
Guenter