09 Sep, 2021

3 commits

  • Merge more updates from Andrew Morton:
    "147 patches, based on 7d2a07b769330c34b4deabeed939325c77a7ec2f.

    Subsystems affected by this patch series: mm (memory-hotplug, rmap,
    ioremap, highmem, cleanups, secretmem, kfence, damon, and vmscan),
    alpha, percpu, procfs, misc, core-kernel, MAINTAINERS, lib,
    checkpatch, epoll, init, nilfs2, coredump, fork, pids, criu, kconfig,
    selftests, ipc, and scripts"

    * emailed patches from Andrew Morton : (94 commits)
    scripts: check_extable: fix typo in user error message
    mm/workingset: correct kernel-doc notations
    ipc: replace costly bailout check in sysvipc_find_ipc()
    selftests/memfd: remove unused variable
    Kconfig.debug: drop selecting non-existing HARDLOCKUP_DETECTOR_ARCH
    configs: remove the obsolete CONFIG_INPUT_POLLDEV
    prctl: allow to setup brk for et_dyn executables
    pid: cleanup the stale comment mentioning pidmap_init().
    kernel/fork.c: unexport get_{mm,task}_exe_file
    coredump: fix memleak in dump_vma_snapshot()
    fs/coredump.c: log if a core dump is aborted due to changed file permissions
    nilfs2: use refcount_dec_and_lock() to fix potential UAF
    nilfs2: fix memory leak in nilfs_sysfs_delete_snapshot_group
    nilfs2: fix memory leak in nilfs_sysfs_create_snapshot_group
    nilfs2: fix memory leak in nilfs_sysfs_delete_##name##_group
    nilfs2: fix memory leak in nilfs_sysfs_create_##name##_group
    nilfs2: fix NULL pointer in nilfs_##name##_attr_release
    nilfs2: fix memory leak in nilfs_sysfs_create_device_group
    trap: cleanup trap_init()
    init: move usermodehelper_enable() to populate_rootfs()
    ...

    Linus Torvalds
     
  • This should have been done with commit 91ed3ed0f798 ("MAINTAINERS: update
    ClangBuiltLinux IRC chat") but I did not realize it was in two separate
    spots.

    Link: https://lkml.kernel.org/r/20210825211823.6406-3-nathan@kernel.org
    Signed-off-by: Nathan Chancellor
    Reviewed-by: Nick Desaulniers
    Cc: Kees Cook
    Cc: Masahiro Yamada
    Cc: Sami Tolvanen
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Nathan Chancellor
     
  • We are now at llvm@lists.linux.dev.

    Link: https://lkml.kernel.org/r/20210825211823.6406-2-nathan@kernel.org
    Signed-off-by: Nathan Chancellor
    Reviewed-by: Nick Desaulniers
    Cc: Kees Cook
    Cc: Masahiro Yamada
    Cc: Sami Tolvanen
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Nathan Chancellor
     

10 Aug, 2021

2 commits

  • LLVM_IAS=1 controls enabling clang's integrated assembler via
    -integrated-as. This was an explicit opt in until we could enable
    assembler support in Clang for more architecures. Now we have support
    and CI coverage of LLVM_IAS=1 for all architecures except a few more
    bugs affecting s390 and powerpc.

    This commit flips the default from opt in via LLVM_IAS=1 to opt out via
    LLVM_IAS=0. CI systems or developers that were previously doing builds
    with CC=clang or LLVM=1 without explicitly setting LLVM_IAS must now
    explicitly opt out via LLVM_IAS=0, otherwise they will be implicitly
    opted-in.

    This finally shortens the command line invocation when cross compiling
    with LLVM to simply:

    $ make ARCH=arm64 LLVM=1

    Signed-off-by: Nick Desaulniers
    Reviewed-by: Nathan Chancellor
    Signed-off-by: Masahiro Yamada

    Nick Desaulniers
     
  • As noted by Masahiro, document how we can generally infer CROSS_COMPILE
    (and the more specific details about --target and --prefix) based on
    ARCH.

    Change use of env vars to command line parameters.

    Suggested-by: Masahiro Yamada
    Reviewed-by: Fangrui Song
    Signed-off-by: Nick Desaulniers
    Reviewed-by: Nathan Chancellor
    Signed-off-by: Masahiro Yamada

    Nick Desaulniers
     

30 Apr, 2021

1 commit

  • Pull Kconfig updates from Masahiro Yamada:

    - Change 'option defconfig' to the environment variable
    KCONFIG_DEFCONFIG_LIST

    - Refactor tinyconfig without using allnoconfig_y

    - Remove 'option allnoconfig_y' syntax

    - Change 'option modules' to 'modules'

    - Do not use /boot/config-* etc. as base config for cross-compilation

    - Fix a search bug in nconf

    - Various code cleanups

    * tag 'kconfig-v5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild: (34 commits)
    kconfig: refactor .gitignore
    kconfig: highlight xconfig 'comment' lines with '***'
    kconfig: highlight gconfig 'comment' lines with '***'
    kconfig: gconf: remove unused code
    kconfig: remove unused PACKAGE definition
    kconfig: nconf: stop endless search loops
    kconfig: split menu.c out of parser.y
    kconfig: nconf: refactor in print_in_middle()
    kconfig: nconf: remove meaningless wattrset() call from show_menu()
    kconfig: nconf: change set_config_filename() to void function
    kconfig: nconf: refactor attributes setup code
    kconfig: nconf: remove unneeded default for menu prompt
    kconfig: nconf: get rid of (void) casts from wattrset() calls
    kconfig: nconf: fix NORMAL attributes
    kconfig: mconf,nconf: remove unneeded '\0' termination after snprintf()
    kconfig: use /boot/config-* etc. as DEFCONFIG_LIST only for native build
    kconfig: change sym_change_count to a boolean flag
    kconfig: nconf: fix core dump when searching in empty menu
    kconfig: lxdialog: A spello fix and a punctuation added
    kconfig: streamline_config.pl: Couple of typo fixes
    ...

    Linus Torvalds
     

25 Apr, 2021

1 commit


14 Apr, 2021

3 commits


26 Feb, 2021

1 commit

  • Pull Kbuild updates from Masahiro Yamada:

    - Fix false-positive build warnings for ARCH=ia64 builds

    - Optimize dictionary size for module compression with xz

    - Check the compiler and linker versions in Kconfig

    - Fix misuse of extra-y

    - Support DWARF v5 debug info

    - Clamp SUBLEVEL to 255 because stable releases 4.4.x and 4.9.x
    exceeded the limit

    - Add generic syscall{tbl,hdr}.sh for cleanups across arches

    - Minor cleanups of genksyms

    - Minor cleanups of Kconfig

    * tag 'kbuild-v5.12' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild: (38 commits)
    initramfs: Remove redundant dependency of RD_ZSTD on BLK_DEV_INITRD
    kbuild: remove deprecated 'always' and 'hostprogs-y/m'
    kbuild: parse C= and M= before changing the working directory
    kbuild: reuse this-makefile to define abs_srctree
    kconfig: unify rule of config, menuconfig, nconfig, gconfig, xconfig
    kconfig: omit --oldaskconfig option for 'make config'
    kconfig: fix 'invalid option' for help option
    kconfig: remove dead code in conf_askvalue()
    kconfig: clean up nested if-conditionals in check_conf()
    kconfig: Remove duplicate call to sym_get_string_value()
    Makefile: Remove # characters from compiler string
    Makefile: reuse CC_VERSION_TEXT
    kbuild: check the minimum linker version in Kconfig
    kbuild: remove ld-version macro
    scripts: add generic syscallhdr.sh
    scripts: add generic syscalltbl.sh
    arch: syscalls: remove $(srctree)/ prefix from syscall tables
    arch: syscalls: add missing FORCE and fix 'targets' to make if_changed work
    gen_compile_commands: prune some directories
    kbuild: simplify access to the kernel's version
    ...

    Linus Torvalds
     

23 Feb, 2021

1 commit

  • Pull SCSI updates from James Bottomley:
    "This series consists of the usual driver updates (ufs, ibmvfc,
    qla2xxx, hisi_sas, pm80xx) plus the removal of the gdth driver (which
    is bound to cause conflicts with a trivial change somewhere).

    The only big major rework of note is the one from Hannes trying to
    clean up our result handling code in the drivers to make it
    consistent"

    * tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi: (194 commits)
    scsi: MAINTAINERS: Adjust to reflect gdth scsi driver removal
    scsi: ufs: Give clk scaling min gear a value
    scsi: lpfc: Fix 'physical' typos
    scsi: megaraid_mbox: Fix spelling of 'allocated'
    scsi: qla2xxx: Simplify the calculation of variables
    scsi: message: fusion: Fix 'physical' typos
    scsi: target: core: Change ASCQ for residual write
    scsi: target: core: Signal WRITE residuals
    scsi: target: core: Set residuals for 4Kn devices
    scsi: hisi_sas: Add trace FIFO debugfs support
    scsi: hisi_sas: Flush workqueue in hisi_sas_v3_remove()
    scsi: hisi_sas: Enable debugfs support by default
    scsi: hisi_sas: Don't check .nr_hw_queues in hisi_sas_task_prep()
    scsi: hisi_sas: Remove deferred probe check in hisi_sas_v2_probe()
    scsi: lpfc: Add auto select on IRQ_POLL
    scsi: ncr53c8xx: Fix typos
    scsi: lpfc: Fix ancient double free
    scsi: qla2xxx: Fix some memory corruption
    scsi: qla2xxx: Remove redundant NULL check
    scsi: megaraid: Fix ifnullfree.cocci warnings
    ...

    Linus Torvalds
     

