-LINUX_VERSION-6.1 = .71
-LINUX_KERNEL_HASH-6.1.71 = 2df774dd53f9ffd4e57ebf804cf597709295df6a304fe261d25220a134b7f041
+LINUX_VERSION-6.1 = .72
+LINUX_KERNEL_HASH-6.1.72 = 98dce69077c35cffca799dcdbbd32a02242aad6b0950eb931936bb2ef69f0926
--- a/drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c
+++ b/drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c
-@@ -3611,7 +3611,7 @@ static int dpaa2_eth_setup_dpni(struct f
+@@ -3614,7 +3614,7 @@ static int dpaa2_eth_setup_dpni(struct f
dev_err(dev, "DPNI version %u.%u not supported, need >= %u.%u\n",
priv->dpni_ver_major, priv->dpni_ver_minor,
DPNI_VER_MAJOR, DPNI_VER_MINOR);
--- a/drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c
+++ b/drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c
-@@ -2080,10 +2080,8 @@ static int dpaa2_eth_open(struct net_dev
+@@ -2083,10 +2083,8 @@ static int dpaa2_eth_open(struct net_dev
goto enable_err;
}
return 0;
-@@ -2157,7 +2155,6 @@ static int dpaa2_eth_stop(struct net_dev
+@@ -2160,7 +2158,6 @@ static int dpaa2_eth_stop(struct net_dev
int retries = 10;
if (dpaa2_eth_is_type_phy(priv)) {
--- a/drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c
+++ b/drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c
-@@ -4441,9 +4441,8 @@ static int dpaa2_eth_connect_mac(struct
+@@ -4444,9 +4444,8 @@ static int dpaa2_eth_connect_mac(struct
err = dpaa2_mac_open(mac);
if (err)
goto err_free_mac;
err = dpaa2_mac_connect(mac);
if (err && err != -EPROBE_DEFER)
netdev_err(priv->net_dev, "Error connecting to the MAC endpoint: %pe",
-@@ -4452,11 +4451,12 @@ static int dpaa2_eth_connect_mac(struct
+@@ -4455,11 +4454,12 @@ static int dpaa2_eth_connect_mac(struct
goto err_close_mac;
}
err_free_mac:
kfree(mac);
return err;
-@@ -4464,15 +4464,18 @@ err_free_mac:
+@@ -4467,15 +4467,18 @@ err_free_mac:
static void dpaa2_eth_disconnect_mac(struct dpaa2_eth_priv *priv)
{
--- a/drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c
+++ b/drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c
-@@ -4708,6 +4708,10 @@ static int dpaa2_eth_probe(struct fsl_mc
+@@ -4711,6 +4711,10 @@ static int dpaa2_eth_probe(struct fsl_mc
}
#endif
err = dpaa2_eth_setup_irqs(dpni_dev);
if (err) {
netdev_warn(net_dev, "Failed to set link interrupt, fall back to polling\n");
-@@ -4720,10 +4724,6 @@ static int dpaa2_eth_probe(struct fsl_mc
+@@ -4723,10 +4727,6 @@ static int dpaa2_eth_probe(struct fsl_mc
priv->do_link_poll = true;
}
err = dpaa2_eth_dl_alloc(priv);
if (err)
goto err_dl_register;
-@@ -4759,13 +4759,13 @@ err_dl_port_add:
+@@ -4762,13 +4762,13 @@ err_dl_port_add:
err_dl_trap_register:
dpaa2_eth_dl_free(priv);
err_dl_register:
dpaa2_eth_free_rings(priv);
err_alloc_rings:
err_csum:
-@@ -4813,9 +4813,6 @@ static int dpaa2_eth_remove(struct fsl_m
+@@ -4816,9 +4816,6 @@ static int dpaa2_eth_remove(struct fsl_m
#endif
unregister_netdev(net_dev);
dpaa2_eth_dl_port_del(priv);
dpaa2_eth_dl_traps_unregister(priv);
-@@ -4826,6 +4823,9 @@ static int dpaa2_eth_remove(struct fsl_m
+@@ -4829,6 +4826,9 @@ static int dpaa2_eth_remove(struct fsl_m
else
fsl_mc_free_irqs(ls_dev);
--- a/drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c
+++ b/drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c
-@@ -2018,8 +2018,11 @@ static int dpaa2_eth_link_state_update(s
+@@ -2021,8 +2021,11 @@ static int dpaa2_eth_link_state_update(s
/* When we manage the MAC/PHY using phylink there is no need
* to manually update the netif_carrier.
goto out;
/* Chech link state; speed / duplex changes are not treated yet */
-@@ -2058,6 +2061,8 @@ static int dpaa2_eth_open(struct net_dev
+@@ -2061,6 +2064,8 @@ static int dpaa2_eth_open(struct net_dev
priv->dpbp_dev->obj_desc.id, priv->bpid);
}
if (!dpaa2_eth_is_type_phy(priv)) {
/* We'll only start the txqs when the link is actually ready;
* make sure we don't race against the link up notification,
-@@ -2076,6 +2081,7 @@ static int dpaa2_eth_open(struct net_dev
+@@ -2079,6 +2084,7 @@ static int dpaa2_eth_open(struct net_dev
err = dpni_enable(priv->mc_io, 0, priv->mc_token);
if (err < 0) {
netdev_err(net_dev, "dpni_enable() failed\n");
goto enable_err;
}
-@@ -2083,6 +2089,8 @@ static int dpaa2_eth_open(struct net_dev
+@@ -2086,6 +2092,8 @@ static int dpaa2_eth_open(struct net_dev
if (dpaa2_eth_is_type_phy(priv))
dpaa2_mac_start(priv->mac);
return 0;
enable_err:
-@@ -2154,6 +2162,8 @@ static int dpaa2_eth_stop(struct net_dev
+@@ -2157,6 +2165,8 @@ static int dpaa2_eth_stop(struct net_dev
int dpni_enabled = 0;
int retries = 10;
if (dpaa2_eth_is_type_phy(priv)) {
dpaa2_mac_stop(priv->mac);
} else {
-@@ -2161,6 +2171,8 @@ static int dpaa2_eth_stop(struct net_dev
+@@ -2164,6 +2174,8 @@ static int dpaa2_eth_stop(struct net_dev
netif_carrier_off(net_dev);
}
/* On dpni_disable(), the MC firmware will:
* - stop MAC Rx and wait for all Rx frames to be enqueued to software
* - cut off WRIOP dequeues from egress FQs and wait until transmission
-@@ -2486,12 +2498,20 @@ static int dpaa2_eth_ts_ioctl(struct net
+@@ -2489,12 +2501,20 @@ static int dpaa2_eth_ts_ioctl(struct net
static int dpaa2_eth_ioctl(struct net_device *dev, struct ifreq *rq, int cmd)
{
struct dpaa2_eth_priv *priv = netdev_priv(dev);
return -EOPNOTSUPP;
}
-@@ -4451,7 +4471,9 @@ static int dpaa2_eth_connect_mac(struct
+@@ -4454,7 +4474,9 @@ static int dpaa2_eth_connect_mac(struct
goto err_close_mac;
}
return 0;
-@@ -4464,9 +4486,12 @@ err_free_mac:
+@@ -4467,9 +4489,12 @@ err_free_mac:
static void dpaa2_eth_disconnect_mac(struct dpaa2_eth_priv *priv)
{
if (!mac)
return;
-@@ -4485,6 +4510,7 @@ static irqreturn_t dpni_irq0_handler_thr
+@@ -4488,6 +4513,7 @@ static irqreturn_t dpni_irq0_handler_thr
struct fsl_mc_device *dpni_dev = to_fsl_mc_device(dev);
struct net_device *net_dev = dev_get_drvdata(dev);
struct dpaa2_eth_priv *priv = netdev_priv(net_dev);
int err;
err = dpni_get_irq_status(dpni_dev->mc_io, 0, dpni_dev->mc_handle,
-@@ -4502,7 +4528,12 @@ static irqreturn_t dpni_irq0_handler_thr
+@@ -4505,7 +4531,12 @@ static irqreturn_t dpni_irq0_handler_thr
dpaa2_eth_update_tx_fqids(priv);
rtnl_lock();
dpaa2_eth_disconnect_mac(priv);
else
dpaa2_eth_connect_mac(priv);
-@@ -4603,6 +4634,8 @@ static int dpaa2_eth_probe(struct fsl_mc
+@@ -4606,6 +4637,8 @@ static int dpaa2_eth_probe(struct fsl_mc
priv = netdev_priv(net_dev);
priv->net_dev = net_dev;
if (pause->autoneg)
return -EOPNOTSUPP;
-@@ -309,8 +341,12 @@ static void dpaa2_eth_get_ethtool_stats(
+@@ -307,8 +339,12 @@ static void dpaa2_eth_get_ethtool_stats(
}
*(data + i++) = buf_cnt;
--- a/drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c
+++ b/drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c
-@@ -4527,7 +4527,6 @@ static irqreturn_t dpni_irq0_handler_thr
+@@ -4530,7 +4530,6 @@ static irqreturn_t dpni_irq0_handler_thr
dpaa2_eth_set_mac_addr(netdev_priv(net_dev));
dpaa2_eth_update_tx_fqids(priv);
/* We can avoid locking because the "endpoint changed" IRQ
* handler is the only one who changes priv->mac at runtime,
* so we are not racing with anyone.
-@@ -4537,7 +4536,6 @@ static irqreturn_t dpni_irq0_handler_thr
+@@ -4540,7 +4539,6 @@ static irqreturn_t dpni_irq0_handler_thr
dpaa2_eth_disconnect_mac(priv);
else
dpaa2_eth_connect_mac(priv);
}
return IRQ_HANDLED;
-@@ -4856,9 +4854,7 @@ static int dpaa2_eth_remove(struct fsl_m
+@@ -4859,9 +4857,7 @@ static int dpaa2_eth_remove(struct fsl_m
else
fsl_mc_free_irqs(ls_dev);
#endif /* _LINUX_TYPES_H */
--- a/net/ipv4/af_inet.c
+++ b/net/ipv4/af_inet.c
-@@ -1494,8 +1494,8 @@ struct sk_buff *inet_gro_receive(struct
+@@ -1512,8 +1512,8 @@ struct sk_buff *inet_gro_receive(struct
if (unlikely(ip_fast_csum((u8 *)iph, 5)))
goto out;
static inline int mmc_blk_part_switch(struct mmc_card *card,
unsigned int part_type);
static void mmc_blk_rw_rq_prep(struct mmc_queue_req *mqrq,
-@@ -2998,6 +3005,8 @@ static int mmc_blk_probe(struct mmc_card
+@@ -3000,6 +3007,8 @@ static int mmc_blk_probe(struct mmc_card
{
struct mmc_blk_data *md;
int ret = 0;
/*
* Check that the card supports the command class(es) we need.
-@@ -3005,7 +3014,16 @@ static int mmc_blk_probe(struct mmc_card
+@@ -3007,7 +3016,16 @@ static int mmc_blk_probe(struct mmc_card
if (!(card->csd.cmdclass & CCC_BLOCK_READ))
return -ENODEV;
card->complete_wq = alloc_workqueue("mmc_complete",
WQ_MEM_RECLAIM | WQ_HIGHPRI, 0);
-@@ -3020,6 +3038,17 @@ static int mmc_blk_probe(struct mmc_card
+@@ -3022,6 +3040,17 @@ static int mmc_blk_probe(struct mmc_card
goto out_free;
}
--- a/drivers/net/ethernet/broadcom/genet/bcmgenet.c
+++ b/drivers/net/ethernet/broadcom/genet/bcmgenet.c
-@@ -2657,7 +2657,7 @@ static void bcmgenet_init_tx_ring(struct
+@@ -2659,7 +2659,7 @@ static void bcmgenet_init_tx_ring(struct
bcmgenet_tdma_ring_writel(priv, index, 0, TDMA_PROD_INDEX);
bcmgenet_tdma_ring_writel(priv, index, 0, TDMA_CONS_INDEX);
/* Disable rate control for now */
bcmgenet_tdma_ring_writel(priv, index, flow_period_val,
TDMA_FLOW_PERIOD);
-@@ -4138,9 +4138,12 @@ static int bcmgenet_probe(struct platfor
+@@ -4140,9 +4140,12 @@ static int bcmgenet_probe(struct platfor
netif_set_real_num_rx_queues(priv->dev, priv->hw_params->rx_queues + 1);
/* Set default coalescing parameters */
static inline void bcmgenet_writel(u32 value, void __iomem *offset)
{
-@@ -2488,6 +2491,11 @@ static void reset_umac(struct bcmgenet_p
+@@ -2490,6 +2493,11 @@ static void reset_umac(struct bcmgenet_p
bcmgenet_rbuf_ctrl_set(priv, 0);
udelay(10);
+...
--- a/MAINTAINERS
+++ b/MAINTAINERS
-@@ -19279,6 +19279,14 @@ T: git git://linuxtv.org/media_tree.git
+@@ -19281,6 +19281,14 @@ T: git git://linuxtv.org/media_tree.git
F: Documentation/devicetree/bindings/media/i2c/sony,imx412.yaml
F: drivers/media/i2c/imx412.c
+...
--- a/MAINTAINERS
+++ b/MAINTAINERS
-@@ -19287,6 +19287,14 @@ T: git git://linuxtv.org/media_tree.git
+@@ -19289,6 +19289,14 @@ T: git git://linuxtv.org/media_tree.git
F: Documentation/devicetree/bindings/media/i2c/imx477.yaml
F: drivers/media/i2c/imx477.c
+...
--- a/MAINTAINERS
+++ b/MAINTAINERS
-@@ -19284,6 +19284,7 @@ M: Raspberry Pi Kernel Maintenance <kern
+@@ -19286,6 +19286,7 @@ M: Raspberry Pi Kernel Maintenance <kern
L: linux-media@vger.kernel.org
S: Maintained
T: git git://linuxtv.org/media_tree.git
--- a/drivers/net/ethernet/broadcom/genet/bcmgenet.c
+++ b/drivers/net/ethernet/broadcom/genet/bcmgenet.c
-@@ -3304,7 +3304,7 @@ static void bcmgenet_get_hw_addr(struct
+@@ -3306,7 +3306,7 @@ static void bcmgenet_get_hw_addr(struct
}
/* Returns a reusable dma control register value */
{
unsigned int i;
u32 reg;
-@@ -3329,6 +3329,14 @@ static u32 bcmgenet_dma_disable(struct b
+@@ -3331,6 +3331,14 @@ static u32 bcmgenet_dma_disable(struct b
udelay(10);
bcmgenet_umac_writel(priv, 0, UMAC_TX_FLUSH);
return dma_ctrl;
}
-@@ -3392,8 +3400,8 @@ static int bcmgenet_open(struct net_devi
+@@ -3394,8 +3402,8 @@ static int bcmgenet_open(struct net_devi
bcmgenet_set_hw_addr(priv, dev->dev_addr);
/* Reinitialize TDMA and RDMA and SW housekeeping */
ret = bcmgenet_init_dma(priv);
-@@ -4267,7 +4275,7 @@ static int bcmgenet_resume(struct device
+@@ -4269,7 +4277,7 @@ static int bcmgenet_resume(struct device
bcmgenet_hfb_create_rxnfc_filter(priv, rule);
/* Disable RX/TX DMA and flush TX queues */
--- a/drivers/mmc/core/block.c
+++ b/drivers/mmc/core/block.c
-@@ -1928,7 +1928,7 @@ static void mmc_blk_mq_rw_recovery(struc
+@@ -1930,7 +1930,7 @@ static void mmc_blk_mq_rw_recovery(struc
return;
}
static inline void bcmgenet_writel(u32 value, void __iomem *offset)
{
-@@ -3438,6 +3441,17 @@ static int bcmgenet_open(struct net_devi
+@@ -3440,6 +3443,17 @@ static int bcmgenet_open(struct net_devi
bcmgenet_phy_pause_set(dev, priv->rx_pause, priv->tx_pause);
+...
--- a/MAINTAINERS
+++ b/MAINTAINERS
-@@ -19328,6 +19328,14 @@ T: git git://linuxtv.org/media_tree.git
+@@ -19330,6 +19330,14 @@ T: git git://linuxtv.org/media_tree.git
F: Documentation/devicetree/bindings/media/i2c/imx519.yaml
F: drivers/media/i2c/imx519.c
+...
--- a/MAINTAINERS
+++ b/MAINTAINERS
-@@ -19270,6 +19270,14 @@ T: git git://linuxtv.org/media_tree.git
+@@ -19272,6 +19272,14 @@ T: git git://linuxtv.org/media_tree.git
F: Documentation/devicetree/bindings/media/i2c/imx290.txt
F: drivers/media/i2c/imx290.c
--- a/MAINTAINERS
+++ b/MAINTAINERS
-@@ -19277,6 +19277,7 @@ L: linux-media@vger.kernel.org
+@@ -19279,6 +19279,7 @@ L: linux-media@vger.kernel.org
S: Maintained
T: git git://linuxtv.org/media_tree.git
F: Documentation/devicetree/bindings/media/i2c/sony,imx296.yaml
+...
--- a/MAINTAINERS
+++ b/MAINTAINERS
-@@ -19267,7 +19267,7 @@ M: Manivannan Sadhasivam <manivannan.sad
+@@ -19269,7 +19269,7 @@ M: Manivannan Sadhasivam <manivannan.sad
L: linux-media@vger.kernel.org
S: Maintained
T: git git://linuxtv.org/media_tree.git
+...
--- a/MAINTAINERS
+++ b/MAINTAINERS
-@@ -19342,7 +19342,7 @@ M: Raspberry Pi Kernel Maintenance <kern
+@@ -19344,7 +19344,7 @@ M: Raspberry Pi Kernel Maintenance <kern
L: linux-media@vger.kernel.org
S: Maintained
T: git git://linuxtv.org/media_tree.git
--- a/MAINTAINERS
+++ b/MAINTAINERS
-@@ -12926,6 +12926,14 @@ L: netdev@vger.kernel.org
+@@ -12928,6 +12928,14 @@ L: netdev@vger.kernel.org
S: Maintained
F: drivers/net/ethernet/mediatek/
--- a/MAINTAINERS
+++ b/MAINTAINERS
-@@ -13060,6 +13060,7 @@ M: Landen Chao <Landen.Chao@mediatek.com
+@@ -13062,6 +13062,7 @@ M: Landen Chao <Landen.Chao@mediatek.com
M: DENG Qingfang <dqfext@gmail.com>
L: netdev@vger.kernel.org
S: Maintained
--- a/MAINTAINERS
+++ b/MAINTAINERS
-@@ -13058,9 +13058,11 @@ MEDIATEK SWITCH DRIVER
+@@ -13060,9 +13060,11 @@ MEDIATEK SWITCH DRIVER
M: Sean Wang <sean.wang@mediatek.com>
M: Landen Chao <Landen.Chao@mediatek.com>
M: DENG Qingfang <dqfext@gmail.com>
--- a/MAINTAINERS
+++ b/MAINTAINERS
-@@ -13962,6 +13962,7 @@ F: include/uapi/linux/meye.h
+@@ -13964,6 +13964,7 @@ F: include/uapi/linux/meye.h
MOTORCOMM PHY DRIVER
M: Peter Geis <pgwipeout@gmail.com>
+};
+
+static int nf_flow_rule_route_inet(struct net *net,
-+ const struct flow_offload *flow,
++ struct flow_offload *flow,
+ enum flow_offload_tuple_dir dir,
+ struct nf_flow_rule *flow_rule)
+{
void (*iter)(struct nf_flowtable *flowtable,
struct flow_offload *flow, void *data),
void *data)
-@@ -436,6 +434,7 @@ static void nf_flow_offload_gc_step(stru
+@@ -443,6 +441,7 @@ static void nf_flow_offload_gc_step(stru
nf_flow_offload_stats(flow_table, flow);
}
}
+#endif /* _XT_FLOWOFFLOAD_H */
--- a/include/net/netfilter/nf_flow_table.h
+++ b/include/net/netfilter/nf_flow_table.h
-@@ -280,6 +280,11 @@ void nf_flow_table_free(struct nf_flowta
+@@ -293,6 +293,11 @@ void nf_flow_table_free(struct nf_flowta
void flow_offload_teardown(struct flow_offload *flow);
INDIRECT_CALLABLE_DECLARE(struct dst_entry *ip6_dst_check(struct dst_entry *,
u32));
INDIRECT_CALLABLE_DECLARE(struct dst_entry *ipv4_dst_check(struct dst_entry *,
-@@ -2180,9 +2194,11 @@ static void __sk_free(struct sock *sk)
+@@ -2187,9 +2201,11 @@ static void __sk_free(struct sock *sk)
if (likely(sk->sk_net_refcnt))
sock_inuse_add(sock_net(sk), -1);
--- a/net/core/sock.c
+++ b/net/core/sock.c
-@@ -4105,6 +4105,8 @@ static __net_initdata struct pernet_oper
+@@ -4113,6 +4113,8 @@ static __net_initdata struct pernet_oper
static int __init proto_init(void)
{
--- a/net/netfilter/nf_flow_table_core.c
+++ b/net/netfilter/nf_flow_table_core.c
-@@ -659,6 +659,23 @@ static struct pernet_operations nf_flow_
+@@ -666,6 +666,23 @@ static struct pernet_operations nf_flow_
.exit_batch = nf_flow_table_pernet_exit,
};
static int __init nf_flow_table_module_init(void)
{
int ret;
-@@ -671,8 +688,14 @@ static int __init nf_flow_table_module_i
+@@ -678,8 +695,14 @@ static int __init nf_flow_table_module_i
if (ret)
goto out_offload;
out_offload:
unregister_pernet_subsys(&nf_flow_table_net_ops);
return ret;
-@@ -680,6 +703,7 @@ out_offload:
+@@ -687,6 +710,7 @@ out_offload:
static void __exit nf_flow_table_module_exit(void)
{
--- a/MAINTAINERS
+++ b/MAINTAINERS
-@@ -17064,6 +17064,13 @@ L: netdev@vger.kernel.org
+@@ -17066,6 +17066,13 @@ L: netdev@vger.kernel.org
S: Maintained
F: drivers/net/ethernet/qualcomm/emac/
--- a/MAINTAINERS
+++ b/MAINTAINERS
-@@ -17070,6 +17070,7 @@ L: netdev@vger.kernel.org
+@@ -17072,6 +17072,7 @@ L: netdev@vger.kernel.org
S: Maintained
F: Documentation/devicetree/bindings/net/qcom,ipq4019-ess-edma.yaml
F: drivers/net/ethernet/qualcomm/ipqess/
--- a/MAINTAINERS
+++ b/MAINTAINERS
-@@ -12934,6 +12934,15 @@ S: Maintained
+@@ -12936,6 +12936,15 @@ S: Maintained
F: drivers/net/pcs/pcs-mtk-lynxi.c
F: include/linux/pcs/pcs-mtk-lynxi.h