19 Jul, 2018

1 commit

  • Pull networking fixes from David Miller:
    "Lots of fixes, here goes:

    1) NULL deref in qtnfmac, from Gustavo A. R. Silva.

    2) Kernel oops when fw download fails in rtlwifi, from Ping-Ke Shih.

    3) Lost completion messages in AF_XDP, from Magnus Karlsson.

    4) Correct bogus self-assignment in rhashtable, from Rishabh
    Bhatnagar.

    5) Fix regression in ipv6 route append handling, from David Ahern.

    6) Fix masking in __set_phy_supported(), from Heiner Kallweit.

    7) Missing module owner set in x_tables icmp, from Florian Westphal.

    8) liquidio's timeouts are HZ dependent, fix from Nicholas Mc Guire.

    9) Link setting fixes for sh_eth and ravb, from Vladimir Zapolskiy.

    10) Fix NULL deref when using chains in act_csum, from Davide Caratti.

    11) XDP_REDIRECT needs to check if the interface is up and whether the
    MTU is sufficient. From Toshiaki Makita.

    12) Net diag can do a double free when killing TCP_NEW_SYN_RECV
    connections, from Lorenzo Colitti.

    13) nf_defrag in ipv6 can unnecessarily hold onto dst entries for a
    full minute, delaying device unregister. From Eric Dumazet.

    14) Update MAC entries in the correct order in ixgbe, from Alexander
    Duyck.

    15) Don't leave partial mangles bpf program in jit_subprogs, from
    Daniel Borkmann.

    16) Fix pfmemalloc SKB state propagation, from Stefano Brivio.

    17) Fix ACK handling in DCTCP congestion control, from Yuchung Cheng.

    18) Use after free in tun XDP_TX, from Toshiaki Makita.

    19) Stale ipv6 header pointer in ipv6 gre code, from Prashant Bhole.

    20) Don't reuse remainder of RX page when XDP is set in mlx4, from
    Saeed Mahameed.

    21) Fix window probe handling of TCP rapair sockets, from Stefan
    Baranoff.

    22) Missing socket locking in smc_ioctl(), from Ursula Braun.

    23) IPV6_ILA needs DST_CACHE, from Arnd Bergmann.

    24) Spectre v1 fix in cxgb3, from Gustavo A. R. Silva.

    25) Two spots in ipv6 do a rol32() on a hash value but ignore the
    result. Fixes from Colin Ian King"

    * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (176 commits)
    tcp: identify cryptic messages as TCP seq # bugs
    ptp: fix missing break in switch
    hv_netvsc: Fix napi reschedule while receive completion is busy
    MAINTAINERS: Drop inactive Vitaly Bordug's email
    net: cavium: Add fine-granular dependencies on PCI
    net: qca_spi: Fix log level if probe fails
    net: qca_spi: Make sure the QCA7000 reset is triggered
    net: qca_spi: Avoid packet drop during initial sync
    ipv6: fix useless rol32 call on hash
    ipv6: sr: fix useless rol32 call on hash
    net: sched: Using NULL instead of plain integer
    net: usb: asix: replace mii_nway_restart in resume path
    net: cxgb3_main: fix potential Spectre v1
    lib/rhashtable: consider param->min_size when setting initial table size
    net/smc: reset recv timeout after clc handshake
    net/smc: add error handling for get_user()
    net/smc: optimize consumer cursor updates
    net/nfc: Avoid stalls when nfc_alloc_send_skb() returned NULL.
    ipv6: ila: select CONFIG_DST_CACHE
    net: usb: rtl8150: demote allmulti message to dev_dbg()
    ...

    Linus Torvalds
     

17 Jul, 2018

1 commit


15 Jul, 2018

1 commit

  • Multiline statements with invalid %p uses produce multiple
    warnings. Fix that.

    e.g.:

    $ cat t_block.c
    void foo(void)
    {
    MY_DEBUG(drv->foo,
    "%pk",
    foo->boo);
    }

    $ ./scripts/checkpatch.pl -f t_block.c
    WARNING: Missing or malformed SPDX-License-Identifier tag in line 1
    #1: FILE: t_block.c:1:
    +void foo(void)

    WARNING: Invalid vsprintf pointer extension '%pk'
    #3: FILE: t_block.c:3:
    + MY_DEBUG(drv->foo,
    + "%pk",
    + foo->boo);

    WARNING: Invalid vsprintf pointer extension '%pk'
    #3: FILE: t_block.c:3:
    + MY_DEBUG(drv->foo,
    + "%pk",
    + foo->boo);

    total: 0 errors, 3 warnings, 6 lines checked

    NOTE: For some of the reported defects, checkpatch may be able to
    mechanically convert to the typical style using --fix or --fix-inplace.

    t_block.c has style problems, please review.

    NOTE: If any of the errors are false positives, please report
    them to the maintainer, see CHECKPATCH in MAINTAINERS.

    Link: http://lkml.kernel.org/r/9e8341bbe4c9877d159cb512bb701043cbfbb10b.camel@perches.com
    Signed-off-by: Joe Perches
    Cc: "Tobin C. Harding"
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Joe Perches
     

14 Jul, 2018