22 Feb, 2021

1 commit

  • Pull oprofile and dcookies removal from Viresh Kumar:
    "Remove oprofile and dcookies support

    The 'oprofile' user-space tools don't use the kernel OPROFILE support
    any more, and haven't in a long time. User-space has been converted to
    the perf interfaces.

    The dcookies stuff is only used by the oprofile code. Now that
    oprofile's support is getting removed from the kernel, there is no
    need for dcookies as well.

    Remove kernel's old oprofile and dcookies support"

    * tag 'oprofile-removal-5.12' of git://git.kernel.org/pub/scm/linux/kernel/git/vireshk/linux:
    fs: Remove dcookies support
    drivers: Remove CONFIG_OPROFILE support
    arch: xtensa: Remove CONFIG_OPROFILE support
    arch: x86: Remove CONFIG_OPROFILE support
    arch: sparc: Remove CONFIG_OPROFILE support
    arch: sh: Remove CONFIG_OPROFILE support
    arch: s390: Remove CONFIG_OPROFILE support
    arch: powerpc: Remove oprofile
    arch: powerpc: Stop building and using oprofile
    arch: parisc: Remove CONFIG_OPROFILE support
    arch: mips: Remove CONFIG_OPROFILE support
    arch: microblaze: Remove CONFIG_OPROFILE support
    arch: ia64: Remove rest of perfmon support
    arch: ia64: Remove CONFIG_OPROFILE support
    arch: hexagon: Don't select HAVE_OPROFILE
    arch: arc: Remove CONFIG_OPROFILE support
    arch: arm: Remove CONFIG_OPROFILE support
    arch: alpha: Remove CONFIG_OPROFILE support

    Linus Torvalds
     

