From: Maxime Coquelin <maxime.coquelin@redhat.com>
To: dev@dpdk.org, david.marchand@redhat.com, thomas@monjalon.net
Cc: Maxime Coquelin <maxime.coquelin@redhat.com>
Subject: [PATCH 1/4] license: add exception for Linux Kernel uAPI headers
Date: Wed, 16 Apr 2025 14:34:23 +0200 [thread overview]
Message-ID: <20250416123426.2638250-2-maxime.coquelin@redhat.com> (raw)
In-Reply-To: <20250416123426.2638250-1-maxime.coquelin@redhat.com>
As approved by both Technical and Governing boards, Linux
Kernel uAPI header files can now be imported into the
kernel/linux/uapi directory.
This patch also fix the SPDX tags checker script to take
into account dual-licensed files.
The process to import such headers is documented in
doc/guides/contributing/linux_uapi.rst
Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com>
---
devtools/check-spdx-tag.sh | 2 +-
license/Linux-syscall-note | 25 +++++++++++++++++++++++++
license/exceptions.txt | 17 +++++++++--------
3 files changed, 35 insertions(+), 9 deletions(-)
create mode 100644 license/Linux-syscall-note
diff --git a/devtools/check-spdx-tag.sh b/devtools/check-spdx-tag.sh
index 1fd0d579d3..984825026e 100755
--- a/devtools/check-spdx-tag.sh
+++ b/devtools/check-spdx-tag.sh
@@ -48,7 +48,7 @@ check_licenses() {
fi
exceptions=$(build_exceptions_list)
git grep -l SPDX-License-Identifier: -- $no_license_list $exceptions |
- xargs grep -L -E 'SPDX-License-Identifier:[[:space:]]*\(?BSD-3-Clause' > $tmpfile
+ xargs grep -L -E 'SPDX-License-Identifier:[[:space:]]*(\(?|.* OR )BSD-3-Clause' > $tmpfile
wrong_license=$(wc -l < $tmpfile)
$quiet || cat $tmpfile
diff --git a/license/Linux-syscall-note b/license/Linux-syscall-note
new file mode 100644
index 0000000000..9abdad71fa
--- /dev/null
+++ b/license/Linux-syscall-note
@@ -0,0 +1,25 @@
+SPDX-Exception-Identifier: Linux-syscall-note
+SPDX-URL: https://spdx.org/licenses/Linux-syscall-note.html
+SPDX-Licenses: GPL-2.0, GPL-2.0+, GPL-1.0+, LGPL-2.0, LGPL-2.0+, LGPL-2.1, LGPL-2.1+, GPL-2.0-only, GPL-2.0-or-later
+Usage-Guide:
+ This exception is used together with one of the above SPDX-Licenses
+ to mark user space API (uapi) header files so they can be included
+ into non GPL compliant user space application code.
+ To use this exception add it with the keyword WITH to one of the
+ identifiers in the SPDX-Licenses tag:
+ SPDX-License-Identifier: <SPDX-License> WITH Linux-syscall-note
+License-Text:
+
+ NOTE! This copyright does *not* cover user programs that use kernel
+ services by normal system calls - this is merely considered normal use
+ of the kernel, and does *not* fall under the heading of "derived work".
+ Also note that the GPL below is copyrighted by the Free Software
+ Foundation, but the instance of code that it refers to (the Linux
+ kernel) is copyrighted by me and others who actually wrote it.
+
+ Also note that the only valid version of the GPL as far as the kernel
+ is concerned is _this_ particular version of the license (ie v2, not
+ v2.2 or v3.x or whatever), unless explicitly otherwise stated.
+
+ Linus Torvalds
+
diff --git a/license/exceptions.txt b/license/exceptions.txt
index d12fac2034..cf2034747d 100644
--- a/license/exceptions.txt
+++ b/license/exceptions.txt
@@ -9,11 +9,12 @@ Note that following licenses are not exceptions:-
- BSD-3-Clause OR LGPL-2.1
- GPL-2.0 (*Only for kernel code*)
----------------------------------------------------------------------------------------------------
-SPDX Identifier | TB Approval Date | GB Approval Date | File name
----------------------------------------------------------------------------------------------------
-MIT | 10/23/2019 | 02/10/2020 | lib/eal/windows/include/dirent.h
-BSD-2-Clause | 10/23/2019 | 12/18/2019 | lib/eal/windows/include/getopt.h
-ISC AND BSD-2-Clause | 10/23/2019 | 12/18/2019 | lib/eal/windows/getopt.c
-MIT | 10/19/2022 | 10/18/2022 | drivers/net/gve/base/*
----------------------------------------------------------------------------------------------------
+---------------------------------------------------------------------------------------------------------
+SPDX Identifier | TB Approval Date | GB Approval Date | File name
+---------------------------------------------------------------------------------------------------------
+MIT | 10/23/2019 | 02/10/2020 | lib/eal/windows/include/dirent.h
+BSD-2-Clause | 10/23/2019 | 12/18/2019 | lib/eal/windows/include/getopt.h
+ISC AND BSD-2-Clause | 10/23/2019 | 12/18/2019 | lib/eal/windows/getopt.c
+MIT | 10/19/2022 | 10/18/2022 | drivers/net/gve/base/*
+GPL-2.0 WITH Linux-syscall-note | 12/11/2024 | 04/14/2025 | kernel/linux/uapi/linux/*
+---------------------------------------------------------------------------------------------------------
--
2.49.0
next prev parent reply other threads:[~2025-04-16 12:34 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-04-16 12:34 [PATCH 0/4] Linux Kernel uAPI headers import Maxime Coquelin
2025-04-16 12:34 ` Maxime Coquelin [this message]
2025-04-17 5:08 ` [PATCH 1/4] license: add exception for Linux Kernel uAPI headers Hemant Agrawal
2025-04-16 12:34 ` [PATCH 2/4] uapi: import VDUSE header from v6.14 kernel Maxime Coquelin
2025-04-16 12:34 ` [PATCH 3/4] vhost: use imported VDUSE uAPI header Maxime Coquelin
2025-04-16 12:34 ` [PATCH 4/4] ci: check licenses Maxime Coquelin
2025-04-16 18:59 ` Maxime Coquelin
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20250416123426.2638250-2-maxime.coquelin@redhat.com \
--to=maxime.coquelin@redhat.com \
--cc=david.marchand@redhat.com \
--cc=dev@dpdk.org \
--cc=thomas@monjalon.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).