1 commit

  • …t/masahiroy/linux-kbuild

    Pull Kbuild fixes from Masahiro Yamada:

    - update Kbuild and Kconfig documents

    - sanitize -I compiler option handling

    - update extract-vmlinux script to recognize LZ4 and ZSTD

    - fix tools Makefiles

    - update tags.sh to handle __ro_after_init

    - suppress warnings in case getconf does not recognize LFS_* parameters

    * tag 'kbuild-fixes-v4.18-2' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild:
    kbuild: suppress warnings from 'getconf LFS_*'
    scripts/tags.sh: add __ro_after_init
    tools: build: Use HOSTLDFLAGS with fixdep
    tools: build: Fixup host c flags
    tools build: fix # escaping in .cmd files for future Make
    scripts: teach extract-vmlinux about LZ4 and ZSTD
    kbuild: remove duplicated comments about PHONY
    kbuild: .PHONY is not a variable, but PHONY is
    kbuild: do not drop -I without parameter
    kbuild: document the KBUILD_KCONFIG env. variable
    kconfig: update user kconfig tools doc.
    kbuild: delete INSTALL_FW_PATH from kbuild documentation
    kbuild: update ARCH alias info for sparc
    kbuild: update ARCH alias info for sh

    Linus Torvalds
     

12 Jul, 2018

1 commit


08 Jul, 2018

1 commit


06 Jul, 2018

2 commits

  • The comment is the same as in the top-level Makefile.

    Also, the comments contain typos:
    - the .PHONY variable -> the PHONY variable
    - se we can ... -> so we can ...

    Instead of fixing the typos, just remove the duplicated comments.

    Signed-off-by: Masahiro Yamada

    Masahiro Yamada
     
  • The comment line for addtree says "skip if -I has no parameter".

    What it actually does is "drop if -I has no parameter". For example,
    if you have the compiler flag '-I foo' (a space between), it will be
    converted to 'foo'. This completely changes the meaning.

    What we want is, "do nothing" for -I without parameter so that
    '-I foo' is kept as-is.

    Signed-off-by: Masahiro Yamada

    Masahiro Yamada
     

03 Jul, 2018

1 commit

  • Pull networking fixes from David Miller:

    1) Verify netlink attributes properly in nf_queue, from Eric Dumazet.

    2) Need to bump memory lock rlimit for test_sockmap bpf test, from
    Yonghong Song.

    3) Fix VLAN handling in lan78xx driver, from Dave Stevenson.

    4) Fix uninitialized read in nf_log, from Jann Horn.

    5) Fix raw command length parsing in mlx5, from Alex Vesker.

    6) Cleanup loopback RDS connections upon netns deletion, from Sowmini
    Varadhan.

    7) Fix regressions in FIB rule matching during create, from Jason A.
    Donenfeld and Roopa Prabhu.

    8) Fix mpls ether type detection in nfp, from Pieter Jansen van Vuuren.

    9) More bpfilter build fixes/adjustments from Masahiro Yamada.

    10) Fix XDP_{TX,REDIRECT} flushing in various drivers, from Jesper
    Dangaard Brouer.

    11) fib_tests.sh file permissions were broken, from Shuah Khan.

    12) Make sure BH/preemption is disabled in data path of mac80211, from
    Denis Kenzior.

    13) Don't ignore nla_parse_nested() return values in nl80211, from
    Johannes berg.

    14) Properly account sock objects ot kmemcg, from Shakeel Butt.

    15) Adjustments to setting bpf program permissions to read-only, from
    Daniel Borkmann.

    16) TCP Fast Open key endianness was broken, it always took on the host
    endiannness. Whoops. Explicitly make it little endian. From Yuching
    Cheng.

    17) Fix prefix route setting for link local addresses in ipv6, from
    David Ahern.

    18) Potential Spectre v1 in zatm driver, from Gustavo A. R. Silva.

    19) Various bpf sockmap fixes, from John Fastabend.

    20) Use after free for GRO with ESP, from Sabrina Dubroca.

    21) Passing bogus flags to crypto_alloc_shash() in ipv6 SR code, from
    Eric Biggers.

    * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (87 commits)
    qede: Adverstise software timestamp caps when PHC is not available.
    qed: Fix use of incorrect size in memcpy call.
    qed: Fix setting of incorrect eswitch mode.
    qed: Limit msix vectors in kdump kernel to the minimum required count.
    ipvlan: call dev_change_flags when ipvlan mode is reset
    ipv6: sr: fix passing wrong flags to crypto_alloc_shash()
    net: fix use-after-free in GRO with ESP
    tcp: prevent bogus FRTO undos with non-SACK flows
    bpf: sockhash, add release routine
    bpf: sockhash fix omitted bucket lock in sock_close
    bpf: sockmap, fix smap_list_map_remove when psock is in many maps
    bpf: sockmap, fix crash when ipv6 sock is added
    net: fib_rules: bring back rule_exists to match rule during add
    hv_netvsc: split sub-channel setup into async and sync
    net: use dev_change_tx_queue_len() for SIOCSIFTXQLEN
    atm: zatm: Fix potential Spectre v1
    s390/qeth: consistently re-enable device features
    s390/qeth: don't clobber buffer on async TX completion
    s390/qeth: avoid using is_multicast_ether_addr_64bits on (u8 *)[6]
    s390/qeth: fix race when setting MAC address
    ...

    Linus Torvalds
     