16 Feb, 2021

1 commit


01 Feb, 2021

1 commit

  • Python retired in 2020, and some distributions do not provide the
    'python' command any more.

    As in commit 51839e29cb59 ("scripts: switch explicitly to Python 3"),
    we need to use more specific 'python3' to invoke scripts even if they
    are written in a way compatible with both Python 2 and 3.

    This commit removes the variable 'PYTHON', and switches the existing
    users to 'PYTHON3'.

    BTW, PEP 394 (https://www.python.org/dev/peps/pep-0394/) is a helpful
    material.

    Signed-off-by: Masahiro Yamada

    Masahiro Yamada
     

30 Jan, 2021

1 commit

  • The most common question around building the Linux kernel with clang is
    "does it work?" and the answer has always been "it depends on your
    architecture, configuration, and LLVM version" with no hard answers for
    users wanting to experiment. LLVM support has significantly improved
    over the past couple of years, resulting in more architectures and
    configurations supported, and continuous integration has made it easier
    to see what works and what does not.

    Add a section that goes over what architectures are supported in the
    current kernel version, how they should be built (with just clang or the
    LLVM utilities as well), and the level of support they receive. This
    will make it easier for people to try out building their kernel with
    LLVM and reporting issues that come about from it.

    Suggested-by: Miguel Ojeda
    Signed-off-by: Nathan Chancellor
    Reviewed-by: Nick Desaulniers
    Signed-off-by: Masahiro Yamada

    Nathan Chancellor
     

29 Jan, 2021

1 commit

  • The "oprofile" user-space tools don't use the kernel OPROFILE support
    any more, and haven't in a long time. User-space has been converted to
    the perf interfaces.

    Remove the old oprofile's architecture specific support.

    Suggested-by: Christoph Hellwig
    Suggested-by: Linus Torvalds
    Signed-off-by: Viresh Kumar
    Acked-by: Robert Richter
    Acked-by: William Cohen
    Acked-by: Al Viro
    Acked-by: Thomas Gleixner

    Viresh Kumar
     

26 Jan, 2021

1 commit

  • This document was written a long time ago. Update it.

    [1] Drop the version information

    The range of the supported GCC versions are always changing. The
    current minimal GCC version is 4.9, and commit 1e860048c53e
    ("gcc-plugins: simplify GCC plugin-dev capability test") removed the
    old code accordingly.

    We do not need to mention specific version ranges like "all gcc versions
    from 4.5 to 6.0" since we forget to update the documentation when we
    raise the minimal compiler version.

    [2] Drop the C compiler statements

    Since commit 77342a02ff6e ("gcc-plugins: drop support for GCC

    Masahiro Yamada
     

23 Jan, 2021

2 commits

  • gcc-plugin.sh has been removed in commit
    1e860048c53e ("gcc-plugins: simplify GCC plugin-dev capability test").

    Signed-off-by: Robert Karszniewicz
    Reviewed-by: Kees Cook
    Signed-off-by: Masahiro Yamada

    Robert Karszniewicz
     
  • The gdth driver refers to a SCSI parallel, PCI-only HBA RAID adapter which
    was manufactured by the now-defunct ICP Vortex company, later acquired by
    Adaptec and superseded by the aacraid series of controllers. The driver
    itself would require a major overhaul before any modifications can be
    attempted, but seeing that it's unlikely to have any users left it should
    rather be removed completely.

    Link: https://lore.kernel.org/r/20210113090500.129644-2-hare@suse.de
    Cautiously-Acked-by: Christoph Hellwig
    Signed-off-by: Hannes Reinecke
    Signed-off-by: Martin K. Petersen

    Hannes Reinecke
     

11 Jan, 2021

1 commit


23 Dec, 2020

1 commit

  • Pull Kconfig updates from Masahiro Yamada:

    - Support only Qt5 for qconf

    - Validate signal/slot connection at compile time of qconf

    - Sanitize header includes

    * tag 'kconfig-v5.11' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild:
    kconfig: doc: fix $(fileno) to $(filename)
    kconfig: fix return value of do_error_if()
    kconfig: clean up header inclusion
    kconfig: qconf: show Qt version in the About dialog
    kconfig: make lkc.h self-sufficient #include-wise
    kconfig: qconf: convert to Qt5 new signal/slot connection syntax
    kconfig: qconf: use a variable to pass packages to pkg-config
    kconfig: qconf: drop Qt4 support

    Linus Torvalds
     

21 Dec, 2020

10 commits

  • This is a typo.

    Signed-off-by: Masahiro Yamada

    Masahiro Yamada
     
  • Document best practises for using architecture and platform dependencies.

    Signed-off-by: Geert Uytterhoeven
    Signed-off-by: Masahiro Yamada

    Geert Uytterhoeven
     
  • Document best practises for using COMPILE_TEST dependencies.

    Signed-off-by: Geert Uytterhoeven
    Acked-by: Arnd Bergmann
    Signed-off-by: Masahiro Yamada

    Geert Uytterhoeven
     
  • There is no explanation about subdir-y.

    Let's document it.

    Signed-off-by: Masahiro Yamada
    Reviewed-by: Randy Dunlap

    Masahiro Yamada
     
  • The difference between extra-y and always-y is obscure.

    Basically, Kbuild builds targets listed in extra-y and always-y in
    visited Makefiles without relying on any dependency.

    The difference is that extra-y is used to list the targets needed for
    vmlinux whereas always-y is used to list the targets that must be always
    built irrespective of final targets.

    Kbuild skips extra-y when it is building only modules (i.e.
    'make modules'). This is the long-standing behavior since extra-y was
    introduced in 2003, and it is explained in that commit log [1].

    For clarification, this is the extra-y vs always-y table:

    extra-y always-y
    'make' y y
    'make vmlinux' y y
    'make modules' n y

    Kbuild skips extra-y also when building external modules since obviously
    it never builds vmlinux.

    Unfortunately, extra-y is wrongly used in many places of upstream code,
    and even in external modules.

    Using extra-y in external module Makefiles is wrong. What you should
    use is probably always-y or 'targets'.

    The current documentation for extra-y is misleading. I rewrote it, and
    moved it to the section 3.7.

    always-y is not documented anywhere. I added.

    [1]: https://git.kernel.org/pub/scm/linux/kernel/git/history/history.git/commit/?id=f94e5fd7e5d09a56a60670a9bb211a791654bba8

    Signed-off-by: Masahiro Yamada
    Reviewed-by: Randy Dunlap

    Masahiro Yamada
     
  • The if_changed macro is currently explained in the section
    "Commands useful for building a boot image", but the use of
    if_changed is not limited to the boot image.

    It is often used together with custom rules. Let's split it as a
    separate section, and insert it after the "Custom Rules" section.

    I slightly reworded the explanation, re-numbered to fill the
    section, and also fixed the broken indentation of the Note: part.

    Signed-off-by: Masahiro Yamada

    Masahiro Yamada
     
  • The two sections "3.10 Special Rules" and "7.8 Custom kbuild commands"
    are related because you must understand both of them when you write
    custom rules.

    Actually I do not understand the policy about what to go into
    "3 The kbuild files" and what into "7 Architecture Makefile".

    This commit reworks the custom rule explanation as follows:

    - Merged "7.8 Custom kbuild commands" into "3.10 Special Rules".

    - Reword "Special Rules" to "Custom Rules" for consistency.

    - Update the example for kecho because the blackfin Makefile
    does not exist any more.

    - Replace the example for cmd_ with a simpler one.

    Signed-off-by: Masahiro Yamada

    Masahiro Yamada
     
  • Fix stale information:

    - Fix the section number in the reference from 6.4 to 7.4.

    - Remove init-y and net-y. They were removed by commit 23febe375d94
    ("kbuild: merge init-y into core-y") and commit 95fb6317b3ab
    ("kbuild: merge net-y and virt-y into drivers-y"), respectively.

    - Update the example because arch/sparc64/Makefile does not exit.

    Signed-off-by: Masahiro Yamada

    Masahiro Yamada
     
  • Precisely speaking, the arch directory is specified by $(SRCARCH),
    not $(ARCH).

    In old days, $(ARCH) actually matched to the arch directory because
    32-bit and 64-bit were supported as separate architectures.

    Most architectures (except arm/arm64) were unified like follows:

    arch/i386, arch/x86_64 -> arch/x86
    arch/sh, arch/sh64 -> arch/sh
    arch/sparc, arch/sparc64 -> arch/sparc

    To not break the user interface, commit 6752ed90da03 ("Kbuild: allow
    arch/xxx to use a different source path") introduced SRCARCH to point
    to the arch directory, still allowing to pass in the former ARCH=i386
    or ARCH=x86_64.

    Update the documents for preciseness, and add the explanation of SRCARCH.

    Signed-off-by: Masahiro Yamada
    Reviewed-by: Randy Dunlap

    Masahiro Yamada
     
  • This line was written in 2003. Now we have much more Makefiles.

    The number of Makefiles is not important. The point is we have a
    Makefile in (almost) every directory.

    Signed-off-by: Masahiro Yamada

    Masahiro Yamada
     

02 Nov, 2020

1 commit

  • The "size" tool has been solely used by s390 to enforce .bss section usage
    restrictions in early startup code. Since commit 980d5f9ab36b ("s390/boot:
    enable .bss section for compressed kernel") and commit 2e83e0eb85ca
    ("s390: clean .bss before running uncompressed kernel") these restrictions
    have been lifted for the decompressor and uncompressed kernel and the
    size tool is now unused.

    Signed-off-by: Vasily Gorbik
    Reviewed-by: Nathan Chancellor
    Signed-off-by: Masahiro Yamada

    Vasily Gorbik
     

14 Oct, 2020

1 commit

  • During an investigation to fix up the execute bits of scripts in the
    kernel repository, Andrew Morton and Kees Cook pointed out that the
    execute bit should not matter, and that build scripts cannot rely on that.
    Kees could not point to any documentation, though.

    Masahiro Yamada explained the convention of setting execute bits to make
    it easier for manual script invocation.

    Provide some basic documentation how the build shall invoke scripts, such
    that the execute bits do not matter, and acknowledge that execute bits are
    useful nonetheless.

    This serves as reference for further clean-up patches in the future.

    Suggested-by: Andrew Morton
    Suggested-by: Kees Cook
    Signed-off-by: Lukas Bulwahn
    Signed-off-by: Andrew Morton
    Cc: Masahiro Yamada
    Cc: Michal Marek
    Cc: Jonathan Corbet
    Cc: Ujjwal Kumar
    Cc: Lukas Bulwahn
    Link: https://lore.kernel.org/lkml/20200830174409.c24c3f67addcce0cea9a9d4c@linux-foundation.org/
    Link: https://lore.kernel.org/lkml/202008271102.FEB906C88@keescook/
    Link: https://lore.kernel.org/linux-kbuild/CAK7LNAQdrvMkDA6ApDJCGr+5db8SiPo=G+p8EiOvnnGvEN80gA@mail.gmail.com/
    Link: https://lkml.kernel.org/r/20201001075723.24246-1-lukas.bulwahn@gmail.com
    Signed-off-by: Linus Torvalds

    Lukas Bulwahn
     

13 Oct, 2020

1 commit

  • Pull documentation updates from Jonathan Corbet:
    "As hoped, things calmed down for docs this cycle; fewer changes and
    almost no conflicts at all. This includes:

    - A reworked and expanded user-mode Linux document

    - Some simplifications and improvements for submitting-patches.rst

    - An emergency fix for (some) problems with Sphinx 3.x

    - Some welcome automarkup improvements to automatically generate
    cross-references to struct definitions and other documents

    - The usual collection of translation updates, typo fixes, etc"

    * tag 'docs-5.10' of git://git.lwn.net/linux: (81 commits)
    gpiolib: Update indentation in driver.rst for code excerpts
    Documentation/admin-guide: tainted-kernels: Fix typo occured
    Documentation: better locations for sysfs-pci, sysfs-tagging
    docs: programming-languages: refresh blurb on clang support
    Documentation: kvm: fix a typo
    Documentation: Chinese translation of Documentation/arm64/amu.rst
    doc: zh_CN: index files in arm64 subdirectory
    mailmap: add entry for
    doc: seq_file: clarify role of *pos in ->next()
    docs: trace: ring-buffer-design.rst: use the new SPDX tag
    Documentation: kernel-parameters: clarify "module." parameters
    Fix references to nommu-mmap.rst
    docs: rewrite admin-guide/sysctl/abi.rst
    docs: fb: Remove vesafb scrollback boot option
    docs: fb: Remove sstfb scrollback boot option
    docs: fb: Remove matroxfb scrollback boot option
    docs: fb: Remove framebuffer scrollback boot option
    docs: replace the old User Mode Linux HowTo with a new one
    Documentation/admin-guide: blockdev/ramdisk: remove use of "rdev"
    Documentation/admin-guide: README & svga: remove use of "rdev"
    ...

    Linus Torvalds
     

26 Sep, 2020

1 commit

  • clang --target= is how we can specify a particular toolchain
    triple to be use, fix the two occurences in the documentation.

    Fixes: fcf1b6a35c16 ("Documentation/llvm: add documentation on building w/ Clang/LLVM")
    Signed-off-by: Florian Fainelli
    Reviewed-by: Nick Desaulniers
    Reviewed-by: Nathan Chancellor
    Signed-off-by: Masahiro Yamada

    Florian Fainelli
     

03 Sep, 2020

1 commit

  • This is a general cleanup of kbuild/makefiles.rst:

    * Use "Chapter" for major heading references and use "section" for
    the next-level heading references, for consistency.
    * Section 3.8 was deleted long ago.
    * Drop the ending ':' in section names in the contents list.
    * Correct some section numbering references.
    * Correct verb agreement typo.
    * Fix run-on sentence punctuation.

    Signed-off-by: Randy Dunlap
    Signed-off-by: Masahiro Yamada

    Randy Dunlap
     

01 Sep, 2020

1 commit

  • Based on a vote at the LLVM BoF at Plumbers 2020, we decided to start
    small, supporting just one formal upstream release of LLVM for now.

    We can probably widen the support window of supported versions over
    time. Also, note that LLVM's release process is different than GCC's.
    GCC tends to have 1 major release per year while releasing minor updates
    to the past 3 major versions. LLVM tends to support one major release
    and one minor release every six months.

    Signed-off-by: Nick Desaulniers
    Tested-by: Gustavo A. R. Silva
    Tested-by: Nathan Chancellor
    Reviewed-by: Kees Cook
    Reviewed-by: Nathan Chancellor
    Reviewed-by: Masahiro Yamada
    Acked-by: Will Deacon
    Link: https://lore.kernel.org/r/20200826191555.3350406-1-ndesaulniers@google.com
    Signed-off-by: Jonathan Corbet

    Nick Desaulniers
     

31 Aug, 2020

1 commit

  • While reviewing a separate patch, I noticed that the formatting of the
    commands, variables, and arguments was not in a monospaced font like the
    rest of the Kbuild documentation (see kbuild/kconfig.rst for an
    example). This is due to a lack of "::" before indented command blocks
    and single backticks instead of double backticks for inline formatting.

    Add those so that the document looks nicer in an HTML format, while not
    ruining the look in plain text.

    As a result of this, we can remove the escaped backslashes in the last
    code block and move them to single backslashes.

    Signed-off-by: Nathan Chancellor
    Reviewed-by: Nick Desaulniers
    Signed-off-by: Masahiro Yamada

    Nathan Chancellor
     

10 Aug, 2020

1 commit

  • Pull Kbuild updates from Masahiro Yamada:

    - run the checker (e.g. sparse) after the compiler

    - remove unneeded cc-option tests for old compiler flags

    - fix tar-pkg to install dtbs

    - introduce ccflags-remove-y and asflags-remove-y syntax

    - allow to trace functions in sub-directories of lib/

    - introduce hostprogs-always-y and userprogs-always-y syntax

    - various Makefile cleanups

    * tag 'kbuild-v5.9' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild:
    kbuild: stop filtering out $(GCC_PLUGINS_CFLAGS) from cc-option base
    kbuild: include scripts/Makefile.* only when relevant CONFIG is enabled
    kbuild: introduce hostprogs-always-y and userprogs-always-y
    kbuild: sort hostprogs before passing it to ifneq
    kbuild: move host .so build rules to scripts/gcc-plugins/Makefile
    kbuild: Replace HTTP links with HTTPS ones
    kbuild: trace functions in subdirectories of lib/
    kbuild: introduce ccflags-remove-y and asflags-remove-y
    kbuild: do not export LDFLAGS_vmlinux
    kbuild: always create directories of targets
    powerpc/boot: add DTB to 'targets'
    kbuild: buildtar: add dtbs support
    kbuild: remove cc-option test of -ffreestanding
    kbuild: remove cc-option test of -fno-stack-protector
    Revert "kbuild: Create directory for target DTB"
    kbuild: run the checker after the compiler

    Linus Torvalds