1. 03 Feb, 2023 4 commits
  2. 02 Feb, 2023 36 commits
    • Jakub Kicinski's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net · 82b4a941
      Jakub Kicinski authored
      net/core/gro.c
        7d2c89b3 ("skb: Do mix page pool and page referenced frags in GRO")
        b1a78b9b ("net: add support for ipv4 big tcp")
      https://lore.kernel.org/all/20230203094454.5766f160@canb.auug.org.au/Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      82b4a941
    • Linus Torvalds's avatar
      Merge tag 'net-6.2-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net · edb9b8f3
      Linus Torvalds authored
      Pull networking fixes from Jakub Kicinski:
       "Including fixes from bpf, can and netfilter.
      
        Current release - regressions:
      
         - phy: fix null-deref in phy_attach_direct
      
         - mac802154: fix possible double free upon parsing error
      
        Previous releases - regressions:
      
         - bpf: preserve reg parent/live fields when copying range info,
           prevent mis-verification of programs as safe
      
         - ip6: fix GRE tunnels not generating IPv6 link local addresses
      
         - phy: dp83822: fix null-deref on DP83825/DP83826 devices
      
         - sctp: do not check hb_timer.expires when resetting hb_timer
      
         - eth: mtk_sock: fix SGMII configuration after phylink conversion
      
        Previous releases - always broken:
      
         - eth: xdp: execute xdp_do_flush() before napi_complete_done()
      
         - skb: do not mix page pool and page referenced frags in GRO
      
         - bpf:
            - fix a possible task gone issue with bpf_send_signal[_thread]()
            - fix an off-by-one bug in bpf_mem_cache_idx() to select the right
              cache
            - add missing btf_put to register_btf_id_dtor_kfuncs
            - sockmap: fon't let sock_map_{close,destroy,unhash} call itself
      
         - gso: fix null-deref in skb_segment_list()
      
         - mctp: purge receive queues on sk destruction
      
         - fix UaF caused by accept on already connected socket in exotic
           socket families
      
         - tls: don't treat list head as an entry in tls_is_tx_ready()
      
         - netfilter: br_netfilter: disable sabotage_in hook after first
           suppression
      
         - wwan: t7xx: fix runtime PM implementation
      
        Misc:
      
         - MAINTAINERS: spring cleanup of networking maintainers"
      
      * tag 'net-6.2-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net: (65 commits)
        mtk_sgmii: enable PCS polling to allow SFP work
        net: mediatek: sgmii: fix duplex configuration
        net: mediatek: sgmii: ensure the SGMII PHY is powered down on configuration
        MAINTAINERS: update SCTP maintainers
        MAINTAINERS: ipv6: retire Hideaki Yoshifuji
        mailmap: add John Crispin's entry
        MAINTAINERS: bonding: move Veaceslav Falico to CREDITS
        net: openvswitch: fix flow memory leak in ovs_flow_cmd_new
        net: ethernet: mtk_eth_soc: disable hardware DSA untagging for second MAC
        virtio-net: Keep stop() to follow mirror sequence of open()
        selftests: net: udpgso_bench_tx: Cater for pending datagrams zerocopy benchmarking
        selftests: net: udpgso_bench: Fix racing bug between the rx/tx programs
        selftests: net: udpgso_bench_rx/tx: Stop when wrong CLI args are provided
        selftests: net: udpgso_bench_rx: Fix 'used uninitialized' compiler warning
        can: mcp251xfd: mcp251xfd_ring_set_ringparam(): assign missing tx_obj_num_coalesce_irq
        can: isotp: split tx timer into transmission and timeout
        can: isotp: handle wait_event_interruptible() return values
        can: raw: fix CAN FD frame transmissions over CAN XL devices
        can: j1939: fix errant WARN_ON_ONCE in j1939_session_deactivate
        hv_netvsc: Fix missed pagebuf entries in netvsc_dma_map/unmap()
        ...
      edb9b8f3
    • Linus Torvalds's avatar
      Merge tag 'linux-kselftest-kunit-fixes-6.2-rc7' of... · e7368fd3
      Linus Torvalds authored
      Merge tag 'linux-kselftest-kunit-fixes-6.2-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest
      
      Pull KUnit fixes from Shuah Khan:
       "Three fixes to bugs that cause kernel crash, link error during build,
        and a third to fix kunit_test_init_section_suites() extra indirection
        issue"
      
      * tag 'linux-kselftest-kunit-fixes-6.2-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest:
        kunit: fix kunit_test_init_section_suites(...)
        kunit: fix bug in KUNIT_EXPECT_MEMEQ
        kunit: Export kunit_running()
      e7368fd3
    • Linus Torvalds's avatar
      Merge tag 'soc-fixes-6.2-3' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc · 42c78a5b
      Linus Torvalds authored
      Pull ARM SoC fixes from Arnd Bergmann:
       "The majority of bugfixes is once more for the NXP i.MX platform,
        addressing issue with i.MX8M (UART, watchdog and ethernet) as well as
        imx8dxl power button and the USB modem on an imx7 board.
      
        The reason that i.MX always shows up here is obviously not that they
        are more buggy than the others, but they have the most boards and are
        good about getting fixes in quickly.
      
        The other DT fixes are for the Nuvoton wpcm450 flash controller and
        the i2c mux on an ASpeed board.
      
        Lastly, there are updates to the MAINTAINERS entries for Mediatek,
        AMD/Seattle and NXP SoCs, as well as a lone code fix for error
        handling in the allwinner 'rsb' bus driver"
      
      * tag 'soc-fixes-6.2-3' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc:
        ARM: dts: wpcm450: Add nuvoton,shm = <&shm> to FIU node
        MAINTAINERS: Update entry for MediaTek SoC support
        MAINTAINERS: amd: drop inactive Brijesh Singh
        ARM: dts: imx7d-smegw01: Fix USB host over-current polarity
        arm64: dts: imx8mm-verdin: Do not power down eth-phy
        MAINTAINERS: match freescale ARM64 DT directory in i.MX entry
        arm64: dts: imx8mm: Fix pad control for UART1_DTE_RX
        ARM: dts: aspeed: Fix pca9849 compatible
        arm64: dts: freescale: imx8dxl: fix sc_pwrkey's property name linux,keycode
        arm64: dts: imx8m-venice: Remove incorrect 'uart-has-rtscts'
        arm64: dts: imx8mm: Reinstate GPIO watchdog always-running property on eDM SBC
        bus: sunxi-rsb: Fix error handling in sunxi_rsb_init()
      42c78a5b
    • Linus Torvalds's avatar
      Merge tag 's390-6.2-4' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux · addfba11
      Linus Torvalds authored
      Pull s390 fixes from Heiko Carstens:
      
       - With CONFIG_VMAP_STACK enabled it is not possible to load the s390
         specific diag288_wdt watchdog module. The reason is that a pointer to
         a string is passed to an inline assembly; this string however is
         located on the stack, while the instruction within the inline
         assembly expects a physicial address. Fix this by copying the string
         to a kmalloc'ed buffer.
      
       - The diag288_wdt watchdog module does not indicate that it accesses
         memory from an inline assembly, which it does. Add "memory" to the
         clobber list to prevent the compiler from optimizing code incorrectly
         away.
      
       - Pass size of the uncompressed kernel image to __decompress() call.
         Otherwise the kernel image decompressor may corrupt/overwrite an
         initrd. This was reported to happen on s390 after commit 2aa14b1a
         ("zstd: import usptream v1.5.2").
      
      * tag 's390-6.2-4' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux:
        s390/decompressor: specify __decompress() buf len to avoid overflow
        watchdog: diag288_wdt: fix __diag288() inline assembly
        watchdog: diag288_wdt: do not use stack buffers for hardware data
      addfba11
    • Linus Torvalds's avatar
      Merge tag 'platform-drivers-x86-v6.2-4' of... · 870bb765
      Linus Torvalds authored
      Merge tag 'platform-drivers-x86-v6.2-4' of git://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86
      
      Pull x86 platform driver fixes from Hans de Goede:
       "A set of AMD PMF fixes + a few other small fixes"
      
      * tag 'platform-drivers-x86-v6.2-4' of git://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86:
        platform/x86: touchscreen_dmi: Add Chuwi Vi8 (CWI501) DMI match
        platform/x86: thinkpad_acpi: Fix thinklight LED brightness returning 255
        platform/x86/amd: pmc: add CONFIG_SERIO dependency
        platform/x86/amd/pmf: Ensure mutexes are initialized before use
        platform/x86/amd/pmf: Fix to update SPS thermals when power supply change
        platform/x86/amd/pmf: Fix to update SPS default pprof thermals
        platform/x86/amd/pmf: update to auto-mode limits only after AMT event
        platform/x86/amd/pmf: Add helper routine to check pprof is balanced
        platform/x86/amd/pmf: Add helper routine to update SPS thermals
      870bb765
    • Jakub Kicinski's avatar
      Merge branch 'fixes-for-mtk_eth_soc' · 9983a2c9
      Jakub Kicinski authored
      Bjørn Mork says:
      
      ====================
      Fix mtk_eth_soc sgmii configuration.
      
      This has been tested on a MT7986 with a Maxlinear GPY211C phy
      permanently attached to the second SoC mac.
      ====================
      
      Link: https://lore.kernel.org/r/20230201182331.943411-1-bjorn@mork.noSigned-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      9983a2c9
    • Alexander Couzens's avatar
      mtk_sgmii: enable PCS polling to allow SFP work · 3337a6e0
      Alexander Couzens authored
      Currently there is no IRQ handling (even the SGMII supports it).
      Enable polling to support SFP ports.
      
      Fixes: 14a44ab0 ("net: mtk_eth_soc: partially convert to phylink_pcs")
      Reviewed-by: default avatarRussell King (Oracle) <rmk+kernel@armlinux.org.uk>
      Signed-off-by: default avatarAlexander Couzens <lynxis@fe80.eu>
      [ bmork: changed "1" => "true" ]
      Signed-off-by: default avatarBjørn Mork <bjorn@mork.no>
      Acked-by: default avatarDaniel Golle <daniel@makrotopia.org>
      Tested-by: default avatarDaniel Golle <daniel@makrotopia.org>
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      3337a6e0
    • Bjørn Mork's avatar
      net: mediatek: sgmii: fix duplex configuration · 9d326371
      Bjørn Mork authored
      The logic of the duplex bit is inverted.  Setting it means half
      duplex, not full duplex.
      
      Fix and rename macro to avoid confusion.
      
      Fixes: 7e538372 ("net: ethernet: mediatek: Re-add support SGMII")
      Reviewed-by: default avatarRussell King (Oracle) <rmk+kernel@armlinux.org.uk>
      Signed-off-by: default avatarBjørn Mork <bjorn@mork.no>
      Acked-by: default avatarDaniel Golle <daniel@makrotopia.org>
      Tested-by: default avatarDaniel Golle <daniel@makrotopia.org>
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      9d326371
    • Alexander Couzens's avatar
      net: mediatek: sgmii: ensure the SGMII PHY is powered down on configuration · 7ff82416
      Alexander Couzens authored
      The code expect the PHY to be in power down which is only true after reset.
      Allow changes of the SGMII parameters more than once.
      
      Only power down when reconfiguring to avoid bouncing the link when there's
      no reason to - based on code from Russell King.
      
      There are cases when the SGMII_PHYA_PWD register contains 0x9 which
      prevents SGMII from working. The SGMII still shows link but no traffic
      can flow. Writing 0x0 to the PHYA_PWD register fix the issue. 0x0 was
      taken from a good working state of the SGMII interface.
      
      Fixes: 42c03844 ("net-next: mediatek: add support for MediaTek MT7622 SoC")
      Suggested-by: default avatarRussell King (Oracle) <linux@armlinux.org.uk>
      Signed-off-by: default avatarAlexander Couzens <lynxis@fe80.eu>
      [ bmork: rebased and squashed into one patch ]
      Reviewed-by: default avatarRussell King (Oracle) <rmk+kernel@armlinux.org.uk>
      Signed-off-by: default avatarBjørn Mork <bjorn@mork.no>
      Acked-by: default avatarDaniel Golle <daniel@makrotopia.org>
      Tested-by: default avatarDaniel Golle <daniel@makrotopia.org>
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      7ff82416
    • Jakub Kicinski's avatar
      Merge tag 'linux-can-fixes-for-6.2-20230202' of... · b0de13d3
      Jakub Kicinski authored
      Merge tag 'linux-can-fixes-for-6.2-20230202' of git://git.kernel.org/pub/scm/linux/kernel/git/mkl/linux-can
      
      Marc Kleine-Budde says:
      
      ====================
      can 2023-02-02
      
      The first patch is by Ziyang Xuan and removes a errant WARN_ON_ONCE()
      in the CAN J1939 protocol.
      
      The next 3 patches are by Oliver Hartkopp. The first 2 target the CAN
      ISO-TP protocol and fix the state machine with respect to signals and
      a regression found by the syzbot.
      
      The last patch is by me an missing assignment during the ethtool ring
      configuration callback.
      
      * tag 'linux-can-fixes-for-6.2-20230202' of git://git.kernel.org/pub/scm/linux/kernel/git/mkl/linux-can:
        can: mcp251xfd: mcp251xfd_ring_set_ringparam(): assign missing tx_obj_num_coalesce_irq
        can: isotp: split tx timer into transmission and timeout
        can: isotp: handle wait_event_interruptible() return values
        can: raw: fix CAN FD frame transmissions over CAN XL devices
        can: j1939: fix errant WARN_ON_ONCE in j1939_session_deactivate
      ====================
      
      Link: https://lore.kernel.org/r/20230202094135.2293939-1-mkl@pengutronix.deSigned-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      b0de13d3
    • Jakub Kicinski's avatar
      Merge branch 'maintainers-spring-refresh-of-networking-maintainers' · 4b6e135e
      Jakub Kicinski authored
      Jakub Kicinski says:
      
      ====================
      MAINTAINERS: spring refresh of networking maintainers
      
      Use Jon Corbet's script for generating statistics about maintainer
      coverage to identify inactive maintainers of relatively active code.
      Move them to CREDITS.
      ====================
      
      Link: https://lore.kernel.org/r/20230201182014.2362044-1-kuba@kernel.orgSigned-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      4b6e135e
    • Jakub Kicinski's avatar
      MAINTAINERS: update SCTP maintainers · cd101f40
      Jakub Kicinski authored
      Vlad has stepped away from SCTP related duties.
      Move him to CREDITS and add Xin Long.
      
      Subsystem SCTP PROTOCOL
        Changes 237 / 629 (37%)
        Last activity: 2022-12-12
        Vlad Yasevich <vyasevich@gmail.com>:
        Neil Horman <nhorman@tuxdriver.com>:
          Author 20a785aa 2020-05-19 00:00:00 4
          Tags 20a785aa 2020-05-19 00:00:00 84
        Marcelo Ricardo Leitner <marcelo.leitner@gmail.com>:
          Author 557fb586 2021-07-28 00:00:00 41
          Tags da05cecc 2022-12-12 00:00:00 197
        Top reviewers:
          [15]: lucien.xin@gmail.com
        INACTIVE MAINTAINER Vlad Yasevich <vyasevich@gmail.com>
      Acked-by: default avatarMarcelo Ricardo Leitner <marcelo.leitner@gmail.com>
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      cd101f40
    • Jakub Kicinski's avatar
      MAINTAINERS: ipv6: retire Hideaki Yoshifuji · c71a70c2
      Jakub Kicinski authored
      We very rarely hear from Hideaki Yoshifuji and the IPv4/IPv6
      entry covers a lot of code. Asking people to CC someone who
      rarely responds feels wrong.
      
      Note that Hideaki Yoshifuji already has an entry in CREDITS
      for IPv6 so not adding another one.
      
      Cc: Hideaki YOSHIFUJI <yoshfuji@linux-ipv6.org>
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      c71a70c2
    • Jakub Kicinski's avatar
      mailmap: add John Crispin's entry · a3596562
      Jakub Kicinski authored
      John has not been CCed on some of the fixes which perhaps resulted
      in the lack of review tags:
      
      Subsystem MEDIATEK ETHERNET DRIVER
        Changes 50 / 295 (16%)
        Last activity: 2023-01-17
        Felix Fietkau <nbd@nbd.name>:
          Author 8bd8dcc5 2022-11-18 00:00:00 33
          Tags 8bd8dcc5 2022-11-18 00:00:00 38
        John Crispin <john@phrozen.org>:
        Sean Wang <sean.wang@mediatek.com>:
          Author 880c2d4b 2019-06-03 00:00:00 7
          Tags a5d75538 2020-04-07 00:00:00 10
        Mark Lee <Mark-MC.Lee@mediatek.com>:
          Author 8d66a818 2019-11-14 00:00:00 4
          Tags 8d66a818 2019-11-14 00:00:00 4
        Lorenzo Bianconi <lorenzo@kernel.org>:
          Author 08a764a7 2023-01-17 00:00:00 68
          Tags 08a764a7 2023-01-17 00:00:00 74
        Top reviewers:
          [12]: leonro@nvidia.com
          [6]: f.fainelli@gmail.com
          [6]: andrew@lunn.ch
        INACTIVE MAINTAINER John Crispin <john@phrozen.org>
      
      map his old address to the up to date one.
      Acked-by: default avatarJohn Crispin <john@phrozen.org>
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      a3596562
    • Jakub Kicinski's avatar
      MAINTAINERS: bonding: move Veaceslav Falico to CREDITS · 57b24f8c
      Jakub Kicinski authored
      Veaceslav has stepped away from netdev:
      
      Subsystem BONDING DRIVER
        Changes 96 / 319 (30%)
        Last activity: 2022-12-01
        Jay Vosburgh <j.vosburgh@gmail.com>:
          Author 4f5d33f4 2022-08-11 00:00:00 3
          Tags e5214f36 2022-12-01 00:00:00 48
        Veaceslav Falico <vfalico@gmail.com>:
        Andy Gospodarek <andy@greyhouse.net>:
          Tags 47f70626 2019-02-24 00:00:00 4
        Top reviewers:
          [42]: jay.vosburgh@canonical.com
          [18]: jiri@nvidia.com
          [10]: jtoppins@redhat.com
        INACTIVE MAINTAINER Veaceslav Falico <vfalico@gmail.com>
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      57b24f8c
    • Fedor Pchelkin's avatar
      net: openvswitch: fix flow memory leak in ovs_flow_cmd_new · 0c598aed
      Fedor Pchelkin authored
      Syzkaller reports a memory leak of new_flow in ovs_flow_cmd_new() as it is
      not freed when an allocation of a key fails.
      
      BUG: memory leak
      unreferenced object 0xffff888116668000 (size 632):
        comm "syz-executor231", pid 1090, jiffies 4294844701 (age 18.871s)
        hex dump (first 32 bytes):
          00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
          00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
        backtrace:
          [<00000000defa3494>] kmem_cache_zalloc include/linux/slab.h:654 [inline]
          [<00000000defa3494>] ovs_flow_alloc+0x19/0x180 net/openvswitch/flow_table.c:77
          [<00000000c67d8873>] ovs_flow_cmd_new+0x1de/0xd40 net/openvswitch/datapath.c:957
          [<0000000010a539a8>] genl_family_rcv_msg_doit+0x22d/0x330 net/netlink/genetlink.c:739
          [<00000000dff3302d>] genl_family_rcv_msg net/netlink/genetlink.c:783 [inline]
          [<00000000dff3302d>] genl_rcv_msg+0x328/0x590 net/netlink/genetlink.c:800
          [<000000000286dd87>] netlink_rcv_skb+0x153/0x430 net/netlink/af_netlink.c:2515
          [<0000000061fed410>] genl_rcv+0x24/0x40 net/netlink/genetlink.c:811
          [<000000009dc0f111>] netlink_unicast_kernel net/netlink/af_netlink.c:1313 [inline]
          [<000000009dc0f111>] netlink_unicast+0x545/0x7f0 net/netlink/af_netlink.c:1339
          [<000000004a5ee816>] netlink_sendmsg+0x8e7/0xde0 net/netlink/af_netlink.c:1934
          [<00000000482b476f>] sock_sendmsg_nosec net/socket.c:651 [inline]
          [<00000000482b476f>] sock_sendmsg+0x152/0x190 net/socket.c:671
          [<00000000698574ba>] ____sys_sendmsg+0x70a/0x870 net/socket.c:2356
          [<00000000d28d9e11>] ___sys_sendmsg+0xf3/0x170 net/socket.c:2410
          [<0000000083ba9120>] __sys_sendmsg+0xe5/0x1b0 net/socket.c:2439
          [<00000000c00628f8>] do_syscall_64+0x30/0x40 arch/x86/entry/common.c:46
          [<000000004abfdcf4>] entry_SYSCALL_64_after_hwframe+0x61/0xc6
      
      To fix this the patch rearranges the goto labels to reflect the order of
      object allocations and adds appropriate goto statements on the error
      paths.
      
      Found by Linux Verification Center (linuxtesting.org) with Syzkaller.
      
      Fixes: 68bb1010 ("openvswitch: Fix flow lookup to use unmasked key")
      Signed-off-by: default avatarFedor Pchelkin <pchelkin@ispras.ru>
      Signed-off-by: default avatarAlexey Khoroshilov <khoroshilov@ispras.ru>
      Acked-by: default avatarEelco Chaudron <echaudro@redhat.com>
      Reviewed-by: default avatarSimon Horman <simon.horman@corigine.com>
      Link: https://lore.kernel.org/r/20230201210218.361970-1-pchelkin@ispras.ruSigned-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      0c598aed
    • Arınç ÜNAL's avatar
      net: ethernet: mtk_eth_soc: disable hardware DSA untagging for second MAC · a1f47752
      Arınç ÜNAL authored
      According to my tests on MT7621AT and MT7623NI SoCs, hardware DSA untagging
      won't work on the second MAC. Therefore, disable this feature when the
      second MAC of the MT7621 and MT7623 SoCs is being used.
      
      Fixes: 2d7605a7 ("net: ethernet: mtk_eth_soc: enable hardware DSA untagging")
      Link: https://lore.kernel.org/netdev/6249fc14-b38a-c770-36b4-5af6d41c21d3@arinc9.com/Tested-by: default avatarArınç ÜNAL <arinc.unal@arinc9.com>
      Signed-off-by: default avatarArınç ÜNAL <arinc.unal@arinc9.com>
      Link: https://lore.kernel.org/r/20230128094232.2451947-1-arinc.unal@arinc9.comSigned-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      a1f47752
    • Parav Pandit's avatar
      virtio-net: Keep stop() to follow mirror sequence of open() · 63b11404
      Parav Pandit authored
      Cited commit in fixes tag frees rxq xdp info while RQ NAPI is
      still enabled and packet processing may be ongoing.
      
      Follow the mirror sequence of open() in the stop() callback.
      This ensures that when rxq info is unregistered, no rx
      packet processing is ongoing.
      
      Fixes: 754b8a21 ("virtio_net: setup xdp_rxq_info")
      Acked-by: default avatarMichael S. Tsirkin <mst@redhat.com>
      Reviewed-by: default avatarJiri Pirko <jiri@nvidia.com>
      Signed-off-by: default avatarParav Pandit <parav@nvidia.com>
      Link: https://lore.kernel.org/r/20230202163516.12559-1-parav@nvidia.comSigned-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      63b11404
    • Bo Liu's avatar
      net: dsa: Use sysfs_emit() to instead of sprintf() · b18ea3d9
      Bo Liu authored
      Follow the advice of the Documentation/filesystems/sysfs.rst and show()
      should only use sysfs_emit() or sysfs_emit_at() when formatting the
      value to be returned to user space.
      Signed-off-by: default avatarBo Liu <liubo03@inspur.com>
      Link: https://lore.kernel.org/r/20230201081438.3151-1-liubo03@inspur.comSigned-off-by: default avatarPaolo Abeni <pabeni@redhat.com>
      b18ea3d9
    • Paolo Abeni's avatar
      Merge branch 'amd-xgbe-add-support-for-2-5gbe-and-rx-adaptation' · 886d2278
      Paolo Abeni authored
      Raju Rangoju says:
      
      ====================
      amd-xgbe: add support for 2.5GbE and rx-adaptation
      
      This patch series adds support for 2.GbE in 10GBaseT mode and
      rx-adaptation support for Yellow Carp devices.
      
      1) Support for 2.5GbE:
         Add the necessary changes to the driver to fully recognize and enable
         2.5GbE speed in 10GBaseT mode.
      
      2) Support for rx-adaptation:
         In order to support the 10G backplane mode without Auto-negotiation
         and to support the longer-length DAC cables, it requires PHY to
         perform RX Adaptation sequence as mentioned in the Synopsys databook.
         Add the necessary changes to Yellow Carp devices to ensure seamless
         RX Adaptation for 10G-SFI (LONG DAC), and 10G-KR modes without
         Auto-Negotiation (CL72 not present)
      ====================
      
      Link: https://lore.kernel.org/r/20230201054932.212700-1-Raju.Rangoju@amd.comSigned-off-by: default avatarPaolo Abeni <pabeni@redhat.com>
      886d2278
    • Raju Rangoju's avatar
      amd-xgbe: add support for rx-adaptation · 4f3b20bf
      Raju Rangoju authored
      The existing implementation for non-Autonegotiation 10G speed modes does
      not enable RX adaptation in the Driver and FW. The RX Equalization
      settings (AFE settings alone) are manually configured and the existing
      link-up sequence in the driver does not perform rx adaptation process as
      mentioned in the Synopsys databook. There's a customer request for 10G
      backplane mode without Auto-negotiation and for the DAC cables of more
      significant length that follow the non-Autonegotiation mode. These modes
      require PHY to perform RX Adaptation.
      
      The proposed logic adds the necessary changes to Yellow Carp devices to
      ensure seamless RX Adaptation for 10G-SFI (LONG DAC) and 10G-KR without
      AN (CL72 not present). The RX adaptation core algorithm is executed by
      firmware, however, to achieve that a new mailbox sub-command is required
      to be sent by the driver.
      Co-developed-by: default avatarShyam Sundar S K <Shyam-sundar.S-k@amd.com>
      Signed-off-by: default avatarShyam Sundar S K <Shyam-sundar.S-k@amd.com>
      Signed-off-by: default avatarRaju Rangoju <Raju.Rangoju@amd.com>
      Signed-off-by: default avatarPaolo Abeni <pabeni@redhat.com>
      4f3b20bf
    • Raju Rangoju's avatar
      amd-xgbe: add 2.5GbE support to 10G BaseT mode · 3ee217c4
      Raju Rangoju authored
      Add support to the driver to fully recognize and enable 2.5GbE speed in
      10GBaseT mode.
      Acked-by: default avatarShyam Sundar S K <Shyam-sundar.S-k@amd.com>
      Signed-off-by: default avatarRaju Rangoju <Raju.Rangoju@amd.com>
      Signed-off-by: default avatarPaolo Abeni <pabeni@redhat.com>
      3ee217c4
    • Andrei Gherzan's avatar
      selftests: net: udpgso_bench_tx: Cater for pending datagrams zerocopy benchmarking · 329c9cd7
      Andrei Gherzan authored
      The test tool can check that the zerocopy number of completions value is
      valid taking into consideration the number of datagram send calls. This can
      catch the system into a state where the datagrams are still in the system
      (for example in a qdisk, waiting for the network interface to return a
      completion notification, etc).
      
      This change adds a retry logic of computing the number of completions up to
      a configurable (via CLI) timeout (default: 2 seconds).
      
      Fixes: 79ebc3c2 ("net/udpgso_bench_tx: options to exercise TX CMSG")
      Signed-off-by: default avatarAndrei Gherzan <andrei.gherzan@canonical.com>
      Cc: Willem de Bruijn <willemb@google.com>
      Cc: Paolo Abeni <pabeni@redhat.com>
      Reviewed-by: default avatarWillem de Bruijn <willemb@google.com>
      Link: https://lore.kernel.org/r/20230201001612.515730-4-andrei.gherzan@canonical.comSigned-off-by: default avatarPaolo Abeni <pabeni@redhat.com>
      329c9cd7
    • Andrei Gherzan's avatar
      selftests: net: udpgso_bench: Fix racing bug between the rx/tx programs · dafe93b9
      Andrei Gherzan authored
      "udpgro_bench.sh" invokes udpgso_bench_rx/udpgso_bench_tx programs
      subsequently and while doing so, there is a chance that the rx one is not
      ready to accept socket connections. This racing bug could fail the test
      with at least one of the following:
      
      ./udpgso_bench_tx: connect: Connection refused
      ./udpgso_bench_tx: sendmsg: Connection refused
      ./udpgso_bench_tx: write: Connection refused
      
      This change addresses this by making udpgro_bench.sh wait for the rx
      program to be ready before firing off the tx one - up to a 10s timeout.
      
      Fixes: 3a687bef ("selftests: udp gso benchmark")
      Signed-off-by: default avatarAndrei Gherzan <andrei.gherzan@canonical.com>
      Cc: Paolo Abeni <pabeni@redhat.com>
      Cc: Willem de Bruijn <willemb@google.com>
      Reviewed-by: default avatarWillem de Bruijn <willemb@google.com>
      Link: https://lore.kernel.org/r/20230201001612.515730-3-andrei.gherzan@canonical.comSigned-off-by: default avatarPaolo Abeni <pabeni@redhat.com>
      dafe93b9
    • Andrei Gherzan's avatar
      selftests: net: udpgso_bench_rx/tx: Stop when wrong CLI args are provided · db9b47ee
      Andrei Gherzan authored
      Leaving unrecognized arguments buried in the output, can easily hide a
      CLI/script typo. Avoid this by exiting when wrong arguments are provided to
      the udpgso_bench test programs.
      
      Fixes: 3a687bef ("selftests: udp gso benchmark")
      Signed-off-by: default avatarAndrei Gherzan <andrei.gherzan@canonical.com>
      Cc: Willem de Bruijn <willemb@google.com>
      Reviewed-by: default avatarWillem de Bruijn <willemb@google.com>
      Link: https://lore.kernel.org/r/20230201001612.515730-2-andrei.gherzan@canonical.comSigned-off-by: default avatarPaolo Abeni <pabeni@redhat.com>
      db9b47ee
    • Andrei Gherzan's avatar
      selftests: net: udpgso_bench_rx: Fix 'used uninitialized' compiler warning · c03c80e3
      Andrei Gherzan authored
      This change fixes the following compiler warning:
      
      /usr/include/x86_64-linux-gnu/bits/error.h:40:5: warning: ‘gso_size’ may
      be used uninitialized [-Wmaybe-uninitialized]
         40 |     __error_noreturn (__status, __errnum, __format,
         __va_arg_pack ());
               |
      	 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      	 udpgso_bench_rx.c: In function ‘main’:
      	 udpgso_bench_rx.c:253:23: note: ‘gso_size’ was declared here
      	   253 |         int ret, len, gso_size, budget = 256;
      
      Fixes: 3327a9c4 ("selftests: add functionals test for UDP GRO")
      Signed-off-by: default avatarAndrei Gherzan <andrei.gherzan@canonical.com>
      Reviewed-by: default avatarWillem de Bruijn <willemb@google.com>
      Link: https://lore.kernel.org/r/20230201001612.515730-1-andrei.gherzan@canonical.comSigned-off-by: default avatarPaolo Abeni <pabeni@redhat.com>
      c03c80e3
    • Paolo Abeni's avatar
      Merge branch 'net-sched-transition-act_pedit-to-rcu-and-percpu-stats' · 8b6f322e
      Paolo Abeni authored
      Pedro Tammela says:
      
      ====================
      net/sched: transition act_pedit to rcu and percpu stats
      
      The software pedit action didn't get the same love as some of the
      other actions and it's still using spinlocks and shared stats.
      Therefore, transition the action to rcu and percpu stats which
      improves the action's performance.
      
      We test this change with a very simple packet forwarding setup:
      
      tc filter add dev ens2f0 ingress protocol ip matchall \
         action pedit ex munge eth src set b8:ce:f6:4b:68:35 pipe \
         action pedit ex munge eth dst set ac:1f:6b:e4:ff:93 pipe \
         action mirred egress redirect dev ens2f1
      tc filter add dev ens2f1 ingress protocol ip matchall \
         action pedit ex munge eth src set b8:ce:f6:4b:68:34 pipe \
         action pedit ex munge eth dst set ac:1f:6b:e4:ff:92 pipe \
         action mirred egress redirect dev ens2f0
      
      Using TRex with a http-like profile, in our setup with a 25G NIC
      and a 26 cores Intel CPU, we observe the following in perf:
         before:
          11.59%  2.30%  [kernel]  [k] tcf_pedit_act
             2.55% tcf_pedit_act
                   8.38% _raw_spin_lock
                             6.43% native_queued_spin_lock_slowpath
         after:
          1.46%  1.46%  [kernel]  [k] tcf_pedit_act
      
      tdc results for pedit after the patch:
      1..69
      ok 1 319a - Add pedit action that mangles IP TTL
      ok 2 7e67 - Replace pedit action with invalid goto chain
      ok 3 377e - Add pedit action with RAW_OP offset u32
      ok 4 a0ca - Add pedit action with RAW_OP offset u32 (INVALID)
      ok 5 dd8a - Add pedit action with RAW_OP offset u16 u16
      ok 6 53db - Add pedit action with RAW_OP offset u16 (INVALID)
      ok 7 5c7e - Add pedit action with RAW_OP offset u8 add value
      ok 8 2893 - Add pedit action with RAW_OP offset u8 quad
      ok 9 3a07 - Add pedit action with RAW_OP offset u8-u16-u8
      ok 10 ab0f - Add pedit action with RAW_OP offset u16-u8-u8
      ok 11 9d12 - Add pedit action with RAW_OP offset u32 set u16 clear u8 invert
      ok 12 ebfa - Add pedit action with RAW_OP offset overflow u32 (INVALID)
      ok 13 f512 - Add pedit action with RAW_OP offset u16 at offmask shift set
      ok 14 c2cb - Add pedit action with RAW_OP offset u32 retain value
      ok 15 1762 - Add pedit action with RAW_OP offset u8 clear value
      ok 16 bcee - Add pedit action with RAW_OP offset u8 retain value
      ok 17 e89f - Add pedit action with RAW_OP offset u16 retain value
      ok 18 c282 - Add pedit action with RAW_OP offset u32 clear value
      ok 19 c422 - Add pedit action with RAW_OP offset u16 invert value
      ok 20 d3d3 - Add pedit action with RAW_OP offset u32 invert value
      ok 21 57e5 - Add pedit action with RAW_OP offset u8 preserve value
      ok 22 99e0 - Add pedit action with RAW_OP offset u16 preserve value
      ok 23 1892 - Add pedit action with RAW_OP offset u32 preserve value
      ok 24 4b60 - Add pedit action with RAW_OP negative offset u16/u32 set value
      ok 25 a5a7 - Add pedit action with LAYERED_OP eth set src
      ok 26 86d4 - Add pedit action with LAYERED_OP eth set src & dst
      ok 27 f8a9 - Add pedit action with LAYERED_OP eth set dst
      ok 28 c715 - Add pedit action with LAYERED_OP eth set src (INVALID)
      ok 29 8131 - Add pedit action with LAYERED_OP eth set dst (INVALID)
      ok 30 ba22 - Add pedit action with LAYERED_OP eth type set/clear sequence
      ok 31 dec4 - Add pedit action with LAYERED_OP eth set type (INVALID)
      ok 32 ab06 - Add pedit action with LAYERED_OP eth add type
      ok 33 918d - Add pedit action with LAYERED_OP eth invert src
      ok 34 a8d4 - Add pedit action with LAYERED_OP eth invert dst
      ok 35 ee13 - Add pedit action with LAYERED_OP eth invert type
      ok 36 7588 - Add pedit action with LAYERED_OP ip set src
      ok 37 0fa7 - Add pedit action with LAYERED_OP ip set dst
      ok 38 5810 - Add pedit action with LAYERED_OP ip set src & dst
      ok 39 1092 - Add pedit action with LAYERED_OP ip set ihl & dsfield
      ok 40 02d8 - Add pedit action with LAYERED_OP ip set ttl & protocol
      ok 41 3e2d - Add pedit action with LAYERED_OP ip set ttl (INVALID)
      ok 42 31ae - Add pedit action with LAYERED_OP ip ttl clear/set
      ok 43 486f - Add pedit action with LAYERED_OP ip set duplicate fields
      ok 44 e790 - Add pedit action with LAYERED_OP ip set ce, df, mf, firstfrag, nofrag fields
      ok 45 cc8a - Add pedit action with LAYERED_OP ip set tos
      ok 46 7a17 - Add pedit action with LAYERED_OP ip set precedence
      ok 47 c3b6 - Add pedit action with LAYERED_OP ip add tos
      ok 48 43d3 - Add pedit action with LAYERED_OP ip add precedence
      ok 49 438e - Add pedit action with LAYERED_OP ip clear tos
      ok 50 6b1b - Add pedit action with LAYERED_OP ip clear precedence
      ok 51 824a - Add pedit action with LAYERED_OP ip invert tos
      ok 52 106f - Add pedit action with LAYERED_OP ip invert precedence
      ok 53 6829 - Add pedit action with LAYERED_OP beyond ip set dport & sport
      ok 54 afd8 - Add pedit action with LAYERED_OP beyond ip set icmp_type & icmp_code
      ok 55 3143 - Add pedit action with LAYERED_OP beyond ip set dport (INVALID)
      ok 56 815c - Add pedit action with LAYERED_OP ip6 set src
      ok 57 4dae - Add pedit action with LAYERED_OP ip6 set dst
      ok 58 fc1f - Add pedit action with LAYERED_OP ip6 set src & dst
      ok 59 6d34 - Add pedit action with LAYERED_OP ip6 dst retain value (INVALID)
      ok 60 94bb - Add pedit action with LAYERED_OP ip6 traffic_class
      ok 61 6f5e - Add pedit action with LAYERED_OP ip6 flow_lbl
      ok 62 6795 - Add pedit action with LAYERED_OP ip6 set payload_len, nexthdr, hoplimit
      ok 63 1442 - Add pedit action with LAYERED_OP tcp set dport & sport
      ok 64 b7ac - Add pedit action with LAYERED_OP tcp sport set (INVALID)
      ok 65 cfcc - Add pedit action with LAYERED_OP tcp flags set
      ok 66 3bc4 - Add pedit action with LAYERED_OP tcp set dport, sport & flags fields
      ok 67 f1c8 - Add pedit action with LAYERED_OP udp set dport & sport
      ok 68 d784 - Add pedit action with mixed RAW/LAYERED_OP #1
      ok 69 70ca - Add pedit action with mixed RAW/LAYERED_OP #2
      ====================
      
      Link: https://lore.kernel.org/r/20230131190512.3805897-1-pctammela@mojatatu.comSigned-off-by: default avatarPaolo Abeni <pabeni@redhat.com>
      8b6f322e
    • Pedro Tammela's avatar
      net/sched: simplify tcf_pedit_act · 95b06938
      Pedro Tammela authored
      Remove the check for a negative number of keys as
      this cannot ever happen
      Reviewed-by: default avatarJamal Hadi Salim <jhs@mojatatu.com>
      Reviewed-by: default avatarSimon Horman <simon.horman@corigine.com>
      Signed-off-by: default avatarPedro Tammela <pctammela@mojatatu.com>
      Signed-off-by: default avatarPaolo Abeni <pabeni@redhat.com>
      95b06938
    • Pedro Tammela's avatar
      net/sched: transition act_pedit to rcu and percpu stats · 52cf89f7
      Pedro Tammela authored
      The software pedit action didn't get the same love as some of the
      other actions and it's still using spinlocks and shared stats in the
      datapath.
      Transition the action to rcu and percpu stats as this improves the
      action's performance dramatically on multiple cpu deployments.
      Reviewed-by: default avatarJamal Hadi Salim <jhs@mojatatu.com>
      Signed-off-by: default avatarPedro Tammela <pctammela@mojatatu.com>
      Reviewed-by: default avatarSimon Horman <simon.horman@corigine.com>
      Signed-off-by: default avatarPaolo Abeni <pabeni@redhat.com>
      52cf89f7
    • Paolo Abeni's avatar
      Merge tag 'rxrpc-next-20230131' of git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs · a8248fc4
      Paolo Abeni authored
      David Howells says:
      
      ====================
      Here's the fifth part of patches in the process of moving rxrpc from doing
      a lot of its stuff in softirq context to doing it in an I/O thread in
      process context and thereby making it easier to support a larger SACK
      table.
      
      The full description is in the description for the first part[1] which is
      now upstream.  The second and third parts are also upstream[2].  A subset
      of the original fourth part[3] got applied as a fix for a race[4].
      
      The fifth part includes some cleanups:
      
       (1) Miscellaneous trace header cleanups: fix a trace string, display the
           security index in rx_packet rather than displaying the type twice,
           remove some whitespace to make checkpatch happier and remove some
           excess tabulation.
      
       (2) Convert ->recvmsg_lock to a spinlock as it's only ever locked
           exclusively.
      
       (3) Make ->ackr_window and ->ackr_nr_unacked non-atomic as they're only
           used in the I/O thread.
      
       (4) Don't use call->tx_lock to access ->tx_buffer as that is only accessed
           inside the I/O thread.  sendmsg() loads onto ->tx_sendmsg and the I/O
           thread decants from that to the buffer.
      
       (5) Remove local->defrag_sem as DATA packets are transmitted serially by
           the I/O thread.
      
       (6) Remove the service connection bundle is it was only used for its
           channel_lock - which has now gone.
      
      And some more significant changes:
      
       (7) Add a debugging option to allow a delay to be injected into packet
           reception to help investigate the behaviour over longer links than
           just a few cm.
      
       (8) Generate occasional PING ACKs to probe for RTT information during a
           receive heavy call.
      
       (9) Simplify the SACK table maintenance and ACK generation.  Now that both
           parts are done in the same thread, there's no possibility of a race
           and no need to try and be cunning to avoid taking a BH spinlock whilst
           copying the SACK table (which in the future will be up to 2K) and no
           need to rotate the copy to fit the ACK packet table.
      
      (10) Use SKB_CONSUMED when freeing received DATA packets (stop dropwatch
           complaining).
      
      * tag 'rxrpc-next-20230131' of git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs:
        rxrpc: Kill service bundle
        rxrpc: Change rx_packet tracepoint to display securityIndex not type twice
        rxrpc: Show consumed and freed packets as non-dropped in dropwatch
        rxrpc: Remove local->defrag_sem
        rxrpc: Don't lock call->tx_lock to access call->tx_buffer
        rxrpc: Simplify ACK handling
        rxrpc: De-atomic call->ackr_window and call->ackr_nr_unacked
        rxrpc: Generate extra pings for RTT during heavy-receive call
        rxrpc: Allow a delay to be injected into packet reception
        rxrpc: Convert call->recvmsg_lock to a spinlock
        rxrpc: Shrink the tabulation in the rxrpc trace header a bit
        rxrpc: Remove whitespace before ')' in trace header
        rxrpc: Fix trace string
      ====================
      
      Link: https://lore.kernel.org/all/20230131171227.3912130-1-dhowells@redhat.com/Signed-off-by: default avatarPaolo Abeni <pabeni@redhat.com>
      a8248fc4
    • Hans de Goede's avatar
      platform/x86: touchscreen_dmi: Add Chuwi Vi8 (CWI501) DMI match · eecf2acd
      Hans de Goede authored
      Add a DMI match for the CWI501 version of the Chuwi Vi8 tablet,
      pointing to the same chuwi_vi8_data as the existing CWI506 version
      DMI match.
      Signed-off-by: default avatarHans de Goede <hdegoede@redhat.com>
      Link: https://lore.kernel.org/r/20230202103413.331459-1-hdegoede@redhat.com
      eecf2acd
    • Marc Kleine-Budde's avatar
      can: mcp251xfd: mcp251xfd_ring_set_ringparam(): assign missing tx_obj_num_coalesce_irq · 1613fff7
      Marc Kleine-Budde authored
      If the a new ring layout is set, the max coalesced frames for RX and
      TX are re-calculated, too. Add the missing assignment of the newly
      calculated TX max coalesced frames.
      
      Fixes: 656fc12d ("can: mcp251xfd: add TX IRQ coalescing ethtool support")
      Link: https://lore.kernel.org/all/20230130154334.1578518-1-mkl@pengutronix.deSigned-off-by: default avatarMarc Kleine-Budde <mkl@pengutronix.de>
      1613fff7
    • Oliver Hartkopp's avatar
      can: isotp: split tx timer into transmission and timeout · 4f027cba
      Oliver Hartkopp authored
      The timer for the transmission of isotp PDUs formerly had two functions:
      1. send two consecutive frames with a given time gap
      2. monitor the timeouts for flow control frames and the echo frames
      
      This led to larger txstate checks and potentially to a problem discovered
      by syzbot which enabled the panic_on_warn feature while testing.
      
      The former 'txtimer' function is split into 'txfrtimer' and 'txtimer'
      to handle the two above functionalities with separate timer callbacks.
      
      The two simplified timers now run in one-shot mode and make the state
      transitions (especially with isotp_rcv_echo) better understandable.
      
      Fixes: 86633786 ("can: isotp: fix tx state handling for echo tx processing")
      Reported-by: syzbot+5aed6c3aaba661f5b917@syzkaller.appspotmail.com
      Cc: stable@vger.kernel.org # >= v6.0
      Signed-off-by: default avatarOliver Hartkopp <socketcan@hartkopp.net>
      Link: https://lore.kernel.org/all/20230104145701.2422-1-socketcan@hartkopp.netSigned-off-by: default avatarMarc Kleine-Budde <mkl@pengutronix.de>
      4f027cba
    • Oliver Hartkopp's avatar
      can: isotp: handle wait_event_interruptible() return values · 823b2e42
      Oliver Hartkopp authored
      When wait_event_interruptible() has been interrupted by a signal the
      tx.state value might not be ISOTP_IDLE. Force the state machines
      into idle state to inhibit the timer handlers to continue working.
      
      Fixes: 86633786 ("can: isotp: fix tx state handling for echo tx processing")
      Cc: stable@vger.kernel.org
      Signed-off-by: default avatarOliver Hartkopp <socketcan@hartkopp.net>
      Link: https://lore.kernel.org/all/20230112192347.1944-1-socketcan@hartkopp.netSigned-off-by: default avatarMarc Kleine-Budde <mkl@pengutronix.de>
      823b2e42
    • Oliver Hartkopp's avatar
      can: raw: fix CAN FD frame transmissions over CAN XL devices · 3793301c
      Oliver Hartkopp authored
      A CAN XL device is always capable to process CAN FD frames. The former
      check when sending CAN FD frames relied on the existence of a CAN FD
      device and did not check for a CAN XL device that would be correct
      too.
      
      With this patch the CAN FD feature is enabled automatically when CAN
      XL is switched on - and CAN FD cannot be switch off while CAN XL is
      enabled.
      
      This precondition also leads to a clean up and reduction of checks in
      the hot path in raw_rcv() and raw_sendmsg(). Some conditions are
      reordered to handle simple checks first.
      
      changes since v1: https://lore.kernel.org/all/20230131091012.50553-1-socketcan@hartkopp.net
      - fixed typo: devive -> device
      changes since v2: https://lore.kernel.org/all/20230131091824.51026-1-socketcan@hartkopp.net/
      - reorder checks in if statements to handle simple checks first
      
      Fixes: 62633269 ("can: raw: add CAN XL support")
      Signed-off-by: default avatarOliver Hartkopp <socketcan@hartkopp.net>
      Link: https://lore.kernel.org/all/20230131105613.55228-1-socketcan@hartkopp.netSigned-off-by: default avatarMarc Kleine-Budde <mkl@pengutronix.de>
      3793301c