01 Jul, 2018

1 commit

  • …masahiroy/linux-kbuild

    Pull Kbuild fixes from Masahiro Yamada:

    - introduce __diag_* macros and suppress -Wattribute-alias warnings
    from GCC 8

    - fix stack protector test script for x86_64

    - fix line number handling in Kconfig

    - document that '#' starts a comment in Kconfig

    - handle P_SYMBOL property in dump debugging of Kconfig

    - correct help message of LD_DEAD_CODE_DATA_ELIMINATION

    - fix occasional segmentation faults in Kconfig

    * tag 'kbuild-fixes-v4.18' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild:
    kconfig: loop boundary condition fix
    kbuild: reword help of LD_DEAD_CODE_DATA_ELIMINATION
    kconfig: handle P_SYMBOL in print_symbol()
    kconfig: document Kconfig source file comments
    kconfig: fix line numbers for if-entries in menu tree
    stack-protector: Fix test with 32-bit userland and CONFIG_64BIT=y
    powerpc: Remove -Wattribute-alias pragmas
    disable -Wattribute-alias warning for SYSCALL_DEFINEx()
    kbuild: add macro for controlling warnings to linux/compiler.h

    Linus Torvalds
     

28 Jun, 2018

3 commits

  • If buf[-1] just happens to hold the byte 0x0A, then nread can wrap around
    to (size_t)-1, leading to invalid memory accesses.

    This has caused segmentation faults when trying to build the latest
    kernel snapshots for i686 in Fedora:
    https://bugzilla.redhat.com/show_bug.cgi?id=1592374

    Signed-off-by: Jerry James
    [alexpl@fedoraproject.org: reformatted patch for submission]
    Signed-off-by: Alexander Ploumistos
    Signed-off-by: Masahiro Yamada

    Jerry James
     
  • Each symbol has a property of type P_SYMBOL since commit
    59e89e3ddf85 (kconfig: save location of config symbols).
    Handle those properties in print_symbol().

    Further, place a pointer to print_symbol() in the comment above the
    list of known property type.

    Signed-off-by: Dirk Gouders
    Signed-off-by: Masahiro Yamada

    Dirk Gouders
     
  • With the brand-new syntax extension of Kconfig, we can directly
    check the compiler capability in the configuration phase.

    If the cc-can-link.sh fails, the BPFILTER_UMH is automatically
    hidden by the dependency.

    I also deleted 'default n', which is no-op.

    Signed-off-by: Masahiro Yamada
    Acked-by: Daniel Borkmann
    Acked-by: Alexei Starovoitov
    Signed-off-by: David S. Miller

    Masahiro Yamada
     

27 Jun, 2018

1 commit

  • It may not be the actual real stable mailing list address, but the
    stable scripts to actually pick up on the traditional way to mark stable
    patches.

    There are also reasons to explicitly avoid using the actual mailing list
    address, since security patches with embargo dates generally do want the
    stable marking, but don't want tools etc to mistakenly send the patch
    out to the mailing list early.

    So don't warn for things that are still actively used and explicitly
    supported.

    Signed-off-by: Linus Torvalds

    Linus Torvalds
     

25 Jun, 2018

