Pull networking fixes from Paolo Abeni: "Including fixes from netfilter. Current release - regressions: - revert "net: fix cpu_max_bits_warn() usage in netif_attrmask_next{,_and}" - revert "net: sched: fq_codel: remove redundant resource cleanup in fq_codel_init()" - dsa: uninitialized variable in dsa_slave_netdevice_event() - eth: sunhme: uninitialized variable in happy_meal_init() Current release - new code bugs: - eth: octeontx2: fix resource not freed after malloc Previous releases - regressions: - sched: fix return value of qdisc ingress handling on success - sched: fix race condition in qdisc_graft() - udp: update reuse->has_conns under reuseport_lock. - tls: strp: make sure the TCP skbs do not have overlapping data - hsr: avoid possible NULL deref in skb_clone() - tipc: fix an information leak in tipc_topsrv_kern_subscr - phylink: add mac_managed_pm in phylink_config structure - eth: i40e: fix DMA mappings leak - eth: hyperv: fix a RX-path warning - eth: mtk: fix memory leaks Previous releases - always broken: - sched: cake: fix null pointer access issue when cake_init() fails" * tag 'net-6.1-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net: (43 commits) net: phy: dp83822: disable MDI crossover status change interrupt net: sched: fix race condition in qdisc_graft() net: hns: fix possible memory leak in hnae_ae_register() wwan_hwsim: fix possible memory leak in wwan_hwsim_dev_new() sfc: include vport_id in filter spec hash and equal() genetlink: fix kdoc warnings selftests: add selftest for chaining of tc ingress handling to egress net: Fix return value of qdisc ingress handling on success net: sched: sfb: fix null pointer access issue when sfb_init() fails Revert "net: sched: fq_codel: remove redundant resource cleanup in fq_codel_init()" net: sched: cake: fix null pointer access issue when cake_init() fails ethernet: marvell: octeontx2 Fix resource not freed after malloc netfilter: nf_tables: relax NFTA_SET_ELEM_KEY_END set flags requirements netfilter: rpfilter/fib: Set ->flowic_uid correctly for user namespaces. ionic: catch NULL pointer issue on reconfig net: hsr: avoid possible NULL deref in skb_clone() bnxt_en: fix memory leak in bnxt_nvm_test() ip6mr: fix UAF issue in ip6mr_sk_done() when addrconf_init_net() failed udp: Update reuse->has_conns under reuseport_lock. net: ethernet: mediatek: ppe: Remove the unused function mtk_foe_entry_usable() ...
Showing the changes to include/linux (3 of 58 files). Show all
Unified · Split
| @@ -61,9 +61,9 @@ struct sk_buff; · 60 unmodified lines | |||
| 61 | 61 | ||
| 62 | /* Special struct emulating a Ethernet header */ | 62 | /* Special struct emulating a Ethernet header */ |
| 63 | struct qca_mgmt_ethhdr { | 63 | struct qca_mgmt_ethhdr { |
| 64 | u32 command; /* command bit 31:0 */ | 64 | __le32 command; /* command bit 31:0 */ |
| 65 | u32 seq; /* seq 63:32 */ | 65 | __le32 seq; /* seq 63:32 */ |
| 66 | u32 mdio_data; /* first 4byte mdio */ | 66 | __le32 mdio_data; /* first 4byte mdio */ |
| 67 | __be16 hdr; /* qca hdr */ | 67 | __be16 hdr; /* qca hdr */ |
| 68 | } __packed; | 68 | } __packed; |
| 69 | 69 | ||
| @@ -73,7 +73,7 @@ enum mdio_cmd { · 3 unmodified lines | |||
| 73 | }; | 73 | }; |
| 74 | 74 | ||
| 75 | struct mib_ethhdr { | 75 | struct mib_ethhdr { |
| 76 | u32 data[3]; /* first 3 mib counter */ | 76 | __le32 data[3]; /* first 3 mib counter */ |
| 77 | __be16 hdr; /* qca hdr */ | 77 | __be16 hdr; /* qca hdr */ |
| 78 | } __packed; | 78 | } __packed; |
| 79 | 79 | ||
| @@ -3663,8 +3663,9 @@ static inline bool netif_attr_test_online(unsigned long j, · 3662 unmodified lines | |||
| 3663 | static inline unsigned int netif_attrmask_next(int n, const unsigned long *srcp, | 3663 | static inline unsigned int netif_attrmask_next(int n, const unsigned long *srcp, |
| 3664 | unsigned int nr_bits) | 3664 | unsigned int nr_bits) |
| 3665 | { | 3665 | { |
| 3666 | /* n is a prior cpu */ | 3666 | /* -1 is a legal arg here. */ |
| 3667 | cpu_max_bits_warn(n + 1, nr_bits); | 3667 | if (n != -1) |
| 3668 | cpu_max_bits_warn(n, nr_bits); | ||
| 3668 | 3669 | ||
| 3669 | if (srcp) | 3670 | if (srcp) |
| 3670 | return find_next_bit(srcp, nr_bits, n + 1); | 3671 | return find_next_bit(srcp, nr_bits, n + 1); |
| @@ -3685,8 +3686,9 @@ static inline int netif_attrmask_next_and(int n, const unsigned long *src1p, · 14 unmodified lines | |||
| 3685 | const unsigned long *src2p, | 3686 | const unsigned long *src2p, |
| 3686 | unsigned int nr_bits) | 3687 | unsigned int nr_bits) |
| 3687 | { | 3688 | { |
| 3688 | /* n is a prior cpu */ | 3689 | /* -1 is a legal arg here. */ |
| 3689 | cpu_max_bits_warn(n + 1, nr_bits); | 3690 | if (n != -1) |
| 3691 | cpu_max_bits_warn(n, nr_bits); | ||
| 3690 | 3692 | ||
| 3691 | if (src1p && src2p) | 3693 | if (src1p && src2p) |
| 3692 | return find_next_and_bit(src1p, src2p, nr_bits, n + 1); | 3694 | return find_next_and_bit(src1p, src2p, nr_bits, n + 1); |
| @@ -122,6 +122,7 @@ enum phylink_op_type { · 121 unmodified lines | |||
| 122 | * (See commit 7cceb599d15d ("net: phylink: avoid mac_config calls") | 122 | * (See commit 7cceb599d15d ("net: phylink: avoid mac_config calls") |
| 123 | * @poll_fixed_state: if true, starts link_poll, | 123 | * @poll_fixed_state: if true, starts link_poll, |
| 124 | * if MAC link is at %MLO_AN_FIXED mode. | 124 | * if MAC link is at %MLO_AN_FIXED mode. |
| 125 | * @mac_managed_pm: if true, indicate the MAC driver is responsible for PHY PM. | ||
| 125 | * @ovr_an_inband: if true, override PCS to MLO_AN_INBAND | 126 | * @ovr_an_inband: if true, override PCS to MLO_AN_INBAND |
| 126 | * @get_fixed_state: callback to execute to determine the fixed link state, | 127 | * @get_fixed_state: callback to execute to determine the fixed link state, |
| 127 | * if MAC link is at %MLO_AN_FIXED mode. | 128 | * if MAC link is at %MLO_AN_FIXED mode. |
| @@ -134,6 +135,7 @@ struct phylink_config { · 6 unmodified lines | |||
| 134 | enum phylink_op_type type; | 135 | enum phylink_op_type type; |
| 135 | bool legacy_pre_march2020; | 136 | bool legacy_pre_march2020; |
| 136 | bool poll_fixed_state; | 137 | bool poll_fixed_state; |
| 138 | bool mac_managed_pm; | ||
| 137 | bool ovr_an_inband; | 139 | bool ovr_an_inband; |
| 138 | void (*get_fixed_state)(struct phylink_config *config, | 140 | void (*get_fixed_state)(struct phylink_config *config, |
| 139 | struct phylink_link_state *state); | 141 | struct phylink_link_state *state); |