1. 08 Mar, 2024 34 commits
  2. 07 Mar, 2024 6 commits
    • Jakub Kicinski's avatar
      tools: ynl: check for overflow of constructed messages · 15d2540e
      Jakub Kicinski authored
      Donald points out that we don't check for overflows.
      Stash the length of the message on nlmsg_pid (nlmsg_seq would
      do as well). This allows the attribute helpers to remain
      self-contained (no extra arguments). Also let the put
      helpers continue to return nothing. The error is checked
      only in (newly introduced) ynl_msg_end().
      Reviewed-by: default avatarDonald Hunter <donald.hunter@gmail.com>
      Link: https://lore.kernel.org/r/20240305185000.964773-1-kuba@kernel.orgSigned-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      15d2540e
    • Jakub Kicinski's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net · e3afe5dd
      Jakub Kicinski authored
      Cross-merge networking fixes after downstream PR.
      
      No conflicts.
      
      Adjacent changes:
      
      net/core/page_pool_user.c
        0b11b1c5 ("netdev: let netlink core handle -EMSGSIZE errors")
        429679dc ("page_pool: fix netlink dump stop/resume")
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      e3afe5dd
    • Linus Torvalds's avatar
      Merge tag 'net-6.8-rc8' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net · df479350
      Linus Torvalds authored
      Pull networking fixes from Paolo Abeni:
       "Including fixes from bpf, ipsec and netfilter.
      
        No solution yet for the stmmac issue mentioned in the last PR, but it
        proved to be a lockdep false positive, not a blocker.
      
        Current release - regressions:
      
         - dpll: move all dpll<>netdev helpers to dpll code, fix build
           regression with old compilers
      
        Current release - new code bugs:
      
         - page_pool: fix netlink dump stop/resume
      
        Previous releases - regressions:
      
         - bpf: fix verifier to check bpf_func_state->callback_depth when
           pruning states as otherwise unsafe programs could get accepted
      
         - ipv6: avoid possible UAF in ip6_route_mpath_notify()
      
         - ice: reconfig host after changing MSI-X on VF
      
         - mlx5:
             - e-switch, change flow rule destination checking
             - add a memory barrier to prevent a possible null-ptr-deref
             - switch to using _bh variant of of spinlock where needed
      
        Previous releases - always broken:
      
         - netfilter: nf_conntrack_h323: add protection for bmp length out of
           range
      
         - bpf: fix to zero-initialise xdp_rxq_info struct before running XDP
           program in CPU map which led to random xdp_md fields
      
         - xfrm: fix UDP encapsulation in TX packet offload
      
         - netrom: fix data-races around sysctls
      
         - ice:
             - fix potential NULL pointer dereference in ice_bridge_setlink()
             - fix uninitialized dplls mutex usage
      
         - igc: avoid returning frame twice in XDP_REDIRECT
      
         - i40e: disable NAPI right after disabling irqs when handling
           xsk_pool
      
         - geneve: make sure to pull inner header in geneve_rx()
      
         - sparx5: fix use after free inside sparx5_del_mact_entry
      
         - dsa: microchip: fix register write order in ksz8_ind_write8()
      
        Misc:
      
         - selftests: mptcp: fixes for diag.sh"
      
      * tag 'net-6.8-rc8' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net: (63 commits)
        net: pds_core: Fix possible double free in error handling path
        netrom: Fix data-races around sysctl_net_busy_read
        netrom: Fix a data-race around sysctl_netrom_link_fails_count
        netrom: Fix a data-race around sysctl_netrom_routing_control
        netrom: Fix a data-race around sysctl_netrom_transport_no_activity_timeout
        netrom: Fix a data-race around sysctl_netrom_transport_requested_window_size
        netrom: Fix a data-race around sysctl_netrom_transport_busy_delay
        netrom: Fix a data-race around sysctl_netrom_transport_acknowledge_delay
        netrom: Fix a data-race around sysctl_netrom_transport_maximum_tries
        netrom: Fix a data-race around sysctl_netrom_transport_timeout
        netrom: Fix data-races around sysctl_netrom_network_ttl_initialiser
        netrom: Fix a data-race around sysctl_netrom_obsolescence_count_initialiser
        netrom: Fix a data-race around sysctl_netrom_default_path_quality
        netfilter: nf_conntrack_h323: Add protection for bmp length out of range
        netfilter: nf_tables: mark set as dead when unbinding anonymous set with timeout
        netfilter: nft_ct: fix l3num expectations with inet pseudo family
        netfilter: nf_tables: reject constant set with timeout
        netfilter: nf_tables: disallow anonymous set with timeout flag
        net/rds: fix WARNING in rds_conn_connect_if_down
        net: dsa: microchip: fix register write order in ksz8_ind_write8()
        ...
      df479350
    • Paolo Abeni's avatar
      Merge branch 'tcp-add-two-missing-addresses-when-using-trace' · a148f82c
      Paolo Abeni authored
      Jason Xing says:
      
      ====================
      tcp: add two missing addresses when using trace
      
      When I reviewed other people's patch [1], I noticed that similar things
      also happen in tcp_event_skb class and tcp_event_sk_skb class. They
      don't print those two addrs of skb/sk which already exist.
      
      In this patch, I just do as other trace functions do, like
      trace_net_dev_start_xmit(), to know the exact flow or skb we would like
      to know in case some systems doesn't support BPF programs well or we
      have to use /sys/kernel/debug/tracing only for some reasons.
      
      [1]
      Link: https://lore.kernel.org/netdev/CAL+tcoAhvFhXdr1WQU8mv_6ZX5nOoNpbOLAB6=C+DB-qXQ11Ew@mail.gmail.com/
      
      v2
      Link: https://lore.kernel.org/netdev/CANn89iJcScraKAUk1GzZFoOO20RtC9iXpiJ4LSOWT5RUAC_QQA@mail.gmail.com/
      1. change the description.
      ====================
      
      Link: https://lore.kernel.org/r/20240304092934.76698-1-kerneljasonxing@gmail.comSigned-off-by: default avatarPaolo Abeni <pabeni@redhat.com>
      a148f82c
    • Jason Xing's avatar
      tcp: add tracing of skbaddr in tcp_event_skb class · 0ab544b6
      Jason Xing authored
      Use the existing parameter and print the address of skbaddr
      as other trace functions do.
      Signed-off-by: default avatarJason Xing <kernelxing@tencent.com>
      Reviewed-by: default avatarEric Dumazet <edumazet@google.com>
      Signed-off-by: default avatarPaolo Abeni <pabeni@redhat.com>
      0ab544b6
    • Jason Xing's avatar
      tcp: add tracing of skb/skaddr in tcp_event_sk_skb class · 4e441bb8
      Jason Xing authored
      Printing the addresses can help us identify the exact skb/sk
      for those system in which it's not that easy to run BPF program.
      As we can see, it already fetches those, then use it directly
      and it will print like below:
      
      ...tcp_retransmit_skb: skbaddr=XXX skaddr=XXX family=AF_INET...
      Signed-off-by: default avatarJason Xing <kernelxing@tencent.com>
      Reviewed-by: default avatarEric Dumazet <edumazet@google.com>
      Signed-off-by: default avatarPaolo Abeni <pabeni@redhat.com>
      4e441bb8