[GIT] Networking
From: David Miller
Date: Thu Apr 04 2019 - 21:47:26 EST
1) Several hash table refcount fixes in batman-adv, from Sven Eckelmann.
2) Use after free in bpf_evict_inode(), from Daniel Borkmann.
3) Fix mdio bus registration in ixgbe, from Ivan Vecera.
4) Unbounded loop in __skb_try_recv_datagram(), from Paolo Abeni.
5) ila rhashtable corruption fix from Herbert Xu.
6) Don't allow upper-devices to be added to vrf devices, from
Sabrina Dubroca.
7) Add qmi_wwan device ID for Olicard 600, from Bjørn Mork.
8) Don't leave skb->next poisoned in __netif_receive_skb_list_ptype,
from Alexander Lobakin.
9) Missing IDR checks in mlx5 driver, from Aditya Pakki.
10) Fix false connection termination in ktls, from Jakub Kicinski.
11) Work around some ASPM issues with r8169 by disabling rx interrupt
coalescing on certain chips. From Heiner Kallweit.
12) Properly use per-cpu qstat values on NOLOCK qdiscs, from Paolo
Abeni.
13) Fully initialize sockaddr_in structures in SCTP, from Xin Long.
14) Various BPF flow dissector fixes from Stanislav Fomichev.
15) Divide by zero in act_sample, from Davide Caratti.
16) Fix bridging multicast regression introduced by rhashtable
conversion, from Nikolay Aleksandrov.
Please pull, thanks a lot!
The following changes since commit 1a9df9e29c2afecf6e3089442d429b377279ca3c:
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net (2019-03-27 12:22:57 -0700)
are available in the Git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
for you to fetch changes up to bbd669a868bba591ffd38b7bc75a7b361bb54b04:
ibmvnic: Fix completion structure initialization (2019-04-04 18:36:07 -0700)
----------------------------------------------------------------
Aaro Koskinen (6):
net: stmmac: use correct DMA buffer size in the RX descriptor
net: stmmac: ratelimit RX error logs
net: stmmac: don't stop NAPI processing when dropping a packet
net: stmmac: don't overwrite discard_frame status
net: stmmac: fix dropping of multi-descriptor RX frames
net: stmmac: don't log oversized frames
Aditya Pakki (1):
net: mlx5: Add a missing check on idr_find, free buf
Alexander Lobakin (1):
net: core: netif_receive_skb_list: unlist skb before passing to pt->func
Alexei Starovoitov (2):
Merge branch 'fix-verifier-warning'
Merge branch 'fix-btf_dedup'
Anders Roxell (1):
batman-adv: fix warning in function batadv_v_elp_get_throughput
Andrea Righi (1):
openvswitch: fix flow actions reallocation
Andrii Nakryiko (2):
libbpf: fix btf_dedup equivalence check handling of different kinds
selftests/bpf: add btf_dedup test for VOID equivalence check
Artemy Kovalyov (1):
net/mlx5: Decrease default mr cache size
Arvind Sankar (1):
igb: Fix WARN_ONCE on runtime suspend
Aya Levin (2):
net/mlx5: ethtool, Fix type analysis of advertised link-mode
net/mlx5: ethtool, Allow legacy link-modes configuration via non-extended ptys
Bert Kenward (1):
MAINTAINERS: net: update Solarflare maintainers
Björn Töpel (4):
libbpf: add xsk.h to install_headers target
libbpf: add libelf dependency to shared library build
i40e: move i40e_xsk_umem function
i40e: add tracking of AF_XDP ZC state for each queue pair
Bjørn Mork (1):
qmi_wwan: add Olicard 600
Chris Leech (1):
vlan: conditional inclusion of FCoE hooks to match netdevice.h and bnx2x
Claudiu Manoil (1):
net: mii: Fix PAUSE cap advertisement from linkmode_adv_to_lcl_adv_t() helper
Daniel Borkmann (3):
bpf: fix use after free in bpf_evict_inode
bpf, libbpf: fix quiet install_headers
Merge branch 'bpf-flow-dissector-fixes'
David S. Miller (15):
Merge branch 'thunderx-fix-receive-buffer-page-recycling'
Merge tag 'batadv-net-for-davem-20190328' of git://git.open-mesh.org/linux-merge
Merge branch '40GbE' of git://git.kernel.org/.../jkirsher/net-queue
Merge branch 'nfp-fix-retcode-and-disable-netpoll-on-representors'
Revert "cxgb4: Update 1.23.3.0 as the latest firmware supported."
Merge tag 'mlx5-fixes-2019-03-29' of git://git.kernel.org/.../saeed/linux
Merge git://git.kernel.org/.../bpf/bpf
Merge branch 'net-stmmac-fix-handling-of-oversized-frames'
Merge branch 'tipc-a-batch-of-uninit-value-fixes-for-netlink_compat'
Merge branch 'net-sched-fix-stats-accounting-for-child-NOLOCK-qdiscs'
Merge branch 'nfp-flower-fix-matching-and-pushing-vlan-CFI-bit'
Merge branch '40GbE' of git://git.kernel.org/.../jkirsher/net-queue
Merge branch 'net-hns-bugfixes-for-HNS-Driver'
Merge branch 'sch_cake-fixes'
Merge git://git.kernel.org/.../bpf/bpf
Davide Caratti (1):
net/sched: act_sample: fix divide by zero in the traffic path
Dean Nelson (2):
thunderx: enable page recycling for non-XDP case
thunderx: eliminate extra calls to put_page() for pages held for recycling
Dmytro Linkin (1):
net/mlx5e: Allow IPv4 ttl & IPv6 hop_limit rewrite for all L4 protocols
Dust Li (1):
tcp: fix a potential NULL pointer dereference in tcp_sk_exit
Eli Britstein (1):
net/mlx5e: Consider tunnel type for encap contexts
Eric Dumazet (1):
netns: provide pure entropy for net_hash_mix()
Florian Fainelli (1):
MAINTAINERS: Fix documentation file name for PHY Library
Gavi Teitz (1):
net/mlx5e: Fix error handling when refreshing TIRs
Haiyang Zhang (1):
hv_netvsc: Fix unwanted wakeup after tx_disable
Heiner Kallweit (2):
net: dsa: mv88e6xxx: fix few issues in mv88e6390x_port_set_cmode
r8169: disable default rx interrupt coalescing on RTL8168
Herbert Xu (1):
ila: Fix rhashtable walker list corruption
Huy Nguyen (3):
net/mlx5: E-Switch, fix syndrome (0x678139) when turn on vepa
net/mlx5e: Update xoff formula
net/mlx5e: Update xon formula
Ivan Vecera (1):
ixgbe: fix mdio bus registration
Jacob Keller (1):
i40e: fix i40e_ptp_adjtime when given a negative delta
Jakub Kicinski (3):
nfp: validate the return code from dev_queue_xmit()
nfp: disable netpoll on representors
net: tls: prevent false connection termination with offload
Jesper Dangaard Brouer (2):
bpf, doc: fix BTF docs reflow of bullet list
xdp: fix cpumap redirect SKB creation bug
Jiri Slaby (1):
kcm: switch order of device registration to fix a crash
Junwei Hu (1):
ipv6: Fix dangling pointer when ipv6 fragment
Koen De Schepper (1):
tcp: Ensure DCTCP reacts to losses
Konstantin Khorenko (1):
bonding: show full hw address in sysfs for slave entries
Li RongQing (1):
net: ethtool: not call vzalloc for zero sized memory request
Liubin Shu (1):
net: hns: fix KASAN: use-after-free in hns_nic_net_xmit_hw()
Lorenzo Bianconi (2):
net: thunderx: fix NULL pointer dereference in nicvf_open/nicvf_stop
ipv6: sit: reset ip header pointer in ipip6_rcv
Mao Wenan (1):
net: rds: force to destroy connection if t_sock is NULL in rds_tcp_kill_sock().
Nicolas Dichtel (1):
net/sched: fix ->get helper of the matchall cls
Nikolay Aleksandrov (1):
net: bridge: always clear mcast matching struct on reports and leaves
Omri Kahalon (1):
net/mlx5: E-Switch, Fix esw manager vport indication for more vport commands
Paolo Abeni (3):
net: datagram: fix unbounded loop in __skb_try_recv_datagram()
net: sched: introduce and use qstats read helpers
net: sched: introduce and use qdisc tree flush/purge helpers
Paul Chaignon (2):
bpf: remove incorrect 'verifier bug' warning
selftests/bpf: test case for invalid call stack in dead code
Pieter Jansen van Vuuren (2):
nfp: flower: replace CFI with vlan present
nfp: flower: remove vlan CFI bit from push vlan action
Roi Dayan (2):
net/mlx5: E-Switch, Fix access to invalid memory when toggling esw modes
net/mlx5: E-Switch, Protect from invalid memory access in offload fdb table
Sabrina Dubroca (1):
vrf: prevent adding upper devices
Sheena Mira-ato (1):
ip6_tunnel: Match to ARPHRD_TUNNEL6 for dev type
Stanislav Fomichev (6):
selftests/bpf: fix vlan handling in flow dissector program
net/flow_dissector: pass flow_keys->n_proto to BPF programs
flow_dissector: fix clamping of BPF flow_keys for non-zero nhoff
flow_dissector: allow access only to a subset of __sk_buff fields
flow_dissector: document BPF flow dissector environment
flow_dissector: rst'ify documentation
Stefan Assmann (1):
i40e: fix WoL support check
Steffen Klassert (1):
net-gro: Fix GRO flush when receiving a GSO packet.
Stephen Suryaputra (1):
vrf: check accept_source_route on the original netdevice
Sven Eckelmann (4):
batman-adv: Reduce claim hash refcnt only for removed entry
batman-adv: Reduce tt_local hash refcnt only for removed entry
batman-adv: Reduce tt_global hash refcnt only for removed entry
batman-adv: Fix genl notification for throughput_override
Thomas Falcon (1):
ibmvnic: Fix completion structure initialization
Toke Høiland-Jørgensen (2):
sch_cake: Use tc_skb_protocol() helper for getting packet protocol
sch_cake: Make sure we can write the IP header before changing DSCP bits
Tonghao Zhang (1):
net/mlx5e: Correctly use the namespace type when allocating pedit action
Varun Prakash (1):
libcxgb: fix incorrect ppmax calculation
Vishal Kulkarni (1):
cxgb4: Update 1.23.3.0 as the latest firmware supported.
Xi Wang (1):
net: hns3: fix compile error
Xin Long (4):
tipc: check bearer name with right length in tipc_nl_compat_bearer_enable
tipc: check link name with right length in tipc_nl_compat_link_set
tipc: handle the err returned from cmd header function
sctp: initialize _pad of sockaddr_in before copying to user memory
Yonglong Liu (5):
net: hns: Use NAPI_POLL_WEIGHT for hns driver
net: hns: Fix probabilistic memory overwrite when HNS driver initialized
net: hns: fix ICMP6 neighbor solicitation messages discard problem
net: hns: Fix WARNING when remove HNS driver with SMMU enabled
net: hns: Fix sparse: some warnings in HNS drivers
Yue Haibing (1):
fm10k: Fix a potential NULL pointer dereference
YueHaibing (1):
dccp: Fix memleak in __feat_register_sp
Yuval Avnery (1):
net/mlx5e: Add a lock on tir list
xiaofeis (1):
net: dsa: Implement flow_dissect callback for tag_qca
Documentation/bpf/btf.rst | 8 ++---
Documentation/networking/bpf_flow_dissector.rst | 126 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Documentation/networking/index.rst | 1 +
MAINTAINERS | 4 +--
drivers/net/bonding/bond_sysfs_slave.c | 4 ++-
drivers/net/dsa/mv88e6xxx/port.c | 24 ++++++++++-----
drivers/net/ethernet/cavium/thunder/nicvf_main.c | 20 +++++++-----
drivers/net/ethernet/cavium/thunder/nicvf_queues.c | 30 +++++++++---------
drivers/net/ethernet/chelsio/libcxgb/libcxgb_ppm.c | 9 +++++-
drivers/net/ethernet/hisilicon/hns/hnae.c | 4 ++-
drivers/net/ethernet/hisilicon/hns/hnae.h | 2 +-
drivers/net/ethernet/hisilicon/hns/hns_dsaf_mac.c | 2 +-
drivers/net/ethernet/hisilicon/hns/hns_dsaf_mac.h | 4 +--
drivers/net/ethernet/hisilicon/hns/hns_dsaf_main.c | 53 ++++++++++++++++++++------------
drivers/net/ethernet/hisilicon/hns/hns_dsaf_main.h | 2 ++
drivers/net/ethernet/hisilicon/hns/hns_dsaf_misc.c | 2 +-
drivers/net/ethernet/hisilicon/hns/hns_dsaf_ppe.c | 6 ++--
drivers/net/ethernet/hisilicon/hns/hns_dsaf_ppe.h | 4 +--
drivers/net/ethernet/hisilicon/hns/hns_dsaf_rcb.c | 4 +--
drivers/net/ethernet/hisilicon/hns/hns_dsaf_reg.h | 12 ++++----
drivers/net/ethernet/hisilicon/hns/hns_dsaf_xgmac.c | 2 +-
drivers/net/ethernet/hisilicon/hns/hns_enet.c | 12 +++-----
drivers/net/ethernet/hisilicon/hns3/hns3pf/Makefile | 2 +-
drivers/net/ethernet/hisilicon/hns3/hns3vf/Makefile | 2 +-
drivers/net/ethernet/hisilicon/hns_mdio.c | 18 +++++------
drivers/net/ethernet/ibm/ibmvnic.c | 5 +--
drivers/net/ethernet/intel/fm10k/fm10k_main.c | 2 ++
drivers/net/ethernet/intel/i40e/i40e.h | 16 ++--------
drivers/net/ethernet/intel/i40e/i40e_ethtool.c | 3 +-
drivers/net/ethernet/intel/i40e/i40e_main.c | 28 +++++++++++++++++
drivers/net/ethernet/intel/i40e/i40e_ptp.c | 5 +--
drivers/net/ethernet/intel/i40e/i40e_xsk.c | 3 ++
drivers/net/ethernet/intel/igb/e1000_defines.h | 2 ++
drivers/net/ethernet/intel/igb/igb_main.c | 57 +++++-----------------------------
drivers/net/ethernet/intel/ixgbe/ixgbe_phy.c | 16 +++++-----
drivers/net/ethernet/mellanox/mlx5/core/en/port.c | 3 --
drivers/net/ethernet/mellanox/mlx5/core/en/port_buffer.c | 39 +++++++++++++-----------
drivers/net/ethernet/mellanox/mlx5/core/en_common.c | 13 ++++++--
drivers/net/ethernet/mellanox/mlx5/core/en_ethtool.c | 52 ++++++++++++++++++++-----------
drivers/net/ethernet/mellanox/mlx5/core/en_tc.c | 82 ++++++++++++++++++++++++++++++++++++++++---------
drivers/net/ethernet/mellanox/mlx5/core/eswitch.c | 9 +++---
drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c | 1 +
drivers/net/ethernet/mellanox/mlx5/core/fpga/tls.c | 14 +++++++--
drivers/net/ethernet/mellanox/mlx5/core/main.c | 20 ------------
drivers/net/ethernet/netronome/nfp/flower/action.c | 3 +-
drivers/net/ethernet/netronome/nfp/flower/cmsg.h | 3 +-
drivers/net/ethernet/netronome/nfp/flower/match.c | 27 ++++++++---------
drivers/net/ethernet/netronome/nfp/nfp_net_repr.c | 4 +--
drivers/net/ethernet/realtek/r8169.c | 2 +-
drivers/net/ethernet/stmicro/stmmac/descs_com.h | 22 +++++++++-----
drivers/net/ethernet/stmicro/stmmac/dwmac4_descs.c | 2 +-
drivers/net/ethernet/stmicro/stmmac/dwxgmac2_descs.c | 2 +-
drivers/net/ethernet/stmicro/stmmac/enh_desc.c | 22 ++++++++++----
drivers/net/ethernet/stmicro/stmmac/hwif.h | 2 +-
drivers/net/ethernet/stmicro/stmmac/norm_desc.c | 12 +++++---
drivers/net/ethernet/stmicro/stmmac/stmmac_main.c | 34 ++++++++++++---------
drivers/net/hyperv/hyperv_net.h | 1 +
drivers/net/hyperv/netvsc.c | 6 ++--
drivers/net/hyperv/netvsc_drv.c | 32 ++++++++++++++++----
drivers/net/usb/qmi_wwan.c | 1 +
drivers/net/vrf.c | 1 +
include/linux/mii.h | 2 +-
include/linux/mlx5/driver.h | 2 ++
include/net/ip.h | 2 +-
include/net/net_namespace.h | 1 +
include/net/netns/hash.h | 10 ++----
include/net/sch_generic.h | 44 ++++++++++++++++++++++-----
kernel/bpf/cpumap.c | 13 ++++++--
kernel/bpf/inode.c | 32 +++++++++++---------
kernel/bpf/verifier.c | 5 +--
net/8021q/vlan_dev.c | 26 +++++++++-------
net/batman-adv/bat_v_elp.c | 6 ++--
net/batman-adv/bridge_loop_avoidance.c | 16 ++++++++--
net/batman-adv/sysfs.c | 7 +++--
net/batman-adv/translation-table.c | 32 +++++++++++++++-----
net/bridge/br_multicast.c | 3 ++
net/core/datagram.c | 2 +-
net/core/dev.c | 4 ++-
net/core/ethtool.c | 46 ++++++++++++++++++----------
net/core/filter.c | 16 ++--------
net/core/flow_dissector.c | 4 ++-
net/core/net_namespace.c | 1 +
net/core/skbuff.c | 2 +-
net/dccp/feat.c | 7 ++++-
net/dsa/tag_qca.c | 10 ++++++
net/ipv4/ip_input.c | 7 ++---
net/ipv4/ip_options.c | 4 +--
net/ipv4/tcp_dctcp.c | 36 +++++++++++-----------
net/ipv4/tcp_ipv4.c | 3 +-
net/ipv6/ila/ila_xlat.c | 1 +
net/ipv6/ip6_output.c | 4 ++-
net/ipv6/ip6_tunnel.c | 4 +--
net/ipv6/sit.c | 4 +++
net/kcm/kcmsock.c | 16 +++++-----
net/openvswitch/flow_netlink.c | 4 +--
net/rds/tcp.c | 2 +-
net/sched/act_sample.c | 10 ++++--
net/sched/cls_matchall.c | 5 +++
net/sched/sch_cake.c | 13 +++++++-
net/sched/sch_cbq.c | 10 +++---
net/sched/sch_drr.c | 16 +++-------
net/sched/sch_hfsc.c | 19 +++---------
net/sched/sch_htb.c | 22 ++++----------
net/sched/sch_mq.c | 2 +-
net/sched/sch_mqprio.c | 3 +-
net/sched/sch_multiq.c | 10 +++---
net/sched/sch_prio.c | 10 ++----
net/sched/sch_qfq.c | 14 ++-------
net/sched/sch_red.c | 3 +-
net/sched/sch_sfb.c | 3 +-
net/sched/sch_taprio.c | 2 +-
net/sched/sch_tbf.c | 3 +-
net/sctp/protocol.c | 1 +
net/tipc/netlink_compat.c | 24 ++++++++++++---
net/tls/tls_sw.c | 2 ++
tools/lib/bpf/Makefile | 7 +++--
tools/lib/bpf/btf.c | 3 ++
tools/testing/selftests/bpf/prog_tests/flow_dissector.c | 68 +++++++++++++++++++++++++++++++++++++++++
tools/testing/selftests/bpf/progs/bpf_flow.c | 19 +++++-------
tools/testing/selftests/bpf/test_btf.c | 47 ++++++++++++++++++++++++++++
tools/testing/selftests/bpf/verifier/calls.c | 38 +++++++++++++++++++++++
tools/testing/selftests/tc-testing/tc-tests/actions/sample.json | 24 +++++++++++++++
122 files changed, 1096 insertions(+), 563 deletions(-)
create mode 100644 Documentation/networking/bpf_flow_dissector.rst