1. 23 May, 2024 20 commits
  2. 20 May, 2024 1 commit
  3. 17 May, 2024 7 commits
  4. 14 May, 2024 2 commits
  5. 09 May, 2024 10 commits
    • Jakub Kicinski's avatar
      Merge tag 'wireless-next-2024-05-08' of... · 83127eca
      Jakub Kicinski authored
      Merge tag 'wireless-next-2024-05-08' of git://git.kernel.org/pub/scm/linux/kernel/git/wireless/wireless-next
      
      Kalle Valo says:
      
      ====================
      wireless-next patches for v6.10
      
      The third, and most likely the last, "new features" pull request for
      v6.10 with changes both in stack and in drivers. In ath12k and rtw89
      we disabled Wireless Extensions just like with iwlwifi earlier. Wi-Fi
      7 devices will not support Wireless Extensions (WEXT) anymore so if
      someone is still using the legacy WEXT interface it's time to switch
      to nl80211 now!
      
      We merged wireless into wireless-next as we decided not to send a
      wireless pull request to v6.9 this late in the cycle. Also an
      immutable branch with MHI subsystem was merged to get ath11k and
      ath12k hibernation working.
      
      Major changes:
      
      mac80211/cfg80211
       * handle color change per link
      
      mt76
       * mt7921 LED control
       * mt7925 EHT radiotap support
       * mt7920e PCI support
      
      ath12k
       * debugfs support
       * dfs_simulate_radar debugfs file
       * disable Wireless Extensions
       * suspend and hibernation support
       * ACPI support
       * refactoring in preparation of multi-link support
      
      ath11k
       * support hibernation (required changes in qrtr and MHI subsystems)
       * ieee80211-freq-limit Device Tree property support
      
      ath10k
       * firmware-name Device Tree property support
      
      rtw89
       * complete features of new WiFi 7 chip 8922AE including BT-coexistence
         and WoWLAN
       * use BIOS ACPI settings to set TX power and channels
       * disable Wireless Extensios on Wi-Fi 7 devices
      
      iwlwifi
       * block_esr debugfs file
       * support again firmware API 90 (was reverted earlier)
       * provide channel survey information for Automatic Channel Selection (ACS)
      
      * tag 'wireless-next-2024-05-08' of git://git.kernel.org/pub/scm/linux/kernel/git/wireless/wireless-next: (214 commits)
        wifi: mwl8k: initialize cmd->addr[] properly
        wifi: iwlwifi: Ensure prph_mac dump includes all addresses
        wifi: iwlwifi: mvm: don't request statistics in restart
        wifi: iwlwifi: mvm: exit EMLSR if secondary link is not used
        wifi: iwlwifi: mvm: add beacon template version 14
        wifi: iwlwifi: mvm: align UATS naming with firmware
        wifi: iwlwifi: Force SCU_ACTIVE for specific platforms
        wifi: iwlwifi: mvm: record and return channel survey information
        wifi: iwlwifi: mvm: add the firmware API for channel survey
        wifi: iwlwifi: mvm: Fix race in scan completion
        wifi: iwlwifi: mvm: Add a print for invalid link pair due to bandwidth
        wifi: iwlwifi: mvm: add a debugfs for reading EMLSR blocking reasons
        wifi: iwlwifi: mvm: Add active EMLSR blocking reasons prints
        wifi: iwlwifi: bump FW API to 90 for BZ/SC devices
        wifi: iwlwifi: mvm: fix primary link setting
        wifi: iwlwifi: mvm: use already determined cmd_id
        wifi: iwlwifi: mvm: don't reset link selection during restart
        wifi: iwlwifi: Print EMLSR states name
        wifi: iwlwifi: mvm: Block EMLSR when a p2p/softAP vif is active
        wifi: iwlwifi: mvm: fix typo in debug print
        ...
      ====================
      
      Link: https://lore.kernel.org/r/20240508120726.85A10C113CC@smtp.kernel.orgSigned-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      83127eca
    • Jakub Kicinski's avatar
      Merge branch 'netdevsim-add-napi-support' · d9308f51
      Jakub Kicinski authored
      David Wei says:
      
      ====================
      netdevsim: add NAPI support
      
      Add NAPI support to netdevsim and register its Rx queues with NAPI
      instances. Then add a selftest using the new netdev Python selftest
      infra to exercise the existing Netdev Netlink API, specifically the
      queue-get API.
      
      This expands test coverage and further fleshes out netdevsim as a test
      device. It's still my goal to make it useful for testing things like
      flow steering and ZC Rx.
      ====================
      
      Link: https://lore.kernel.org/r/20240507163228.2066817-1-dw@davidwei.ukSigned-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      d9308f51
    • David Wei's avatar
      net: selftest: add test for netdev netlink queue-get API · 1cf27042
      David Wei authored
      Add a selftest for netdev generic netlink. For now there is only a
      single test that exercises the `queue-get` API.
      
      The test works with netdevsim by default or with a real device by
      setting NETIF.
      
      Add a timeout param to cmd() since ethtool -L can take a long time on
      real devices.
      Signed-off-by: default avatarDavid Wei <dw@davidwei.uk>
      Link: https://lore.kernel.org/r/20240507163228.2066817-3-dw@davidwei.ukSigned-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      1cf27042
    • David Wei's avatar
      netdevsim: add NAPI support · 3762ec05
      David Wei authored
      Add NAPI support to netdevim, similar to veth.
      
      * Add a nsim_rq rx queue structure to hold a NAPI instance and a skb
        queue.
      * During xmit, store the skb in the peer skb queue and schedule NAPI.
      * During napi_poll(), drain the skb queue and pass up the stack.
      * Add assoc between rxq and NAPI instance using netif_queue_set_napi().
      Signed-off-by: default avatarDavid Wei <dw@davidwei.uk>
      Link: https://lore.kernel.org/r/20240507163228.2066817-2-dw@davidwei.ukSigned-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      3762ec05
    • Willem de Bruijn's avatar
      selftests: drv-net: add checksum tests · 1d0dc857
      Willem de Bruijn authored
      Run tools/testing/selftest/net/csum.c as part of drv-net.
      This binary covers multiple scenarios, based on arguments given,
      for both IPv4 and IPv6:
      
      - Accept UDP correct checksum
      - Detect UDP invalid checksum
      - Accept TCP correct checksum
      - Detect TCP invalid checksum
      
      - Transmit UDP: basic checksum offload
      - Transmit UDP: zero checksum conversion
      
      The test direction is reversed between receive and transmit tests, so
      that the NIC under test is always the local machine.
      
      In total this adds up to 12 testcases, with more to follow. For
      conciseness, I replaced individual functions with a function factory.
      
      Also detect hardware offload feature availability using Ethtool
      netlink and skip tests when either feature is off. This need may be
      common for offload feature tests and eventually deserving of a thin
      wrapper in lib.py.
      
      Missing are the PF_PACKET based send tests ('-P'). These use
      virtio_net_hdr to program hardware checksum offload. Which requires
      looking up the local MAC address and (harder) the MAC of the next hop.
      I'll have to give it some though how to do that robustly and where
      that code would belong.
      
      Tested:
      
              make -C tools/testing/selftests/ \
                      TARGETS="drivers/net drivers/net/hw" \
                      install INSTALL_PATH=/tmp/ksft
              cd /tmp/ksft
      
      	sudo NETIF=ens4 REMOTE_TYPE=ssh \
      		REMOTE_ARGS="root@10.40.0.2" \
      		LOCAL_V4="10.40.0.1" \
      		REMOTE_V4="10.40.0.2" \
      		./run_kselftest.sh -t drivers/net/hw:csum.py
      Signed-off-by: default avatarWillem de Bruijn <willemb@google.com>
      Link: https://lore.kernel.org/r/20240507154216.501111-1-willemdebruijn.kernel@gmail.comSigned-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      1d0dc857
    • Eric Dumazet's avatar
      phonet: no longer hold RTNL in route_dumpit() · 58a4ff5d
      Eric Dumazet authored
      route_dumpit() already relies on RCU, RTNL is not needed.
      
      Also change return value at the end of a dump.
      This allows NLMSG_DONE to be appended to the current
      skb at the end of a dump, saving a couple of recvmsg()
      system calls.
      Signed-off-by: default avatarEric Dumazet <edumazet@google.com>
      Cc: Remi Denis-Courmont <courmisch@gmail.com>
      Reviewed-by: default avatarSimon Horman <horms@kernel.org>
      Link: https://lore.kernel.org/r/20240507121748.416287-1-edumazet@google.comSigned-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      58a4ff5d
    • Eric Dumazet's avatar
      net: annotate data-races around dev->if_port · 8d8b1a42
      Eric Dumazet authored
      Various ndo_set_config() methods can change dev->if_port
      
      dev->if_port is going to be read locklessly from
      rtnl_fill_link_ifmap().
      
      Add corresponding WRITE_ONCE() on writer sides.
      Signed-off-by: default avatarEric Dumazet <edumazet@google.com>
      Reviewed-by: default avatarSimon Horman <horms@kernel.org>
      Link: https://lore.kernel.org/r/20240507184144.1230469-1-edumazet@google.comSigned-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      8d8b1a42
    • Eric Dumazet's avatar
      net: dst_cache: minor optimization in dst_cache_set_ip6() · e2d09e5a
      Eric Dumazet authored
      There is no need to use this_cpu_ptr(dst_cache->cache) twice.
      
      Compiler is unable to optimize the second call, because of
      per-cpu constraints.
      Signed-off-by: default avatarEric Dumazet <edumazet@google.com>
      Acked-by: default avatarPaolo Abeni <pabeni@redhat.com>
      Link: https://lore.kernel.org/r/20240507132717.627518-1-edumazet@google.comSigned-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      e2d09e5a
    • Eric Dumazet's avatar
      net: dst_cache: annotate data-races around dst_cache->reset_ts · 3b09b2bd
      Eric Dumazet authored
      dst_cache->reset_ts is read or written locklessly,
      add READ_ONCE() and WRITE_ONCE() annotations.
      Signed-off-by: default avatarEric Dumazet <edumazet@google.com>
      Acked-by: default avatarPaolo Abeni <pabeni@redhat.com>
      Link: https://lore.kernel.org/r/20240507132000.614591-1-edumazet@google.comSigned-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      3b09b2bd
    • Donald Hunter's avatar
      netlink/specs: Add VF attributes to rt_link spec · e497c322
      Donald Hunter authored
      Add support for retrieving VFs as part of link info. For example:
      
      ./tools/net/ynl/cli.py --spec Documentation/netlink/specs/rt_link.yaml \
        --do getlink --json '{"ifi-index": 38, "ext-mask": ["vf", "skip-stats"]}'
      {'address': 'b6:75:91:f2:64:65',
       [snip]
       'vfinfo-list': {'info': [{'broadcast': b'\xff\xff\xff\xff\xff\xff\x00\x00'
                                              b'\x00\x00\x00\x00\x00\x00\x00\x00'
                                              b'\x00\x00\x00\x00\x00\x00\x00\x00'
                                              b'\x00\x00\x00\x00\x00\x00\x00\x00',
                                 'link-state': {'link-state': 'auto', 'vf': 0},
                                 'mac': {'mac': b'\x00\x00\x00\x00\x00\x00\x00\x00'
                                                b'\x00\x00\x00\x00\x00\x00\x00\x00'
                                                b'\x00\x00\x00\x00\x00\x00\x00\x00'
                                                b'\x00\x00\x00\x00\x00\x00\x00\x00',
                                         'vf': 0},
                                 'rate': {'max-tx-rate': 0,
                                          'min-tx-rate': 0,
                                          'vf': 0},
                                 'rss-query-en': {'setting': 0, 'vf': 0},
                                 'spoofchk': {'setting': 0, 'vf': 0},
                                 'trust': {'setting': 0, 'vf': 0},
                                 'tx-rate': {'rate': 0, 'vf': 0},
                                 'vlan': {'qos': 0, 'vf': 0, 'vlan': 0},
                                 'vlan-list': {'info': [{'qos': 0,
                                                         'vf': 0,
                                                         'vlan': 0,
                                                         'vlan-proto': 0}]}},
                                {'broadcast': b'\xff\xff\xff\xff\xff\xff\x00\x00'
                                              b'\x00\x00\x00\x00\x00\x00\x00\x00'
                                              b'\x00\x00\x00\x00\x00\x00\x00\x00'
                                              b'\x00\x00\x00\x00\x00\x00\x00\x00',
                                 'link-state': {'link-state': 'auto', 'vf': 1},
                                 'mac': {'mac': b'\x00\x00\x00\x00\x00\x00\x00\x00'
                                                b'\x00\x00\x00\x00\x00\x00\x00\x00'
                                                b'\x00\x00\x00\x00\x00\x00\x00\x00'
                                                b'\x00\x00\x00\x00\x00\x00\x00\x00',
                                         'vf': 1},
                                 'rate': {'max-tx-rate': 0,
                                          'min-tx-rate': 0,
                                          'vf': 1},
                                 'rss-query-en': {'setting': 0, 'vf': 1},
                                 'spoofchk': {'setting': 0, 'vf': 1},
                                 'trust': {'setting': 0, 'vf': 1},
                                 'tx-rate': {'rate': 0, 'vf': 1},
                                 'vlan': {'qos': 0, 'vf': 1, 'vlan': 0},
                                 'vlan-list': {'info': [{'qos': 0,
                                                         'vf': 1,
                                                         'vlan': 0,
                                                         'vlan-proto': 0}]}}]},
       'xdp': {'attached': 0}}
      Signed-off-by: default avatarDonald Hunter <donald.hunter@gmail.com>
      Link: https://lore.kernel.org/r/20240507103603.23017-1-donald.hunter@gmail.comSigned-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      e497c322