2 commits

  • The line numers for if-entries in the menu tree are off by one or more
    lines which is confusing when debugging for correctness of unrelated changes.

    According to the git log, commit a02f0570ae201c49 (kconfig: improve
    error handling in the parser) was the last one that changed that part
    of the parser and replaced

    "if_entry: T_IF expr T_EOL"
    by
    "if_entry: T_IF expr nl"

    but the commit message does not state why this has been done.

    When reverting that part of the commit, only the line numers are
    corrected (checked with cdebug = DEBUG_PARSE in zconf.y), otherwise
    the menu tree remains unchanged (checked with zconfdump() enabled in
    conf.c).

    An example for the corrected line numbers:

    drivers/soc/Kconfig:15:source drivers/soc/tegra/Kconfig
    drivers/soc/tegra/Kconfig:4:if
    drivers/soc/tegra/Kconfig:6:if

    changes to:

    drivers/soc/Kconfig:15:source drivers/soc/tegra/Kconfig
    drivers/soc/tegra/Kconfig:1:if
    drivers/soc/tegra/Kconfig:4:if

    Signed-off-by: Dirk Gouders
    Signed-off-by: Masahiro Yamada

    Dirk Gouders
     
  • When building a 64-bit 4.18-rc1 kernel with a 32-bit userland, I
    noticed that stack protection was silently disabled. Adding -m64 in
    gcc-x86_64-has-stack-protector.sh fixed that, similar to what has been
    noticed in commit 2a61f4747eea ("stack-protector: test compiler
    capability in Kconfig and drop AUTO mode") for
    gcc-x86_32-has-stack-protector.sh.

    Signed-off-by: Sven Joachim
    Signed-off-by: Masahiro Yamada

    Sven Joachim
     

22 Jun, 2018

1 commit

  • Non gcc-5 builds with CONFIG_STACK_VALIDATION=y and
    SKIP_STACK_VALIDATION=1 fail.
    Example output:
    /bin/sh: init/.tmp_main.o: Permission denied

    commit 96f60dfa5819 ("trace: Use -mcount-record for dynamic ftrace"),
    added a mismatched endif. This causes cmd_objtool to get mistakenly
    set.

    Relocate endif to balance the newly added -record-mcount check.

    Link: http://lkml.kernel.org/r/20180608214746.136554-1-gthelen@google.com

    Fixes: 96f60dfa5819 ("trace: Use -mcount-record for dynamic ftrace")
    Acked-by: Andi Kleen
    Tested-by: David Rientjes
    Signed-off-by: Greg Thelen
    Signed-off-by: Steven Rostedt (VMware)

    Greg Thelen
     

16 Jun, 2018

6 commits


13 Jun, 2018

1 commit

  • Pull more Kbuild updates from Masahiro Yamada:

    - fix some bugs introduced by the recent Kconfig syntax extension

    - add some symbols about compiler information in Kconfig, such as
    CC_IS_GCC, CC_IS_CLANG, GCC_VERSION, etc.

    - test compiler capability for the stack protector in Kconfig, and
    clean-up Makefile

    - test compiler capability for GCC-plugins in Kconfig, and clean-up
    Makefile

    - allow to enable GCC-plugins for COMPILE_TEST

    - test compiler capability for KCOV in Kconfig and correct dependency

    - remove auto-detect mode of the GCOV format, which is now more nicely
    handled in Kconfig

    - test compiler capability for mprofile-kernel on PowerPC, and clean-up
    Makefile

    - misc cleanups

    * tag 'kbuild-v4.18-2' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild:
    linux/linkage.h: replace VMLINUX_SYMBOL_STR() with __stringify()
    kconfig: fix localmodconfig
    sh: remove no-op macro VMLINUX_SYMBOL()
    powerpc/kbuild: move -mprofile-kernel check to Kconfig
    Documentation: kconfig: add recommended way to describe compiler support
    gcc-plugins: disable GCC_PLUGIN_STRUCTLEAK_BYREF_ALL for COMPILE_TEST
    gcc-plugins: allow to enable GCC_PLUGINS for COMPILE_TEST
    gcc-plugins: test plugin support in Kconfig and clean up Makefile
    gcc-plugins: move GCC version check for PowerPC to Kconfig
    kcov: test compiler capability in Kconfig and correct dependency
    gcov: remove CONFIG_GCOV_FORMAT_AUTODETECT
    arm64: move GCC version check for ARCH_SUPPORTS_INT128 to Kconfig
    kconfig: add CC_IS_CLANG and CLANG_VERSION
    kconfig: add CC_IS_GCC and GCC_VERSION
    stack-protector: test compiler capability in Kconfig and drop AUTO mode
    kbuild: fix endless syncconfig in case arch Makefile sets CROSS_COMPILE

    Linus Torvalds
     

11 Jun, 2018

4 commits

  • When kconfig syntax moved to use $(FOO) for environment variables
    localmodconfig was not updated.
    Fix so it now works with the new syntax $(FOO)

    Fixes: 104daea149c4 ("kconfig: reference environment variables directly and remove 'option env='")
    Reported-by: Kevin Locke
    Reported-by: Andrei Vagin
    Signed-off-by: Sam Ravnborg
    Tested-by: Kevin Locke
    Signed-off-by: Masahiro Yamada

    Sam Ravnborg
     
  • Run scripts/gcc-plugin.sh from Kconfig so that users can enable
    GCC_PLUGINS only when the compiler supports building plugins.

    Kconfig defines a new symbol, PLUGIN_HOSTCC. This will contain
    the compiler (g++ or gcc) used for building plugins, or empty
    if the plugin can not be supported at all.

    This allows us to remove all ugly testing in Makefile.gcc-plugins.

    Signed-off-by: Masahiro Yamada
    Acked-by: Kees Cook

    Masahiro Yamada
     
  • For PowerPC, GCC 5.2 is the requirement for GCC plugins. Move the
    version check to Kconfig so that the GCC plugin menus will be hidden
    if an older compiler is in use.

    Signed-off-by: Masahiro Yamada
    Acked-by: Andrew Donnellan
    Reviewed-by: Kees Cook

    Masahiro Yamada
     
  • As Documentation/kbuild/kconfig-language.txt notes, 'select' should be
    be used with care - it forces a lower limit of another symbol, ignoring
    the dependency. Currently, KCOV can select GCC_PLUGINS even if arch
    does not select HAVE_GCC_PLUGINS. This could cause the unmet direct
    dependency.

    Now that Kconfig can test compiler capability, let's handle this in a
    more sophisticated way.

    There are two ways to enable KCOV; use the compiler that natively
    supports -fsanitize-coverage=trace-pc, or build the SANCOV plugin if
    the compiler has ability to build GCC plugins. Hence, the correct
    dependency for KCOV is:

    depends on CC_HAS_SANCOV_TRACE_PC || GCC_PLUGINS

    You do not need to build the SANCOV plugin if the compiler already
    supports -fsanitize-coverage=trace-pc. Hence, the select should be:

    select GCC_PLUGIN_SANCOV if !CC_HAS_SANCOV_TRACE_PC

    With this, GCC_PLUGIN_SANCOV is selected only when necessary, so
    scripts/Makefile.gcc-plugins can be cleaner.

    I also cleaned up Kconfig and scripts/Makefile.kcov as well.

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

    Masahiro Yamada
     

10 Jun, 2018

1 commit

  • Pull staging/IIO updates from Greg KH:
    "Here is the big staging and IIO driver update for 4.18-rc1.

    It was delayed as I wanted to make sure the final driver deletions did
    not cause any major merge issues, and all now looks good.

    There are a lot of patches here, just over 1000. The diffstat summary
    shows the major changes here:

    1007 files changed, 16828 insertions(+), 227770 deletions(-)

    Because of this, we might be close to shrinking the overall kernel
    source code size for two releases in a row.

    There was loads of work in this release cycle, primarily:

    - tons of ks7010 driver cleanups

    - lots of mt7621 driver fixes and cleanups

    - most driver cleanups

    - wilc1000 fixes and cleanups

    - lots and lots of IIO driver cleanups and new additions

    - debugfs cleanups for all staging drivers

    - lots of other staging driver cleanups and fixes, the shortlog has
    the full details.

    but the big user-visable things here are the removal of 3 chunks of
    code:

    - ncpfs and ipx were removed on schedule, no one has cared about this
    code since it moved to staging last year, and if it needs to come
    back, it can be reverted.

    - lustre file system is removed.

    I've ranted at the lustre developers about once a year for the past
    5 years, with no real forward progress at all to clean things up
    and get the code into the "real" part of the kernel.

    Given that the lustre developers continue to work on an external
    tree and try to port those changes to the in-kernel tree every once
    in a while, this whole thing really really is not working out at
    all. So I'm deleting it so that the developers can spend the time
    working in their out-of-tree location and get things cleaned up
    properly to get merged into the tree correctly at a later date.

    Because of these file removals, you will have merge issues on some of
    these files (2 in the ipx code, 1 in the ncpfs code, and 1 in the
    atomisp driver). Just delete those files, it's a simple merge :)

    All of this has been in linux-next for a while with no reported
    problems"

    * tag 'staging-4.18-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging: (1011 commits)
    staging: ipx: delete it from the tree
    ncpfs: remove uapi .h files
    ncpfs: remove Documentation
    ncpfs: remove compat functionality
    staging: ncpfs: delete it
    staging: lustre: delete the filesystem from the tree.
    staging: vc04_services: no need to save the log debufs dentries
    staging: vc04_services: vchiq_debugfs_log_entry can be a void *
    staging: vc04_services: remove struct vchiq_debugfs_info
    staging: vc04_services: move client dbg directory into static variable
    staging: vc04_services: remove odd vchiq_debugfs_top() wrapper
    staging: vc04_services: no need to check debugfs return values
    staging: mt7621-gpio: reorder includes alphabetically
    staging: mt7621-gpio: change gc_map to don't use pointers
    staging: mt7621-gpio: use GPIOF_DIR_OUT and GPIOF_DIR_IN macros instead of custom values
    staging: mt7621-gpio: change 'to_mediatek_gpio' to make just a one line return
    staging: mt7621-gpio: dt-bindings: update documentation for #interrupt-cells property
    staging: mt7621-gpio: update #interrupt-cells for the gpio node
    staging: mt7621-gpio: dt-bindings: complete documentation for the gpio
    staging: mt7621-dts: add missing properties to gpio node
    ...

    Linus Torvalds
     

08 Jun, 2018

9 commits

  • This will be useful to describe the clang version dependency.

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

    Masahiro Yamada
     
  • Move the test for -fstack-protector(-strong) option to Kconfig.

    If the compiler does not support the option, the corresponding menu
    is automatically hidden. If STRONG is not supported, it will fall
    back to REGULAR. If REGULAR is not supported, it will be disabled.
    This means, AUTO is implicitly handled by the dependency solver of
    Kconfig, hence removed.

    I also turned the 'choice' into only two boolean symbols. The use of
    'choice' is not a good idea here, because all of all{yes,mod,no}config
    would choose the first visible value, while we want allnoconfig to
    disable as many features as possible.

    X86 has additional shell scripts in case the compiler supports those
    options, but generates broken code. I added CC_HAS_SANE_STACKPROTECTOR
    to test this. I had to add -m32 to gcc-x86_32-has-stack-protector.sh
    to make it work correctly.

    Signed-off-by: Masahiro Yamada
    Acked-by: Kees Cook

    Masahiro Yamada
     
  • Merge updates from Andrew Morton:

    - a few misc things

    - ocfs2 updates

    - v9fs updates

    - MM

    - procfs updates

    - lib/ updates

    - autofs updates

    * emailed patches from Andrew Morton : (118 commits)
    autofs: small cleanup in autofs_getpath()
    autofs: clean up includes
    autofs: comment on selinux changes needed for module autoload
    autofs: update MAINTAINERS entry for autofs
    autofs: use autofs instead of autofs4 in documentation
    autofs: rename autofs documentation files
    autofs: create autofs Kconfig and Makefile
    autofs: delete fs/autofs4 source files
    autofs: update fs/autofs4/Makefile
    autofs: update fs/autofs4/Kconfig
    autofs: copy autofs4 to autofs
    autofs4: use autofs instead of autofs4 everywhere
    autofs4: merge auto_fs.h and auto_fs4.h
    fs/binfmt_misc.c: do not allow offset overflow
    checkpatch: improve patch recognition
    lib/ucs2_string.c: add MODULE_LICENSE()
    lib/mpi: headers cleanup
    lib/percpu_ida.c: use _irqsave() instead of local_irq_save() + spin_lock
    lib/idr.c: remove simple_ida_lock
    lib/bitmap.c: micro-optimization for __bitmap_complement()
    ...

    Linus Torvalds
     
  • There are mode change and rename only patches that are unrecognized by
    checkpatch.

    Recognize them.

    [joe@perches.com: fix missing close parenthesis]
    Link: http://lkml.kernel.org/r/af44c893f6973393f2a5b11f1a8e5cd4c8bbbba5.camel@perches.com
    Link: http://lkml.kernel.org/r/974a407e6fa18abd5a965da39cc68986a4c4f091.1526949367.git.joe@perches.com
    Signed-off-by: Joe Perches
    Reported-by: Heinrich Schuchardt
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Joe Perches
     
  • There are mode change and rename only patches that are unrecognized
    by the get_maintainer.pl script.

    Recognize them.

    Link: http://lkml.kernel.org/r/bf63101a908d0ff51948164aa60e672368066186.1526949367.git.joe@perches.com
    Signed-off-by: Joe Perches
    Reported-by: Heinrich Schuchardt
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Joe Perches
     
  • We're already using a union of many fields here, so stop abusing the
    _mapcount and make page_type its own field. That implies renaming some of
    the machinery that creates PageBuddy, PageBalloon and PageKmemcg; bring
    back the PG_buddy, PG_balloon and PG_kmemcg names.

    As suggested by Kirill, make page_type a bitmask. Because it starts out
    life as -1 (thanks to sharing the storage with _mapcount), setting a page
    flag means clearing the appropriate bit. This gives us space for probably
    twenty or so extra bits (depending how paranoid we want to be about
    _mapcount underflow).

    Link: http://lkml.kernel.org/r/20180518194519.3820-3-willy@infradead.org
    Signed-off-by: Matthew Wilcox
    Acked-by: Kirill A. Shutemov
    Acked-by: Vlastimil Babka
    Cc: Christoph Lameter
    Cc: Dave Hansen
    Cc: Jérôme Glisse
    Cc: Lai Jiangshan
    Cc: Martin Schwidefsky
    Cc: Pekka Enberg
    Cc: Randy Dunlap
    Cc: Andrey Ryabinin
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Matthew Wilcox
     
  • Add the appropriate SPDX tag to these scripts.

    Miscellanea:

    o Add my copyright to checkpatch

    Link: http://lkml.kernel.org/r/d08e49e8f6562c58a63792aa64306d1851f81f4b.camel@perches.com
    Signed-off-by: Joe Perches
    Cc: Andy Whitcroft
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Joe Perches
     
  • Pull DeviceTree updates from Rob Herring:

    - Sync dtc with upstream version v1.4.6-21-g84e414b0b5bc. This adds new
    warnings which are either fixed or disabled by default (enabled with
    W=1).

    - Validate an untrusted offset in DT overlay function
    update_usages_of_a_phandle_reference

    - Fix a use after free error of_platform_device_destroy

    - Fix an off by 1 string errors in unittest

    - Avoid creating a struct device for OPP nodes

    - Update DT specific submitting-patches.txt with patch content and
    subject requirements.

    - Move some bindings to their proper subsystem locations

    - Add vendor prefixes for Kaohsiung, SiFive, Avnet, Wi2Wi, Logic PD,
    and ArcherMind

    - Add documentation for "no-gpio-delays" property in FSI bus GPIO
    master

    - Add compatible for r8a77990 SoC ravb ethernet block

    - More wack-a-mole removal of 'status' property in examples

    * tag 'devicetree-for-4.18' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux: (25 commits)
    dt-bindings: submitting-patches: add guidance on patch content and subject
    of: platform: stop accessing invalid dev in of_platform_device_destroy
    dt-bindings: net: ravb: Add support for r8a77990 SoC
    dt-bindings: Add vendor prefix for ArcherMind
    dt-bindings: fsi-master-gpio: Document "no-gpio-delays" property
    dt-bindings: Add vendor prefix for Logic PD
    of: overlay: validate offset from property fixups
    of: unittest: for strings, account for trailing \0 in property length field
    drm: rcar-du: disable dtc graph-endpoint warnings on DT overlays
    kbuild: disable new dtc graph and unit-address warnings
    scripts/dtc: Update to upstream version v1.4.6-21-g84e414b0b5bc
    MAINTAINERS: add keyword for devicetree overlay notifiers
    dt-bindings: define vendor prefix for Wi2Wi, Inc.
    dt-bindings: Add vendor prefix for Avnet, Inc.
    dt-bindings: Relocate Tegra20 memory controller bindings
    dt-bindings: Add "sifive" vendor prefix
    dt-bindings: exynos: move ADC binding to iio/adc/ directory
    dt-bindings: powerpc/4xx: move 4xx NDFC and EMAC bindings to subsystem directories
    dt-bindings: move various RNG bindings to rng/ directory
    dt-bindings: move various timer bindings to timer/ directory
    ...

    Linus Torvalds
     
  • Pull powerpc updates from Michael Ellerman:
    "Notable changes:

    - Support for split PMD page table lock on 64-bit Book3S (Power8/9).

    - Add support for HAVE_RELIABLE_STACKTRACE, so we properly support
    live patching again.

    - Add support for patching barrier_nospec in copy_from_user() and
    syscall entry.

    - A couple of fixes for our data breakpoints on Book3S.

    - A series from Nick optimising TLB/mm handling with the Radix MMU.

    - Numerous small cleanups to squash sparse/gcc warnings from Mathieu
    Malaterre.

    - Several series optimising various parts of the 32-bit code from
    Christophe Leroy.

    - Removal of support for two old machines, "SBC834xE" and "C2K"
    ("GEFanuc,C2K"), which is why the diffstat has so many deletions.

    And many other small improvements & fixes.

    There's a few out-of-area changes. Some minor ftrace changes OK'ed by
    Steve, and a fix to our powernv cpuidle driver. Then there's a series
    touching mm, x86 and fs/proc/task_mmu.c, which cleans up some details
    around pkey support. It was ack'ed/reviewed by Ingo & Dave and has
    been in next for several weeks.

    Thanks to: Akshay Adiga, Alastair D'Silva, Alexey Kardashevskiy, Al
    Viro, Andrew Donnellan, Aneesh Kumar K.V, Anju T Sudhakar, Arnd
    Bergmann, Balbir Singh, Cédric Le Goater, Christophe Leroy, Christophe
    Lombard, Colin Ian King, Dave Hansen, Fabio Estevam, Finn Thain,
    Frederic Barrat, Gautham R. Shenoy, Haren Myneni, Hari Bathini, Ingo
    Molnar, Jonathan Neuschäfer, Josh Poimboeuf, Kamalesh Babulal,
    Madhavan Srinivasan, Mahesh Salgaonkar, Mark Greer, Mathieu Malaterre,
    Matthew Wilcox, Michael Neuling, Michal Suchanek, Naveen N. Rao,
    Nicholas Piggin, Nicolai Stange, Olof Johansson, Paul Gortmaker, Paul
    Mackerras, Peter Rosin, Pridhiviraj Paidipeddi, Ram Pai, Rashmica
    Gupta, Ravi Bangoria, Russell Currey, Sam Bobroff, Samuel
    Mendoza-Jonas, Segher Boessenkool, Shilpasri G Bhat, Simon Guo,
    Souptick Joarder, Stewart Smith, Thiago Jung Bauermann, Torsten Duwe,
    Vaibhav Jain, Wei Yongjun, Wolfram Sang, Yisheng Xie, YueHaibing"

    * tag 'powerpc-4.18-1' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux: (251 commits)
    powerpc/64s/radix: Fix missing ptesync in flush_cache_vmap
    cpuidle: powernv: Fix promotion from snooze if next state disabled
    powerpc: fix build failure by disabling attribute-alias warning in pci_32
    ocxl: Fix missing unlock on error in afu_ioctl_enable_p9_wait()
    powerpc-opal: fix spelling mistake "Uniterrupted" -> "Uninterrupted"
    powerpc: fix spelling mistake: "Usupported" -> "Unsupported"
    powerpc/pkeys: Detach execute_only key on !PROT_EXEC
    powerpc/powernv: copy/paste - Mask SO bit in CR
    powerpc: Remove core support for Marvell mv64x60 hostbridges
    powerpc/boot: Remove core support for Marvell mv64x60 hostbridges
    powerpc/boot: Remove support for Marvell mv64x60 i2c controller
    powerpc/boot: Remove support for Marvell MPSC serial controller
    powerpc/embedded6xx: Remove C2K board support
    powerpc/lib: optimise PPC32 memcmp
    powerpc/lib: optimise 32 bits __clear_user()
    powerpc/time: inline arch_vtime_task_switch()
    powerpc/Makefile: set -mcpu=860 flag for the 8xx
    powerpc: Implement csum_ipv6_magic in assembly
    powerpc/32: Optimise __csum_partial()
    powerpc/lib: Adjust .balign inside string functions for PPC32
    ...

    Linus Torvalds
     

07 Jun, 2018

2 commits

  • Pull networking updates from David Miller:

    1) Add Maglev hashing scheduler to IPVS, from Inju Song.

    2) Lots of new TC subsystem tests from Roman Mashak.

    3) Add TCP zero copy receive and fix delayed acks and autotuning with
    SO_RCVLOWAT, from Eric Dumazet.

    4) Add XDP_REDIRECT support to mlx5 driver, from Jesper Dangaard
    Brouer.

    5) Add ttl inherit support to vxlan, from Hangbin Liu.

    6) Properly separate ipv6 routes into their logically independant
    components. fib6_info for the routing table, and fib6_nh for sets of
    nexthops, which thus can be shared. From David Ahern.

    7) Add bpf_xdp_adjust_tail helper, which can be used to generate ICMP
    messages from XDP programs. From Nikita V. Shirokov.

    8) Lots of long overdue cleanups to the r8169 driver, from Heiner
    Kallweit.

    9) Add BTF ("BPF Type Format"), from Martin KaFai Lau.

    10) Add traffic condition monitoring to iwlwifi, from Luca Coelho.

    11) Plumb extack down into fib_rules, from Roopa Prabhu.

    12) Add Flower classifier offload support to igb, from Vinicius Costa
    Gomes.

    13) Add UDP GSO support, from Willem de Bruijn.

    14) Add documentation for eBPF helpers, from Quentin Monnet.

    15) Add TLS tx offload to mlx5, from Ilya Lesokhin.

    16) Allow applications to be given the number of bytes available to read
    on a socket via a control message returned from recvmsg(), from
    Soheil Hassas Yeganeh.

    17) Add x86_32 eBPF JIT compiler, from Wang YanQing.

    18) Add AF_XDP sockets, with zerocopy support infrastructure as well.
    From Björn Töpel.

    19) Remove indirect load support from all of the BPF JITs and handle
    these operations in the verifier by translating them into native BPF
    instead. From Daniel Borkmann.

    20) Add GRO support to ipv6 gre tunnels, from Eran Ben Elisha.

    21) Allow XDP programs to do lookups in the main kernel routing tables
    for forwarding. From David Ahern.

    22) Allow drivers to store hardware state into an ELF section of kernel
    dump vmcore files, and use it in cxgb4. From Rahul Lakkireddy.

    23) Various RACK and loss detection improvements in TCP, from Yuchung
    Cheng.

    24) Add TCP SACK compression, from Eric Dumazet.

    25) Add User Mode Helper support and basic bpfilter infrastructure, from
    Alexei Starovoitov.

    26) Support ports and protocol values in RTM_GETROUTE, from Roopa
    Prabhu.

    27) Support bulking in ->ndo_xdp_xmit() API, from Jesper Dangaard
    Brouer.

    28) Add lots of forwarding selftests, from Petr Machata.

    29) Add generic network device failover driver, from Sridhar Samudrala.

    * ra.kernel.org:/pub/scm/linux/kernel/git/davem/net-next: (1959 commits)
    strparser: Add __strp_unpause and use it in ktls.
    rxrpc: Fix terminal retransmission connection ID to include the channel
    net: hns3: Optimize PF CMDQ interrupt switching process
    net: hns3: Fix for VF mailbox receiving unknown message
    net: hns3: Fix for VF mailbox cannot receiving PF response
    bnx2x: use the right constant
    Revert "net: sched: cls: Fix offloading when ingress dev is vxlan"
    net: dsa: b53: Fix for brcm tag issue in Cygnus SoC
    enic: fix UDP rss bits
    netdev-FAQ: clarify DaveM's position for stable backports
    rtnetlink: validate attributes in do_setlink()
    mlxsw: Add extack messages for port_{un, }split failures
    netdevsim: Add extack error message for devlink reload
    devlink: Add extack to reload and port_{un, }split operations
    net: metrics: add proper netlink validation
    ipmr: fix error path when ipmr_new_table fails
    ip6mr: only set ip6mr_table from setsockopt when ip6mr_new_table succeeds
    net: hns3: remove unused hclgevf_cfg_func_mta_filter
    netfilter: provide udp*_lib_lookup for nf_tproxy
    qed*: Utilize FW 8.37.2.0
    ...

    Linus Torvalds
     
  • Pull tracing updates from Steven Rostedt:
    "One new feature was added to ftrace, which is the trace_marker now
    supports triggers. For example:

    # cd /sys/kernel/debug/tracing
    # echo 'snapshot' > events/ftrace/print/trigger
    # echo 'cause snapshot' > trace_marker

    The rest of the changes are various clean ups and also one stable fix
    that was added late in the cycle"

    * tag 'trace-v4.18' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace: (21 commits)
    tracing: Use match_string() instead of open coding it in trace_set_options()
    branch-check: fix long->int truncation when profiling branches
    ring-buffer: Fix typo in comment
    ring-buffer: Fix a bunch of typos in comments
    tracing/selftest: Add test to test simple snapshot trigger for trace_marker
    tracing/selftest: Add test to test hist trigger between kernel event and trace_marker
    tracing/selftest: Add selftests to test trace_marker histogram triggers
    ftrace/selftest: Fix reset_trigger() to handle triggers with filters
    ftrace/selftest: Have the reset_trigger code be a bit more careful
    tracing: Document trace_marker triggers
    tracing: Allow histogram triggers to access ftrace internal events
    tracing: Prevent further users of zero size static arrays in trace events
    tracing: Have zero size length in filter logic be full string
    tracing: Add trigger file for trace_markers tracefs/ftrace/print
    tracing: Do not show filter file for ftrace internal events
    tracing: Add brackets in ftrace event dynamic arrays
    tracing: Have event_trace_init() called by trace_init_tracefs()
    tracing: Add __find_event_file() to find event files without restrictions
    tracing: Do not reference event data in post call triggers
    tracepoints: Fix the descriptions of tracepoint_probe_register{_prio}
    ...

    Linus Torvalds