05 Mar, 2020

5 commits

  • Greg Kroah-Hartman
     
  • commit b1fbfcb4a20949df08dd995927cdc5ad220c128d upstream.

    Commit 2dffd23f81a3 ("kbuild: make single target builds much faster")
    made the situation much better.

    To improve it even more, apply the similar idea to the top Makefile.
    Trim unrelated directories from build-dirs.

    The single build code must be moved above the 'descend' target.

    Signed-off-by: Masahiro Yamada
    Tested-by: Jens Axboe
    Signed-off-by: Greg Kroah-Hartman

    Masahiro Yamada
     
  • commit 35e046a203ee3bc8ba9ae3561b50de02646dfb81 upstream.

    When single-build is set, everything in $(MAKECMDGOALS) is a single
    target. You can use $(MAKECMDGOALS) to list out the single targets.

    Signed-off-by: Masahiro Yamada
    Signed-off-by: Greg Kroah-Hartman

    Masahiro Yamada
     
  • commit 7ecaf069da52e472d393f03e79d721aabd724166 upstream.

    Currently, some sanity checks for uapi headers are done by
    scripts/headers_check.pl, which is wired up to the 'headers_check'
    target in the top Makefile.

    It is true compiling headers has better test coverage, but there
    are still several headers excluded from the compile test. I like
    to keep headers_check.pl for a while, but we can delete a lot of
    code by moving the build rule to usr/include/Makefile.

    Signed-off-by: Masahiro Yamada
    Signed-off-by: Greg Kroah-Hartman

    Masahiro Yamada
     
  • commit fcbb8461fd2376ba3782b5b8bd440c929b8e4980 upstream.

    There are both positive and negative options about this feature.
    At first, I thought it was a good idea, but actually Linus stated a
    negative opinion (https://lkml.org/lkml/2019/9/29/227). I admit it
    is ugly and annoying.

    The baseline I'd like to keep is the compile-test of uapi headers.
    (Otherwise, kernel developers have no way to ensure the correctness
    of the exported headers.)

    I will maintain a small build rule in usr/include/Makefile.
    Remove the other header test functionality.

    Signed-off-by: Masahiro Yamada
    [ added to 5.4.y due to start of build warnings from backported patches
    because of this feature - gregkh]
    Signed-off-by: Greg Kroah-Hartman

    Masahiro Yamada
     

29 Feb, 2020

1 commit


24 Feb, 2020

1 commit


20 Feb, 2020

1 commit


15 Feb, 2020

1 commit


11 Feb, 2020

1 commit


06 Feb, 2020

1 commit


01 Feb, 2020

1 commit


29 Jan, 2020

1 commit


26 Jan, 2020

1 commit


23 Jan, 2020

1 commit


18 Jan, 2020

1 commit


15 Jan, 2020

1 commit


12 Jan, 2020

1 commit


09 Jan, 2020

2 commits


05 Jan, 2020

1 commit


31 Dec, 2019

1 commit


21 Dec, 2019

1 commit


18 Dec, 2019

2 commits


13 Dec, 2019

1 commit


05 Dec, 2019

1 commit


29 Nov, 2019

1 commit


25 Nov, 2019

1 commit


18 Nov, 2019

1 commit


14 Nov, 2019

1 commit

  • Sparse uses the same executable for all archs and uses flags
    like -m64, -mbig-endian or -D__arm__ for arch-specific parameters.
    But Sparse also uses value from the host machine used to build
    Sparse as default value for the target machine.

    This works, of course, well for native build but can create
    problems when cross-compiling, like defining both '__i386__'
    and '__arm__' when cross-compiling for arm on a x86-64 machine.

    Fix this by explicitely telling sparse the target architecture.

    Reported-by: Ben Dooks
    Signed-off-by: Luc Van Oostenryck
    Signed-off-by: Masahiro Yamada

    Luc Van Oostenryck
     

11 Nov, 2019

1 commit


04 Nov, 2019

1 commit


28 Oct, 2019

1 commit


21 Oct, 2019

1 commit


15 Oct, 2019

1 commit


14 Oct, 2019

1 commit


12 Oct, 2019

1 commit

  • Pull module fixes from Jessica Yu:
    "Code cleanups and kbuild/namespace related fixups from Masahiro.

    Most importantly, it fixes a namespace-related modpost issue for
    external module builds

    - Fix broken external module builds due to a modpost bug in
    read_dump(), where the namespace was not being strdup'd and
    sym->namespace would be set to bogus data.

    - Various namespace-related kbuild fixes and cleanups thanks to
    Masahiro Yamada"

    * tag 'modules-for-v5.4-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/jeyu/linux:
    doc: move namespaces.rst from kbuild/ to core-api/
    nsdeps: make generated patches independent of locale
    nsdeps: fix hashbang of scripts/nsdeps
    kbuild: fix build error of 'make nsdeps' in clean tree
    module: rename __kstrtab_ns_* to __kstrtabns_* to avoid symbol conflict
    modpost: fix broken sym->namespace for external module builds
    module: swap the order of symbol.namespace
    scripts: add_namespace: Fix coccicheck failed

    Linus Torvalds
     

09 Oct, 2019

1 commit

  • …/git/shuah/linux-kselftest

    Pull Kselftest fixes from Shuah Khan:
    "Fixes for existing tests and the framework.

    Cristian Marussi's patches add the ability to skip targets (tests) and
    exclude tests that didn't build from run-list. These patches improve
    the Kselftest results. Ability to skip targets helps avoid running
    tests that aren't supported in certain environments. As an example,
    bpf tests from mainline aren't supported on stable kernels and have
    dependency on bleeding edge llvm. Being able to skip bpf on systems
    that can't meet this llvm dependency will be helpful.

    Kselftest can be built and installed from the main Makefile. This
    change help simplify Kselftest use-cases which addresses request from
    users.

    Kees Cook added per test timeout support to limit individual test
    run-time"

    * tag 'linux-kselftest-5.4-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest:
    selftests: watchdog: Add command line option to show watchdog_info
    selftests: watchdog: Validate optional file argument
    selftests/kselftest/runner.sh: Add 45 second timeout per test
    kselftest: exclude failed TARGETS from runlist
    kselftest: add capability to skip chosen TARGETS
    selftests: Add kselftest-all and kselftest-install targets

    Linus Torvalds
     

08 Oct, 2019

1 commit

  • Running 'make nsdeps' in a clean source tree fails as follows:

    $ make -s clean; make -s defconfig; make nsdeps
    [ snip ]
    awk: fatal: cannot open file `init/modules.order' for reading (No such file or directory)
    make: *** [Makefile;1307: modules.order] Error 2
    make: *** Deleting file 'modules.order'
    make: *** Waiting for unfinished jobs....

    The cause of the error is 'make nsdeps' does not build modules at all.
    Set KBUILD_MODULES to fix it.

    Reviewed-by: Matthias Maennich
    Signed-off-by: Masahiro Yamada
    Signed-off-by: Jessica Yu

    Masahiro Yamada