Skip to content
Permalink
Mauro-Carvalho…
Switch branches/tags

Commits on Aug 20, 2021

  1. phy: HiSilicon: Add driver for Kirin 970 PCIe PHY

    The Kirin 970 PHY is somewhat similar to the Kirin 960, but it
    does a lot more. Add the needed bits for PCIe to start working on
    HiKey 970 boards.
    
    Co-developed-by: Manivannan Sadhasivam <mani@kernel.org>
    Signed-off-by: Manivannan Sadhasivam <mani@kernel.org>
    Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
    mchehab authored and intel-lab-lkp committed Aug 20, 2021

Commits on Aug 19, 2021

  1. Merge tag 'soc-fixes-5.14-3' of git://git.kernel.org/pub/scm/linux/ke…

    …rnel/git/soc/soc
    
    Pull ARM SoC fixes from Arnd Bergmann:
     "Not much to see here. Half the fixes this time are for Qualcomm dts
      files, fixing small mistakes on certain machines. The other fixes are:
    
       - A 5.13 regression fix for freescale QE interrupt controller\
    
       - A fix for TI OMAP gpt12 timer error handling
    
       - A randconfig build regression fix for ixp4xx
    
       - Another defconfig fix following the CONFIG_FB dependency rework"
    
    * tag 'soc-fixes-5.14-3' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc:
      soc: fsl: qe: fix static checker warning
      ARM: ixp4xx: fix building both pci drivers
      ARM: configs: Update the nhk8815_defconfig
      bus: ti-sysc: Fix error handling for sysc_check_active_timer()
      soc: fsl: qe: convert QE interrupt controller to platform_device
      arm64: dts: qcom: sdm845-oneplus: fix reserved-mem
      arm64: dts: qcom: msm8994-angler: Disable cont_splash_mem
      arm64: dts: qcom: sc7280: Fixup cpufreq domain info for cpu7
      arm64: dts: qcom: msm8992-bullhead: Fix cont_splash_mem mapping
      arm64: dts: qcom: msm8992-bullhead: Remove PSCI
      arm64: dts: qcom: c630: fix correct powerdown pin for WSA881x
    torvalds committed Aug 19, 2021
  2. Merge tag 'net-5.14-rc7' of git://git.kernel.org/pub/scm/linux/kernel…

    …/git/netdev/net
    
    Pull networking fixes from Jakub Kicinski:
     "Networking fixes, including fixes from bpf, wireless and mac80211
      trees.
    
      Current release - regressions:
    
       - tipc: call tipc_wait_for_connect only when dlen is not 0
    
       - mac80211: fix locking in ieee80211_restart_work()
    
      Current release - new code bugs:
    
       - bpf: add rcu_read_lock in bpf_get_current_[ancestor_]cgroup_id()
    
       - ethernet: ice: fix perout start time rounding
    
       - wwan: iosm: prevent underflow in ipc_chnl_cfg_get()
    
      Previous releases - regressions:
    
       - bpf: clear zext_dst of dead insns
    
       - sch_cake: fix srchost/dsthost hashing mode
    
       - vrf: reset skb conntrack connection on VRF rcv
    
       - net/rds: dma_map_sg is entitled to merge entries
    
      Previous releases - always broken:
    
       - ethernet: bnxt: fix Tx path locking and races, add Rx path
         barriers"
    
    * tag 'net-5.14-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net: (42 commits)
      net: dpaa2-switch: disable the control interface on error path
      Revert "flow_offload: action should not be NULL when it is referenced"
      iavf: Fix ping is lost after untrusted VF had tried to change MAC
      i40e: Fix ATR queue selection
      r8152: fix the maximum number of PLA bp for RTL8153C
      r8152: fix writing USB_BP2_EN
      mptcp: full fully established support after ADD_ADDR
      mptcp: fix memory leak on address flush
      net/rds: dma_map_sg is entitled to merge entries
      net: mscc: ocelot: allow forwarding from bridge ports to the tag_8021q CPU port
      net: asix: fix uninit value bugs
      ovs: clear skb->tstamp in forwarding path
      net: mdio-mux: Handle -EPROBE_DEFER correctly
      net: mdio-mux: Don't ignore memory allocation errors
      net: mdio-mux: Delete unnecessary devm_kfree
      net: dsa: sja1105: fix use-after-free after calling of_find_compatible_node, or worse
      sch_cake: fix srchost/dsthost hashing mode
      ixgbe, xsk: clean up the resources in ixgbe_xsk_pool_enable error path
      net: qlcnic: add missed unlock in qlcnic_83xx_flash_read32
      mac80211: fix locking in ieee80211_restart_work()
      ...
    torvalds committed Aug 19, 2021
  3. Merge tag 'platform-drivers-x86-v5.14-4' of git://git.kernel.org/pub/…

    …scm/linux/kernel/git/pdx86/platform-drivers-x86
    
    Pull x86 platform driver fixes from Hans de Goede:
    
     - Enable SW_TABLET_MODE support for the TP200s
    
     - Enable WMI on two more Gigabyte motherboards
    
    * tag 'platform-drivers-x86-v5.14-4' of git://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86:
      platform/x86: gigabyte-wmi: add support for B450M S2H V2
      platform/x86: gigabyte-wmi: add support for X570 GAMING X
      platform/x86: asus-nb-wmi: Add tablet_mode_sw=lid-flip quirk for the TP200s
      platform/x86: asus-nb-wmi: Allow configuring SW_TABLET_MODE method with a module option
    torvalds committed Aug 19, 2021
  4. net: dpaa2-switch: disable the control interface on error path

    Currently dpaa2_switch_takedown has a funny name and does not do the
    opposite of dpaa2_switch_init, which makes probing fail when we need to
    handle an -EPROBE_DEFER.
    
    A sketch of what dpaa2_switch_init does:
    
    	dpsw_open
    
    	dpaa2_switch_detect_features
    
    	dpsw_reset
    
    	for (i = 0; i < ethsw->sw_attr.num_ifs; i++) {
    		dpsw_if_disable
    
    		dpsw_if_set_stp
    
    		dpsw_vlan_remove_if_untagged
    
    		dpsw_if_set_tci
    
    		dpsw_vlan_remove_if
    	}
    
    	dpsw_vlan_remove
    
    	alloc_ordered_workqueue
    
    	dpsw_fdb_remove
    
    	dpaa2_switch_ctrl_if_setup
    
    When dpaa2_switch_takedown is called from the error path of
    dpaa2_switch_probe(), the control interface, enabled by
    dpaa2_switch_ctrl_if_setup from dpaa2_switch_init, remains enabled,
    because dpaa2_switch_takedown does not call
    dpaa2_switch_ctrl_if_teardown.
    
    Since dpaa2_switch_probe might fail due to EPROBE_DEFER of a PHY, this
    means that a second probe of the driver will happen with the control
    interface directly enabled.
    
    This will trigger a second error:
    
    [   93.273528] fsl_dpaa2_switch dpsw.0: dpsw_ctrl_if_set_pools() failed
    [   93.281966] fsl_dpaa2_switch dpsw.0: fsl_mc_driver_probe failed: -13
    [   93.288323] fsl_dpaa2_switch: probe of dpsw.0 failed with error -13
    
    Which if we investigate the /dev/dpaa2_mc_console log, we find out is
    caused by:
    
    [E, ctrl_if_set_pools:2211, DPMNG]  ctrl_if must be disabled
    
    So make dpaa2_switch_takedown do the opposite of dpaa2_switch_init (in
    reasonable limits, no reason to change STP state, re-add VLANs etc), and
    rename it to something more conventional, like dpaa2_switch_teardown.
    
    Fixes: 613c0a5 ("staging: dpaa2-switch: enable the control interface")
    Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com>
    Reviewed-by: Ioana Ciornei <ioana.ciornei@nxp.com>
    Link: https://lore.kernel.org/r/20210819141755.1931423-1-vladimir.oltean@nxp.com
    Signed-off-by: Jakub Kicinski <kuba@kernel.org>
    vladimiroltean authored and Jakub Kicinski committed Aug 19, 2021
  5. Revert "flow_offload: action should not be NULL when it is referenced"

    This reverts commit 9ea3e52.
    
    Cited commit added a check to make sure 'action' is not NULL, but
    'action' is already dereferenced before the check, when calling
    flow_offload_has_one_action().
    
    Therefore, the check does not make any sense and results in a smatch
    warning:
    
    include/net/flow_offload.h:322 flow_action_mixed_hw_stats_check() warn:
    variable dereferenced before check 'action' (see line 319)
    
    Fix by reverting this commit.
    
    Cc: gushengxian <gushengxian@yulong.com>
    Fixes: 9ea3e52 ("flow_offload: action should not be NULL when it is referenced")
    Signed-off-by: Ido Schimmel <idosch@nvidia.com>
    Acked-by: Jamal Hadi Salim <jhs@mojatatu.com>
    Link: https://lore.kernel.org/r/20210819105842.1315705-1-idosch@idosch.org
    Signed-off-by: Jakub Kicinski <kuba@kernel.org>
    idosch authored and Jakub Kicinski committed Aug 19, 2021
  6. Merge branch 'intel-wired-lan-driver-updates-2021-08-18'

    Tony Nguyen says:
    
    ====================
    Intel Wired LAN Driver Updates 2021-08-18
    
    This series contains updates to i40e and iavf drivers.
    
    Arkadiusz fixes Flow Director not using the correct queue due to calling
    the wrong pick Tx function for i40e.
    
    Sylwester resolves traffic loss for iavf when it attempts to change its
    MAC address when it does not have permissions to do so.
    ====================
    
    Link: https://lore.kernel.org/r/20210818174217.4138922-1-anthony.l.nguyen@intel.com
    Signed-off-by: Jakub Kicinski <kuba@kernel.org>
    Jakub Kicinski committed Aug 19, 2021
  7. iavf: Fix ping is lost after untrusted VF had tried to change MAC

    Make changes to MAC address dependent on the response of PF.
    Disallow changes to HW MAC address and MAC filter from untrusted
    VF, thanks to that ping is not lost if VF tries to change MAC.
    Add a new field in iavf_mac_filter, to indicate whether there
    was response from PF for given filter. Based on this field pass
    or discard the filter.
    If untrusted VF tried to change it's address, it's not changed.
    Still filter was changed, because of that ping couldn't go through.
    
    Fixes: c5c922b ("iavf: fix MAC address setting for VFs when filter is rejected")
    Signed-off-by: Przemyslaw Patynowski <przemyslawx.patynowski@intel.com>
    Signed-off-by: Sylwester Dziedziuch <sylwesterx.dziedziuch@intel.com>
    Signed-off-by: Mateusz Palczewski <mateusz.palczewski@intel.com>
    Tested-by: Gurucharan G <Gurucharanx.g@intel.com>
    Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
    Signed-off-by: Jakub Kicinski <kuba@kernel.org>
    sylwesterdziedziuch authored and Jakub Kicinski committed Aug 19, 2021
  8. i40e: Fix ATR queue selection

    Without this patch, ATR does not work. Receive/transmit uses queue
    selection based on SW DCB hashing method.
    
    If traffic classes are not configured for PF, then use
    netdev_pick_tx function for selecting queue for packet transmission.
    Instead of calling i40e_swdcb_skb_tx_hash, call netdev_pick_tx,
    which ensures that packet is transmitted/received from CPU that is
    running the application.
    
    Reproduction steps:
    1. Load i40e driver
    2. Map each MSI interrupt of i40e port for each CPU
    3. Disable ntuple, enable ATR i.e.:
    ethtool -K $interface ntuple off
    ethtool --set-priv-flags $interface flow-director-atr
    4. Run application that is generating traffic and is bound to a
    single CPU, i.e.:
    taskset -c 9 netperf -H 1.1.1.1 -t TCP_RR -l 10
    5. Observe behavior:
    Application's traffic should be restricted to the CPU provided in
    taskset.
    
    Fixes: 89ec1f0 ("i40e: Fix queue-to-TC mapping on Tx")
    Signed-off-by: Przemyslaw Patynowski <przemyslawx.patynowski@intel.com>
    Signed-off-by: Arkadiusz Kubalewski <arkadiusz.kubalewski@intel.com>
    Tested-by: Dave Switzer <david.switzer@intel.com>
    Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
    Signed-off-by: Jakub Kicinski <kuba@kernel.org>
    kubalewski authored and Jakub Kicinski committed Aug 19, 2021
  9. Merge https://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf

    Daniel Borkmann says:
    
    ====================
    pull-request: bpf 2021-08-19
    
    We've added 3 non-merge commits during the last 3 day(s) which contain
    a total of 3 files changed, 29 insertions(+), 6 deletions(-).
    
    The main changes are:
    
    1) Fix to clear zext_dst for dead instructions which was causing invalid program
       rejections on JITs with bpf_jit_needs_zext such as s390x, from Ilya Leoshkevich.
    
    2) Fix RCU splat in bpf_get_current_{ancestor_,}cgroup_id() helpers when they are
       invoked from sleepable programs, from Yonghong Song.
    
    * https://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf:
      selftests, bpf: Test that dead ldx_w insns are accepted
      bpf: Clear zext_dst of dead insns
      bpf: Add rcu_read_lock in bpf_get_current_[ancestor_]cgroup_id() helpers
    ====================
    
    Link: https://lore.kernel.org/r/20210819144904.20069-1-daniel@iogearbox.net
    Signed-off-by: Jakub Kicinski <kuba@kernel.org>
    Jakub Kicinski committed Aug 19, 2021
  10. Merge tag 'omap-for-v5.14/gpt12-fix-signed' of git://git.kernel.org/p…

    …ub/scm/linux/kernel/git/tmlind/linux-omap into arm/fixes
    
    Fix for omap gpt12 timer error handling
    
    Two of the recent fixes for ti-sysc driver had bad interaction for a
    function return value that caused one of the fixes to not work so we
    need to change the return value handling. Otherwise early beagleboard
    variants still have a boot issue.
    
    * tag 'omap-for-v5.14/gpt12-fix-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
      bus: ti-sysc: Fix error handling for sysc_check_active_timer()
    
    Link: https://lore.kernel.org/r/pull-1629354796-830948@atomide.com
    Signed-off-by: Arnd Bergmann <arnd@arndb.de>
    arndb committed Aug 19, 2021
  11. Merge branch 'r8152-bp-settings'

    Hayes Wang says:
    
    ====================
    r8152: fix bp settings
    
    Fix the wrong bp settings of the firmware.
    ====================
    
    Signed-off-by: David S. Miller <davem@davemloft.net>
    davem330 committed Aug 19, 2021
  12. r8152: fix the maximum number of PLA bp for RTL8153C

    The maximum PLA bp number of RTL8153C is 16, not 8. That is, the
    bp 0 ~ 15 are at 0xfc28 ~ 0xfc46, and the bp_en is at 0xfc48.
    
    Fixes: 195aae3 ("r8152: support new chips")
    Signed-off-by: Hayes Wang <hayeswang@realtek.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    hayesorz authored and davem330 committed Aug 19, 2021
  13. r8152: fix writing USB_BP2_EN

    The register of USB_BP2_EN is 16 bits, so we should use
    ocp_write_word(), not ocp_write_byte().
    
    Fixes: 9370f2d ("support request_firmware for RTL8153")
    Signed-off-by: Hayes Wang <hayeswang@realtek.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    hayesorz authored and davem330 committed Aug 19, 2021
  14. Merge branch 'mptcp-fixes'

    Mat Martineau says:
    
    ====================
    mptcp: Bug fixes
    
    Here are two bug fixes for the net tree:
    
    Patch 1 fixes a memory leak that could be encountered when clearing the
    list of advertised MPTCP addresses.
    
    Patch 2 fixes a protocol issue early in an MPTCP connection, to ensure
    both peers correctly understand that the full MPTCP connection handshake
    has completed even when the server side quickly sends an ADD_ADDR
    option.
    ====================
    
    Signed-off-by: David S. Miller <davem@davemloft.net>
    davem330 committed Aug 19, 2021
  15. mptcp: full fully established support after ADD_ADDR

    If directly after an MP_CAPABLE 3WHS, the client receives an ADD_ADDR
    with HMAC from the server, it is enough to switch to a "fully
    established" mode because it has received more MPTCP options.
    
    It was then OK to enable the "fully_established" flag on the MPTCP
    socket. Still, best to check if the ADD_ADDR looks valid by looking if
    it contains an HMAC (no 'echo' bit). If an ADD_ADDR echo is received
    while we are not in "fully established" mode, it is strange and then
    we should not switch to this mode now.
    
    But that is not enough. On one hand, the path-manager has be notified
    the state has changed. On the other hand, the "fully_established" flag
    on the subflow socket should be turned on as well not to re-send the
    MP_CAPABLE 3rd ACK content with the next ACK.
    
    Fixes: 84dfe36 ("mptcp: send out dedicated ADD_ADDR packet")
    Signed-off-by: Matthieu Baerts <matthieu.baerts@tessares.net>
    Signed-off-by: Mat Martineau <mathew.j.martineau@linux.intel.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    matttbe authored and davem330 committed Aug 19, 2021
  16. mptcp: fix memory leak on address flush

    The endpoint cleanup path is prone to a memory leak, as reported
    by syzkaller:
    
     BUG: memory leak
     unreferenced object 0xffff88810680ea00 (size 64):
       comm "syz-executor.6", pid 6191, jiffies 4295756280 (age 24.138s)
       hex dump (first 32 bytes):
         58 75 7d 3c 80 88 ff ff 22 01 00 00 00 00 ad de  Xu}<....".......
         01 00 02 00 00 00 00 00 ac 1e 00 07 00 00 00 00  ................
       backtrace:
         [<0000000072a9f72a>] kmalloc include/linux/slab.h:591 [inline]
         [<0000000072a9f72a>] mptcp_nl_cmd_add_addr+0x287/0x9f0 net/mptcp/pm_netlink.c:1170
         [<00000000f6e931bf>] genl_family_rcv_msg_doit.isra.0+0x225/0x340 net/netlink/genetlink.c:731
         [<00000000f1504a2c>] genl_family_rcv_msg net/netlink/genetlink.c:775 [inline]
         [<00000000f1504a2c>] genl_rcv_msg+0x341/0x5b0 net/netlink/genetlink.c:792
         [<0000000097e76f6a>] netlink_rcv_skb+0x148/0x430 net/netlink/af_netlink.c:2504
         [<00000000ceefa2b8>] genl_rcv+0x24/0x40 net/netlink/genetlink.c:803
         [<000000008ff91aec>] netlink_unicast_kernel net/netlink/af_netlink.c:1314 [inline]
         [<000000008ff91aec>] netlink_unicast+0x537/0x750 net/netlink/af_netlink.c:1340
         [<0000000041682c35>] netlink_sendmsg+0x846/0xd80 net/netlink/af_netlink.c:1929
         [<00000000df3aa8e7>] sock_sendmsg_nosec net/socket.c:704 [inline]
         [<00000000df3aa8e7>] sock_sendmsg+0x14e/0x190 net/socket.c:724
         [<000000002154c54c>] ____sys_sendmsg+0x709/0x870 net/socket.c:2403
         [<000000001aab01d7>] ___sys_sendmsg+0xff/0x170 net/socket.c:2457
         [<00000000fa3b1446>] __sys_sendmsg+0xe5/0x1b0 net/socket.c:2486
         [<00000000db2ee9c7>] do_syscall_x64 arch/x86/entry/common.c:50 [inline]
         [<00000000db2ee9c7>] do_syscall_64+0x38/0x90 arch/x86/entry/common.c:80
         [<000000005873517d>] entry_SYSCALL_64_after_hwframe+0x44/0xae
    
    We should not require an allocation to cleanup stuff.
    
    Rework the code a bit so that the additional RCU work is no more needed.
    
    Fixes: 1729cf1 ("mptcp: create the listening socket for new port")
    Signed-off-by: Paolo Abeni <pabeni@redhat.com>
    Signed-off-by: Mat Martineau <mathew.j.martineau@linux.intel.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Paolo Abeni authored and davem330 committed Aug 19, 2021

