1. 08 Mar, 2022 6 commits
  2. 07 Mar, 2022 21 commits
  3. 06 Mar, 2022 13 commits
    • Lianjie Zhang's avatar
    • David S. Miller's avatar
      Merge branch 'netif_rx-conversions-part2' · 83b7b77a
      David S. Miller authored
      Sebastian Andrzej Siewior says:
      
      ====================
      net: Convert user to netif_rx(), part 2.
      
      This is the second batch of converting netif_rx_ni() caller to
      netif_rx(). The change making this possible is net-next and
      netif_rx_ni() is a wrapper around netif_rx(). This is a clean up in
      order to remove netif_rx_ni().
      
      The brcmfmac changes are slilghtly larger because the inirq parameter
      can be removed.
      ====================
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      83b7b77a
    • Sebastian Andrzej Siewior's avatar
      wireless: Use netif_rx(). · f9834dbd
      Sebastian Andrzej Siewior authored
      Since commit
         baebdf48 ("net: dev: Makes sure netif_rx() can be invoked in any context.")
      
      the function netif_rx() can be used in preemptible/thread context as
      well as in interrupt context.
      
      Use netif_rx().
      
      Cc: Johannes Berg <johannes@sipsolutions.net>
      Cc: linux-wireless@vger.kernel.org
      Signed-off-by: default avatarSebastian Andrzej Siewior <bigeasy@linutronix.de>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      f9834dbd
    • Sebastian Andrzej Siewior's avatar
      wireless: Marvell: Use netif_rx(). · afb6d39f
      Sebastian Andrzej Siewior authored
      Since commit
         baebdf48 ("net: dev: Makes sure netif_rx() can be invoked in any context.")
      
      the function netif_rx() can be used in preemptible/thread context as
      well as in interrupt context.
      
      Use netif_rx().
      
      Cc: Amitkumar Karwar <amitkarwar@gmail.com>
      Cc: Ganapathi Bhat <ganapathi017@gmail.com>
      Cc: Kalle Valo <kvalo@kernel.org>
      Cc: Sharvari Harisangam <sharvari.harisangam@nxp.com>
      Cc: Xinming Hu <huxinming820@gmail.com>
      Cc: libertas-dev@lists.infradead.org
      Cc: linux-wireless@vger.kernel.org
      Signed-off-by: default avatarSebastian Andrzej Siewior <bigeasy@linutronix.de>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      afb6d39f
    • Sebastian Andrzej Siewior's avatar
      wireless: brcmfmac: Use netif_rx(). · b381728e
      Sebastian Andrzej Siewior authored
      Since commit
         baebdf48 ("net: dev: Makes sure netif_rx() can be invoked in any context.")
      
      the function netif_rx() can be used in preemptible/thread context as
      well as in interrupt context.
      
      Use netif_rx().
      
      Cc: Arend van Spriel <aspriel@gmail.com>
      Cc: Chi-hsien Lin <chi-hsien.lin@infineon.com>
      Cc: Chung-hsien Hsu <chung-hsien.hsu@infineon.com>
      Cc: Franky Lin <franky.lin@broadcom.com>
      Cc: Hante Meuleman <hante.meuleman@broadcom.com>
      Cc: Kalle Valo <kvalo@kernel.org>
      Cc: SHA-cyfmac-dev-list@infineon.com
      Cc: Wright Feng <wright.feng@infineon.com>
      Cc: brcm80211-dev-list.pdl@broadcom.com
      Cc: linux-wireless@vger.kernel.org
      Signed-off-by: default avatarSebastian Andrzej Siewior <bigeasy@linutronix.de>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      b381728e
    • Sebastian Andrzej Siewior's avatar
      wireless: Atheros: Use netif_rx(). · 1cd2ef9f
      Sebastian Andrzej Siewior authored
      Since commit
         baebdf48 ("net: dev: Makes sure netif_rx() can be invoked in any context.")
      
      the function netif_rx() can be used in preemptible/thread context as
      well as in interrupt context.
      
      Use netif_rx().
      
      Cc: Kalle Valo <kvalo@kernel.org>
      Cc: Maya Erez <merez@codeaurora.org>
      Cc: linux-wireless@vger.kernel.org
      Cc: wil6210@qti.qualcomm.com
      Signed-off-by: default avatarSebastian Andrzej Siewior <bigeasy@linutronix.de>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      1cd2ef9f
    • Sebastian Andrzej Siewior's avatar
      slip/plip: Use netif_rx(). · e77975e0
      Sebastian Andrzej Siewior authored
      Since commit
         baebdf48 ("net: dev: Makes sure netif_rx() can be invoked in any context.")
      
      the function netif_rx() can be used in preemptible/thread context as
      well as in interrupt context.
      
      Use netif_rx().
      Signed-off-by: default avatarSebastian Andrzej Siewior <bigeasy@linutronix.de>
      Acked-by: default avatarOliver Hartkopp <socketcan@hartkopp.net>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      e77975e0
    • Sebastian Andrzej Siewior's avatar
      mctp: serial: Use netif_rx(). · b903117b
      Sebastian Andrzej Siewior authored
      Since commit
         baebdf48 ("net: dev: Makes sure netif_rx() can be invoked in any context.")
      
      the function netif_rx() can be used in preemptible/thread context as
      well as in interrupt context.
      
      Use netif_rx().
      
      Cc: Jeremy Kerr <jk@codeconstruct.com.au>
      Cc: Matt Johnston <matt@codeconstruct.com.au>
      Signed-off-by: default avatarSebastian Andrzej Siewior <bigeasy@linutronix.de>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      b903117b
    • Sebastian Andrzej Siewior's avatar
      can: Use netif_rx(). · 00f4a0af
      Sebastian Andrzej Siewior authored
      Since commit
         baebdf48 ("net: dev: Makes sure netif_rx() can be invoked in any context.")
      
      the function netif_rx() can be used in preemptible/thread context as
      well as in interrupt context.
      
      Use netif_rx().
      
      Cc: Marc Kleine-Budde <mkl@pengutronix.de>
      Cc: Oliver Hartkopp <socketcan@hartkopp.net>
      Cc: Wolfgang Grandegger <wg@grandegger.com>
      Cc: linux-can@vger.kernel.org
      Signed-off-by: default avatarSebastian Andrzej Siewior <bigeasy@linutronix.de>
      Acked-by: default avatarOliver Hartkopp <socketcan@hartkopp.net>
      Acked-by: default avatarMarc Kleine-Budde <mkl@pengutronix.de>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      00f4a0af
    • Sebastian Andrzej Siewior's avatar
      net: phy: Use netif_rx(). · a3d73e15
      Sebastian Andrzej Siewior authored
      Since commit
         baebdf48 ("net: dev: Makes sure netif_rx() can be invoked in any context.")
      
      the function netif_rx() can be used in preemptible/thread context as
      well as in interrupt context.
      
      Use netif_rx().
      
      Cc: Andrew Lunn <andrew@lunn.ch>
      Cc: Heiner Kallweit <hkallweit1@gmail.com>
      Cc: Radu Pirea <radu-nicolae.pirea@oss.nxp.com>
      Cc: Richard Cochran <richardcochran@gmail.com>
      Cc: Russell King <linux@armlinux.org.uk>
      Signed-off-by: default avatarSebastian Andrzej Siewior <bigeasy@linutronix.de>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      a3d73e15
    • David S. Miller's avatar
      Merge branch 'tuntap-kfree_skb_reason' · 4c22aac3
      David S. Miller authored
      Dongli Zhang says:
      
      ====================
      tun/tap: use kfree_skb_reason() to trace dropped skb
      
      The commit c504e5c2 ("net: skb: introduce kfree_skb_reason()") has
      introduced the kfree_skb_reason() to help track the reason.
      
      The tun and tap are commonly used as virtio-net/vhost-net backend. This is to
      use kfree_skb_reason() to trace the dropped skb for those two drivers.
      
      Changed since v1:
      - I have renamed many of the reasons since v1. I make them as generic as
        possible so that they can be re-used by core networking and drivers.
      
      Changed since v2:
      - declare drop_reason as type "enum skb_drop_reason"
      - handle the drop in skb_list_walk_safe() case for tap driver, and
        kfree_skb_list_reason() is introduced
      
      Changed since v3 (only for PATCH 4/4):
      - rename to TAP_FILTER and TAP_TXFILTER
      - honor reverse xmas tree style declaration for 'drop_reason' in
        tun_net_xmit()
      
      Changed since v4:
      - make kfree_skb_list() static inline
      - add 'computation' to SKB_CSUM comment
      - change COPY_DATA to UCOPY_FAULT
      - add 'metadata' to DEV_HDR comment
      - expand comment on DEV_READY
      - change SKB_TRIM to NOMEM
      - chnage SKB_PULL to HDR_TRUNC
      Changed since v5:
      - rebase to net-next
      
      The following reasons are introduced.
      
      - SKB_DROP_REASON_SKB_CSUM
      - SKB_DROP_REASON_SKB_GSO_SEG
      - SKB_DROP_REASON_SKB_UCOPY_FAULT
      - SKB_DROP_REASON_DEV_HDR
      - SKB_DROP_REASON_FULL_RING
      - SKB_DROP_REASON_DEV_READY
      - SKB_DROP_REASON_NOMEM
      - SKB_DROP_REASON_HDR_TRUNC
      - SKB_DROP_REASON_TAP_FILTER
      - SKB_DROP_REASON_TAP_TXFILTER
      
      This is the output for TUN device.
      
                <idle>-0       [029] ..s1.   450.727651: kfree_skb: skbaddr=0000000023d235cc protocol=0 location=00000000a6748854 reason: NOT_SPECIFIED
                <idle>-0       [000] b.s3.   451.165671: kfree_skb: skbaddr=000000006b5de7cc protocol=4 location=000000007c2b9eae reason: FULL_RING
                <idle>-0       [000] b.s3.   453.149650: kfree_skb: skbaddr=000000006b5de7cc protocol=4 location=000000007c2b9eae reason: FULL_RING
                <idle>-0       [000] b.s3.   455.133576: kfree_skb: skbaddr=000000006b5de7cc protocol=4 location=000000007c2b9eae reason: FULL_RING
                <idle>-0       [000] b.s3.   457.117566: kfree_skb: skbaddr=000000006b5de7cc protocol=4 location=000000007c2b9eae reason: FULL_RING
      
      This is the output for TAP device.
      
                arping-7053    [006] ..s1.  1000.047753: kfree_skb: skbaddr=000000008618a587 protocol=2054 location=00000000743ad4a7 reason: FULL_RING
                <idle>-0       [022] ..s1.  1000.778514: kfree_skb: skbaddr=000000002c1e706c protocol=0 location=00000000a6748854 reason: NOT_SPECIFIED
                arping-7053    [006] ..s1.  1001.047830: kfree_skb: skbaddr=000000008618a587 protocol=2054 location=00000000743ad4a7 reason: FULL_RING
                arping-7053    [006] ..s1.  1002.047918: kfree_skb: skbaddr=000000008618a587 protocol=2054 location=00000000743ad4a7 reason: FULL_RING
                arping-7053    [006] ..s1.  1003.048017: kfree_skb: skbaddr=000000008618a587 protocol=2054 location=00000000743ad4a7 reason: FULL_RING
      ====================
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      4c22aac3
    • Dongli Zhang's avatar
      net: tun: track dropped skb via kfree_skb_reason() · 4b4f052e
      Dongli Zhang authored
      The TUN can be used as vhost-net backend. E.g, the tun_net_xmit() is the
      interface to forward the skb from TUN to vhost-net/virtio-net.
      
      However, there are many "goto drop" in the TUN driver. Therefore, the
      kfree_skb_reason() is involved at each "goto drop" to help userspace
      ftrace/ebpf to track the reason for the loss of packets.
      
      The below reasons are introduced:
      
      - SKB_DROP_REASON_DEV_READY
      - SKB_DROP_REASON_NOMEM
      - SKB_DROP_REASON_HDR_TRUNC
      - SKB_DROP_REASON_TAP_FILTER
      - SKB_DROP_REASON_TAP_TXFILTER
      
      Cc: Joao Martins <joao.m.martins@oracle.com>
      Cc: Joe Jin <joe.jin@oracle.com>
      Signed-off-by: default avatarDongli Zhang <dongli.zhang@oracle.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      4b4f052e
    • Dongli Zhang's avatar
      net: tun: split run_ebpf_filter() and pskb_trim() into different "if statement" · 45a15d89
      Dongli Zhang authored
      No functional change.
      
      Just to split the if statement into different conditions to use
      kfree_skb_reason() to trace the reason later.
      
      Cc: Joao Martins <joao.m.martins@oracle.com>
      Cc: Joe Jin <joe.jin@oracle.com>
      Signed-off-by: default avatarDongli Zhang <dongli.zhang@oracle.com>
      Reviewed-by: default avatarDavid Ahern <dsahern@kernel.org>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      45a15d89