Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update 5.4-2.3.x-imx to v5.4.92 #229

Merged
merged 35 commits into from
Jan 25, 2021
Merged

Commits on Jan 23, 2021

  1. usb: ohci: Make distrust_firmware param default to false

    commit c4005a8 upstream.
    
    The 'distrust_firmware' module parameter dates from 2004 and the USB
    subsystem is a lot more mature and reliable now than it was then.
    Alter the default to false now.
    
    Suggested-by: Alan Stern <[email protected]>
    Acked-by: Alan Stern <[email protected]>
    Signed-off-by: Hamish Martin <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    Hamish Martin authored and gregkh committed Jan 23, 2021
    Configuration menu
    Copy the full SHA
    24cea7d View commit details
    Browse the repository at this point in the history
  2. compiler.h: Raise minimum version of GCC to 5.1 for arm64

    commit dca5244 upstream.
    
    GCC versions >= 4.9 and < 5.1 have been shown to emit memory references
    beyond the stack pointer, resulting in memory corruption if an interrupt
    is taken after the stack pointer has been adjusted but before the
    reference has been executed. This leads to subtle, infrequent data
    corruption such as the EXT4 problems reported by Russell King at the
    link below.
    
    Life is too short for buggy compilers, so raise the minimum GCC version
    required by arm64 to 5.1.
    
    Reported-by: Russell King <[email protected]>
    Suggested-by: Arnd Bergmann <[email protected]>
    Signed-off-by: Will Deacon <[email protected]>
    Tested-by: Nathan Chancellor <[email protected]>
    Reviewed-by: Nick Desaulniers <[email protected]>
    Reviewed-by: Nathan Chancellor <[email protected]>
    Acked-by: Linus Torvalds <[email protected]>
    Cc: <[email protected]>
    Cc: Theodore Ts'o <[email protected]>
    Cc: Florian Weimer <[email protected]>
    Cc: Peter Zijlstra <[email protected]>
    Cc: Nick Desaulniers <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Catalin Marinas <[email protected]>
    [will: backport to 4.19.y/5.4.y]
    Signed-off-by: Will Deacon <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    willdeacon authored and gregkh committed Jan 23, 2021
    Configuration menu
    Copy the full SHA
    dd113b7 View commit details
    Browse the repository at this point in the history
  3. xen/privcmd: allow fetching resource sizes

    commit ef3a575 upstream.
    
    Allow issuing an IOCTL_PRIVCMD_MMAP_RESOURCE ioctl with num = 0 and
    addr = 0 in order to fetch the size of a specific resource.
    
    Add a shortcut to the default map resource path, since fetching the
    size requires no address to be passed in, and thus no VMA to setup.
    
    This is missing from the initial implementation, and causes issues
    when mapping resources that don't have fixed or known sizes.
    
    Signed-off-by: Roger Pau Monné <[email protected]>
    Reviewed-by: Juergen Gross <[email protected]>
    Tested-by: Andrew Cooper <[email protected]>
    Cc: [email protected] # >= 4.18
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Juergen Gross <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    royger authored and gregkh committed Jan 23, 2021
    Configuration menu
    Copy the full SHA
    ac29c05 View commit details
    Browse the repository at this point in the history
  4. elfcore: fix building with clang

    commit 6e7b64b upstream.
    
    kernel/elfcore.c only contains weak symbols, which triggers a bug with
    clang in combination with recordmcount:
    
      Cannot find symbol for section 2: .text.
      kernel/elfcore.o: failed
    
    Move the empty stubs into linux/elfcore.h as inline functions.  As only
    two architectures use these, just use the architecture specific Kconfig
    symbols to key off the declaration.
    
    Link: https://lkml.kernel.org/r/[email protected]
    Signed-off-by: Arnd Bergmann <[email protected]>
    Cc: Nathan Chancellor <[email protected]>
    Cc: Nick Desaulniers <[email protected]>
    Cc: Barret Rhoden <[email protected]>
    Signed-off-by: Andrew Morton <[email protected]>
    Signed-off-by: Linus Torvalds <[email protected]>
    Cc: Jian Cai <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    arndb authored and gregkh committed Jan 23, 2021
    Configuration menu
    Copy the full SHA
    5e6b888 View commit details
    Browse the repository at this point in the history
  5. scsi: lpfc: Make function lpfc_defer_pt2pt_acc static

    commit f7cb0d0 upstream.
    
    Fix sparse warnings:
    
    drivers/scsi/lpfc/lpfc_nportdisc.c:290:1: warning: symbol 'lpfc_defer_pt2pt_acc' was not declared. Should it be static?
    
    Link: https://lore.kernel.org/r/[email protected]
    Reported-by: Hulk Robot <[email protected]>
    Signed-off-by: zhengbin <[email protected]>
    Reviewed-by: Dick Kennedy <[email protected]>
    Reviewed-by: James Smart <[email protected]>
    Signed-off-by: Martin K. Petersen <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    zhengbin13 authored and gregkh committed Jan 23, 2021
    Configuration menu
    Copy the full SHA
    e82b58a View commit details
    Browse the repository at this point in the history
  6. scsi: lpfc: Make lpfc_defer_acc_rsp static

    commit fdb827e upstream.
    
    Fix sparse warning:
    
    drivers/scsi/lpfc/lpfc_nportdisc.c:344:1: warning:
     symbol 'lpfc_defer_acc_rsp' was not declared. Should it be static?
    
    Link: https://lore.kernel.org/r/[email protected]
    Reported-by: Hulk Robot <[email protected]>
    Reviewed-by: James Smart <[email protected]>
    Signed-off-by: YueHaibing <[email protected]>
    Signed-off-by: Martin K. Petersen <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    YueHaibing authored and gregkh committed Jan 23, 2021
    Configuration menu
    Copy the full SHA
    fa6de8d View commit details
    Browse the repository at this point in the history
  7. spi: npcm-fiu: simplify the return expression of npcm_fiu_probe()

    commit 4c3a14f upstream
    
    Simplify the return expression.
    
    Signed-off-by: Qinglang Miao <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Mark Brown <[email protected]>
    Signed-off-by: Sudip Mukherjee <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    Qinglang Miao authored and gregkh committed Jan 23, 2021
    Configuration menu
    Copy the full SHA
    6ef67f5 View commit details
    Browse the repository at this point in the history
  8. spi: npcm-fiu: Disable clock in probe error path

    commit 234266a upstream
    
    If the call to devm_spi_register_master() fails on probe of the NPCM FIU
    SPI driver, the clock "fiu->clk" is erroneously not unprepared and
    disabled.  Fix it.
    
    Fixes: ace55c4 ("spi: npcm-fiu: add NPCM FIU controller driver")
    Signed-off-by: Lukas Wunner <[email protected]>
    Cc: <[email protected]> # v5.4+
    Cc: Tomer Maimon <[email protected]>
    Link: https://lore.kernel.org/r/9ae62f4e1cfe542bec57ac2743e6fca9f9548f55.1607286887.git.lukas@wunner.de
    Signed-off-by: Mark Brown <[email protected]>
    Signed-off-by: Sudip Mukherjee <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    l1k authored and gregkh committed Jan 23, 2021
    Configuration menu
    Copy the full SHA
    9b72d5b View commit details
    Browse the repository at this point in the history
  9. nfsd4: readdirplus shouldn't return parent of export

    commit 51b2ee7 upstream.
    
    If you export a subdirectory of a filesystem, a READDIRPLUS on the root
    of that export will return the filehandle of the parent with the ".."
    entry.
    
    The filehandle is optional, so let's just not return the filehandle for
    ".." if we're at the root of an export.
    
    Note that once the client learns one filehandle outside of the export,
    they can trivially access the rest of the export using further lookups.
    
    However, it is also not very difficult to guess filehandles outside of
    the export.  So exporting a subdirectory of a filesystem should
    considered equivalent to providing access to the entire filesystem.  To
    avoid confusion, we recommend only exporting entire filesystems.
    
    Reported-by: Youjipeng <[email protected]>
    Signed-off-by: J. Bruce Fields <[email protected]>
    Cc: [email protected]
    Signed-off-by: Chuck Lever <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    J. Bruce Fields authored and gregkh committed Jan 23, 2021
    Configuration menu
    Copy the full SHA
    4aef760 View commit details
    Browse the repository at this point in the history
  10. bpf: Don't leak memory in bpf getsockopt when optlen == 0

    commit 4be34f3 upstream.
    
    optlen == 0 indicates that the kernel should ignore BPF buffer
    and use the original one from the user. We, however, forget
    to free the temporary buffer that we've allocated for BPF.
    
    Fixes: d8fe449 ("bpf: Don't return EINVAL from {get,set}sockopt when optlen > PAGE_SIZE")
    Reported-by: Martin KaFai Lau <[email protected]>
    Signed-off-by: Stanislav Fomichev <[email protected]>
    Signed-off-by: Daniel Borkmann <[email protected]>
    Acked-by: Martin KaFai Lau <[email protected]>
    Link: https://lore.kernel.org/bpf/[email protected]
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    fomichev authored and gregkh committed Jan 23, 2021
    Configuration menu
    Copy the full SHA
    79ce12c View commit details
    Browse the repository at this point in the history
  11. bpf: Fix helper bpf_map_peek_elem_proto pointing to wrong callback

    commit 301a33d upstream.
    
    I assume this was obtained by copy/paste. Point it to bpf_map_peek_elem()
    instead of bpf_map_pop_elem(). In practice it may have been less likely
    hit when under JIT given shielded via 84430d4 ("bpf, verifier: avoid
    retpoline for map push/pop/peek operation").
    
    Fixes: f1a2e44 ("bpf: add queue and stack maps")
    Signed-off-by: Mircea Cirjaliu <[email protected]>
    Signed-off-by: Daniel Borkmann <[email protected]>
    Cc: Mauricio Vasquez <[email protected]>
    Link: https://lore.kernel.org/bpf/AM7PR02MB6082663DFDCCE8DA7A6DD6B1BBA30@AM7PR02MB6082.eurprd02.prod.outlook.com
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    Mircea Cirjaliu authored and gregkh committed Jan 23, 2021
    Configuration menu
    Copy the full SHA
    bd47938 View commit details
    Browse the repository at this point in the history
  12. udp: Prevent reuseport_select_sock from reading uninitialized socks

    [ Upstream commit fd2ddef ]
    
    reuse->socks[] is modified concurrently by reuseport_add_sock. To
    prevent reading values that have not been fully initialized, only read
    the array up until the last known safe index instead of incorrectly
    re-reading the last index of the array.
    
    Fixes: acdcecc ("udp: correct reuseport selection with connected sockets")
    Signed-off-by: Baptiste Lepers <[email protected]>
    Acked-by: Willem de Bruijn <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Jakub Kicinski <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    BLepers authored and gregkh committed Jan 23, 2021
    Configuration menu
    Copy the full SHA
    982e763 View commit details
    Browse the repository at this point in the history
  13. netxen_nic: fix MSI/MSI-x interrupts

    [ Upstream commit a2bc221 ]
    
    For all PCI functions on the netxen_nic adapter, interrupt
    mode (INTx or MSI) configuration is dependent on what has
    been configured by the PCI function zero in the shared
    interrupt register, as these adapters do not support mixed
    mode interrupts among the functions of a given adapter.
    
    Logic for setting MSI/MSI-x interrupt mode in the shared interrupt
    register based on PCI function id zero check is not appropriate for
    all family of netxen adapters, as for some of the netxen family
    adapters PCI function zero is not really meant to be probed/loaded
    in the host but rather just act as a management function on the device,
    which caused all the other PCI functions on the adapter to always use
    legacy interrupt (INTx) mode instead of choosing MSI/MSI-x interrupt mode.
    
    This patch replaces that check with port number so that for all
    type of adapters driver attempts for MSI/MSI-x interrupt modes.
    
    Fixes: b37eb21 ("netxen_nic: Avoid mixed mode interrupts")
    Signed-off-by: Manish Chopra <[email protected]>
    Signed-off-by: Igor Russkikh <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Jakub Kicinski <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    manishc88 authored and gregkh committed Jan 23, 2021
    Configuration menu
    Copy the full SHA
    760e9fd View commit details
    Browse the repository at this point in the history
  14. net: introduce skb_list_walk_safe for skb segment walking

    commit dcfea72 upstream.
    
    As part of the continual effort to remove direct usage of skb->next and
    skb->prev, this patch adds a helper for iterating through the
    singly-linked variant of skb lists, which are used for lists of GSO
    packet. The name "skb_list_..." has been chosen to match the existing
    function, "kfree_skb_list, which also operates on these singly-linked
    lists, and the "..._walk_safe" part is the same idiom as elsewhere in
    the kernel.
    
    This patch removes the helper from wireguard and puts it into
    linux/skbuff.h, while making it a bit more robust for general usage. In
    particular, parenthesis are added around the macro argument usage, and it
    now accounts for trying to iterate through an already-null skb pointer,
    which will simply run the iteration zero times. This latter enhancement
    means it can be used to replace both do { ... } while and while (...)
    open-coded idioms.
    
    This should take care of these three possible usages, which match all
    current methods of iterations.
    
    skb_list_walk_safe(segs, skb, next) { ... }
    skb_list_walk_safe(skb, skb, next) { ... }
    skb_list_walk_safe(segs, skb, segs) { ... }
    
    Gcc appears to generate efficient code for each of these.
    
    Signed-off-by: Jason A. Donenfeld <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    [ Just the skbuff.h changes for backporting - gregkh]
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    zx2c4 authored and gregkh committed Jan 23, 2021
    Configuration menu
    Copy the full SHA
    aa350db View commit details
    Browse the repository at this point in the history
  15. net: skbuff: disambiguate argument and member for skb_list_walk_safe …

    …helper
    
    commit 5eee7bd upstream.
    
    This worked before, because we made all callers name their next pointer
    "next". But in trying to be more "drop-in" ready, the silliness here is
    revealed. This commit fixes the problem by making the macro argument and
    the member use different names.
    
    Signed-off-by: Jason A. Donenfeld <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    zx2c4 authored and gregkh committed Jan 23, 2021
    Configuration menu
    Copy the full SHA
    b41352a View commit details
    Browse the repository at this point in the history
  16. net: ipv6: Validate GSO SKB before finish IPv6 processing

    [ Upstream commit b210de4 ]
    
    There are cases where GSO segment's length exceeds the egress MTU:
     - Forwarding of a TCP GRO skb, when DF flag is not set.
     - Forwarding of an skb that arrived on a virtualisation interface
       (virtio-net/vhost/tap) with TSO/GSO size set by other network
       stack.
     - Local GSO skb transmitted on an NETIF_F_TSO tunnel stacked over an
       interface with a smaller MTU.
     - Arriving GRO skb (or GSO skb in a virtualised environment) that is
       bridged to a NETIF_F_TSO tunnel stacked over an interface with an
       insufficient MTU.
    
    If so:
     - Consume the SKB and its segments.
     - Issue an ICMP packet with 'Packet Too Big' message containing the
       MTU, allowing the source host to reduce its Path MTU appropriately.
    
    Note: These cases are handled in the same manner in IPv4 output finish.
    This patch aligns the behavior of IPv6 and the one of IPv4.
    
    Fixes: 9e50849 ("netfilter: ipv6: move POSTROUTING invocation before fragmentation")
    Signed-off-by: Aya Levin <[email protected]>
    Reviewed-by: Tariq Toukan <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Jakub Kicinski <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    ayalevin authored and gregkh committed Jan 23, 2021
    Configuration menu
    Copy the full SHA
    ff6d4e8 View commit details
    Browse the repository at this point in the history
  17. mlxsw: core: Add validation of transceiver temperature thresholds

    [ Upstream commit 57726eb ]
    
    Validate thresholds to avoid a single failure due to some transceiver
    unreliability. Ignore the last readouts in case warning temperature is
    above alarm temperature, since it can cause unexpected thermal
    shutdown. Stay with the previous values and refresh threshold within
    the next iteration.
    
    This is a rare scenario, but it was observed at a customer site.
    
    Fixes: 6a79507 ("mlxsw: core: Extend thermal module with per QSFP module thermal zones")
    Signed-off-by: Vadim Pasternak <[email protected]>
    Reviewed-by: Jiri Pirko <[email protected]>
    Signed-off-by: Ido Schimmel <[email protected]>
    Signed-off-by: Jakub Kicinski <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    vadimp-nvidia authored and gregkh committed Jan 23, 2021
    Configuration menu
    Copy the full SHA
    7680783 View commit details
    Browse the repository at this point in the history
  18. mlxsw: core: Increase critical threshold for ASIC thermal zone

    [ Upstream commit b06ca3d ]
    
    Increase critical threshold for ASIC thermal zone from 110C to 140C
    according to the system hardware requirements. All the supported ASICs
    (Spectrum-1, Spectrum-2, Spectrum-3) could be still operational with ASIC
    temperature below 140C. With the old critical threshold value system
    can perform unjustified shutdown.
    
    All the systems equipped with the above ASICs implement thermal
    protection mechanism at firmware level and firmware could decide to
    perform system thermal shutdown in case the temperature is below 140C.
    So with the new threshold system will not meltdown, while thermal
    operating range will be aligned with hardware abilities.
    
    Fixes: 41e7608 ("mlxsw: core: Replace thermal temperature trips with defines")
    Fixes: a50c1e3 ("mlxsw: core: Implement thermal zone")
    Signed-off-by: Vadim Pasternak <[email protected]>
    Reviewed-by: Jiri Pirko <[email protected]>
    Signed-off-by: Ido Schimmel <[email protected]>
    Signed-off-by: Jakub Kicinski <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    vadimp-nvidia authored and gregkh committed Jan 23, 2021
    Configuration menu
    Copy the full SHA
    18c29e1 View commit details
    Browse the repository at this point in the history
  19. net: mvpp2: Remove Pause and Asym_Pause support

    [ Upstream commit 6f83802 ]
    
    Packet Processor hardware not connected to MAC flow control unit and
    cannot support TX flow control.
    This patch disable flow control support.
    
    Fixes: 3f51850 ("ethernet: Add new driver for Marvell Armada 375 network unit")
    Signed-off-by: Stefan Chulski <[email protected]>
    Acked-by: Marcin Wojtas <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Jakub Kicinski <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    stefanchulski authored and gregkh committed Jan 23, 2021
    Configuration menu
    Copy the full SHA
    c897c10 View commit details
    Browse the repository at this point in the history
  20. rndis_host: set proper input size for OID_GEN_PHYSICAL_MEDIUM request

    [ Upstream commit e56b3d9 ]
    
    MSFT ActiveSync implementation requires that the size of the response for
    incoming query is to be provided in the request input length. Failure to
    set the input size proper results in failed request transfer, where the
    ActiveSync counterpart reports the NDIS_STATUS_INVALID_LENGTH (0xC0010014L)
    error.
    
    Set the input size for OID_GEN_PHYSICAL_MEDIUM query to the expected size
    of the response in order for the ActiveSync to properly respond to the
    request.
    
    Fixes: 039ee17 ("rndis_host: Add RNDIS physical medium checking into generic_rndis_bind()")
    Signed-off-by: Andrey Zhizhikin <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Jakub Kicinski <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    zandrey authored and gregkh committed Jan 23, 2021
    Configuration menu
    Copy the full SHA
    0ff06dd View commit details
    Browse the repository at this point in the history
  21. esp: avoid unneeded kmap_atomic call

    [ Upstream commit 9bd6b62 ]
    
    esp(6)_output_head uses skb_page_frag_refill to allocate a buffer for
    the esp trailer.
    
    It accesses the page with kmap_atomic to handle highmem. But
    skb_page_frag_refill can return compound pages, of which
    kmap_atomic only maps the first underlying page.
    
    skb_page_frag_refill does not return highmem, because flag
    __GFP_HIGHMEM is not set. ESP uses it in the same manner as TCP.
    That also does not call kmap_atomic, but directly uses page_address,
    in skb_copy_to_page_nocache. Do the same for ESP.
    
    This issue has become easier to trigger with recent kmap local
    debugging feature CONFIG_DEBUG_KMAP_LOCAL_FORCE_MAP.
    
    Fixes: cac2661 ("esp4: Avoid skb_cow_data whenever possible")
    Fixes: 03e2a30 ("esp6: Avoid skb_cow_data whenever possible")
    Signed-off-by: Willem de Bruijn <[email protected]>
    Acked-by: Steffen Klassert <[email protected]>
    Signed-off-by: Jakub Kicinski <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    wdebruij authored and gregkh committed Jan 23, 2021
    Configuration menu
    Copy the full SHA
    814e047 View commit details
    Browse the repository at this point in the history
  22. net: dcb: Validate netlink message in DCB handler

    [ Upstream commit 826f328 ]
    
    DCB uses the same handler function for both RTM_GETDCB and RTM_SETDCB
    messages. dcb_doit() bounces RTM_SETDCB mesasges if the user does not have
    the CAP_NET_ADMIN capability.
    
    However, the operation to be performed is not decided from the DCB message
    type, but from the DCB command. Thus DCB_CMD_*_GET commands are used for
    reading DCB objects, the corresponding SET and DEL commands are used for
    manipulation.
    
    The assumption is that set-like commands will be sent via an RTM_SETDCB
    message, and get-like ones via RTM_GETDCB. However, this assumption is not
    enforced.
    
    It is therefore possible to manipulate DCB objects without CAP_NET_ADMIN
    capability by sending the corresponding command in an RTM_GETDCB message.
    That is a bug. Fix it by validating the type of the request message against
    the type used for the response.
    
    Fixes: 2f90b86 ("ixgbe: this patch adds support for DCB to the kernel and ixgbe driver")
    Signed-off-by: Petr Machata <[email protected]>
    Link: https://lore.kernel.org/r/a2a9b88418f3a58ef211b718f2970128ef9e3793.1608673640.git.me@pmachata.org
    Signed-off-by: Jakub Kicinski <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    pmachata authored and gregkh committed Jan 23, 2021
    Configuration menu
    Copy the full SHA
    d52f592 View commit details
    Browse the repository at this point in the history
  23. net: dcb: Accept RTM_GETDCB messages carrying set-like DCB commands

    [ Upstream commit df85bc1 ]
    
    In commit 826f328 ("net: dcb: Validate netlink message in DCB
    handler"), Linux started rejecting RTM_GETDCB netlink messages if they
    contained a set-like DCB_CMD_ command.
    
    The reason was that privileges were only verified for RTM_SETDCB messages,
    but the value that determined the action to be taken is the command, not
    the message type. And validation of message type against the DCB command
    was the obvious missing piece.
    
    Unfortunately it turns out that mlnx_qos, a somewhat widely deployed tool
    for configuration of DCB, accesses the DCB set-like APIs through
    RTM_GETDCB.
    
    Therefore do not bounce the discrepancy between message type and command.
    Instead, in addition to validating privileges based on the actual message
    type, validate them also based on the expected message type. This closes
    the loophole of allowing DCB configuration on non-admin accounts, while
    maintaining backward compatibility.
    
    Fixes: 2f90b86 ("ixgbe: this patch adds support for DCB to the kernel and ixgbe driver")
    Fixes: 826f328 ("net: dcb: Validate netlink message in DCB handler")
    Signed-off-by: Petr Machata <[email protected]>
    Link: https://lore.kernel.org/r/a3edcfda0825f2aa2591801c5232f2bbf2d8a554.1610384801.git.me@pmachata.org
    Signed-off-by: Jakub Kicinski <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    pmachata authored and gregkh committed Jan 23, 2021
    Configuration menu
    Copy the full SHA
    6d57b58 View commit details
    Browse the repository at this point in the history
  24. rxrpc: Call state should be read with READ_ONCE() under some circumst…

    …ances
    
    [ Upstream commit a95d25d ]
    
    The call state may be changed at any time by the data-ready routine in
    response to received packets, so if the call state is to be read and acted
    upon several times in a function, READ_ONCE() must be used unless the call
    state lock is held.
    
    As it happens, we used READ_ONCE() to read the state a few lines above the
    unmarked read in rxrpc_input_data(), so use that value rather than
    re-reading it.
    
    Fixes: a158bdd ("rxrpc: Fix call timeouts")
    Signed-off-by: Baptiste Lepers <[email protected]>
    Signed-off-by: David Howells <[email protected]>
    Link: https://lore.kernel.org/r/161046715522.2450566.488819910256264150.stgit@warthog.procyon.org.uk
    Signed-off-by: Jakub Kicinski <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    BLepers authored and gregkh committed Jan 23, 2021
    Configuration menu
    Copy the full SHA
    c213d85 View commit details
    Browse the repository at this point in the history
  25. net: stmmac: Fixed mtu channged by cache aligned

    [ Upstream commit 5b55299 ]
    
    Since the original mtu is not used when the mtu is updated,
    the mtu is aligned with cache, this will get an incorrect.
    For example, if you want to configure the mtu to be 1500,
    but mtu 1536 is configured in fact.
    
    Fixed: eaf4fac ("net: stmmac: Do not accept invalid MTU values")
    Signed-off-by: David Wu <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Jakub Kicinski <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    SuperDavidWu authored and gregkh committed Jan 23, 2021
    Configuration menu
    Copy the full SHA
    a3870cf View commit details
    Browse the repository at this point in the history
  26. net: sit: unregister_netdevice on newlink's error path

    [ Upstream commit 47e4bb1 ]
    
    We need to unregister the netdevice if config failed.
    .ndo_uninit takes care of most of the heavy lifting.
    
    This was uncovered by recent commit c269a24 ("net: make
    free_netdev() more lenient with unregistering devices").
    Previously the partially-initialized device would be left
    in the system.
    
    Reported-and-tested-by: [email protected]
    Fixes: e2f1f07 ("sit: allow to configure 6rd tunnels via netlink")
    Acked-by: Nicolas Dichtel <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Jakub Kicinski <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    kuba-moo authored and gregkh committed Jan 23, 2021
    Configuration menu
    Copy the full SHA
    f6499a7 View commit details
    Browse the repository at this point in the history
  27. net: avoid 32 x truesize under-estimation for tiny skbs

    [ Upstream commit 3226b15 ]
    
    Both virtio net and napi_get_frags() allocate skbs
    with a very small skb->head
    
    While using page fragments instead of a kmalloc backed skb->head might give
    a small performance improvement in some cases, there is a huge risk of
    under estimating memory usage.
    
    For both GOOD_COPY_LEN and GRO_MAX_HEAD, we can fit at least 32 allocations
    per page (order-3 page in x86), or even 64 on PowerPC
    
    We have been tracking OOM issues on GKE hosts hitting tcp_mem limits
    but consuming far more memory for TCP buffers than instructed in tcp_mem[2]
    
    Even if we force napi_alloc_skb() to only use order-0 pages, the issue
    would still be there on arches with PAGE_SIZE >= 32768
    
    This patch makes sure that small skb head are kmalloc backed, so that
    other objects in the slab page can be reused instead of being held as long
    as skbs are sitting in socket queues.
    
    Note that we might in the future use the sk_buff napi cache,
    instead of going through a more expensive __alloc_skb()
    
    Another idea would be to use separate page sizes depending
    on the allocated length (to never have more than 4 frags per page)
    
    I would like to thank Greg Thelen for his precious help on this matter,
    analysing crash dumps is always a time consuming task.
    
    Fixes: fd11a83 ("net: Pull out core bits of __netdev_alloc_skb and add __napi_alloc_skb")
    Signed-off-by: Eric Dumazet <[email protected]>
    Cc: Paolo Abeni <[email protected]>
    Cc: Greg Thelen <[email protected]>
    Reviewed-by: Alexander Duyck <[email protected]>
    Acked-by: Michael S. Tsirkin <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Jakub Kicinski <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    Eric Dumazet authored and gregkh committed Jan 23, 2021
    Configuration menu
    Copy the full SHA
    5c46648 View commit details
    Browse the repository at this point in the history
  28. rxrpc: Fix handling of an unsupported token type in rxrpc_read()

    [ Upstream commit d52e419 ]
    
    Clang static analysis reports the following:
    
    net/rxrpc/key.c:657:11: warning: Assigned value is garbage or undefined
                    toksize = toksizes[tok++];
                            ^ ~~~~~~~~~~~~~~~
    
    rxrpc_read() contains two consecutive loops.  The first loop calculates the
    token sizes and stores the results in toksizes[] and the second one uses
    the array.  When there is an error in identifying the token in the first
    loop, the token is skipped, no change is made to the toksizes[] array.
    When the same error happens in the second loop, the token is not skipped.
    This will cause the toksizes[] array to be out of step and will overrun
    past the calculated sizes.
    
    Fix this by making both loops log a message and return an error in this
    case.  This should only happen if a new token type is incompletely
    implemented, so it should normally be impossible to trigger this.
    
    Fixes: 9a059cd ("rxrpc: Downgrade the BUG() for unsupported token type in rxrpc_read()")
    Reported-by: Tom Rix <[email protected]>
    Signed-off-by: David Howells <[email protected]>
    Reviewed-by: Tom Rix <[email protected]>
    Link: https://lore.kernel.org/r/161046503122.2445787.16714129930607546635.stgit@warthog.procyon.org.uk
    Signed-off-by: Jakub Kicinski <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    dhowells authored and gregkh committed Jan 23, 2021
    Configuration menu
    Copy the full SHA
    52e0b20 View commit details
    Browse the repository at this point in the history
  29. net, sctp, filter: remap copy_from_user failure error

    [ no upstream commit ]
    
    Fix a potential kernel address leakage for the prerequisite where there is
    a BPF program attached to the cgroup/setsockopt hook. The latter can only
    be attached under root, however, if the attached program returns 1 to then
    run the related kernel handler, an unprivileged program could probe for
    kernel addresses that way. The reason this is possible is that we're under
    set_fs(KERNEL_DS) when running the kernel setsockopt handler. Aside from
    old cBPF there is also SCTP's struct sctp_getaddrs_old which contains
    pointers in the uapi struct that further need copy_from_user() inside the
    handler. In the normal case this would just return -EFAULT, but under a
    temporary KERNEL_DS setting the memory would be copied and we'd end up at
    a different error code, that is, -EINVAL, for both cases given subsequent
    validations fail, which then allows the app to distinguish and make use of
    this fact for probing the address space. In case of later kernel versions
    this issue won't work anymore thanks to Christoph Hellwig's work that got
    rid of the various temporary set_fs() address space overrides altogether.
    One potential option for 5.4 as the only affected stable kernel with the
    least complexity would be to remap those affected -EFAULT copy_from_user()
    error codes with -EINVAL such that they cannot be probed anymore. Risk of
    breakage should be rather low for this particular error case.
    
    Fixes: 0d01da6 ("bpf: implement getsockopt and setsockopt hooks")
    Reported-by: Ryota Shiga (Flatt Security)
    Signed-off-by: Daniel Borkmann <[email protected]>
    Cc: Stanislav Fomichev <[email protected]>
    Cc: Eric Dumazet <[email protected]>
    Acked-by: Marcelo Ricardo Leitner <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    borkmann authored and gregkh committed Jan 23, 2021
    Configuration menu
    Copy the full SHA
    55bac51 View commit details
    Browse the repository at this point in the history
  30. tipc: fix NULL deref in tipc_link_xmit()

    [ Upstream commit b774134 ]
    
    The buffer list can have zero skb as following path:
    tipc_named_node_up()->tipc_node_xmit()->tipc_link_xmit(), so
    we need to check the list before casting an &sk_buff.
    
    Fault report:
     [] tipc: Bulk publication failure
     [] general protection fault, probably for non-canonical [Freescale#1] PREEMPT [...]
     [] KASAN: null-ptr-deref in range [0x00000000000000c8-0x00000000000000cf]
     [] CPU: 0 PID: 0 Comm: swapper/0 Kdump: loaded Not tainted 5.10.0-rc4+ Freescale#2
     [] Hardware name: Bochs ..., BIOS Bochs 01/01/2011
     [] RIP: 0010:tipc_link_xmit+0xc1/0x2180
     [] Code: 24 b8 00 00 00 00 4d 39 ec 4c 0f 44 e8 e8 d7 0a 10 f9 48 [...]
     [] RSP: 0018:ffffc90000006ea0 EFLAGS: 00010202
     [] RAX: dffffc0000000000 RBX: ffff8880224da000 RCX: 1ffff11003d3cc0d
     [] RDX: 0000000000000019 RSI: ffffffff886007b9 RDI: 00000000000000c8
     [] RBP: ffffc90000007018 R08: 0000000000000001 R09: fffff52000000ded
     [] R10: 0000000000000003 R11: fffff52000000dec R12: ffffc90000007148
     [] R13: 0000000000000000 R14: 0000000000000000 R15: ffffc90000007018
     [] FS:  0000000000000000(0000) GS:ffff888037400000(0000) knlGS:000[...]
     [] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
     [] CR2: 00007fffd2db5000 CR3: 000000002b08f000 CR4: 00000000000006f0
    
    Fixes: af9b028 ("tipc: make media xmit call outside node spinlock context")
    Acked-by: Jon Maloy <[email protected]>
    Signed-off-by: Hoang Le <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Jakub Kicinski <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    Hoang Le authored and gregkh committed Jan 23, 2021
    Configuration menu
    Copy the full SHA
    56e8947 View commit details
    Browse the repository at this point in the history
  31. mac80211: do not drop tx nulldata packets on encrypted links

    commit 2463ec8 upstream.
    
    ieee80211_tx_h_select_key drops any non-mgmt packets without a key when
    encryption is used. This is wrong for nulldata packets that can't be
    encrypted and are sent out for probing clients and indicating 4-address
    mode.
    
    Reported-by: Sebastian Gottschall <[email protected]>
    Fixes: a0761a3 ("mac80211: drop data frames without key on encrypted links")
    Signed-off-by: Felix Fietkau <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Johannes Berg <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    nbd168 authored and gregkh committed Jan 23, 2021
    Configuration menu
    Copy the full SHA
    d46996c View commit details
    Browse the repository at this point in the history
  32. mac80211: check if atf has been disabled in __ieee80211_schedule_txq

    commit c13cf5c upstream.
    
    Check if atf has been disabled in __ieee80211_schedule_txq() in order to
    avoid a given sta is always put to the beginning of the active_txqs list
    and never moved to the end since deficit is not decremented in
    ieee80211_sta_register_airtime()
    
    Fixes: b4809e9 ("mac80211: Add airtime accounting and scheduling to TXQs")
    Signed-off-by: Lorenzo Bianconi <[email protected]>
    Acked-by: Toke Høiland-Jørgensen <[email protected]>
    Link: https://lore.kernel.org/r/93889406c50f1416214c079ca0b8c9faecc5143e.1608975195.git.lorenzo@kernel.org
    Signed-off-by: Johannes Berg <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    LorenzoBianconi authored and gregkh committed Jan 23, 2021
    Configuration menu
    Copy the full SHA
    d04c793 View commit details
    Browse the repository at this point in the history
  33. spi: cadence: cache reference clock rate during probe

    commit 4d163ad upstream.
    
    The issue is that using SPI from a callback under the CCF lock will
    deadlock, since this code uses clk_get_rate().
    
    Fixes: c474b38 ("spi: Add driver for Cadence SPI controller")
    Signed-off-by: Michael Hennerich <[email protected]>
    Signed-off-by: Alexandru Ardelean <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Mark Brown <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    mhennerich authored and gregkh committed Jan 23, 2021
    Configuration menu
    Copy the full SHA
    e2d6931 View commit details
    Browse the repository at this point in the history
  34. Linux 5.4.92

    Tested-by: Shuah Khan <[email protected]>
    Tested-by: Linux Kernel Functional Testing <[email protected]>
    Tested-by: Jon Hunter <[email protected]>
    Tested-by: Guenter Roeck <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    gregkh committed Jan 23, 2021
    Configuration menu
    Copy the full SHA
    09f983f View commit details
    Browse the repository at this point in the history
  35. Merge tag 'v5.4.92' into 5.4-2.3.x-imx

    This is the 5.4.92 stable release
    
    Signed-off-by: Andrey Zhizhikin <[email protected]>
    zandrey committed Jan 23, 2021
    Configuration menu
    Copy the full SHA
    7cfef3b View commit details
    Browse the repository at this point in the history