Commits on Aug 18, 2021

  1. net/rds: dma_map_sg is entitled to merge entries

    Function "dma_map_sg" is entitled to merge adjacent entries
    and return a value smaller than what was passed as "nents".
    
    Subsequently "ib_map_mr_sg" needs to work with this value ("sg_dma_len")
    rather than the original "nents" parameter ("sg_len").
    
    This old RDS bug was exposed and reliably causes kernel panics
    (using RDMA operations "rds-stress -D") on x86_64 starting with:
    commit c588072 ("iommu/vt-d: Convert intel iommu driver to the iommu ops")
    
    Simply put: Linux 5.11 and later.
    
    Signed-off-by: Gerd Rausch <gerd.rausch@oracle.com>
    Acked-by: Santosh Shilimkar <santosh.shilimkar@oracle.com>
    Link: https://lore.kernel.org/r/60efc69f-1f35-529d-a7ef-da0549cad143@oracle.com
    Signed-off-by: Jakub Kicinski <kuba@kernel.org>
    gerd-rausch authored and Jakub Kicinski committed Aug 18, 2021
  2. net: mscc: ocelot: allow forwarding from bridge ports to the tag_8021…

    …q CPU port
    
    Currently we are unable to ping a bridge on top of a felix switch which
    uses the ocelot-8021q tagger. The packets are dropped on the ingress of
    the user port and the 'drop_local' counter increments (the counter which
    denotes drops due to no valid destinations).
    
    Dumping the PGID tables, it becomes clear that the PGID_SRC of the user
    port is zero, so it has no valid destinations.
    
    But looking at the code, the cpu_fwd_mask (the bit mask of DSA tag_8021q
    ports) is clearly missing from the forwarding mask of ports that are
    under a bridge. So this has always been broken.
    
    Looking at the version history of the patch, in v7
    https://patchwork.kernel.org/project/netdevbpf/patch/20210125220333.1004365-12-olteanv@gmail.com/
    the code looked like this:
    
    	/* Standalone ports forward only to DSA tag_8021q CPU ports */
    	unsigned long mask = cpu_fwd_mask;
    
    (...)
    	} else if (ocelot->bridge_fwd_mask & BIT(port)) {
    		mask |= ocelot->bridge_fwd_mask & ~BIT(port);
    
    while in v8 (the merged version)
    https://patchwork.kernel.org/project/netdevbpf/patch/20210129010009.3959398-12-olteanv@gmail.com/
    it looked like this:
    
    	unsigned long mask;
    
    (...)
    	} else if (ocelot->bridge_fwd_mask & BIT(port)) {
    		mask = ocelot->bridge_fwd_mask & ~BIT(port);
    
    So the breakage was introduced between v7 and v8 of the patch.
    
    Fixes: e21268e ("net: dsa: felix: perform switch setup for tag_8021q")
    Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com>
    Link: https://lore.kernel.org/r/20210817160425.3702809-1-vladimir.oltean@nxp.com
    Signed-off-by: Jakub Kicinski <kuba@kernel.org>
    vladimiroltean authored and Jakub Kicinski committed Aug 18, 2021
  3. Merge tag 'for-5.14-rc6-tag' of git://git.kernel.org/pub/scm/linux/ke…

    …rnel/git/kdave/linux
    
    Pull btrfs fix from David Sterba:
     "One more fix for cross-rename, adding a missing check for directory
      and subvolume, this could lead to a crash"
    
    * tag 'for-5.14-rc6-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux:
      btrfs: prevent rename2 from exchanging a subvol with a directory from different parents
    torvalds committed Aug 18, 2021
  4. Merge tag 'sound-5.14-rc7' of git://git.kernel.org/pub/scm/linux/kern…

    …el/git/tiwai/sound
    
    Pull sound fixes from Takashi Iwai:
     "Only a few regression fixes and trivial device quirks"
    
    * tag 'sound-5.14-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound:
      ALSA: hda/via: Apply runtime PM workaround for ASUS B23E
      ALSA: hda: Fix hang during shutdown due to link reset
      ALSA: hda/realtek: Enable 4-speaker output for Dell XPS 15 9510 laptop
      ALSA: oxfw: fix functioal regression for silence in Apogee Duet FireWire
      ALSA: hda - fix the 'Capture Switch' value change notifications
    torvalds committed Aug 18, 2021
  5. Merge tag 'cfi-v5.14-rc7' of git://git.kernel.org/pub/scm/linux/kerne…

    …l/git/kees/linux
    
    Pull clang cfi fix from Kees Cook:
    
     - Use rcu_read_{un}lock_sched_notrace to avoid recursion (Elliot Berman)
    
    * tag 'cfi-v5.14-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux:
      cfi: Use rcu_read_{un}lock_sched_notrace
    torvalds committed Aug 18, 2021
  6. pipe: avoid unnecessary EPOLLET wakeups under normal loads

    I had forgotten just how sensitive hackbench is to extra pipe wakeups,
    and commit 3a34b13 ("pipe: make pipe writes always wake up
    readers") ended up causing a quite noticeable regression on larger
    machines.
    
    Now, hackbench isn't necessarily a hugely meaningful benchmark, and it's
    not clear that this matters in real life all that much, but as Mel
    points out, it's used often enough when comparing kernels and so the
    performance regression shows up like a sore thumb.
    
    It's easy enough to fix at least for the common cases where pipes are
    used purely for data transfer, and you never have any exciting poll
    usage at all.  So set a special 'poll_usage' flag when there is polling
    activity, and make the ugly "EPOLLET has crazy legacy expectations"
    semantics explicit to only that case.
    
    I would love to limit it to just the broken EPOLLET case, but the pipe
    code can't see the difference between epoll and regular select/poll, so
    any non-read/write waiting will trigger the extra wakeup behavior.  That
    is sufficient for at least the hackbench case.
    
    Apart from making the odd extra wakeup cases more explicitly about
    EPOLLET, this also makes the extra wakeup be at the _end_ of the pipe
    write, not at the first write chunk.  That is actually much saner
    semantics (as much as you can call any of the legacy edge-triggered
    expectations for EPOLLET "sane") since it means that you know the wakeup
    will happen once the write is done, rather than possibly in the middle
    of one.
    
    [ For stable people: I'm putting a "Fixes" tag on this, but I leave it
      up to you to decide whether you actually want to backport it or not.
      It likely has no impact outside of synthetic benchmarks  - Linus ]
    
    Link: https://lore.kernel.org/lkml/20210802024945.GA8372@xsang-OptiPlex-9020/
    Fixes: 3a34b13 ("pipe: make pipe writes always wake up readers")
    Reported-by: kernel test robot <oliver.sang@intel.com>
    Tested-by: Sandeep Patil <sspatil@android.com>
    Tested-by: Mel Gorman <mgorman@techsingularity.net>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
    torvalds committed Aug 18, 2021
  7. platform/x86: gigabyte-wmi: add support for B450M S2H V2

    Reported as working here:
    t-8ch/linux-gigabyte-wmi-driver#1 (comment)
    
    Signed-off-by: Thomas Weißschuh <linux@weissschuh.net>
    Link: https://lore.kernel.org/r/20210818164435.99821-1-linux@weissschuh.net
    Signed-off-by: Hans de Goede <hdegoede@redhat.com>
    t-8ch authored and jwrdegoede committed Aug 18, 2021
  8. net: asix: fix uninit value bugs

    Syzbot reported uninit-value in asix_mdio_read(). The problem was in
    missing error handling. asix_read_cmd() should initialize passed stack
    variable smsr, but it can fail in some cases. Then while condidition
    checks possibly uninit smsr variable.
    
    Since smsr is uninitialized stack variable, driver can misbehave,
    because smsr will be random in case of asix_read_cmd() failure.
    Fix it by adding error handling and just continue the loop instead of
    checking uninit value.
    
    Added helper function for checking Host_En bit, since wrong loop was used
    in 4 functions and there is no need in copy-pasting code parts.
    
    Cc: Robert Foss <robert.foss@collabora.com>
    Fixes: d9fe64e ("net: asix: Add in_pm parameter")
    Reported-by: syzbot+a631ec9e717fb0423053@syzkaller.appspotmail.com
    Signed-off-by: Pavel Skripkin <paskripkin@gmail.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    pskrgag authored and davem330 committed Aug 18, 2021
  9. ovs: clear skb->tstamp in forwarding path

    fq qdisc requires tstamp to be cleared in the forwarding path. Now ovs
    doesn't clear skb->tstamp. We encountered a problem with linux
    version 5.4.56 and ovs version 2.14.1, and packets failed to
    dequeue from qdisc when fq qdisc was attached to ovs port.
    
    Fixes: fb420d5 ("tcp/fq: move back to CLOCK_MONOTONIC")
    Signed-off-by: kaixi.fan <fankaixi.li@bytedance.com>
    Signed-off-by: xiexiaohui <xiexiaohui.xxh@bytedance.com>
    Reviewed-by: Cong Wang <cong.wang@bytedance.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    lrouter authored and davem330 committed Aug 18, 2021
  10. Merge branch 'mdio-fixes'

    Saravana Kannan says:
    
    ====================
    Clean up and fix error handling in mdio_mux_init()
    
    This patch series was started due to -EPROBE_DEFER not being handled
    correctly in mdio_mux_init() and causing issues [1]. While at it, I also
    did some more error handling fixes and clean ups. The -EPROBE_DEFER fix is
    the last patch.
    
    Ideally, in the last patch we'd treat any error similar to -EPROBE_DEFER
    but I'm not sure if it'll break any board/platforms where some child
    mdiobus never successfully registers. If we treated all errors similar to
    -EPROBE_DEFER, then none of the child mdiobus will work and that might be a
    regression. If people are sure this is not a real case, then I can fix up
    the last patch to always fail the entire mdio-mux init if any of the child
    mdiobus registration fails.
    ====================
    
    Signed-off-by: David S. Miller <davem@davemloft.net>
    davem330 committed Aug 18, 2021
  11. net: mdio-mux: Handle -EPROBE_DEFER correctly

    When registering mdiobus children, if we get an -EPROBE_DEFER, we shouldn't
    ignore it and continue registering the rest of the mdiobus children. This
    would permanently prevent the deferring child mdiobus from working instead
    of reattempting it in the future. So, if a child mdiobus needs to be
    reattempted in the future, defer the entire mdio-mux initialization.
    
    This fixes the issue where PHYs sitting under the mdio-mux aren't
    initialized correctly if the PHY's interrupt controller is not yet ready
    when the mdio-mux is being probed. Additional context in the link below.
    
    Fixes: 0ca2997 ("netdev/of/phy: Add MDIO bus multiplexer support.")
    Link: https://lore.kernel.org/lkml/CAGETcx95kHrv8wA-O+-JtfH7H9biJEGJtijuPVN0V5dUKUAB3A@mail.gmail.com/#t
    Signed-off-by: Saravana Kannan <saravanak@google.com>
    Reviewed-by: Andrew Lunn <andrew@lunn.ch>
    Acked-by: Marc Zyngier <maz@kernel.org>
    Tested-by: Marc Zyngier <maz@kernel.org>
    Acked-by: Kevin Hilman <khilman@baylibre.com>
    Tested-by: Kevin Hilman <khilman@baylibre.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Saravana Kannan authored and davem330 committed Aug 18, 2021
  12. net: mdio-mux: Don't ignore memory allocation errors

    If we are seeing memory allocation errors, don't try to continue
    registering child mdiobus devices. It's unlikely they'll succeed.
    
    Fixes: 342fa19 ("mdio: mux: make child bus walking more permissive and errors more verbose")
    Signed-off-by: Saravana Kannan <saravanak@google.com>
    Reviewed-by: Andrew Lunn <andrew@lunn.ch>
    Acked-by: Marc Zyngier <maz@kernel.org>
    Tested-by: Marc Zyngier <maz@kernel.org>
    Acked-by: Kevin Hilman <khilman@baylibre.com>
    Tested-by: Kevin Hilman <khilman@baylibre.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Saravana Kannan authored and davem330 committed Aug 18, 2021
  13. net: mdio-mux: Delete unnecessary devm_kfree

    The whole point of devm_* APIs is that you don't have to undo them if you
    are returning an error that's going to get propagated out of a probe()
    function. So delete unnecessary devm_kfree() call in the error return path.
    
    Fixes: b601616 ("mdio: mux: Correct mdio_mux_init error path issues")
    Signed-off-by: Saravana Kannan <saravanak@google.com>
    Reviewed-by: Andrew Lunn <andrew@lunn.ch>
    Acked-by: Marc Zyngier <maz@kernel.org>
    Tested-by: Marc Zyngier <maz@kernel.org>
    Acked-by: Kevin Hilman <khilman@baylibre.com>
    Tested-by: Kevin Hilman <khilman@baylibre.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Saravana Kannan authored and davem330 committed Aug 18, 2021
  14. net: dsa: sja1105: fix use-after-free after calling of_find_compatibl…

    …e_node, or worse
    
    It seems that of_find_compatible_node has a weird calling convention in
    which it calls of_node_put() on the "from" node argument, instead of
    leaving that up to the caller. This comes from the fact that
    of_find_compatible_node with a non-NULL "from" argument it only supposed
    to be used as the iterator function of for_each_compatible_node(). OF
    iterator functions call of_node_get on the next OF node and of_node_put()
    on the previous one.
    
    When of_find_compatible_node calls of_node_put, it actually never
    expects the refcount to drop to zero, because the call is done under the
    atomic devtree_lock context, and when the refcount drops to zero it
    triggers a kobject and a sysfs file deletion, which assume blocking
    context.
    
    So any driver call to of_find_compatible_node is probably buggy because
    an unexpected of_node_put() takes place.
    
    What should be done is to use the of_get_compatible_child() function.
    
    Fixes: 5a8f097 ("net: dsa: sja1105: register the MDIO buses for 100base-T1 and 100base-TX")
    Link: https://lore.kernel.org/netdev/20210814010139.kzryimmp4rizlznt@skbuf/
    Suggested-by: Frank Rowand <frowand.list@gmail.com>
    Suggested-by: Rob Herring <robh+dt@kernel.org>
    Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    vladimiroltean authored and davem330 committed Aug 18, 2021
  15. sch_cake: fix srchost/dsthost hashing mode

    When adding support for using the skb->hash value as the flow hash in CAKE,
    I accidentally introduced a logic error that broke the host-only isolation
    modes of CAKE (srchost and dsthost keywords). Specifically, the flow_hash
    variable should stay initialised to 0 in cake_hash() in pure host-based
    hashing mode. Add a check for this before using the skb->hash value as
    flow_hash.
    
    Fixes: b0c19ed ("sch_cake: Take advantage of skb->hash where appropriate")
    Reported-by: Pete Heist <pete@heistp.net>
    Tested-by: Pete Heist <pete@heistp.net>
    Signed-off-by: Toke Høiland-Jørgensen <toke@redhat.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    tohojo authored and davem330 committed Aug 18, 2021
  16. platform/x86: gigabyte-wmi: add support for X570 GAMING X

    Reported as working here:
    t-8ch/linux-gigabyte-wmi-driver#1 (comment)
    
    Signed-off-by: Thomas Weißschuh <linux@weissschuh.net>
    Link: https://lore.kernel.org/r/20210817154628.84992-1-linux@weissschuh.net
    Signed-off-by: Hans de Goede <hdegoede@redhat.com>
    t-8ch authored and jwrdegoede committed Aug 18, 2021
  17. ixgbe, xsk: clean up the resources in ixgbe_xsk_pool_enable error path

    In ixgbe_xsk_pool_enable(), if ixgbe_xsk_wakeup() fails,
    We should restore the previous state and clean up the
    resources. Add the missing clear af_xdp_zc_qps and unmap dma
    to fix this bug.
    
    Fixes: d49e286 ("ixgbe: add tracking of AF_XDP zero-copy state for each queue pair")
    Fixes: 4a9b32f ("ixgbe: fix potential RX buffer starvation for AF_XDP")
    Signed-off-by: Wang Hai <wanghai38@huawei.com>
    Acked-by: Magnus Karlsson <magnus.karlsson@intel.com>
    Tested-by: Sandeep Penigalapati <sandeep.penigalapati@intel.com>
    Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
    Link: https://lore.kernel.org/r/20210817203736.3529939-1-anthony.l.nguyen@intel.com
    Signed-off-by: Jakub Kicinski <kuba@kernel.org>
    Wang Hai authored and Jakub Kicinski committed Aug 18, 2021

Commits on Aug 17, 2021

  1. Merge tag 'wireless-drivers-2021-08-17' of git://git.kernel.org/pub/s…

    …cm/linux/kernel/git/kvalo/wireless-drivers
    
    Kalle Valo says:
    
    ====================
    wireless-drivers fixes for v5.14
    
    First set of fixes for v5.14 and nothing major this time. New devices
    for iwlwifi and one fix for a compiler warning.
    
    iwlwifi
     * support for new devices
    
    mt76
     * fix compiler warning about MT_CIPHER_NONE
    
    * tag 'wireless-drivers-2021-08-17' of git://git.kernel.org/pub/scm/linux/kernel/git/kvalo/wireless-drivers:
      mt76: fix enum type mismatch
      iwlwifi: add new so-jf devices
      iwlwifi: add new SoF with JF devices
      iwlwifi: pnvm: accept multiple HW-type TLVs
    ====================
    
    Link: https://lore.kernel.org/r/20210817171027.EC1E6C43460@smtp.codeaurora.org
    Signed-off-by: Jakub Kicinski <kuba@kernel.org>
    Jakub Kicinski committed Aug 17, 2021
Older