Message ID | 88e638eb959095ab6657d295f9f8c27169569bf2.1567675272.git.mchehab+samsung@kernel.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | docs: license-rules.txt: cover SPDX headers on Python scripts | expand |
On Thu, Sep 05, 2019 at 06:23:13AM -0300, Mauro Carvalho Chehab wrote: > The author of the license-rules.rst file wanted to be very restrict > with regards to the location of the SPDX header. It says that > the SPDX header "shall be added at the first possible line in > a file which can contain a comment". Not happy with this already > restrictive requiement, it goes further: > > "For the majority of files this is the first line, except for > scripts", opening an exception to have the SPDX header at the > second line, if the first line starts with "#!". > > Well, it turns that this is too restrictive for Python scripts, > and may cause regressions if this would be enforced. > > As mentioned on: > https://stackoverflow.com/questions/728891/correct-way-to-define-python-source-code-encoding > > Python's PEP-263 [1] dictates that an script that needs to default to > UTF-8 encoding has to follow this rule: > > 'Python will default to ASCII as standard encoding if no other > encoding hints are given. > > To define a source code encoding, a magic comment must be placed > into the source files either as first or second line in the file' > > And: > 'More precisely, the first or second line must match the following > regular expression: > > ^[ \t\f]*#.*?coding[:=][ \t]*([-_.a-zA-Z0-9]+)' > > [1] https://www.python.org/dev/peps/pep-0263/ > > If a script has both "#!" and the charset encoding line, we can't place > a SPDX tag without either violating license-rules.rst or breaking the > script by making it crash with non-ASCII characters. > > So, add a sort notice saying that, for Python scripts, the SPDX > header may be up to the third line, in order to cover the case > where both "#!" and "# .*coding.*UTF-8" lines are found. > > Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org> > --- > Documentation/process/license-rules.rst | 7 +++++-- > 1 file changed, 5 insertions(+), 2 deletions(-) > > diff --git a/Documentation/process/license-rules.rst b/Documentation/process/license-rules.rst > index 2ef44ada3f11..5d23e3498b1c 100644 > --- a/Documentation/process/license-rules.rst > +++ b/Documentation/process/license-rules.rst > @@ -64,9 +64,12 @@ License identifier syntax > possible line in a file which can contain a comment. For the majority > of files this is the first line, except for scripts which require the > '#!PATH_TO_INTERPRETER' in the first line. For those scripts the SPDX > - identifier goes into the second line. > + identifier goes into the second line\ [1]_. > > -| > +.. [1] Please notice that Python scripts may also need an encoding rule > + as defined on PEP-263, which should be defined either at the first > + or the second line. So, for such scripts, the SPDX identifier may > + go up to the third line. > > 2. Style: > If you are going to do this, can you also fix up scripts/spdxcheck.py to properly catch this, as well as fixing up the location of the spdx tag line in the file itself? thanks, greg k-h
Em Thu, 5 Sep 2019 11:27:03 +0200 Greg Kroah-Hartman <gregkh@linuxfoundation.org> escreveu: > On Thu, Sep 05, 2019 at 06:23:13AM -0300, Mauro Carvalho Chehab wrote: > > The author of the license-rules.rst file wanted to be very restrict > > with regards to the location of the SPDX header. It says that > > the SPDX header "shall be added at the first possible line in > > a file which can contain a comment". Not happy with this already > > restrictive requiement, it goes further: > > > > "For the majority of files this is the first line, except for > > scripts", opening an exception to have the SPDX header at the > > second line, if the first line starts with "#!". > > > > Well, it turns that this is too restrictive for Python scripts, > > and may cause regressions if this would be enforced. > > > > As mentioned on: > > https://stackoverflow.com/questions/728891/correct-way-to-define-python-source-code-encoding > > > > Python's PEP-263 [1] dictates that an script that needs to default to > > UTF-8 encoding has to follow this rule: > > > > 'Python will default to ASCII as standard encoding if no other > > encoding hints are given. > > > > To define a source code encoding, a magic comment must be placed > > into the source files either as first or second line in the file' > > > > And: > > 'More precisely, the first or second line must match the following > > regular expression: > > > > ^[ \t\f]*#.*?coding[:=][ \t]*([-_.a-zA-Z0-9]+)' > > > > [1] https://www.python.org/dev/peps/pep-0263/ > > > > If a script has both "#!" and the charset encoding line, we can't place > > a SPDX tag without either violating license-rules.rst or breaking the > > script by making it crash with non-ASCII characters. > > > > So, add a sort notice saying that, for Python scripts, the SPDX > > header may be up to the third line, in order to cover the case > > where both "#!" and "# .*coding.*UTF-8" lines are found. > > > > Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org> > > --- > > Documentation/process/license-rules.rst | 7 +++++-- > > 1 file changed, 5 insertions(+), 2 deletions(-) > > > > diff --git a/Documentation/process/license-rules.rst b/Documentation/process/license-rules.rst > > index 2ef44ada3f11..5d23e3498b1c 100644 > > --- a/Documentation/process/license-rules.rst > > +++ b/Documentation/process/license-rules.rst > > @@ -64,9 +64,12 @@ License identifier syntax > > possible line in a file which can contain a comment. For the majority > > of files this is the first line, except for scripts which require the > > '#!PATH_TO_INTERPRETER' in the first line. For those scripts the SPDX > > - identifier goes into the second line. > > + identifier goes into the second line\ [1]_. > > > > -| > > +.. [1] Please notice that Python scripts may also need an encoding rule > > + as defined on PEP-263, which should be defined either at the first > > + or the second line. So, for such scripts, the SPDX identifier may > > + go up to the third line. > > > > 2. Style: > > > > If you are going to do this, can you also fix up scripts/spdxcheck.py to > properly catch this, Hmm... it defaults to analyze the first 15 lines: ap.add_argument('-m', '--maxlines', type=int, default=15, help='Maximum number of lines to scan in a file. Default 15') So, I guess it won't require any changes. > as well as fixing up the location of the spdx tag > line in the file itself? Good point. I'll write a patch fixing the SPDX location at the three files where the coding location is at the wrong place. > > thanks, > > greg k-h Thanks, Mauro
Em Thu, 5 Sep 2019 11:27:03 +0200 Greg Kroah-Hartman <gregkh@linuxfoundation.org> escreveu: > On Thu, Sep 05, 2019 at 06:23:13AM -0300, Mauro Carvalho Chehab wrote: > > The author of the license-rules.rst file wanted to be very restrict > > with regards to the location of the SPDX header. It says that > > the SPDX header "shall be added at the first possible line in > > a file which can contain a comment". Not happy with this already > > restrictive requiement, it goes further: > > > > "For the majority of files this is the first line, except for > > scripts", opening an exception to have the SPDX header at the > > second line, if the first line starts with "#!". > > > > Well, it turns that this is too restrictive for Python scripts, > > and may cause regressions if this would be enforced. > > > > As mentioned on: > > https://stackoverflow.com/questions/728891/correct-way-to-define-python-source-code-encoding > > > > Python's PEP-263 [1] dictates that an script that needs to default to > > UTF-8 encoding has to follow this rule: > > > > 'Python will default to ASCII as standard encoding if no other > > encoding hints are given. > > > > To define a source code encoding, a magic comment must be placed > > into the source files either as first or second line in the file' > > > > And: > > 'More precisely, the first or second line must match the following > > regular expression: > > > > ^[ \t\f]*#.*?coding[:=][ \t]*([-_.a-zA-Z0-9]+)' > > > > [1] https://www.python.org/dev/peps/pep-0263/ > > > > If a script has both "#!" and the charset encoding line, we can't place > > a SPDX tag without either violating license-rules.rst or breaking the > > script by making it crash with non-ASCII characters. > > > > So, add a sort notice saying that, for Python scripts, the SPDX > > header may be up to the third line, in order to cover the case > > where both "#!" and "# .*coding.*UTF-8" lines are found. > > > > Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org> > > --- > > Documentation/process/license-rules.rst | 7 +++++-- > > 1 file changed, 5 insertions(+), 2 deletions(-) > > > > diff --git a/Documentation/process/license-rules.rst b/Documentation/process/license-rules.rst > > index 2ef44ada3f11..5d23e3498b1c 100644 > > --- a/Documentation/process/license-rules.rst > > +++ b/Documentation/process/license-rules.rst > > @@ -64,9 +64,12 @@ License identifier syntax > > possible line in a file which can contain a comment. For the majority > > of files this is the first line, except for scripts which require the > > '#!PATH_TO_INTERPRETER' in the first line. For those scripts the SPDX > > - identifier goes into the second line. > > + identifier goes into the second line\ [1]_. > > > > -| > > +.. [1] Please notice that Python scripts may also need an encoding rule > > + as defined on PEP-263, which should be defined either at the first > > + or the second line. So, for such scripts, the SPDX identifier may > > + go up to the third line. > > > > 2. Style: > > > > If you are going to do this, can you also fix up scripts/spdxcheck.py to > properly catch this For completeness, just added a check for it, and a "stats" mode at the script that will tell on what line the first SPDX tag occurs. I'll probably rework at the patch later, in order to disable the pedantic mode by default. There are currently 227 files that don't complain with the "up to line 3" rule, including COPYING (with should probably be excluded from the check). Patches are at: https://git.linuxtv.org/mchehab/experimental.git/log/?h=spdx_pedantic Btw, most violations are due to: /* * SPDX... Regards, Mauro
On Thu, 5 Sep 2019 06:23:13 -0300 Mauro Carvalho Chehab <mchehab+samsung@kernel.org> wrote: > Python's PEP-263 [1] dictates that an script that needs to default to > UTF-8 encoding has to follow this rule: > > 'Python will default to ASCII as standard encoding if no other > encoding hints are given. > > To define a source code encoding, a magic comment must be placed > into the source files either as first or second line in the file' So this is only Python 2, right? Python 3 is UTF8 by default. Given that Python 2 is EOL in January, is this something we should be concerned about? Or should we instead be making sure that all the Python we have in-tree works properly with Python 3 and be done with it? Thanks, jon
On Thu, Sep 05, 2019 at 06:57:01AM -0600, Jonathan Corbet wrote: > On Thu, 5 Sep 2019 06:23:13 -0300 > Mauro Carvalho Chehab <mchehab+samsung@kernel.org> wrote: > > > Python's PEP-263 [1] dictates that an script that needs to default to > > UTF-8 encoding has to follow this rule: > > > > 'Python will default to ASCII as standard encoding if no other > > encoding hints are given. > > > > To define a source code encoding, a magic comment must be placed > > into the source files either as first or second line in the file' > > So this is only Python 2, right? Python 3 is UTF8 by default. Given that > Python 2 is EOL in January, is this something we should be concerned > about? Or should we instead be making sure that all the Python we have > in-tree works properly with Python 3 and be done with it? I recommend just using python 3 everywhere and be done with it as there are already many distros that default to that already. thanks, greg k-h
Em Thu, 5 Sep 2019 16:17:23 +0200 Greg Kroah-Hartman <gregkh@linuxfoundation.org> escreveu: > On Thu, Sep 05, 2019 at 06:57:01AM -0600, Jonathan Corbet wrote: > > On Thu, 5 Sep 2019 06:23:13 -0300 > > Mauro Carvalho Chehab <mchehab+samsung@kernel.org> wrote: > > > > > Python's PEP-263 [1] dictates that an script that needs to default to > > > UTF-8 encoding has to follow this rule: > > > > > > 'Python will default to ASCII as standard encoding if no other > > > encoding hints are given. > > > > > > To define a source code encoding, a magic comment must be placed > > > into the source files either as first or second line in the file' > > > > So this is only Python 2, right? Well, Debian 10 (buster) was launched this year, and still comes with python2 (with is the default): $ ls -la /usr/bin/python lrwxrwxrwx 1 root root 7 Mar 4 2019 /usr/bin/python -> python2 I think Debian devs will keep it maintained for a while, as this is a LTS distro. > > Python 3 is UTF8 by default. Given that > > Python 2 is EOL in January, is this something we should be concerned > > about? Or should we instead be making sure that all the Python we have > > in-tree works properly with Python 3 and be done with it? > > I recommend just using python 3 everywhere and be done with it as there > are already many distros that default to that already. Then we need to change the scripts, as they're currently pointing to /usr/bin/python instead of /usr/bin/python3. At least on the distros I use myself, this doesn't point to /etc/alternates. Instead, it is just an alias to python2. Thanks, Mauro
On Thu, 2019-09-05 at 09:07 -0300, Mauro Carvalho Chehab wrote: > There are currently 227 files that don't complain with the "up to line 3" > rule, including COPYING (with should probably be excluded from the check). > > Patches are at: > > https://git.linuxtv.org/mchehab/experimental.git/log/?h=spdx_pedantic > > Btw, most violations are due to: > > /* > * SPDX... Hey Mauro. Here's a little script to move all of the improperly located SPDX-License-Identifier lines in [.ch] files. Using this command line: $ git grep -n 'SPDX-License-Identifier: ' -- '*.[ch]' | \ grep -v ':1:' | perl move_spdx.pl and $ cat move_spdx.pl while (<>) { /^([^:]+):([^:]+):(.*)/; my ($file, $line, $spdx) = ($1, $2, $3); $spdx =~ s/^\s*\/?\*\s*//; $spdx =~ s/\s*\*\/\s*$//; if ($file =~ /\.h$/) { $spdx = "/* $spdx */"; } else { $spdx = "// $spdx"; } open(FH, '<', $file) or die $!; my @lines = <FH>; close FH; open(FH, '>', $file) or die $!; print FH "$spdx\n"; my $count = 0; foreach (@lines) { $count++; next if ($count == $line); next if ($count == $line - 1 && $_ =~ /^\s*\*\s*$/); next if ($count == $line + 1 && $_ =~ /^\s*\*\s*$/); print FH "$_"; } close FH; } which gives this diff for today's -next --- arch/x86/kernel/apic/apic_common.c | 3 +-- drivers/dma/sprd-dma.c | 3 +-- drivers/gpu/drm/i915/gem/i915_gem_busy.c | 3 +-- drivers/gpu/drm/i915/gem/i915_gem_clflush.c | 3 +-- drivers/gpu/drm/i915/gem/i915_gem_clflush.h | 3 +-- drivers/gpu/drm/i915/gem/i915_gem_context.c | 3 +-- drivers/gpu/drm/i915/gem/i915_gem_context.h | 3 +-- drivers/gpu/drm/i915/gem/i915_gem_context_types.h | 3 +-- drivers/gpu/drm/i915/gem/i915_gem_dmabuf.c | 3 +-- drivers/gpu/drm/i915/gem/i915_gem_domain.c | 3 +-- drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c | 3 +-- drivers/gpu/drm/i915/gem/i915_gem_fence.c | 3 +-- drivers/gpu/drm/i915/gem/i915_gem_internal.c | 3 +-- drivers/gpu/drm/i915/gem/i915_gem_ioctls.h | 3 +-- drivers/gpu/drm/i915/gem/i915_gem_mman.c | 3 +-- drivers/gpu/drm/i915/gem/i915_gem_object.h | 3 +-- drivers/gpu/drm/i915/gem/i915_gem_object_types.h | 3 +-- drivers/gpu/drm/i915/gem/i915_gem_pages.c | 3 +-- drivers/gpu/drm/i915/gem/i915_gem_phys.c | 3 +-- drivers/gpu/drm/i915/gem/i915_gem_pm.c | 3 +-- drivers/gpu/drm/i915/gem/i915_gem_pm.h | 3 +-- drivers/gpu/drm/i915/gem/i915_gem_shmem.c | 3 +-- drivers/gpu/drm/i915/gem/i915_gem_shrinker.c | 3 +-- drivers/gpu/drm/i915/gem/i915_gem_stolen.c | 3 +-- drivers/gpu/drm/i915/gem/i915_gem_throttle.c | 3 +-- drivers/gpu/drm/i915/gem/i915_gem_tiling.c | 3 +-- drivers/gpu/drm/i915/gem/i915_gem_userptr.c | 3 +-- drivers/gpu/drm/i915/gem/i915_gem_wait.c | 3 +-- drivers/gpu/drm/i915/gem/i915_gemfs.c | 3 +-- drivers/gpu/drm/i915/gem/i915_gemfs.h | 3 +-- drivers/gpu/drm/i915/gem/selftests/huge_gem_object.c | 3 +-- drivers/gpu/drm/i915/gem/selftests/huge_gem_object.h | 3 +-- drivers/gpu/drm/i915/gem/selftests/huge_pages.c | 3 +-- drivers/gpu/drm/i915/gem/selftests/i915_gem_coherency.c | 3 +-- drivers/gpu/drm/i915/gem/selftests/i915_gem_context.c | 3 +-- drivers/gpu/drm/i915/gem/selftests/i915_gem_dmabuf.c | 3 +-- drivers/gpu/drm/i915/gem/selftests/i915_gem_mman.c | 3 +-- drivers/gpu/drm/i915/gem/selftests/i915_gem_object.c | 3 +-- drivers/gpu/drm/i915/gem/selftests/i915_gem_phys.c | 3 +-- drivers/gpu/drm/i915/gem/selftests/igt_gem_utils.c | 3 +-- drivers/gpu/drm/i915/gem/selftests/igt_gem_utils.h | 3 +-- drivers/gpu/drm/i915/gem/selftests/mock_context.c | 3 +-- drivers/gpu/drm/i915/gem/selftests/mock_context.h | 3 +-- drivers/gpu/drm/i915/gem/selftests/mock_dmabuf.c | 3 +-- drivers/gpu/drm/i915/gem/selftests/mock_dmabuf.h | 3 +-- drivers/gpu/drm/i915/gem/selftests/mock_gem_object.h | 3 +-- drivers/gpu/drm/i915/gt/intel_context.c | 3 +-- drivers/gpu/drm/i915/gt/intel_context.h | 3 +-- drivers/gpu/drm/i915/gt/intel_context_types.h | 3 +-- drivers/gpu/drm/i915/gt/intel_engine_pm.c | 3 +-- drivers/gpu/drm/i915/gt/intel_engine_pm.h | 3 +-- drivers/gpu/drm/i915/gt/intel_engine_pool.c | 3 +-- drivers/gpu/drm/i915/gt/intel_engine_pool.h | 3 +-- drivers/gpu/drm/i915/gt/intel_engine_pool_types.h | 3 +-- drivers/gpu/drm/i915/gt/intel_engine_types.h | 3 +-- drivers/gpu/drm/i915/gt/intel_engine_user.c | 3 +-- drivers/gpu/drm/i915/gt/intel_engine_user.h | 3 +-- drivers/gpu/drm/i915/gt/intel_gpu_commands.h | 3 +-- drivers/gpu/drm/i915/gt/intel_gt_irq.c | 3 +-- drivers/gpu/drm/i915/gt/intel_gt_irq.h | 3 +-- drivers/gpu/drm/i915/gt/intel_gt_pm.c | 3 +-- drivers/gpu/drm/i915/gt/intel_gt_pm.h | 3 +-- drivers/gpu/drm/i915/gt/intel_gt_pm_irq.c | 3 +-- drivers/gpu/drm/i915/gt/intel_gt_pm_irq.h | 3 +-- drivers/gpu/drm/i915/gt/intel_lrc_reg.h | 3 +-- drivers/gpu/drm/i915/gt/intel_reset.c | 3 +-- drivers/gpu/drm/i915/gt/intel_reset.h | 3 +-- drivers/gpu/drm/i915/gt/intel_sseu.c | 3 +-- drivers/gpu/drm/i915/gt/intel_sseu.h | 3 +-- drivers/gpu/drm/i915/gt/intel_timeline.c | 3 +-- drivers/gpu/drm/i915/gt/intel_timeline_types.h | 3 +-- drivers/gpu/drm/i915/gt/intel_workarounds.c | 3 +-- drivers/gpu/drm/i915/gt/intel_workarounds.h | 3 +-- drivers/gpu/drm/i915/gt/intel_workarounds_types.h | 3 +-- drivers/gpu/drm/i915/gt/selftest_context.c | 3 +-- drivers/gpu/drm/i915/gt/selftest_engine.c | 3 +-- drivers/gpu/drm/i915/gt/selftest_engine.h | 3 +-- drivers/gpu/drm/i915/gt/selftest_engine_cs.c | 3 +-- drivers/gpu/drm/i915/gt/selftest_engine_pm.c | 3 +-- drivers/gpu/drm/i915/gt/selftest_lrc.c | 3 +-- drivers/gpu/drm/i915/gt/selftest_timeline.c | 3 +-- drivers/gpu/drm/i915/gt/selftest_workarounds.c | 3 +-- drivers/gpu/drm/i915/gt/selftests/mock_timeline.c | 3 +-- drivers/gpu/drm/i915/gt/selftests/mock_timeline.h | 3 +-- drivers/gpu/drm/i915/i915_active.c | 3 +-- drivers/gpu/drm/i915/i915_active.h | 3 +-- drivers/gpu/drm/i915/i915_active_types.h | 3 +-- drivers/gpu/drm/i915/i915_getparam.c | 2 +- drivers/gpu/drm/i915/i915_globals.c | 3 +-- drivers/gpu/drm/i915/i915_globals.h | 3 +-- drivers/gpu/drm/i915/i915_gpu_error.h | 3 +-- drivers/gpu/drm/i915/i915_pmu.c | 3 +-- drivers/gpu/drm/i915/i915_pmu.h | 3 +-- drivers/gpu/drm/i915/i915_priolist_types.h | 3 +-- drivers/gpu/drm/i915/i915_query.c | 3 +-- drivers/gpu/drm/i915/i915_query.h | 3 +-- drivers/gpu/drm/i915/i915_scatterlist.c | 3 +-- drivers/gpu/drm/i915/i915_scatterlist.h | 3 +-- drivers/gpu/drm/i915/i915_scheduler.c | 3 +-- drivers/gpu/drm/i915/i915_scheduler.h | 3 +-- drivers/gpu/drm/i915/i915_scheduler_types.h | 3 +-- drivers/gpu/drm/i915/i915_sw_fence.c | 3 +-- drivers/gpu/drm/i915/i915_sw_fence.h | 3 +-- drivers/gpu/drm/i915/i915_user_extensions.c | 3 +-- drivers/gpu/drm/i915/i915_user_extensions.h | 3 +-- drivers/gpu/drm/i915/intel_wakeref.c | 3 +-- drivers/gpu/drm/i915/intel_wakeref.h | 3 +-- drivers/gpu/drm/i915/intel_wopcm.h | 3 +-- drivers/gpu/drm/i915/selftests/i915_active.c | 3 +-- drivers/gpu/drm/i915/selftests/i915_gem.c | 3 +-- drivers/gpu/drm/i915/selftests/igt_flush_test.c | 3 +-- drivers/gpu/drm/i915/selftests/igt_flush_test.h | 3 +-- drivers/gpu/drm/i915/selftests/igt_live_test.c | 3 +-- drivers/gpu/drm/i915/selftests/igt_live_test.h | 3 +-- drivers/gpu/drm/i915/selftests/igt_reset.c | 3 +-- drivers/gpu/drm/i915/selftests/igt_reset.h | 3 +-- drivers/gpu/drm/i915/selftests/igt_spinner.c | 3 +-- drivers/gpu/drm/i915/selftests/igt_spinner.h | 3 +-- drivers/gpu/drm/msm/disp/dpu1/dpu_mdss.c | 2 +- drivers/gpu/drm/msm/dsi/phy/dsi_phy_10nm.c | 2 +- drivers/gpu/drm/msm/dsi/pll/dsi_pll_10nm.c | 2 +- drivers/hid/hid-redragon.c | 2 +- drivers/i2c/busses/i2c-sprd.c | 3 +-- drivers/media/common/siano/smsir.h | 3 +-- drivers/media/i2c/saa711x_regs.h | 2 +- drivers/media/i2c/tvp5150_reg.h | 3 +-- drivers/media/pci/bt8xx/bttv-audio-hook.h | 3 +-- drivers/media/platform/meson/ao-cec.c | 3 +-- drivers/media/rc/rc-core-priv.h | 2 +- drivers/media/tuners/tuner-xc2028-types.h | 2 +- drivers/media/tuners/tuner-xc2028.h | 2 +- drivers/media/usb/tm6000/tm6000-regs.h | 2 +- drivers/media/usb/tm6000/tm6000-usb-isoc.h | 2 +- drivers/media/usb/tm6000/tm6000.h | 2 +- drivers/pinctrl/meson/pinctrl-meson-axg-pmx.c | 3 +-- drivers/pinctrl/meson/pinctrl-meson-axg-pmx.h | 3 +-- drivers/pinctrl/meson/pinctrl-meson-axg.c | 3 +-- drivers/rtc/rtc-rtd119x.c | 3 +-- drivers/rtc/rtc-sc27xx.c | 3 +-- drivers/soc/amlogic/meson-gx-pwrc-vpu.c | 3 +-- drivers/soc/amlogic/meson-gx-socinfo.c | 3 +-- drivers/soc/amlogic/meson-mx-socinfo.c | 3 +-- drivers/spi/spi-meson-spicc.c | 3 +-- drivers/spi/spi-sprd-adi.c | 3 +-- drivers/watchdog/rtd119x_wdt.c | 3 +-- include/acpi/nfit.h | 2 +- include/dt-bindings/clock/sun8i-de2.h | 3 +-- include/dt-bindings/gpio/meson-axg-gpio.h | 3 +-- include/dt-bindings/power/owl-s500-powergate.h | 3 +-- include/dt-bindings/reset/amlogic,meson8b-clkc-reset.h | 3 +-- include/dt-bindings/reset/sun8i-de2.h | 3 +-- include/linux/ascii85.h | 3 +-- include/linux/soc/actions/owl-sps.h | 3 +-- include/media/dvb_vb2.h | 3 +-- tools/perf/util/cs-etm-decoder/cs-etm-decoder.h | 3 +-- tools/perf/util/rlimit.h | 2 +- 156 files changed, 156 insertions(+), 298 deletions(-) diff --git a/arch/x86/kernel/apic/apic_common.c b/arch/x86/kernel/apic/apic_common.c index 02b4839478b1..08d06d98950f 100644 --- a/arch/x86/kernel/apic/apic_common.c +++ b/arch/x86/kernel/apic/apic_common.c @@ -1,7 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0 /* * Common functions shared between the various APIC flavours - * - * SPDX-License-Identifier: GPL-2.0 */ #include <linux/irq.h> #include <asm/apic.h> diff --git a/drivers/dma/sprd-dma.c b/drivers/dma/sprd-dma.c index baac476c8622..cb99293e69f0 100644 --- a/drivers/dma/sprd-dma.c +++ b/drivers/dma/sprd-dma.c @@ -1,7 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0 /* * Copyright (C) 2017 Spreadtrum Communications Inc. - * - * SPDX-License-Identifier: GPL-2.0 */ #include <linux/clk.h> diff --git a/drivers/gpu/drm/i915/gem/i915_gem_busy.c b/drivers/gpu/drm/i915/gem/i915_gem_busy.c index 3d4f5775a4ba..f0b81188049c 100644 --- a/drivers/gpu/drm/i915/gem/i915_gem_busy.c +++ b/drivers/gpu/drm/i915/gem/i915_gem_busy.c @@ -1,6 +1,5 @@ +// SPDX-License-Identifier: MIT /* - * SPDX-License-Identifier: MIT - * * Copyright © 2014-2016 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gem/i915_gem_clflush.c b/drivers/gpu/drm/i915/gem/i915_gem_clflush.c index b9f504ba3b32..3bb142dc9fc2 100644 --- a/drivers/gpu/drm/i915/gem/i915_gem_clflush.c +++ b/drivers/gpu/drm/i915/gem/i915_gem_clflush.c @@ -1,6 +1,5 @@ +// SPDX-License-Identifier: MIT /* - * SPDX-License-Identifier: MIT - * * Copyright © 2016 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gem/i915_gem_clflush.h b/drivers/gpu/drm/i915/gem/i915_gem_clflush.h index e6c382973129..9d7ee1579900 100644 --- a/drivers/gpu/drm/i915/gem/i915_gem_clflush.h +++ b/drivers/gpu/drm/i915/gem/i915_gem_clflush.h @@ -1,6 +1,5 @@ +/* SPDX-License-Identifier: MIT */ /* - * SPDX-License-Identifier: MIT - * * Copyright © 2016 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gem/i915_gem_context.c b/drivers/gpu/drm/i915/gem/i915_gem_context.c index 1cdfe05514c3..9c7b2bc4ecf7 100644 --- a/drivers/gpu/drm/i915/gem/i915_gem_context.c +++ b/drivers/gpu/drm/i915/gem/i915_gem_context.c @@ -1,6 +1,5 @@ +// SPDX-License-Identifier: MIT /* - * SPDX-License-Identifier: MIT - * * Copyright © 2011-2012 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gem/i915_gem_context.h b/drivers/gpu/drm/i915/gem/i915_gem_context.h index 176978608b6f..47e0e4bd370b 100644 --- a/drivers/gpu/drm/i915/gem/i915_gem_context.h +++ b/drivers/gpu/drm/i915/gem/i915_gem_context.h @@ -1,6 +1,5 @@ +/* SPDX-License-Identifier: MIT */ /* - * SPDX-License-Identifier: MIT - * * Copyright © 2016 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gem/i915_gem_context_types.h b/drivers/gpu/drm/i915/gem/i915_gem_context_types.h index 260d59cc3de8..925e04f5264b 100644 --- a/drivers/gpu/drm/i915/gem/i915_gem_context_types.h +++ b/drivers/gpu/drm/i915/gem/i915_gem_context_types.h @@ -1,6 +1,5 @@ +/* SPDX-License-Identifier: MIT */ /* - * SPDX-License-Identifier: MIT - * * Copyright © 2019 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gem/i915_gem_dmabuf.c b/drivers/gpu/drm/i915/gem/i915_gem_dmabuf.c index 96ce95c8ac5a..d8a4cc157b50 100644 --- a/drivers/gpu/drm/i915/gem/i915_gem_dmabuf.c +++ b/drivers/gpu/drm/i915/gem/i915_gem_dmabuf.c @@ -1,6 +1,5 @@ +// SPDX-License-Identifier: MIT /* - * SPDX-License-Identifier: MIT - * * Copyright 2012 Red Hat Inc */ diff --git a/drivers/gpu/drm/i915/gem/i915_gem_domain.c b/drivers/gpu/drm/i915/gem/i915_gem_domain.c index 9c58e8fac1d9..19a11e649cec 100644 --- a/drivers/gpu/drm/i915/gem/i915_gem_domain.c +++ b/drivers/gpu/drm/i915/gem/i915_gem_domain.c @@ -1,6 +1,5 @@ +// SPDX-License-Identifier: MIT /* - * SPDX-License-Identifier: MIT - * * Copyright © 2014-2016 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c b/drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c index b5f6937369ea..6206dadb8480 100644 --- a/drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c +++ b/drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c @@ -1,6 +1,5 @@ +// SPDX-License-Identifier: MIT /* - * SPDX-License-Identifier: MIT - * * Copyright © 2008,2010 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gem/i915_gem_fence.c b/drivers/gpu/drm/i915/gem/i915_gem_fence.c index 2f6100ec2608..9dd59c069579 100644 --- a/drivers/gpu/drm/i915/gem/i915_gem_fence.c +++ b/drivers/gpu/drm/i915/gem/i915_gem_fence.c @@ -1,6 +1,5 @@ +// SPDX-License-Identifier: MIT /* - * SPDX-License-Identifier: MIT - * * Copyright © 2019 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gem/i915_gem_internal.c b/drivers/gpu/drm/i915/gem/i915_gem_internal.c index 0c41e04ab8fa..0885a5b8ec13 100644 --- a/drivers/gpu/drm/i915/gem/i915_gem_internal.c +++ b/drivers/gpu/drm/i915/gem/i915_gem_internal.c @@ -1,6 +1,5 @@ +// SPDX-License-Identifier: MIT /* - * SPDX-License-Identifier: MIT - * * Copyright © 2014-2016 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gem/i915_gem_ioctls.h b/drivers/gpu/drm/i915/gem/i915_gem_ioctls.h index ddc7f2a52b3e..0326e985943c 100644 --- a/drivers/gpu/drm/i915/gem/i915_gem_ioctls.h +++ b/drivers/gpu/drm/i915/gem/i915_gem_ioctls.h @@ -1,6 +1,5 @@ +/* SPDX-License-Identifier: MIT */ /* - * SPDX-License-Identifier: MIT - * * Copyright © 2019 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gem/i915_gem_mman.c b/drivers/gpu/drm/i915/gem/i915_gem_mman.c index 595539a09e38..c768689cd680 100644 --- a/drivers/gpu/drm/i915/gem/i915_gem_mman.c +++ b/drivers/gpu/drm/i915/gem/i915_gem_mman.c @@ -1,6 +1,5 @@ +// SPDX-License-Identifier: MIT /* - * SPDX-License-Identifier: MIT - * * Copyright © 2014-2016 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gem/i915_gem_object.h b/drivers/gpu/drm/i915/gem/i915_gem_object.h index 5efb9936e05b..99955c0f473c 100644 --- a/drivers/gpu/drm/i915/gem/i915_gem_object.h +++ b/drivers/gpu/drm/i915/gem/i915_gem_object.h @@ -1,6 +1,5 @@ +/* SPDX-License-Identifier: MIT */ /* - * SPDX-License-Identifier: MIT - * * Copyright © 2016 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gem/i915_gem_object_types.h b/drivers/gpu/drm/i915/gem/i915_gem_object_types.h index ede0eb4218a8..20cfee35d0fb 100644 --- a/drivers/gpu/drm/i915/gem/i915_gem_object_types.h +++ b/drivers/gpu/drm/i915/gem/i915_gem_object_types.h @@ -1,6 +1,5 @@ +/* SPDX-License-Identifier: MIT */ /* - * SPDX-License-Identifier: MIT - * * Copyright © 2016 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gem/i915_gem_pages.c b/drivers/gpu/drm/i915/gem/i915_gem_pages.c index 18f0ce0135c1..7005dad1e5d7 100644 --- a/drivers/gpu/drm/i915/gem/i915_gem_pages.c +++ b/drivers/gpu/drm/i915/gem/i915_gem_pages.c @@ -1,6 +1,5 @@ +// SPDX-License-Identifier: MIT /* - * SPDX-License-Identifier: MIT - * * Copyright © 2014-2016 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gem/i915_gem_phys.c b/drivers/gpu/drm/i915/gem/i915_gem_phys.c index 768356908160..9cb0ea04a631 100644 --- a/drivers/gpu/drm/i915/gem/i915_gem_phys.c +++ b/drivers/gpu/drm/i915/gem/i915_gem_phys.c @@ -1,6 +1,5 @@ +// SPDX-License-Identifier: MIT /* - * SPDX-License-Identifier: MIT - * * Copyright © 2014-2016 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gem/i915_gem_pm.c b/drivers/gpu/drm/i915/gem/i915_gem_pm.c index 92e53c25424c..e9bd18837a9c 100644 --- a/drivers/gpu/drm/i915/gem/i915_gem_pm.c +++ b/drivers/gpu/drm/i915/gem/i915_gem_pm.c @@ -1,6 +1,5 @@ +// SPDX-License-Identifier: MIT /* - * SPDX-License-Identifier: MIT - * * Copyright © 2019 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gem/i915_gem_pm.h b/drivers/gpu/drm/i915/gem/i915_gem_pm.h index 6f7d5d11ac3b..e5d8c8adb8d9 100644 --- a/drivers/gpu/drm/i915/gem/i915_gem_pm.h +++ b/drivers/gpu/drm/i915/gem/i915_gem_pm.h @@ -1,6 +1,5 @@ +/* SPDX-License-Identifier: MIT */ /* - * SPDX-License-Identifier: MIT - * * Copyright © 2019 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gem/i915_gem_shmem.c b/drivers/gpu/drm/i915/gem/i915_gem_shmem.c index 4c4954e8ce0a..e67d4e38d71c 100644 --- a/drivers/gpu/drm/i915/gem/i915_gem_shmem.c +++ b/drivers/gpu/drm/i915/gem/i915_gem_shmem.c @@ -1,6 +1,5 @@ +// SPDX-License-Identifier: MIT /* - * SPDX-License-Identifier: MIT - * * Copyright © 2014-2016 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gem/i915_gem_shrinker.c b/drivers/gpu/drm/i915/gem/i915_gem_shrinker.c index edd21d14e64f..21e86c4fa857 100644 --- a/drivers/gpu/drm/i915/gem/i915_gem_shrinker.c +++ b/drivers/gpu/drm/i915/gem/i915_gem_shrinker.c @@ -1,6 +1,5 @@ +// SPDX-License-Identifier: MIT /* - * SPDX-License-Identifier: MIT - * * Copyright © 2008-2015 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gem/i915_gem_stolen.c b/drivers/gpu/drm/i915/gem/i915_gem_stolen.c index aa533b4ab5f5..3a5e6ff7db52 100644 --- a/drivers/gpu/drm/i915/gem/i915_gem_stolen.c +++ b/drivers/gpu/drm/i915/gem/i915_gem_stolen.c @@ -1,6 +1,5 @@ +// SPDX-License-Identifier: MIT /* - * SPDX-License-Identifier: MIT - * * Copyright © 2008-2012 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gem/i915_gem_throttle.c b/drivers/gpu/drm/i915/gem/i915_gem_throttle.c index 1e372420771b..fc2ee8a1cae7 100644 --- a/drivers/gpu/drm/i915/gem/i915_gem_throttle.c +++ b/drivers/gpu/drm/i915/gem/i915_gem_throttle.c @@ -1,6 +1,5 @@ +// SPDX-License-Identifier: MIT /* - * SPDX-License-Identifier: MIT - * * Copyright © 2014-2016 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gem/i915_gem_tiling.c b/drivers/gpu/drm/i915/gem/i915_gem_tiling.c index ca0c2f451742..f3c6fd9aff46 100644 --- a/drivers/gpu/drm/i915/gem/i915_gem_tiling.c +++ b/drivers/gpu/drm/i915/gem/i915_gem_tiling.c @@ -1,6 +1,5 @@ +// SPDX-License-Identifier: MIT /* - * SPDX-License-Identifier: MIT - * * Copyright © 2008 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gem/i915_gem_userptr.c b/drivers/gpu/drm/i915/gem/i915_gem_userptr.c index 74da35611d7c..09b7eae33f9f 100644 --- a/drivers/gpu/drm/i915/gem/i915_gem_userptr.c +++ b/drivers/gpu/drm/i915/gem/i915_gem_userptr.c @@ -1,6 +1,5 @@ +// SPDX-License-Identifier: MIT /* - * SPDX-License-Identifier: MIT - * * Copyright © 2012-2014 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gem/i915_gem_wait.c b/drivers/gpu/drm/i915/gem/i915_gem_wait.c index 8af55cd3e690..821ce2eb98f6 100644 --- a/drivers/gpu/drm/i915/gem/i915_gem_wait.c +++ b/drivers/gpu/drm/i915/gem/i915_gem_wait.c @@ -1,6 +1,5 @@ +// SPDX-License-Identifier: MIT /* - * SPDX-License-Identifier: MIT - * * Copyright © 2016 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gem/i915_gemfs.c b/drivers/gpu/drm/i915/gem/i915_gemfs.c index 5e6e8c91ab38..68748aa2353e 100644 --- a/drivers/gpu/drm/i915/gem/i915_gemfs.c +++ b/drivers/gpu/drm/i915/gem/i915_gemfs.c @@ -1,6 +1,5 @@ +// SPDX-License-Identifier: MIT /* - * SPDX-License-Identifier: MIT - * * Copyright © 2017 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gem/i915_gemfs.h b/drivers/gpu/drm/i915/gem/i915_gemfs.h index 2a1e59af3e4a..66b6b12b92d8 100644 --- a/drivers/gpu/drm/i915/gem/i915_gemfs.h +++ b/drivers/gpu/drm/i915/gem/i915_gemfs.h @@ -1,6 +1,5 @@ +/* SPDX-License-Identifier: MIT */ /* - * SPDX-License-Identifier: MIT - * * Copyright © 2017 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gem/selftests/huge_gem_object.c b/drivers/gpu/drm/i915/gem/selftests/huge_gem_object.c index 3c5d17b2b670..9f73d65324a1 100644 --- a/drivers/gpu/drm/i915/gem/selftests/huge_gem_object.c +++ b/drivers/gpu/drm/i915/gem/selftests/huge_gem_object.c @@ -1,6 +1,5 @@ +// SPDX-License-Identifier: MIT /* - * SPDX-License-Identifier: MIT - * * Copyright © 2016 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gem/selftests/huge_gem_object.h b/drivers/gpu/drm/i915/gem/selftests/huge_gem_object.h index 549c1394bcdc..5afc1fa40d93 100644 --- a/drivers/gpu/drm/i915/gem/selftests/huge_gem_object.h +++ b/drivers/gpu/drm/i915/gem/selftests/huge_gem_object.h @@ -1,6 +1,5 @@ +/* SPDX-License-Identifier: MIT */ /* - * SPDX-License-Identifier: MIT - * * Copyright © 2016 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gem/selftests/huge_pages.c b/drivers/gpu/drm/i915/gem/selftests/huge_pages.c index 8de83c6d81f5..0206f4c4023c 100644 --- a/drivers/gpu/drm/i915/gem/selftests/huge_pages.c +++ b/drivers/gpu/drm/i915/gem/selftests/huge_pages.c @@ -1,6 +1,5 @@ +// SPDX-License-Identifier: MIT /* - * SPDX-License-Identifier: MIT - * * Copyright © 2017 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gem/selftests/i915_gem_coherency.c b/drivers/gpu/drm/i915/gem/selftests/i915_gem_coherency.c index 0ff7a89aadca..ae5f19f727e2 100644 --- a/drivers/gpu/drm/i915/gem/selftests/i915_gem_coherency.c +++ b/drivers/gpu/drm/i915/gem/selftests/i915_gem_coherency.c @@ -1,6 +1,5 @@ +// SPDX-License-Identifier: MIT /* - * SPDX-License-Identifier: MIT - * * Copyright © 2017 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gem/selftests/i915_gem_context.c b/drivers/gpu/drm/i915/gem/selftests/i915_gem_context.c index 3e6f4a65d356..879553853e3c 100644 --- a/drivers/gpu/drm/i915/gem/selftests/i915_gem_context.c +++ b/drivers/gpu/drm/i915/gem/selftests/i915_gem_context.c @@ -1,6 +1,5 @@ +// SPDX-License-Identifier: MIT /* - * SPDX-License-Identifier: MIT - * * Copyright © 2017 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gem/selftests/i915_gem_dmabuf.c b/drivers/gpu/drm/i915/gem/selftests/i915_gem_dmabuf.c index d85d1ce273ca..e57b3dc34d9a 100644 --- a/drivers/gpu/drm/i915/gem/selftests/i915_gem_dmabuf.c +++ b/drivers/gpu/drm/i915/gem/selftests/i915_gem_dmabuf.c @@ -1,6 +1,5 @@ +// SPDX-License-Identifier: MIT /* - * SPDX-License-Identifier: MIT - * * Copyright © 2016 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gem/selftests/i915_gem_mman.c b/drivers/gpu/drm/i915/gem/selftests/i915_gem_mman.c index 1d27babff0ce..b959a18a583f 100644 --- a/drivers/gpu/drm/i915/gem/selftests/i915_gem_mman.c +++ b/drivers/gpu/drm/i915/gem/selftests/i915_gem_mman.c @@ -1,6 +1,5 @@ +// SPDX-License-Identifier: MIT /* - * SPDX-License-Identifier: MIT - * * Copyright © 2016 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gem/selftests/i915_gem_object.c b/drivers/gpu/drm/i915/gem/selftests/i915_gem_object.c index 2b6db6f799de..aa40ec85ac35 100644 --- a/drivers/gpu/drm/i915/gem/selftests/i915_gem_object.c +++ b/drivers/gpu/drm/i915/gem/selftests/i915_gem_object.c @@ -1,6 +1,5 @@ +// SPDX-License-Identifier: MIT /* - * SPDX-License-Identifier: MIT - * * Copyright © 2016 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gem/selftests/i915_gem_phys.c b/drivers/gpu/drm/i915/gem/selftests/i915_gem_phys.c index 94a15e3f6db8..f839e4383f38 100644 --- a/drivers/gpu/drm/i915/gem/selftests/i915_gem_phys.c +++ b/drivers/gpu/drm/i915/gem/selftests/i915_gem_phys.c @@ -1,6 +1,5 @@ +// SPDX-License-Identifier: MIT /* - * SPDX-License-Identifier: MIT - * * Copyright © 2016 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gem/selftests/igt_gem_utils.c b/drivers/gpu/drm/i915/gem/selftests/igt_gem_utils.c index 57ece53c1075..304b08212a41 100644 --- a/drivers/gpu/drm/i915/gem/selftests/igt_gem_utils.c +++ b/drivers/gpu/drm/i915/gem/selftests/igt_gem_utils.c @@ -1,6 +1,5 @@ +// SPDX-License-Identifier: MIT /* - * SPDX-License-Identifier: MIT - * * Copyright © 2018 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gem/selftests/igt_gem_utils.h b/drivers/gpu/drm/i915/gem/selftests/igt_gem_utils.h index 361a7ef866b0..eb2303488c9e 100644 --- a/drivers/gpu/drm/i915/gem/selftests/igt_gem_utils.h +++ b/drivers/gpu/drm/i915/gem/selftests/igt_gem_utils.h @@ -1,6 +1,5 @@ +/* SPDX-License-Identifier: MIT */ /* - * SPDX-License-Identifier: MIT - * * Copyright © 2018 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gem/selftests/mock_context.c b/drivers/gpu/drm/i915/gem/selftests/mock_context.c index be8974ccff24..4145889d5de2 100644 --- a/drivers/gpu/drm/i915/gem/selftests/mock_context.c +++ b/drivers/gpu/drm/i915/gem/selftests/mock_context.c @@ -1,6 +1,5 @@ +// SPDX-License-Identifier: MIT /* - * SPDX-License-Identifier: MIT - * * Copyright © 2016 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gem/selftests/mock_context.h b/drivers/gpu/drm/i915/gem/selftests/mock_context.h index 0b926653914f..4a02874419a0 100644 --- a/drivers/gpu/drm/i915/gem/selftests/mock_context.h +++ b/drivers/gpu/drm/i915/gem/selftests/mock_context.h @@ -1,6 +1,5 @@ +/* SPDX-License-Identifier: MIT */ /* - * SPDX-License-Identifier: MIT - * * Copyright © 2016 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gem/selftests/mock_dmabuf.c b/drivers/gpu/drm/i915/gem/selftests/mock_dmabuf.c index b9e059d4328a..e110d104ab27 100644 --- a/drivers/gpu/drm/i915/gem/selftests/mock_dmabuf.c +++ b/drivers/gpu/drm/i915/gem/selftests/mock_dmabuf.c @@ -1,6 +1,5 @@ +// SPDX-License-Identifier: MIT /* - * SPDX-License-Identifier: MIT - * * Copyright © 2016 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gem/selftests/mock_dmabuf.h b/drivers/gpu/drm/i915/gem/selftests/mock_dmabuf.h index f0f8bbd82dfc..9ab4752a03d0 100644 --- a/drivers/gpu/drm/i915/gem/selftests/mock_dmabuf.h +++ b/drivers/gpu/drm/i915/gem/selftests/mock_dmabuf.h @@ -1,6 +1,5 @@ +/* SPDX-License-Identifier: MIT */ /* - * SPDX-License-Identifier: MIT - * * Copyright © 2016 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gem/selftests/mock_gem_object.h b/drivers/gpu/drm/i915/gem/selftests/mock_gem_object.h index 370360b4a148..7cd66effb204 100644 --- a/drivers/gpu/drm/i915/gem/selftests/mock_gem_object.h +++ b/drivers/gpu/drm/i915/gem/selftests/mock_gem_object.h @@ -1,6 +1,5 @@ +/* SPDX-License-Identifier: MIT */ /* - * SPDX-License-Identifier: MIT - * * Copyright © 2016 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gt/intel_context.c b/drivers/gpu/drm/i915/gt/intel_context.c index f55691d151ae..53bb9ecba235 100644 --- a/drivers/gpu/drm/i915/gt/intel_context.c +++ b/drivers/gpu/drm/i915/gt/intel_context.c @@ -1,6 +1,5 @@ +// SPDX-License-Identifier: MIT /* - * SPDX-License-Identifier: MIT - * * Copyright © 2019 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gt/intel_context.h b/drivers/gpu/drm/i915/gt/intel_context.h index dd742ac2fbdb..9c52a5ed5f73 100644 --- a/drivers/gpu/drm/i915/gt/intel_context.h +++ b/drivers/gpu/drm/i915/gt/intel_context.h @@ -1,6 +1,5 @@ +/* SPDX-License-Identifier: MIT */ /* - * SPDX-License-Identifier: MIT - * * Copyright © 2019 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gt/intel_context_types.h b/drivers/gpu/drm/i915/gt/intel_context_types.h index bf9cedfccbf0..d7939b6ef2e7 100644 --- a/drivers/gpu/drm/i915/gt/intel_context_types.h +++ b/drivers/gpu/drm/i915/gt/intel_context_types.h @@ -1,6 +1,5 @@ +/* SPDX-License-Identifier: MIT */ /* - * SPDX-License-Identifier: MIT - * * Copyright © 2019 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gt/intel_engine_pm.c b/drivers/gpu/drm/i915/gt/intel_engine_pm.c index a372d4ea9370..4150ce5a466d 100644 --- a/drivers/gpu/drm/i915/gt/intel_engine_pm.c +++ b/drivers/gpu/drm/i915/gt/intel_engine_pm.c @@ -1,6 +1,5 @@ +// SPDX-License-Identifier: MIT /* - * SPDX-License-Identifier: MIT - * * Copyright © 2019 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gt/intel_engine_pm.h b/drivers/gpu/drm/i915/gt/intel_engine_pm.h index 739c50fefcef..974f59d3c39e 100644 --- a/drivers/gpu/drm/i915/gt/intel_engine_pm.h +++ b/drivers/gpu/drm/i915/gt/intel_engine_pm.h @@ -1,6 +1,5 @@ +/* SPDX-License-Identifier: MIT */ /* - * SPDX-License-Identifier: MIT - * * Copyright © 2019 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gt/intel_engine_pool.c b/drivers/gpu/drm/i915/gt/intel_engine_pool.c index 4cd54c569911..9d6c22261cdf 100644 --- a/drivers/gpu/drm/i915/gt/intel_engine_pool.c +++ b/drivers/gpu/drm/i915/gt/intel_engine_pool.c @@ -1,6 +1,5 @@ +// SPDX-License-Identifier: MIT /* - * SPDX-License-Identifier: MIT - * * Copyright © 2014-2018 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gt/intel_engine_pool.h b/drivers/gpu/drm/i915/gt/intel_engine_pool.h index 8d069efd9457..2e6235f0ac0d 100644 --- a/drivers/gpu/drm/i915/gt/intel_engine_pool.h +++ b/drivers/gpu/drm/i915/gt/intel_engine_pool.h @@ -1,6 +1,5 @@ +/* SPDX-License-Identifier: MIT */ /* - * SPDX-License-Identifier: MIT - * * Copyright © 2014-2018 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gt/intel_engine_pool_types.h b/drivers/gpu/drm/i915/gt/intel_engine_pool_types.h index e31ee361b76f..c02df7210648 100644 --- a/drivers/gpu/drm/i915/gt/intel_engine_pool_types.h +++ b/drivers/gpu/drm/i915/gt/intel_engine_pool_types.h @@ -1,6 +1,5 @@ +/* SPDX-License-Identifier: MIT */ /* - * SPDX-License-Identifier: MIT - * * Copyright © 2014-2018 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gt/intel_engine_types.h b/drivers/gpu/drm/i915/gt/intel_engine_types.h index a82cea95c2f2..a1589365e880 100644 --- a/drivers/gpu/drm/i915/gt/intel_engine_types.h +++ b/drivers/gpu/drm/i915/gt/intel_engine_types.h @@ -1,6 +1,5 @@ +/* SPDX-License-Identifier: MIT */ /* - * SPDX-License-Identifier: MIT - * * Copyright © 2019 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gt/intel_engine_user.c b/drivers/gpu/drm/i915/gt/intel_engine_user.c index 77cd5de83930..095400eb5bb9 100644 --- a/drivers/gpu/drm/i915/gt/intel_engine_user.c +++ b/drivers/gpu/drm/i915/gt/intel_engine_user.c @@ -1,6 +1,5 @@ +// SPDX-License-Identifier: MIT /* - * SPDX-License-Identifier: MIT - * * Copyright © 2019 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gt/intel_engine_user.h b/drivers/gpu/drm/i915/gt/intel_engine_user.h index f845ea1cbfaa..3dc7e8ab9fbc 100644 --- a/drivers/gpu/drm/i915/gt/intel_engine_user.h +++ b/drivers/gpu/drm/i915/gt/intel_engine_user.h @@ -1,6 +1,5 @@ +/* SPDX-License-Identifier: MIT */ /* - * SPDX-License-Identifier: MIT - * * Copyright © 2019 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gt/intel_gpu_commands.h b/drivers/gpu/drm/i915/gt/intel_gpu_commands.h index 86e00a2db8a4..f080cae26d07 100644 --- a/drivers/gpu/drm/i915/gt/intel_gpu_commands.h +++ b/drivers/gpu/drm/i915/gt/intel_gpu_commands.h @@ -1,6 +1,5 @@ +/* SPDX-License-Identifier: MIT */ /* - * SPDX-License-Identifier: MIT - * * Copyright � 2003-2018 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gt/intel_gt_irq.c b/drivers/gpu/drm/i915/gt/intel_gt_irq.c index 34a4fb624bf7..90f91d356d7b 100644 --- a/drivers/gpu/drm/i915/gt/intel_gt_irq.c +++ b/drivers/gpu/drm/i915/gt/intel_gt_irq.c @@ -1,6 +1,5 @@ +// SPDX-License-Identifier: MIT /* - * SPDX-License-Identifier: MIT - * * Copyright © 2019 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gt/intel_gt_irq.h b/drivers/gpu/drm/i915/gt/intel_gt_irq.h index 8f37593712c9..43c2317f76a1 100644 --- a/drivers/gpu/drm/i915/gt/intel_gt_irq.h +++ b/drivers/gpu/drm/i915/gt/intel_gt_irq.h @@ -1,6 +1,5 @@ +/* SPDX-License-Identifier: MIT */ /* - * SPDX-License-Identifier: MIT - * * Copyright © 2019 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gt/intel_gt_pm.c b/drivers/gpu/drm/i915/gt/intel_gt_pm.c index 1363e069ec83..88d23b0b959e 100644 --- a/drivers/gpu/drm/i915/gt/intel_gt_pm.c +++ b/drivers/gpu/drm/i915/gt/intel_gt_pm.c @@ -1,6 +1,5 @@ +// SPDX-License-Identifier: MIT /* - * SPDX-License-Identifier: MIT - * * Copyright © 2019 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gt/intel_gt_pm.h b/drivers/gpu/drm/i915/gt/intel_gt_pm.h index fb39d99cd6ee..dceeafbf0730 100644 --- a/drivers/gpu/drm/i915/gt/intel_gt_pm.h +++ b/drivers/gpu/drm/i915/gt/intel_gt_pm.h @@ -1,6 +1,5 @@ +/* SPDX-License-Identifier: MIT */ /* - * SPDX-License-Identifier: MIT - * * Copyright © 2019 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gt/intel_gt_pm_irq.c b/drivers/gpu/drm/i915/gt/intel_gt_pm_irq.c index babe866126d7..811a11ed181c 100644 --- a/drivers/gpu/drm/i915/gt/intel_gt_pm_irq.c +++ b/drivers/gpu/drm/i915/gt/intel_gt_pm_irq.c @@ -1,6 +1,5 @@ +// SPDX-License-Identifier: MIT /* - * SPDX-License-Identifier: MIT - * * Copyright © 2019 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gt/intel_gt_pm_irq.h b/drivers/gpu/drm/i915/gt/intel_gt_pm_irq.h index b29816a04809..ff766966d6fc 100644 --- a/drivers/gpu/drm/i915/gt/intel_gt_pm_irq.h +++ b/drivers/gpu/drm/i915/gt/intel_gt_pm_irq.h @@ -1,6 +1,5 @@ +/* SPDX-License-Identifier: MIT */ /* - * SPDX-License-Identifier: MIT - * * Copyright © 2019 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gt/intel_lrc_reg.h b/drivers/gpu/drm/i915/gt/intel_lrc_reg.h index b8f20ad71169..6bc64bb0f0f3 100644 --- a/drivers/gpu/drm/i915/gt/intel_lrc_reg.h +++ b/drivers/gpu/drm/i915/gt/intel_lrc_reg.h @@ -1,6 +1,5 @@ +/* SPDX-License-Identifier: MIT */ /* - * SPDX-License-Identifier: MIT - * * Copyright © 2014-2018 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gt/intel_reset.c b/drivers/gpu/drm/i915/gt/intel_reset.c index 077716442c90..67893b19d04e 100644 --- a/drivers/gpu/drm/i915/gt/intel_reset.c +++ b/drivers/gpu/drm/i915/gt/intel_reset.c @@ -1,6 +1,5 @@ +// SPDX-License-Identifier: MIT /* - * SPDX-License-Identifier: MIT - * * Copyright © 2008-2018 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gt/intel_reset.h b/drivers/gpu/drm/i915/gt/intel_reset.h index 37a987b17108..e7614ef1b1c5 100644 --- a/drivers/gpu/drm/i915/gt/intel_reset.h +++ b/drivers/gpu/drm/i915/gt/intel_reset.h @@ -1,6 +1,5 @@ +/* SPDX-License-Identifier: MIT */ /* - * SPDX-License-Identifier: MIT - * * Copyright © 2008-2018 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gt/intel_sseu.c b/drivers/gpu/drm/i915/gt/intel_sseu.c index 6bf2d87da109..74e8af721c1e 100644 --- a/drivers/gpu/drm/i915/gt/intel_sseu.c +++ b/drivers/gpu/drm/i915/gt/intel_sseu.c @@ -1,6 +1,5 @@ +// SPDX-License-Identifier: MIT /* - * SPDX-License-Identifier: MIT - * * Copyright © 2019 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gt/intel_sseu.h b/drivers/gpu/drm/i915/gt/intel_sseu.h index b50d0401a4e2..49a258dab704 100644 --- a/drivers/gpu/drm/i915/gt/intel_sseu.h +++ b/drivers/gpu/drm/i915/gt/intel_sseu.h @@ -1,6 +1,5 @@ +/* SPDX-License-Identifier: MIT */ /* - * SPDX-License-Identifier: MIT - * * Copyright © 2019 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gt/intel_timeline.c b/drivers/gpu/drm/i915/gt/intel_timeline.c index 02fbe11b671b..a40a38c61aca 100644 --- a/drivers/gpu/drm/i915/gt/intel_timeline.c +++ b/drivers/gpu/drm/i915/gt/intel_timeline.c @@ -1,6 +1,5 @@ +// SPDX-License-Identifier: MIT /* - * SPDX-License-Identifier: MIT - * * Copyright © 2016-2018 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gt/intel_timeline_types.h b/drivers/gpu/drm/i915/gt/intel_timeline_types.h index 2b1baf2fcc8e..6d36295ec936 100644 --- a/drivers/gpu/drm/i915/gt/intel_timeline_types.h +++ b/drivers/gpu/drm/i915/gt/intel_timeline_types.h @@ -1,6 +1,5 @@ +/* SPDX-License-Identifier: MIT */ /* - * SPDX-License-Identifier: MIT - * * Copyright © 2016 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gt/intel_workarounds.c b/drivers/gpu/drm/i915/gt/intel_workarounds.c index 126ab3667919..91442cec7500 100644 --- a/drivers/gpu/drm/i915/gt/intel_workarounds.c +++ b/drivers/gpu/drm/i915/gt/intel_workarounds.c @@ -1,6 +1,5 @@ +// SPDX-License-Identifier: MIT /* - * SPDX-License-Identifier: MIT - * * Copyright © 2014-2018 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gt/intel_workarounds.h b/drivers/gpu/drm/i915/gt/intel_workarounds.h index 8c9c769c2204..15abb68b6c00 100644 --- a/drivers/gpu/drm/i915/gt/intel_workarounds.h +++ b/drivers/gpu/drm/i915/gt/intel_workarounds.h @@ -1,6 +1,5 @@ +/* SPDX-License-Identifier: MIT */ /* - * SPDX-License-Identifier: MIT - * * Copyright © 2014-2018 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gt/intel_workarounds_types.h b/drivers/gpu/drm/i915/gt/intel_workarounds_types.h index e27ab1b710b3..b496af2ef2f8 100644 --- a/drivers/gpu/drm/i915/gt/intel_workarounds_types.h +++ b/drivers/gpu/drm/i915/gt/intel_workarounds_types.h @@ -1,6 +1,5 @@ +/* SPDX-License-Identifier: MIT */ /* - * SPDX-License-Identifier: MIT - * * Copyright © 2014-2018 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gt/selftest_context.c b/drivers/gpu/drm/i915/gt/selftest_context.c index 9d1ea26c7a2d..01029e46064f 100644 --- a/drivers/gpu/drm/i915/gt/selftest_context.c +++ b/drivers/gpu/drm/i915/gt/selftest_context.c @@ -1,6 +1,5 @@ +// SPDX-License-Identifier: GPL-2.0 /* - * SPDX-License-Identifier: GPL-2.0 - * * Copyright © 2019 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gt/selftest_engine.c b/drivers/gpu/drm/i915/gt/selftest_engine.c index f65b118e261d..262764f6d90a 100644 --- a/drivers/gpu/drm/i915/gt/selftest_engine.c +++ b/drivers/gpu/drm/i915/gt/selftest_engine.c @@ -1,6 +1,5 @@ +// SPDX-License-Identifier: GPL-2.0 /* - * SPDX-License-Identifier: GPL-2.0 - * * Copyright © 2018 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gt/selftest_engine.h b/drivers/gpu/drm/i915/gt/selftest_engine.h index ab32d09ec5a1..c6feb3bd2ccc 100644 --- a/drivers/gpu/drm/i915/gt/selftest_engine.h +++ b/drivers/gpu/drm/i915/gt/selftest_engine.h @@ -1,6 +1,5 @@ +/* SPDX-License-Identifier: GPL-2.0 */ /* - * SPDX-License-Identifier: GPL-2.0 - * * Copyright © 2019 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gt/selftest_engine_cs.c b/drivers/gpu/drm/i915/gt/selftest_engine_cs.c index 3880f07c29b8..777bd4fcff55 100644 --- a/drivers/gpu/drm/i915/gt/selftest_engine_cs.c +++ b/drivers/gpu/drm/i915/gt/selftest_engine_cs.c @@ -1,6 +1,5 @@ +// SPDX-License-Identifier: GPL-2.0 /* - * SPDX-License-Identifier: GPL-2.0 - * * Copyright © 2018 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gt/selftest_engine_pm.c b/drivers/gpu/drm/i915/gt/selftest_engine_pm.c index 3a1419376912..9fac6b1918b4 100644 --- a/drivers/gpu/drm/i915/gt/selftest_engine_pm.c +++ b/drivers/gpu/drm/i915/gt/selftest_engine_pm.c @@ -1,6 +1,5 @@ +// SPDX-License-Identifier: GPL-2.0 /* - * SPDX-License-Identifier: GPL-2.0 - * * Copyright © 2018 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gt/selftest_lrc.c b/drivers/gpu/drm/i915/gt/selftest_lrc.c index d791158988d6..528130f26aff 100644 --- a/drivers/gpu/drm/i915/gt/selftest_lrc.c +++ b/drivers/gpu/drm/i915/gt/selftest_lrc.c @@ -1,6 +1,5 @@ +// SPDX-License-Identifier: MIT /* - * SPDX-License-Identifier: MIT - * * Copyright © 2018 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gt/selftest_timeline.c b/drivers/gpu/drm/i915/gt/selftest_timeline.c index 321481403165..7125d520e4c4 100644 --- a/drivers/gpu/drm/i915/gt/selftest_timeline.c +++ b/drivers/gpu/drm/i915/gt/selftest_timeline.c @@ -1,6 +1,5 @@ +// SPDX-License-Identifier: MIT /* - * SPDX-License-Identifier: MIT - * * Copyright © 2017-2018 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gt/selftest_workarounds.c b/drivers/gpu/drm/i915/gt/selftest_workarounds.c index d06d68ac2a3b..00973f604fd4 100644 --- a/drivers/gpu/drm/i915/gt/selftest_workarounds.c +++ b/drivers/gpu/drm/i915/gt/selftest_workarounds.c @@ -1,6 +1,5 @@ +// SPDX-License-Identifier: MIT /* - * SPDX-License-Identifier: MIT - * * Copyright © 2018 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gt/selftests/mock_timeline.c b/drivers/gpu/drm/i915/gt/selftests/mock_timeline.c index 598170efcaf6..ce5189d115c9 100644 --- a/drivers/gpu/drm/i915/gt/selftests/mock_timeline.c +++ b/drivers/gpu/drm/i915/gt/selftests/mock_timeline.c @@ -1,6 +1,5 @@ +// SPDX-License-Identifier: MIT /* - * SPDX-License-Identifier: MIT - * * Copyright © 2017-2018 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/gt/selftests/mock_timeline.h b/drivers/gpu/drm/i915/gt/selftests/mock_timeline.h index 689efc66c908..d76275559285 100644 --- a/drivers/gpu/drm/i915/gt/selftests/mock_timeline.h +++ b/drivers/gpu/drm/i915/gt/selftests/mock_timeline.h @@ -1,6 +1,5 @@ +/* SPDX-License-Identifier: MIT */ /* - * SPDX-License-Identifier: MIT - * * Copyright © 2017-2018 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/i915_active.c b/drivers/gpu/drm/i915/i915_active.c index 48e16ad93bbd..42cc64a6d31d 100644 --- a/drivers/gpu/drm/i915/i915_active.c +++ b/drivers/gpu/drm/i915/i915_active.c @@ -1,6 +1,5 @@ +// SPDX-License-Identifier: MIT /* - * SPDX-License-Identifier: MIT - * * Copyright © 2019 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/i915_active.h b/drivers/gpu/drm/i915/i915_active.h index f95058f99057..2fabc6ee001a 100644 --- a/drivers/gpu/drm/i915/i915_active.h +++ b/drivers/gpu/drm/i915/i915_active.h @@ -1,6 +1,5 @@ +/* SPDX-License-Identifier: MIT */ /* - * SPDX-License-Identifier: MIT - * * Copyright © 2019 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/i915_active_types.h b/drivers/gpu/drm/i915/i915_active_types.h index 1854e7d168c1..f069629bd025 100644 --- a/drivers/gpu/drm/i915/i915_active_types.h +++ b/drivers/gpu/drm/i915/i915_active_types.h @@ -1,6 +1,5 @@ +/* SPDX-License-Identifier: MIT */ /* - * SPDX-License-Identifier: MIT - * * Copyright © 2019 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/i915_getparam.c b/drivers/gpu/drm/i915/i915_getparam.c index 5d9101376a3d..85fc011a2f6a 100644 --- a/drivers/gpu/drm/i915/i915_getparam.c +++ b/drivers/gpu/drm/i915/i915_getparam.c @@ -1,5 +1,5 @@ +// SPDX-License-Identifier: MIT /* - * SPDX-License-Identifier: MIT */ #include "gt/intel_engine_user.h" diff --git a/drivers/gpu/drm/i915/i915_globals.c b/drivers/gpu/drm/i915/i915_globals.c index be127cd28931..4f4ad64c1e5e 100644 --- a/drivers/gpu/drm/i915/i915_globals.c +++ b/drivers/gpu/drm/i915/i915_globals.c @@ -1,6 +1,5 @@ +// SPDX-License-Identifier: MIT /* - * SPDX-License-Identifier: MIT - * * Copyright © 2019 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/i915_globals.h b/drivers/gpu/drm/i915/i915_globals.h index b2f5cd9b9b1a..af03d9ac1836 100644 --- a/drivers/gpu/drm/i915/i915_globals.h +++ b/drivers/gpu/drm/i915/i915_globals.h @@ -1,6 +1,5 @@ +/* SPDX-License-Identifier: MIT */ /* - * SPDX-License-Identifier: MIT - * * Copyright © 2019 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/i915_gpu_error.h b/drivers/gpu/drm/i915/i915_gpu_error.h index df9f57766626..41343570625f 100644 --- a/drivers/gpu/drm/i915/i915_gpu_error.h +++ b/drivers/gpu/drm/i915/i915_gpu_error.h @@ -1,6 +1,5 @@ +/* SPDX-License-Identifier: MIT */ /* - * SPDX-License-Identifier: MIT - * * Copyright � 2008-2018 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/i915_pmu.c b/drivers/gpu/drm/i915/i915_pmu.c index 8e251e719390..82c1e2dc53b3 100644 --- a/drivers/gpu/drm/i915/i915_pmu.c +++ b/drivers/gpu/drm/i915/i915_pmu.c @@ -1,6 +1,5 @@ +// SPDX-License-Identifier: MIT /* - * SPDX-License-Identifier: MIT - * * Copyright © 2017-2018 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/i915_pmu.h b/drivers/gpu/drm/i915/i915_pmu.h index 4fc4f2478301..e1d89fb7e995 100644 --- a/drivers/gpu/drm/i915/i915_pmu.h +++ b/drivers/gpu/drm/i915/i915_pmu.h @@ -1,6 +1,5 @@ +/* SPDX-License-Identifier: MIT */ /* - * SPDX-License-Identifier: MIT - * * Copyright © 2017-2018 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/i915_priolist_types.h b/drivers/gpu/drm/i915/i915_priolist_types.h index 21037a2e2038..980e7a5dd5af 100644 --- a/drivers/gpu/drm/i915/i915_priolist_types.h +++ b/drivers/gpu/drm/i915/i915_priolist_types.h @@ -1,6 +1,5 @@ +/* SPDX-License-Identifier: MIT */ /* - * SPDX-License-Identifier: MIT - * * Copyright © 2018 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/i915_query.c b/drivers/gpu/drm/i915/i915_query.c index ad9240a0817a..7c57209bdc21 100644 --- a/drivers/gpu/drm/i915/i915_query.c +++ b/drivers/gpu/drm/i915/i915_query.c @@ -1,6 +1,5 @@ +// SPDX-License-Identifier: MIT /* - * SPDX-License-Identifier: MIT - * * Copyright © 2018 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/i915_query.h b/drivers/gpu/drm/i915/i915_query.h index 31dcef181f63..94e03e773774 100644 --- a/drivers/gpu/drm/i915/i915_query.h +++ b/drivers/gpu/drm/i915/i915_query.h @@ -1,6 +1,5 @@ +/* SPDX-License-Identifier: MIT */ /* - * SPDX-License-Identifier: MIT - * * Copyright © 2018 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/i915_scatterlist.c b/drivers/gpu/drm/i915/i915_scatterlist.c index cc6b3846a8c7..dff58cc52596 100644 --- a/drivers/gpu/drm/i915/i915_scatterlist.c +++ b/drivers/gpu/drm/i915/i915_scatterlist.c @@ -1,6 +1,5 @@ +// SPDX-License-Identifier: MIT /* - * SPDX-License-Identifier: MIT - * * Copyright © 2016 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/i915_scatterlist.h b/drivers/gpu/drm/i915/i915_scatterlist.h index 6617963df9ed..33956d140f5c 100644 --- a/drivers/gpu/drm/i915/i915_scatterlist.h +++ b/drivers/gpu/drm/i915/i915_scatterlist.h @@ -1,6 +1,5 @@ +/* SPDX-License-Identifier: MIT */ /* - * SPDX-License-Identifier: MIT - * * Copyright © 2016 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/i915_scheduler.c b/drivers/gpu/drm/i915/i915_scheduler.c index 7b84ebca2901..cd01ba047f30 100644 --- a/drivers/gpu/drm/i915/i915_scheduler.c +++ b/drivers/gpu/drm/i915/i915_scheduler.c @@ -1,6 +1,5 @@ +// SPDX-License-Identifier: MIT /* - * SPDX-License-Identifier: MIT - * * Copyright © 2018 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/i915_scheduler.h b/drivers/gpu/drm/i915/i915_scheduler.h index 7eefccff39bf..d51048152a14 100644 --- a/drivers/gpu/drm/i915/i915_scheduler.h +++ b/drivers/gpu/drm/i915/i915_scheduler.h @@ -1,6 +1,5 @@ +/* SPDX-License-Identifier: MIT */ /* - * SPDX-License-Identifier: MIT - * * Copyright © 2018 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/i915_scheduler_types.h b/drivers/gpu/drm/i915/i915_scheduler_types.h index aad81acba9dc..e0606bb9e95b 100644 --- a/drivers/gpu/drm/i915/i915_scheduler_types.h +++ b/drivers/gpu/drm/i915/i915_scheduler_types.h @@ -1,6 +1,5 @@ +/* SPDX-License-Identifier: MIT */ /* - * SPDX-License-Identifier: MIT - * * Copyright © 2018 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/i915_sw_fence.c b/drivers/gpu/drm/i915/i915_sw_fence.c index 6a88db291252..b001fd6c2832 100644 --- a/drivers/gpu/drm/i915/i915_sw_fence.c +++ b/drivers/gpu/drm/i915/i915_sw_fence.c @@ -1,6 +1,5 @@ +// SPDX-License-Identifier: MIT /* - * SPDX-License-Identifier: MIT - * * (C) Copyright 2016 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/i915_sw_fence.h b/drivers/gpu/drm/i915/i915_sw_fence.h index ab7d58bd0b9d..7a6dbf033404 100644 --- a/drivers/gpu/drm/i915/i915_sw_fence.h +++ b/drivers/gpu/drm/i915/i915_sw_fence.h @@ -1,6 +1,5 @@ +/* SPDX-License-Identifier: MIT */ /* - * SPDX-License-Identifier: MIT - * * i915_sw_fence.h - library routines for N:M synchronisation points * * Copyright (C) 2016 Intel Corporation diff --git a/drivers/gpu/drm/i915/i915_user_extensions.c b/drivers/gpu/drm/i915/i915_user_extensions.c index c822d0aafd2d..d1450d333c66 100644 --- a/drivers/gpu/drm/i915/i915_user_extensions.c +++ b/drivers/gpu/drm/i915/i915_user_extensions.c @@ -1,6 +1,5 @@ +// SPDX-License-Identifier: MIT /* - * SPDX-License-Identifier: MIT - * * Copyright © 2018 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/i915_user_extensions.h b/drivers/gpu/drm/i915/i915_user_extensions.h index a14bf6bba9a1..0760c95e0e5f 100644 --- a/drivers/gpu/drm/i915/i915_user_extensions.h +++ b/drivers/gpu/drm/i915/i915_user_extensions.h @@ -1,6 +1,5 @@ +/* SPDX-License-Identifier: MIT */ /* - * SPDX-License-Identifier: MIT - * * Copyright © 2018 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/intel_wakeref.c b/drivers/gpu/drm/i915/intel_wakeref.c index 868cc78048d0..96761d281354 100644 --- a/drivers/gpu/drm/i915/intel_wakeref.c +++ b/drivers/gpu/drm/i915/intel_wakeref.c @@ -1,6 +1,5 @@ +// SPDX-License-Identifier: MIT /* - * SPDX-License-Identifier: MIT - * * Copyright © 2019 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/intel_wakeref.h b/drivers/gpu/drm/i915/intel_wakeref.h index 5f0c972a80fb..46bf577b50a6 100644 --- a/drivers/gpu/drm/i915/intel_wakeref.h +++ b/drivers/gpu/drm/i915/intel_wakeref.h @@ -1,6 +1,5 @@ +/* SPDX-License-Identifier: MIT */ /* - * SPDX-License-Identifier: MIT - * * Copyright © 2019 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/intel_wopcm.h b/drivers/gpu/drm/i915/intel_wopcm.h index 17d6aa86008a..d2038b6de5e7 100644 --- a/drivers/gpu/drm/i915/intel_wopcm.h +++ b/drivers/gpu/drm/i915/intel_wopcm.h @@ -1,6 +1,5 @@ +/* SPDX-License-Identifier: MIT */ /* - * SPDX-License-Identifier: MIT - * * Copyright © 2017-2018 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/selftests/i915_active.c b/drivers/gpu/drm/i915/selftests/i915_active.c index 77d844ac8b71..add9460ae29c 100644 --- a/drivers/gpu/drm/i915/selftests/i915_active.c +++ b/drivers/gpu/drm/i915/selftests/i915_active.c @@ -1,6 +1,5 @@ +// SPDX-License-Identifier: MIT /* - * SPDX-License-Identifier: MIT - * * Copyright © 2018 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/selftests/i915_gem.c b/drivers/gpu/drm/i915/selftests/i915_gem.c index bb6dd54a6ff3..5bff5c87a8b3 100644 --- a/drivers/gpu/drm/i915/selftests/i915_gem.c +++ b/drivers/gpu/drm/i915/selftests/i915_gem.c @@ -1,6 +1,5 @@ +// SPDX-License-Identifier: MIT /* - * SPDX-License-Identifier: MIT - * * Copyright © 2018 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/selftests/igt_flush_test.c b/drivers/gpu/drm/i915/selftests/igt_flush_test.c index d3b5eb402d33..1ce782588a55 100644 --- a/drivers/gpu/drm/i915/selftests/igt_flush_test.c +++ b/drivers/gpu/drm/i915/selftests/igt_flush_test.c @@ -1,6 +1,5 @@ +// SPDX-License-Identifier: MIT /* - * SPDX-License-Identifier: MIT - * * Copyright © 2018 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/selftests/igt_flush_test.h b/drivers/gpu/drm/i915/selftests/igt_flush_test.h index 63e009927c43..5772b54d7884 100644 --- a/drivers/gpu/drm/i915/selftests/igt_flush_test.h +++ b/drivers/gpu/drm/i915/selftests/igt_flush_test.h @@ -1,6 +1,5 @@ +/* SPDX-License-Identifier: MIT */ /* - * SPDX-License-Identifier: MIT - * * Copyright © 2018 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/selftests/igt_live_test.c b/drivers/gpu/drm/i915/selftests/igt_live_test.c index 3e902761cd16..bcab68e18cae 100644 --- a/drivers/gpu/drm/i915/selftests/igt_live_test.c +++ b/drivers/gpu/drm/i915/selftests/igt_live_test.c @@ -1,6 +1,5 @@ +// SPDX-License-Identifier: MIT /* - * SPDX-License-Identifier: MIT - * * Copyright © 2018 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/selftests/igt_live_test.h b/drivers/gpu/drm/i915/selftests/igt_live_test.h index c0e9f99d50de..460ad2889be8 100644 --- a/drivers/gpu/drm/i915/selftests/igt_live_test.h +++ b/drivers/gpu/drm/i915/selftests/igt_live_test.h @@ -1,6 +1,5 @@ +/* SPDX-License-Identifier: MIT */ /* - * SPDX-License-Identifier: MIT - * * Copyright © 2019 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/selftests/igt_reset.c b/drivers/gpu/drm/i915/selftests/igt_reset.c index 7ec8f8b049c6..27baa4d65d3d 100644 --- a/drivers/gpu/drm/i915/selftests/igt_reset.c +++ b/drivers/gpu/drm/i915/selftests/igt_reset.c @@ -1,6 +1,5 @@ +// SPDX-License-Identifier: MIT /* - * SPDX-License-Identifier: MIT - * * Copyright © 2018 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/selftests/igt_reset.h b/drivers/gpu/drm/i915/selftests/igt_reset.h index 851873b67ab3..c3320dc570b4 100644 --- a/drivers/gpu/drm/i915/selftests/igt_reset.h +++ b/drivers/gpu/drm/i915/selftests/igt_reset.h @@ -1,6 +1,5 @@ +/* SPDX-License-Identifier: MIT */ /* - * SPDX-License-Identifier: MIT - * * Copyright © 2018 Intel Corporation */ diff --git a/drivers/gpu/drm/i915/selftests/igt_spinner.c b/drivers/gpu/drm/i915/selftests/igt_spinner.c index 11f04ad48e68..0e54b6494030 100644 --- a/drivers/gpu/drm/i915/selftests/igt_spinner.c +++ b/drivers/gpu/drm/i915/selftests/igt_spinner.c @@ -1,6 +1,5 @@ +// SPDX-License-Identifier: MIT /* - * SPDX-License-Identifier: MIT - * * Copyright © 2018 Intel Corporation */ #include "gt/intel_gt.h" diff --git a/drivers/gpu/drm/i915/selftests/igt_spinner.h b/drivers/gpu/drm/i915/selftests/igt_spinner.h index ec62c9ef320b..0813ab422364 100644 --- a/drivers/gpu/drm/i915/selftests/igt_spinner.h +++ b/drivers/gpu/drm/i915/selftests/igt_spinner.h @@ -1,6 +1,5 @@ +/* SPDX-License-Identifier: MIT */ /* - * SPDX-License-Identifier: MIT - * * Copyright © 2018 Intel Corporation */ diff --git a/drivers/gpu/drm/msm/disp/dpu1/dpu_mdss.c b/drivers/gpu/drm/msm/disp/dpu1/dpu_mdss.c index 29705e773a4b..caaf60e17dbf 100644 --- a/drivers/gpu/drm/msm/disp/dpu1/dpu_mdss.c +++ b/drivers/gpu/drm/msm/disp/dpu1/dpu_mdss.c @@ -1,5 +1,5 @@ +// SPDX-License-Identifier: GPL-2.0 /* - * SPDX-License-Identifier: GPL-2.0 * Copyright (c) 2018, The Linux Foundation */ diff --git a/drivers/gpu/drm/msm/dsi/phy/dsi_phy_10nm.c b/drivers/gpu/drm/msm/dsi/phy/dsi_phy_10nm.c index 47403d4f2d28..7b7dd156fb7c 100644 --- a/drivers/gpu/drm/msm/dsi/phy/dsi_phy_10nm.c +++ b/drivers/gpu/drm/msm/dsi/phy/dsi_phy_10nm.c @@ -1,5 +1,5 @@ +// SPDX-License-Identifier: GPL-2.0 /* - * SPDX-License-Identifier: GPL-2.0 * Copyright (c) 2018, The Linux Foundation */ diff --git a/drivers/gpu/drm/msm/dsi/pll/dsi_pll_10nm.c b/drivers/gpu/drm/msm/dsi/pll/dsi_pll_10nm.c index 8f6100db90ed..05554cbe7945 100644 --- a/drivers/gpu/drm/msm/dsi/pll/dsi_pll_10nm.c +++ b/drivers/gpu/drm/msm/dsi/pll/dsi_pll_10nm.c @@ -1,5 +1,5 @@ +// SPDX-License-Identifier: GPL-2.0 /* - * SPDX-License-Identifier: GPL-2.0 * Copyright (c) 2018, The Linux Foundation */ diff --git a/drivers/hid/hid-redragon.c b/drivers/hid/hid-redragon.c index 73c9d4c4fa34..b32ac27940b2 100644 --- a/drivers/hid/hid-redragon.c +++ b/drivers/hid/hid-redragon.c @@ -1,8 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0+ /* * HID driver for Redragon keyboards * * Copyright (c) 2017 Robert Munteanu - * SPDX-License-Identifier: GPL-2.0+ */ /* diff --git a/drivers/i2c/busses/i2c-sprd.c b/drivers/i2c/busses/i2c-sprd.c index b432e7580458..6f5da05854c7 100644 --- a/drivers/i2c/busses/i2c-sprd.c +++ b/drivers/i2c/busses/i2c-sprd.c @@ -1,7 +1,6 @@ +// SPDX-License-Identifier: (GPL-2.0+ OR MIT) /* * Copyright (C) 2017 Spreadtrum Communications Inc. - * - * SPDX-License-Identifier: (GPL-2.0+ OR MIT) */ #include <linux/clk.h> diff --git a/drivers/media/common/siano/smsir.h b/drivers/media/common/siano/smsir.h index b2c54c256e86..97e6053a16d0 100644 --- a/drivers/media/common/siano/smsir.h +++ b/drivers/media/common/siano/smsir.h @@ -1,6 +1,5 @@ +/* SPDX-License-Identifier: GPL-2.0+ */ /* - * SPDX-License-Identifier: GPL-2.0+ - * * Siano Mobile Silicon, Inc. * MDTV receiver kernel modules. * Copyright (C) 2006-2009, Uri Shkolnik diff --git a/drivers/media/i2c/saa711x_regs.h b/drivers/media/i2c/saa711x_regs.h index 44fabe08234d..4b5f6985710b 100644 --- a/drivers/media/i2c/saa711x_regs.h +++ b/drivers/media/i2c/saa711x_regs.h @@ -1,5 +1,5 @@ +/* SPDX-License-Identifier: GPL-2.0+ */ /* - * SPDX-License-Identifier: GPL-2.0+ * saa711x - Philips SAA711x video decoder register specifications * * Copyright (c) 2006 Mauro Carvalho Chehab <mchehab@kernel.org> diff --git a/drivers/media/i2c/tvp5150_reg.h b/drivers/media/i2c/tvp5150_reg.h index 9088186c24d1..90ead16867f7 100644 --- a/drivers/media/i2c/tvp5150_reg.h +++ b/drivers/media/i2c/tvp5150_reg.h @@ -1,6 +1,5 @@ +/* SPDX-License-Identifier: GPL-2.0 */ /* - * SPDX-License-Identifier: GPL-2.0 - * * tvp5150 - Texas Instruments TVP5150A/AM1 video decoder registers * * Copyright (c) 2005,2006 Mauro Carvalho Chehab <mchehab@kernel.org> diff --git a/drivers/media/pci/bt8xx/bttv-audio-hook.h b/drivers/media/pci/bt8xx/bttv-audio-hook.h index d6a1a5a60a56..a918f102849e 100644 --- a/drivers/media/pci/bt8xx/bttv-audio-hook.h +++ b/drivers/media/pci/bt8xx/bttv-audio-hook.h @@ -1,6 +1,5 @@ +/* SPDX-License-Identifier: GPL-2.0 */ /* - * SPDX-License-Identifier: GPL-2.0 - * * Handlers for board audio hooks, split from bttv-cards * * Copyright (c) 2006 Mauro Carvalho Chehab <mchehab@kernel.org> diff --git a/drivers/media/platform/meson/ao-cec.c b/drivers/media/platform/meson/ao-cec.c index 64ed549bf012..3a57490685b6 100644 --- a/drivers/media/platform/meson/ao-cec.c +++ b/drivers/media/platform/meson/ao-cec.c @@ -1,11 +1,10 @@ +// SPDX-License-Identifier: GPL-2.0+ /* * Driver for Amlogic Meson AO CEC Controller * * Copyright (C) 2015 Amlogic, Inc. All rights reserved * Copyright (C) 2017 BayLibre, SAS * Author: Neil Armstrong <narmstrong@baylibre.com> - * - * SPDX-License-Identifier: GPL-2.0+ */ #include <linux/bitfield.h> diff --git a/drivers/media/rc/rc-core-priv.h b/drivers/media/rc/rc-core-priv.h index 9f21b3e8b377..5f36244cc34f 100644 --- a/drivers/media/rc/rc-core-priv.h +++ b/drivers/media/rc/rc-core-priv.h @@ -1,5 +1,5 @@ +/* SPDX-License-Identifier: GPL-2.0 */ /* - * SPDX-License-Identifier: GPL-2.0 * Remote Controller core raw events header * * Copyright (C) 2010 by Mauro Carvalho Chehab diff --git a/drivers/media/tuners/tuner-xc2028-types.h b/drivers/media/tuners/tuner-xc2028-types.h index 50d017a4822a..fcca39d3e006 100644 --- a/drivers/media/tuners/tuner-xc2028-types.h +++ b/drivers/media/tuners/tuner-xc2028-types.h @@ -1,5 +1,5 @@ +/* SPDX-License-Identifier: GPL-2.0 */ /* - * SPDX-License-Identifier: GPL-2.0 * tuner-xc2028_types * * This file includes internal tipes to be used inside tuner-xc2028. diff --git a/drivers/media/tuners/tuner-xc2028.h b/drivers/media/tuners/tuner-xc2028.h index 7b58bc06e35c..2dd45d0765d7 100644 --- a/drivers/media/tuners/tuner-xc2028.h +++ b/drivers/media/tuners/tuner-xc2028.h @@ -1,5 +1,5 @@ +/* SPDX-License-Identifier: GPL-2.0 */ /* - * SPDX-License-Identifier: GPL-2.0 * tuner-xc2028 * * Copyright (c) 2007-2008 Mauro Carvalho Chehab <mchehab@kernel.org> diff --git a/drivers/media/usb/tm6000/tm6000-regs.h b/drivers/media/usb/tm6000/tm6000-regs.h index d10424673db9..6a181f2e7ef2 100644 --- a/drivers/media/usb/tm6000/tm6000-regs.h +++ b/drivers/media/usb/tm6000/tm6000-regs.h @@ -1,5 +1,5 @@ +/* SPDX-License-Identifier: GPL-2.0 */ /* - * SPDX-License-Identifier: GPL-2.0 * tm6000-regs.h - driver for TM5600/TM6000/TM6010 USB video capture devices * * Copyright (c) 2006-2007 Mauro Carvalho Chehab <mchehab@kernel.org> diff --git a/drivers/media/usb/tm6000/tm6000-usb-isoc.h b/drivers/media/usb/tm6000/tm6000-usb-isoc.h index b275dbce3a1b..e3c6933f854d 100644 --- a/drivers/media/usb/tm6000/tm6000-usb-isoc.h +++ b/drivers/media/usb/tm6000/tm6000-usb-isoc.h @@ -1,5 +1,5 @@ +/* SPDX-License-Identifier: GPL-2.0 */ /* - * SPDX-License-Identifier: GPL-2.0 * tm6000-buf.c - driver for TM5600/TM6000/TM6010 USB video capture devices * * Copyright (c) 2006-2007 Mauro Carvalho Chehab <mchehab@kernel.org> diff --git a/drivers/media/usb/tm6000/tm6000.h b/drivers/media/usb/tm6000/tm6000.h index bf396544da9a..c08c95312739 100644 --- a/drivers/media/usb/tm6000/tm6000.h +++ b/drivers/media/usb/tm6000/tm6000.h @@ -1,5 +1,5 @@ +/* SPDX-License-Identifier: GPL-2.0 */ /* - * SPDX-License-Identifier: GPL-2.0 * tm6000.h - driver for TM5600/TM6000/TM6010 USB video capture devices * * Copyright (c) 2006-2007 Mauro Carvalho Chehab <mchehab@kernel.org> diff --git a/drivers/pinctrl/meson/pinctrl-meson-axg-pmx.c b/drivers/pinctrl/meson/pinctrl-meson-axg-pmx.c index e8931d9cf863..6653eafa37a9 100644 --- a/drivers/pinctrl/meson/pinctrl-meson-axg-pmx.c +++ b/drivers/pinctrl/meson/pinctrl-meson-axg-pmx.c @@ -1,3 +1,4 @@ +// SPDX-License-Identifier: (GPL-2.0+ or MIT) /* * Second generation of pinmux driver for Amlogic Meson-AXG SoC. * @@ -6,8 +7,6 @@ * * Copyright (c) 2017 Amlogic, Inc. All rights reserved. * Author: Xingyu Chen <xingyu.chen@amlogic.com> - * - * SPDX-License-Identifier: (GPL-2.0+ or MIT) */ /* diff --git a/drivers/pinctrl/meson/pinctrl-meson-axg-pmx.h b/drivers/pinctrl/meson/pinctrl-meson-axg-pmx.h index 8ff88bf2e849..a3d860f31b05 100644 --- a/drivers/pinctrl/meson/pinctrl-meson-axg-pmx.h +++ b/drivers/pinctrl/meson/pinctrl-meson-axg-pmx.h @@ -1,11 +1,10 @@ +/* SPDX-License-Identifier: (GPL-2.0+ or MIT) */ /* * Copyright (c) 2017 Baylibre SAS. * Author: Jerome Brunet <jbrunet@baylibre.com> * * Copyright (c) 2017 Amlogic, Inc. All rights reserved. * Author: Xingyu Chen <xingyu.chen@amlogic.com> - * - * SPDX-License-Identifier: (GPL-2.0+ or MIT) */ struct meson_pmx_bank { diff --git a/drivers/pinctrl/meson/pinctrl-meson-axg.c b/drivers/pinctrl/meson/pinctrl-meson-axg.c index ad502eda4afa..7510bea93fdd 100644 --- a/drivers/pinctrl/meson/pinctrl-meson-axg.c +++ b/drivers/pinctrl/meson/pinctrl-meson-axg.c @@ -1,10 +1,9 @@ +// SPDX-License-Identifier: (GPL-2.0+ or MIT) /* * Pin controller and GPIO driver for Amlogic Meson AXG SoC. * * Copyright (c) 2017 Amlogic, Inc. All rights reserved. * Author: Xingyu Chen <xingyu.chen@amlogic.com> - * - * SPDX-License-Identifier: (GPL-2.0+ or MIT) */ #include <dt-bindings/gpio/meson-axg-gpio.h> diff --git a/drivers/rtc/rtc-rtd119x.c b/drivers/rtc/rtc-rtd119x.c index b233559d950b..904285bd9ae2 100644 --- a/drivers/rtc/rtc-rtd119x.c +++ b/drivers/rtc/rtc-rtd119x.c @@ -1,9 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0+ /* * Realtek RTD129x RTC * * Copyright (c) 2017 Andreas Färber - * - * SPDX-License-Identifier: GPL-2.0+ */ #include <linux/clk.h> diff --git a/drivers/rtc/rtc-sc27xx.c b/drivers/rtc/rtc-sc27xx.c index 3474f7a20493..1b3a8c5da2f0 100644 --- a/drivers/rtc/rtc-sc27xx.c +++ b/drivers/rtc/rtc-sc27xx.c @@ -1,7 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0 /* * Copyright (C) 2017 Spreadtrum Communications Inc. - * - * SPDX-License-Identifier: GPL-2.0 */ #include <linux/bitops.h> diff --git a/drivers/soc/amlogic/meson-gx-pwrc-vpu.c b/drivers/soc/amlogic/meson-gx-pwrc-vpu.c index 511b6856225d..a2141fc8dad1 100644 --- a/drivers/soc/amlogic/meson-gx-pwrc-vpu.c +++ b/drivers/soc/amlogic/meson-gx-pwrc-vpu.c @@ -1,8 +1,7 @@ +// SPDX-License-Identifier: GPL-2.0+ /* * Copyright (c) 2017 BayLibre, SAS * Author: Neil Armstrong <narmstrong@baylibre.com> - * - * SPDX-License-Identifier: GPL-2.0+ */ #include <linux/of_address.h> diff --git a/drivers/soc/amlogic/meson-gx-socinfo.c b/drivers/soc/amlogic/meson-gx-socinfo.c index 6d0d04f163cb..5c35edbb6d44 100644 --- a/drivers/soc/amlogic/meson-gx-socinfo.c +++ b/drivers/soc/amlogic/meson-gx-socinfo.c @@ -1,8 +1,7 @@ +// SPDX-License-Identifier: GPL-2.0+ /* * Copyright (c) 2017 BayLibre, SAS * Author: Neil Armstrong <narmstrong@baylibre.com> - * - * SPDX-License-Identifier: GPL-2.0+ */ #include <linux/io.h> diff --git a/drivers/soc/amlogic/meson-mx-socinfo.c b/drivers/soc/amlogic/meson-mx-socinfo.c index 78f0f1aeca57..4a44550951f7 100644 --- a/drivers/soc/amlogic/meson-mx-socinfo.c +++ b/drivers/soc/amlogic/meson-mx-socinfo.c @@ -1,7 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0+ /* * Copyright (c) 2017 Martin Blumenstingl <martin.blumenstingl@googlemail.com> - * - * SPDX-License-Identifier: GPL-2.0+ */ #include <linux/io.h> diff --git a/drivers/spi/spi-meson-spicc.c b/drivers/spi/spi-meson-spicc.c index 7fe4488ace57..889d71969b3e 100644 --- a/drivers/spi/spi-meson-spicc.c +++ b/drivers/spi/spi-meson-spicc.c @@ -1,10 +1,9 @@ +// SPDX-License-Identifier: GPL-2.0+ /* * Driver for Amlogic Meson SPI communication controller (SPICC) * * Copyright (C) BayLibre, SAS * Author: Neil Armstrong <narmstrong@baylibre.com> - * - * SPDX-License-Identifier: GPL-2.0+ */ #include <linux/bitfield.h> diff --git a/drivers/spi/spi-sprd-adi.c b/drivers/spi/spi-sprd-adi.c index 9a051286f120..71021de9baa5 100644 --- a/drivers/spi/spi-sprd-adi.c +++ b/drivers/spi/spi-sprd-adi.c @@ -1,7 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0 /* * Copyright (C) 2017 Spreadtrum Communications Inc. - * - * SPDX-License-Identifier: GPL-2.0 */ #include <linux/delay.h> diff --git a/drivers/watchdog/rtd119x_wdt.c b/drivers/watchdog/rtd119x_wdt.c index 834b94ff3f90..ddaef279d052 100644 --- a/drivers/watchdog/rtd119x_wdt.c +++ b/drivers/watchdog/rtd119x_wdt.c @@ -1,9 +1,8 @@ +// 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> diff --git a/include/acpi/nfit.h b/include/acpi/nfit.h index 86ed07c1200d..ed7c3dac76bd 100644 --- a/include/acpi/nfit.h +++ b/include/acpi/nfit.h @@ -1,5 +1,5 @@ +/* SPDX-License-Identifier: GPL-2.0 */ /* - * SPDX-License-Identifier: GPL-2.0 * Copyright (C) 2018 Intel Corporation */ diff --git a/include/dt-bindings/clock/sun8i-de2.h b/include/dt-bindings/clock/sun8i-de2.h index 7768f73b051e..67fbdefee2f4 100644 --- a/include/dt-bindings/clock/sun8i-de2.h +++ b/include/dt-bindings/clock/sun8i-de2.h @@ -1,7 +1,6 @@ +/* SPDX-License-Identifier: (GPL-2.0+ OR MIT) */ /* * Copyright (C) 2016 Icenowy Zheng <icenowy@aosc.io> - * - * SPDX-License-Identifier: (GPL-2.0+ OR MIT) */ #ifndef _DT_BINDINGS_CLOCK_SUN8I_DE2_H_ diff --git a/include/dt-bindings/gpio/meson-axg-gpio.h b/include/dt-bindings/gpio/meson-axg-gpio.h index 25bb1fffa97a..e5289297d66a 100644 --- a/include/dt-bindings/gpio/meson-axg-gpio.h +++ b/include/dt-bindings/gpio/meson-axg-gpio.h @@ -1,8 +1,7 @@ +/* SPDX-License-Identifier: GPL-2.0+ */ /* * Copyright (c) 2017 Amlogic, Inc. All rights reserved. * Author: Xingyu Chen <xingyu.chen@amlogic.com> - * - * SPDX-License-Identifier: GPL-2.0+ */ #ifndef _DT_BINDINGS_MESON_AXG_GPIO_H diff --git a/include/dt-bindings/power/owl-s500-powergate.h b/include/dt-bindings/power/owl-s500-powergate.h index 0a1c451865ea..aede7be77330 100644 --- a/include/dt-bindings/power/owl-s500-powergate.h +++ b/include/dt-bindings/power/owl-s500-powergate.h @@ -1,7 +1,6 @@ +/* SPDX-License-Identifier: (GPL-2.0+ OR MIT) */ /* * Copyright (c) 2017 Andreas Färber - * - * SPDX-License-Identifier: (GPL-2.0+ OR MIT) */ #ifndef DT_BINDINGS_POWER_OWL_S500_POWERGATE_H #define DT_BINDINGS_POWER_OWL_S500_POWERGATE_H diff --git a/include/dt-bindings/reset/amlogic,meson8b-clkc-reset.h b/include/dt-bindings/reset/amlogic,meson8b-clkc-reset.h index 1f1b56e57346..9f6574e05e8b 100644 --- a/include/dt-bindings/reset/amlogic,meson8b-clkc-reset.h +++ b/include/dt-bindings/reset/amlogic,meson8b-clkc-reset.h @@ -1,7 +1,6 @@ +/* SPDX-License-Identifier: (GPL-2.0+ OR MIT) */ /* * Copyright (c) 2017 Martin Blumenstingl <martin.blumenstingl@googlemail.com>. - * - * SPDX-License-Identifier: (GPL-2.0+ OR MIT) */ #ifndef _DT_BINDINGS_AMLOGIC_MESON8B_CLKC_RESET_H diff --git a/include/dt-bindings/reset/sun8i-de2.h b/include/dt-bindings/reset/sun8i-de2.h index 1c36a6ac86d6..5b4e20717285 100644 --- a/include/dt-bindings/reset/sun8i-de2.h +++ b/include/dt-bindings/reset/sun8i-de2.h @@ -1,7 +1,6 @@ +/* SPDX-License-Identifier: (GPL-2.0+ OR MIT) */ /* * Copyright (C) 2016 Icenowy Zheng <icenowy@aosc.io> - * - * SPDX-License-Identifier: (GPL-2.0+ OR MIT) */ #ifndef _DT_BINDINGS_RESET_SUN8I_DE2_H_ diff --git a/include/linux/ascii85.h b/include/linux/ascii85.h index 4cc40201273e..2e956dd2f0e0 100644 --- a/include/linux/ascii85.h +++ b/include/linux/ascii85.h @@ -1,6 +1,5 @@ +/* SPDX-License-Identifier: GPL-2.0 */ /* - * SPDX-License-Identifier: GPL-2.0 - * * Copyright (c) 2008 Intel Corporation * Copyright (c) 2018 The Linux Foundation. All rights reserved. */ diff --git a/include/linux/soc/actions/owl-sps.h b/include/linux/soc/actions/owl-sps.h index 33d0dbeceb55..ad50e99618e5 100644 --- a/include/linux/soc/actions/owl-sps.h +++ b/include/linux/soc/actions/owl-sps.h @@ -1,7 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0+ */ /* * Copyright (c) 2017 Andreas Färber - * - * SPDX-License-Identifier: GPL-2.0+ */ #ifndef SOC_ACTIONS_OWL_SPS_H #define SOC_ACTIONS_OWL_SPS_H diff --git a/include/media/dvb_vb2.h b/include/media/dvb_vb2.h index 8cb88452cd6c..b2523dd784be 100644 --- a/include/media/dvb_vb2.h +++ b/include/media/dvb_vb2.h @@ -1,6 +1,5 @@ +/* SPDX-License-Identifier: GPL-2.0 */ /* - * SPDX-License-Identifier: GPL-2.0 - * * dvb-vb2.h - DVB driver helper framework for streaming I/O * * Copyright (C) 2015 Samsung Electronics diff --git a/tools/perf/util/cs-etm-decoder/cs-etm-decoder.h b/tools/perf/util/cs-etm-decoder/cs-etm-decoder.h index 11f3391d06f2..b1f29a6e5a98 100644 --- a/tools/perf/util/cs-etm-decoder/cs-etm-decoder.h +++ b/tools/perf/util/cs-etm-decoder/cs-etm-decoder.h @@ -1,6 +1,5 @@ +/* SPDX-License-Identifier: GPL-2.0 */ /* - * SPDX-License-Identifier: GPL-2.0 - * * Copyright(C) 2015-2018 Linaro Limited. * * Author: Tor Jeremiassen <tor@ti.com> diff --git a/tools/perf/util/rlimit.h b/tools/perf/util/rlimit.h index 9f59d8e710a3..01c97f2de12a 100644 --- a/tools/perf/util/rlimit.h +++ b/tools/perf/util/rlimit.h @@ -1,6 +1,6 @@ +/* SPDX-License-Identifier: LGPL-2.1 */ #ifndef __PERF_RLIMIT_H_ #define __PERF_RLIMIT_H_ -/* SPDX-License-Identifier: LGPL-2.1 */ void rlimit__bump_memlock(void); #endif // __PERF_RLIMIT_H_
Em Thu, 5 Sep 2019 06:57:01 -0600 Jonathan Corbet <corbet@lwn.net> escreveu: > On Thu, 5 Sep 2019 06:23:13 -0300 > Mauro Carvalho Chehab <mchehab+samsung@kernel.org> wrote: > > > Python's PEP-263 [1] dictates that an script that needs to default to > > UTF-8 encoding has to follow this rule: > > > > 'Python will default to ASCII as standard encoding if no other > > encoding hints are given. > > > > To define a source code encoding, a magic comment must be placed > > into the source files either as first or second line in the file' > > So this is only Python 2, right? Python 3 is UTF8 by default. Given that > Python 2 is EOL in January, is this something we should be concerned > about? Or should we instead be making sure that all the Python we have > in-tree works properly with Python 3 and be done with it? I don't think we can count that python 3 uses utf-8 per default. I strongly suspect that, if one uses a Python3 version < 3.7, it will still default to ASCII. On a quick look, the new UTF-8 mode was added on PEP-540: https://www.python.org/dev/peps/pep-0540/ Such change happened at Python 3.7. Yet, according with PEP, it defaults to off, unless when using POSIX locale. Thanks, Mauro
On Thu, 5 Sep 2019 16:28:10 -0300 Mauro Carvalho Chehab <mchehab+samsung@kernel.org> wrote: > I don't think we can count that python 3 uses utf-8 per default. > > I strongly suspect that, if one uses a Python3 version < 3.7, it will > still default to ASCII. > > On a quick look, the new UTF-8 mode was added on PEP-540: > > https://www.python.org/dev/peps/pep-0540/ > > Such change happened at Python 3.7. That PEP is to override the locale and use utf8 unconditionally. It says, with regard to the pre-PEP state: UTF-8 is also the default encoding of Python scripts, XML and JSON file formats. Unicode was the reason for much of the Python 3 pain; it seems unlikely that many installations are defaulting to ASCII anyway...? jon
Em Thu, 5 Sep 2019 13:40:08 -0600 Jonathan Corbet <corbet@lwn.net> escreveu: > On Thu, 5 Sep 2019 16:28:10 -0300 > Mauro Carvalho Chehab <mchehab+samsung@kernel.org> wrote: > > > I don't think we can count that python 3 uses utf-8 per default. > > > > I strongly suspect that, if one uses a Python3 version < 3.7, it will > > still default to ASCII. > > > > On a quick look, the new UTF-8 mode was added on PEP-540: > > > > https://www.python.org/dev/peps/pep-0540/ > > > > Such change happened at Python 3.7. > > That PEP is to override the locale and use utf8 unconditionally. It > says, with regard to the pre-PEP state: > > UTF-8 is also the default encoding of Python scripts, XML and JSON > file formats. > > Unicode was the reason for much of the Python 3 pain; it seems unlikely > that many installations are defaulting to ASCII anyway...? Yeah, but I remember that UTF-8 handling changed a few times during python 3 releases. I didn't really tracked what happened, as I don't usually program in Python. So, I'm actually relying on what I can find about that. Looking at Python 3.0 release[1], it says: "In many cases, but not all, the system default is UTF-8; you should never count on this default." [1] https://docs.python.org/3.0/whatsnew/3.0.html So, at least on early Python 3 releases, the default may not be UTF-8. I don't know about you, but, from time to time, people complain about UTF-8 chars when I'm handling patches (last time was on a patch series for Kernel 5.3 by a core dev in Australia, with was unable to apply a patch from me with had some UTF-8 chars). So, I'm pretty sure that some devs don't set the locale to UTF8 even those days. Thanks, Mauro
Em Thu, 05 Sep 2019 10:45:36 -0700 Joe Perches <joe@perches.com> escreveu: > On Thu, 2019-09-05 at 09:07 -0300, Mauro Carvalho Chehab wrote: > > There are currently 227 files that don't complain with the "up to line 3" > > rule, including COPYING (with should probably be excluded from the check). > > > > Patches are at: > > > > https://git.linuxtv.org/mchehab/experimental.git/log/?h=spdx_pedantic > > > > Btw, most violations are due to: > > > > /* > > * SPDX... > > Hey Mauro. > > Here's a little script to move all of the improperly located > SPDX-License-Identifier lines in [.ch] files. > > Using this command line: > > $ git grep -n 'SPDX-License-Identifier: ' -- '*.[ch]' | \ > grep -v ':1:' | perl move_spdx.pl > > and > > $ cat move_spdx.pl > while (<>) { > /^([^:]+):([^:]+):(.*)/; > my ($file, $line, $spdx) = ($1, $2, $3); > $spdx =~ s/^\s*\/?\*\s*//; > $spdx =~ s/\s*\*\/\s*$//; > if ($file =~ /\.h$/) { > $spdx = "/* $spdx */"; > } else { > $spdx = "// $spdx"; > } > open(FH, '<', $file) or die $!; > my @lines = <FH>; > close FH; > open(FH, '>', $file) or die $!; > print FH "$spdx\n"; > my $count = 0; > foreach (@lines) { > $count++; > next if ($count == $line); > next if ($count == $line - 1 && $_ =~ /^\s*\*\s*$/); > next if ($count == $line + 1 && $_ =~ /^\s*\*\s*$/); > print FH "$_"; > } > close FH; > } > > which gives this diff for today's -next Nice script! I did some changes on it, plus one change at the pedantic mode of scripts/spdxcheck.py, and placed the corresponding patches at: https://git.linuxtv.org/mchehab/experimental.git/log/?h=spdx_pedantic With that, we now have (next-20190904): Warning: SPDX header for file Documentation/networking/caif/caif.rst is at line 2 Warning: SPDX header for file Documentation/networking/mac80211_hwsim/mac80211_hwsim.rst is at line 2 Warning: SPDX header for file tools/thermal/tmon/tmon.8 is at line 2 The first two are due to a ":orphan:" tag at the RST files. IMO, it makes sense to have this at the very beginning of the files with weren't added yet at the documentation body. Having them generating a warning is a plus. The last one is interesting... what's the "very first line" where a SPDX header tag should be on a man page? Thanks, Mauro
Em Fri, 6 Sep 2019 08:34:57 -0300 Mauro Carvalho Chehab <mchehab+samsung@kernel.org> escreveu: > Em Thu, 05 Sep 2019 10:45:36 -0700 > Joe Perches <joe@perches.com> escreveu: > > > On Thu, 2019-09-05 at 09:07 -0300, Mauro Carvalho Chehab wrote: > > > There are currently 227 files that don't complain with the "up to line 3" > > > rule, including COPYING (with should probably be excluded from the check). > > > > > > Patches are at: > > > > > > https://git.linuxtv.org/mchehab/experimental.git/log/?h=spdx_pedantic > > > > > > Btw, most violations are due to: > > > > > > /* > > > * SPDX... > > > > Hey Mauro. > > > > Here's a little script to move all of the improperly located > > SPDX-License-Identifier lines in [.ch] files. > > > > Using this command line: > > > > $ git grep -n 'SPDX-License-Identifier: ' -- '*.[ch]' | \ > > grep -v ':1:' | perl move_spdx.pl > > > > and > > > > $ cat move_spdx.pl > > while (<>) { > > /^([^:]+):([^:]+):(.*)/; > > my ($file, $line, $spdx) = ($1, $2, $3); > > $spdx =~ s/^\s*\/?\*\s*//; > > $spdx =~ s/\s*\*\/\s*$//; > > if ($file =~ /\.h$/) { > > $spdx = "/* $spdx */"; > > } else { > > $spdx = "// $spdx"; > > } > > open(FH, '<', $file) or die $!; > > my @lines = <FH>; > > close FH; > > open(FH, '>', $file) or die $!; > > print FH "$spdx\n"; > > my $count = 0; > > foreach (@lines) { > > $count++; > > next if ($count == $line); > > next if ($count == $line - 1 && $_ =~ /^\s*\*\s*$/); > > next if ($count == $line + 1 && $_ =~ /^\s*\*\s*$/); > > print FH "$_"; > > } > > close FH; > > } > > > > which gives this diff for today's -next > > Nice script! > > I did some changes on it In time: I'm enclosing the modified script. just run it directly with: perl ./move_spdx.pl and it will move the SPDX headers where pertinent. Thanks, Mauro --- #!/usr/bin/perl @file_arr = qx(git grep -n 'SPDX-License-Identifier: ' | grep -v ':1:'); foreach (@file_arr) { /^([^:]+):([^:]+):(.*)/; my ($file, $line, $spdx) = ($1, $2, $3); next if ($file =~ m,(COPYING|LICENSES/|sha1-armv4-large.S),); next if ($line > 10); $spdx =~ s/^\s*\/?\*\s*//; $spdx =~ s/\s*\*\/\s*$//; $spdx = $1 if m/(SPDX-License-Identifier:.*)/; $is_script = 0; if ($file =~ /\.(h|dts|dtsi|S)$/) { $spdx = "/* $spdx */"; } elsif ($file =~ /\.(c)$/) { $spdx = "// $spdx"; } elsif ($file =~ /\.(rst)$/) { $spdx = ".. $spdx"; } elsif ($file =~ /\.(py|pl|sh)$/ || !$file =~ /\./) { $is_script = 1; $spdx = "# $spdx"; } else { next; } open(FH, '<', $file) or die $!; my @lines = <FH>; close FH; open(FH, '>', $file) or die $!; my $count = 0; my $print_spdx = 1; foreach (@lines) { $count++; if ($print_spdx) { if ($count == 1 && (/:orphan:/ || /^#\!/)) { print FH "$_"; next; } if ($count <= 2 && /^[ \t\f]*#.*?coding[:=][ \t]*([-_.a-zA-Z0-9]+)/) { print FH "$_"; next; } print FH "$spdx\n"; $print_spdx = 0; } next if ($count == $line); next if ($count == $line - 1 && $_ =~ /^\s*\*\s*$/); next if ($count == $line + 1 && $_ =~ /^\s*\*\s*$/); next if ($count == $line - 1 && $_ =~ /^$/); print FH "$_"; } close FH; }
On Fri, 2019-09-06 at 08:34 -0300, Mauro Carvalho Chehab wrote: > I did some changes on it, plus one change at the pedantic mode of > scripts/spdxcheck.py, and placed the corresponding patches at: > > https://git.linuxtv.org/mchehab/experimental.git/log/?h=spdx_pedantic Overall seems very nice, thanks. Couple nits. Some of the scripts and py files move the author block into a description or add unnecessary blank comments. These may use some manual fixups. For instance: diff --git a/tools/perf/tests/shell/record+probe_libc_inet_pton.sh b/tools/perf/tests/shell/record+probe_libc_inet_pton.sh index f12a4e2..ff610ec 100755 --- a/tools/perf/tests/shell/record+probe_libc_inet_pton.sh +++ b/tools/perf/tests/shell/record+probe_libc_inet_pton.sh @@ -1,4 +1,5 @@ #!/bin/sh +# SPDX-License-Identifier: GPL-2.0 # probe libc's inet_pton & backtrace it with ping # Installs a probe on libc's inet_pton function, that will use uprobes, @@ -6,8 +7,6 @@ # with the a backtrace 3 levels deep, check that it is what we expect. # This needs no debuginfo package, all is done using the libc ELF symtab # and the CFI info in the binaries. - -# SPDX-License-Identifier: GPL-2.0 # Arnaldo Carvalho de Melo <acme@kernel.org>, 2017 . $(dirname $0)/lib/probe.sh and diff --git a/tools/testing/selftests/bpf/tcp_client.py b/tools/testing/selftests/bpf/tcp_client.py index a53ed58..c2ee17d 100755 --- a/tools/testing/selftests/bpf/tcp_client.py +++ b/tools/testing/selftests/bpf/tcp_client.py @@ -1,7 +1,7 @@ #!/usr/bin/env python3 -# # SPDX-License-Identifier: GPL-2.0 # +# > what's the "very first line" where a > SPDX header tag should be on a man page? Beats me. This says man pages are documents, https://spdx.org/rdf/ontology/spdx-2-0-rev-7/individuals/usageType_document___85292652.html
Em Fri, 06 Sep 2019 05:20:30 -0700 Joe Perches <joe@perches.com> escreveu: > On Fri, 2019-09-06 at 08:34 -0300, Mauro Carvalho Chehab wrote: > > I did some changes on it, plus one change at the pedantic mode of > > scripts/spdxcheck.py, and placed the corresponding patches at: > > > > https://git.linuxtv.org/mchehab/experimental.git/log/?h=spdx_pedantic > > Overall seems very nice, thanks. > > Couple nits. > > Some of the scripts and py files move the author > block into a description or add unnecessary blank > comments. These may use some manual fixups. True. I noticed that too. I suspect that fixing this automatically would make the script too complex. Anyway, the point is: who will apply it? Linus? Each maintainer? I can apply it to the media subsystem (after applying the patches I have already doing the same), but I don't intend myself to apply it to the other subsystems. > > what's the "very first line" where a > > SPDX header tag should be on a man page? > > Beats me. > This says man pages are documents, > https://spdx.org/rdf/ontology/spdx-2-0-rev-7/individuals/usageType_document___85292652.html > > Yes. I mean, I suspect that a troff file should have a ".TH" at its first line. So, SPDX header should start at the second line. Thanks, Mauro
In practice the python needs "-*- coding: utf-8 -*- to be in one of the first two lines. The SPDX tag in practice has to be in one of the first 15 lines: ap.add_argument('-m', '--maxlines', type=int, default=15, help='Maximum number of lines to scan in a file. Default 15') IMO, all we need to patch is the documentation from: """The SPDX license identifier in kernel files shall be added at the first possible line in a file which can contain a comment. """ to something like .. """The SPDX license identifier in kernel files shall be added at the first 15 lines in a file which can contain a comments. """ Often when it comes to encodings people are tend to mix up things. Below you find some comments of mine in the hope to clarify encoding mess: TL;DR Am 05.09.19 um 22:07 schrieb Mauro Carvalho Chehab: > Em Thu, 5 Sep 2019 13:40:08 -0600 > Jonathan Corbet <corbet@lwn.net> escreveu: > >> On Thu, 5 Sep 2019 16:28:10 -0300 >> Mauro Carvalho Chehab <mchehab+samsung@kernel.org> wrote: >> >>> I don't think we can count that python 3 uses utf-8 per default. >>> >>> I strongly suspect that, if one uses a Python3 version < 3.7, it will >>> still default to ASCII. >>> >>> On a quick look, the new UTF-8 mode was added on PEP-540: >>> >>> https://www.python.org/dev/peps/pep-0540/ >>> >>> Such change happened at Python 3.7. >> >> That PEP is to override the locale and use utf8 unconditionally. It >> says, with regard to the pre-PEP state: >> >> UTF-8 is also the default encoding of Python scripts, XML and JSON >> file formats. >> >> Unicode was the reason for much of the Python 3 pain; it seems unlikely >> that many installations are defaulting to ASCII anyway...? Don't mix unicode and utf-8. What has changed in python 3 compared to python 2 is the internal representation of the string type (which has nothing to with the encoding of files!). Python2 type str() -- results in a "byte literal" https://docs.python.org/2.7/library/functions.html#str Python2 type unicode() -- results in a "unicode literal" https://docs.python.org/2.7/library/functions.html#unicode Python3 type str() -- results in a unicode literal https://docs.python.org/3/library/stdtypes.html#text-sequence-type-str Python3 unicode() -- this type is not defined, was replaced by str() Python3 byte() -- results in a byte literal (what str() was in py2) https://docs.python.org/3/library/stdtypes.html#bytes This is mostly a pain when your source works with byte-streams and you have to switch py2 to py3. But this has nothing to do with the encoding of source files and how the encoding is tagged in a file. And what the default encoding of a source file is when such tags are omitted. First lets have a look at the default encoding of py source: Python will default to ASCII as standard encoding if no other encoding hints are given. from https://www.python.org/dev/peps/pep-0263/#defining-the-encoding And my addition: what is correct for py2. In py3 we have UTF-8 PEP 3120: The default source encoding is now UTF-8. from https://docs.python.org/3.0/whatsnew/3.0.html#text-vs-data-instead-of-unicode-vs-8-bit > > Yeah, but I remember that UTF-8 handling changed a few times during python 3 > releases. I didn't really tracked what happened, as I don't usually program > in Python. So, I'm actually relying on what I can find about that. > > Looking at Python 3.0 release[1], it says: > > "In many cases, but not all, the system default is UTF-8; > you should never count on this default." > > [1] https://docs.python.org/3.0/whatsnew/3.0.html > > So, at least on early Python 3 releases, the default may not be UTF-8. > > I don't know about you, but, from time to time, people complain about > UTF-8 chars when I'm handling patches (last time was on a patch series > for Kernel 5.3 by a core dev in Australia, with was unable to apply a > patch from me with had some UTF-8 chars). > Don't mix the output of a text file which is read by the standard open() function in py2/py3 and the source file encoding used by the interpreter for reading the source file itself. To complete your citation: In many cases, but not all, the system default is UTF-8; you should never count on this default. Any application reading or writing more than pure ASCII text should probably have a way to override the encoding. This means your application has to know the encoding of a stream/file. E.g. we handle the output from of the external Perl script scripts/kernel-docs by encoding the byte stream from proc-call's stdout into utf-8: out, err = codecs.decode(out, 'utf-8'), codecs.decode(err, 'utf-8') see patch https://github.com/torvalds/linux/commit/86c0f046a8b0c23fca65f77333c233a06c25ef9a Again, this is talking about application development and has nothing to do with the encoding of the source files. > So, I'm pretty sure that some devs don't set the locale to UTF8 even > those days. The LANG environment influence only the default encoding of streams like stdout and does not change the default encoding for source code files. To clarify by example, create a test123.py file and save it as !! UTF-8 !!. import sys, locale print("system's default encoding: " + sys.getdefaultencoding()) print("sys.stdout's encoding: " + sys.stdout.encoding) print("locale's prefered encoding: " + locale.getpreferredencoding()) text = "Encoding ist Scheiße" try: print("::" + text) except UnicodeEncodeError as exc: print("appl had a UnicodeEncodeError exception: %s" % exc) Probe encoding of the source file and run some tests: $ file test123.py test123.py: Python script, UTF-8 Unicode text executable Lets see how it is stored:: $ hexdump -C test123.py | grep Schei 000000e0 6e 67 20 69 73 74 20 53 63 68 65 69 c3 9f 65 22 |ng ist Schei..e"| The 'ß' is a two byte char 0xc39f in UTF-8 and the unicode code-point is U+00DF. Since we encoded the file in utf-8 and python2 excepts ASCII as default we will get a SyntaxError:: $ python2 test123.py File "test123.py", line 6 SyntaxError: Non-ASCII character '\xc3' in file test123.py on line 6, but no encoding declared; see http://python.org/dev/peps/pep-0263/ for details The only way to fix it is to use a magic comment (# -*- coding: utf-8 -*-) Py3 expects UTF-8 encoded source as default, see PEP-3120 vs PEP-0263. And we got what excepted: $ python3 test123.py system's default encoding: utf-8 sys.stdout's encoding: UTF-8 locale's prefered encoding: UTF-8 ::Encoding ist Scheiße OK, now lets see what happens when locale (LANG) is changed: $ LANG=POSIX python3 test123.py system's default encoding: utf-8 sys.stdout's encoding: ANSI_X3.4-1968 locale's prefered encoding: ANSI_X3.4-1968 application print throws UnicodeEncodeError: 'ascii' codec can't encode character '\xdf' in position 21: ordinal not in range(128) The interpreter has no problem to read the source file, because the py3 systems's default encoding stays in UTF-8 .. only the print application throws a UnicodeEncodeError when it prints the internal unicode (with non ASCII char in) to a stdout which encodes now ASCII (aka ANSI_X3.4-1968). Next lets try ISO-8859-1 LANG=en_US.ISO-8859-1 python3 test123.py system's default encoding: utf-8 sys.stdout's encoding: ISO-8859-1 locale's prefered encoding: ISO-8859-1 ::Encoding ist Schei�e Again; The interpreter has no problem to read the UTF-8 source file (no SyntaxError). Only the application works not as expected... The German 'ß' was correctly read by the interpreter and converted to the internal unicode representation '\u00DF'. When it is written to stdout (print) it is correctly encoded from unicode to ISO-8859-1, but why do we get a '�'? Because the my X-terminal still uses UTF-8 even when I change the LANG. Lets use liut(1) and everything is fine: LANG=en_US.ISO-8859-1 luit -encoding ISO-8859-1 python3 test123.py system's default encoding: utf-8 sys.stdout's encoding: ISO-8859-1 locale's prefered encoding: ISO-8859-1 ::Encoding ist Scheiße So much more to say about encoding, we haven't talked about all the pitfalls e.g. with filename encoding or the encoding of used editors ;) -- Markus --
On Fri, 2019-09-06 at 11:45 -0300, Mauro Carvalho Chehab wrote: > Em Fri, 06 Sep 2019 05:20:30 -0700 > Joe Perches <joe@perches.com> escreveu: > > > On Fri, 2019-09-06 at 08:34 -0300, Mauro Carvalho Chehab wrote: > > > I did some changes on it, plus one change at the pedantic mode of > > > scripts/spdxcheck.py, and placed the corresponding patches at: > > > > > > https://git.linuxtv.org/mchehab/experimental.git/log/?h=spdx_pedantic > > > > Overall seems very nice, thanks. > > > > Couple nits. > > > > Some of the scripts and py files move the author > > block into a description or add unnecessary blank > > comments. These may use some manual fixups. > > True. I noticed that too. I suspect that fixing this automatically would > make the script too complex. > > Anyway, the point is: who will apply it? Linus? Each maintainer? I have been advocating for a treewide scripted mechanism for awhile. https://lore.kernel.org/lkml/4398924f28a58fca296d101dae11e7accce80656.camel@perches.com/
Am 05.09.19 um 16:17 schrieb Greg Kroah-Hartman: > On Thu, Sep 05, 2019 at 06:57:01AM -0600, Jonathan Corbet wrote: >> On Thu, 5 Sep 2019 06:23:13 -0300 >> Mauro Carvalho Chehab <mchehab+samsung@kernel.org> wrote: >> >>> Python's PEP-263 [1] dictates that an script that needs to default to >>> UTF-8 encoding has to follow this rule: >>> >>> 'Python will default to ASCII as standard encoding if no other >>> encoding hints are given. >>> >>> To define a source code encoding, a magic comment must be placed >>> into the source files either as first or second line in the file' >> >> So this is only Python 2, right? Python 3 is UTF8 by default. Given that >> Python 2 is EOL in January, is this something we should be concerned >> about? Or should we instead be making sure that all the Python we have >> in-tree works properly with Python 3 and be done with it? > > I recommend just using python 3 everywhere and be done with it as there > are already many distros that default to that already. As far as I know: many distros have installed py3 and py2 interpreter by default. Mostly for internal purpose the distros use the py3 but the 'python' command is default binded to a py2 interpreter. About Linux distros and python2 & python3 read: https://www.python.org/dev/peps/pep-0394/ In short: command 'python' mostly refers to py2 interpreters as long as py2 is supported, later the distros will remove the python2 stack. So it depends on the distro and your alternatives(8) setup. The common rules for distros are: https://www.python.org/dev/peps/pep-0394/#for-python-runtime-distributors and what debian says: https://debian-python.readthedocs.io/en/latest/debian-policy.html#versions IMO we can't predict what the python command will call py2 or py3 interpreter. And we scould not fergett that not all (build hosts) are using up to date At least I have to say that it is always recommended to use a virtualenv build up using requirements.txt and option May we can and add option "-p python3" to: https://www.kernel.org/doc/html/latest/doc-guide/sphinx.html?highlight=virtualenv#sphinx-install $ virtualenv -p python3 sphinx_1.7.9 $ . sphinx_1.7.9/bin/activate (sphinx_1.7.9) $ pip install -r Documentation/sphinx/requirements.txt BTW: I always recomend to use (support) up-to-date py-packages, but we had this discussion already. -- Markus --
On Fri, 2019-09-06 at 08:34 -0300, Mauro Carvalho Chehab wrote: > I did some changes on it, plus one change at the pedantic mode of > scripts/spdxcheck.py, and placed the corresponding patches at: > > https://git.linuxtv.org/mchehab/experimental.git/log/?h=spdx_pedantic Your script needs a modification of this line: $spdx = $1 if m/(SPDX-License-Identifier:.*)/; This is on $_ and not $spdx. This line needs to be: $spdx = $1 if $spdx =~ m/(SPDX-License-Identifier:.*)/; Otherwise the script produces: --- diff --git a/tools/perf/util/rlimit.h b/tools/perf/util/rlimit.h index 9f59d8e..5d975b9 100644 --- a/tools/perf/util/rlimit.h +++ b/tools/perf/util/rlimit.h @@ -1,6 +1,6 @@ +/* SPDX-License-Identifier: LGPL-2.1 */ */ #ifndef __PERF_RLIMIT_H_ #define __PERF_RLIMIT_H_ -/* SPDX-License-Identifier: LGPL-2.1 */ void rlimit__bump_memlock(void); #endif // __PERF_RLIMIT_H_
Em Fri, 06 Sep 2019 10:33:42 -0700 Joe Perches <joe@perches.com> escreveu: > On Fri, 2019-09-06 at 08:34 -0300, Mauro Carvalho Chehab wrote: > > I did some changes on it, plus one change at the pedantic mode of > > scripts/spdxcheck.py, and placed the corresponding patches at: > > > > https://git.linuxtv.org/mchehab/experimental.git/log/?h=spdx_pedantic > > Your script needs a modification of this line: It is yours script, I just made a few improvements for it to also catch scripts. > $spdx = $1 if m/(SPDX-License-Identifier:.*)/; > > This is on $_ and not $spdx. > > This line needs to be: > > $spdx = $1 if $spdx =~ m/(SPDX-License-Identifier:.*)/; Gah, true! It also doesn't get the case where SPDX-License-Identifier: is followed by a tab, and fixed an issue when detecting files without any extension. The enclosed script does a better job. I changed the output of it on my testing branch: https://git.linuxtv.org/mchehab/experimental.git/log/?h=spdx_pedantic The only thing that it doesn't change is an issue with an asm code, with uses "@" for comments. As this is a single file, better to do it manually: https://git.linuxtv.org/mchehab/experimental.git/commit/?h=spdx_pedantic&id=f1b7b2169ae2c8d8ab80a5997ebef9aa03a42d30 Thanks, Mauro --- #!/usr/bin/perl @file_arr = qx(git grep -nE 'SPDX-License-Identifier:\\s' | grep -v ':1:'); foreach (@file_arr) { /^([^:]+):([^:]+):(.*)/; my ($file, $line, $spdx) = ($1, $2, $3); next if ($file =~ m,(COPYING|LICENSES/|sha1-armv4-large.S),); next if ($line > 10); $spdx =~ s/^\s*\/?\*\s*//; $spdx =~ s/\s*\*\/\s*$//; $spdx = $1 if $spdx =~ m/(SPDX-License-Identifier:.*)/; $spdx =~ s/(SPDX-License-Identifier:)\s+/$1 /; if ($file =~ /\.(h|dts|dtsi|S)$/) { $spdx = "/* $spdx */"; } elsif ($file =~ /\.(c)$/) { $spdx = "// $spdx"; } elsif ($file =~ /\.(rst)$/) { $spdx = ".. $spdx"; } elsif ($file =~ /\.(py|pl|sh|tc)$/ || !($file =~ /\./)) { $spdx = "# $spdx"; } else { next; } open(FH, '<', $file) or die $!; my @lines = <FH>; close FH; open(FH, '>', $file) or die $!; my $count = 0; my $print_spdx = 1; foreach (@lines) { $count++; if ($print_spdx) { if ($count == 1 && (/:orphan:/ || /^#\!/)) { print FH "$_"; next; } if ($count <= 2 && /^[ \t\f]*#.*?coding[:=][ \t]*([-_.a-zA-Z0-9]+)/) { print FH "$_"; next; } print FH "$spdx\n"; $print_spdx = 0; } next if ($count == $line); next if ($count == $line - 1 && $_ =~ /^\s*\*\s*$/); next if ($count == $line + 1 && $_ =~ /^\s*\*\s*$/); next if ($count == $line - 1 && $_ =~ /^$/); print FH "$_"; } close FH; }
On Fri, 2019-09-06 at 15:17 -0300, Mauro Carvalho Chehab wrote: > Em Fri, 06 Sep 2019 10:33:42 -0700 > Joe Perches <joe@perches.com> escreveu: > > > On Fri, 2019-09-06 at 08:34 -0300, Mauro Carvalho Chehab wrote: > > > I did some changes on it, plus one change at the pedantic mode of > > > scripts/spdxcheck.py, and placed the corresponding patches at: > > > > > > https://git.linuxtv.org/mchehab/experimental.git/log/?h=spdx_pedantic > > > > Your script needs a modification of this line: > > It is yours script, I just made a few improvements for it to also catch > scripts. Not really, my script worked only on .[ch] files to avoid making the script more complicated and more prone to the inevitable unintended defect which I manage to introduce more often than I should. btw: I already submitted a separate patch for the arm/arm64 .dts and .dtsi files. https://lore.kernel.org/linux-arm-kernel/f85fe45879469ba53d3ae91475b4502546de501e.camel@perches.com/ cheers, Joe
diff --git a/Documentation/process/license-rules.rst b/Documentation/process/license-rules.rst index 2ef44ada3f11..5d23e3498b1c 100644 --- a/Documentation/process/license-rules.rst +++ b/Documentation/process/license-rules.rst @@ -64,9 +64,12 @@ License identifier syntax possible line in a file which can contain a comment. For the majority of files this is the first line, except for scripts which require the '#!PATH_TO_INTERPRETER' in the first line. For those scripts the SPDX - identifier goes into the second line. + identifier goes into the second line\ [1]_. -| +.. [1] Please notice that Python scripts may also need an encoding rule + as defined on PEP-263, which should be defined either at the first + or the second line. So, for such scripts, the SPDX identifier may + go up to the third line. 2. Style:
The author of the license-rules.rst file wanted to be very restrict with regards to the location of the SPDX header. It says that the SPDX header "shall be added at the first possible line in a file which can contain a comment". Not happy with this already restrictive requiement, it goes further: "For the majority of files this is the first line, except for scripts", opening an exception to have the SPDX header at the second line, if the first line starts with "#!". Well, it turns that this is too restrictive for Python scripts, and may cause regressions if this would be enforced. As mentioned on: https://stackoverflow.com/questions/728891/correct-way-to-define-python-source-code-encoding Python's PEP-263 [1] dictates that an script that needs to default to UTF-8 encoding has to follow this rule: 'Python will default to ASCII as standard encoding if no other encoding hints are given. To define a source code encoding, a magic comment must be placed into the source files either as first or second line in the file' And: 'More precisely, the first or second line must match the following regular expression: ^[ \t\f]*#.*?coding[:=][ \t]*([-_.a-zA-Z0-9]+)' [1] https://www.python.org/dev/peps/pep-0263/ If a script has both "#!" and the charset encoding line, we can't place a SPDX tag without either violating license-rules.rst or breaking the script by making it crash with non-ASCII characters. So, add a sort notice saying that, for Python scripts, the SPDX header may be up to the third line, in order to cover the case where both "#!" and "# .*coding.*UTF-8" lines are found. Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org> --- Documentation/process/license-rules.rst | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-)