kernel: bump 5.15 to 5.15.147
authorJohn Audia <therealgraysky@proton.me>
Mon, 15 Jan 2024 20:25:53 +0000 (15:25 -0500)
committerHauke Mehrtens <hauke@hauke-m.de>
Sun, 21 Jan 2024 11:51:29 +0000 (12:51 +0100)
Changelog: https://cdn.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.15.147

Manually rebased:
generic/backport-5.15/005-v5.17-01-Kbuild-use-Wdeclaration-after-statement.patch

All other patches automatically rebased.

Build system: x86_64
Build-tested: ramips/tplink_archer-a6-v3
Run-tested: ramips/tplink_archer-a6-v3

Signed-off-by: John Audia <therealgraysky@proton.me>
(cherry picked from commit 389135501565a6544775e0c75828a11e536e64a2)
[Refresh on top of OpenWrt 23.05]
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
include/kernel-5.15
target/linux/bcm27xx/patches-5.15/950-0070-MMC-added-alternative-MMC-driver.patch
target/linux/bcm27xx/patches-5.15/950-0144-bcmgenet-Better-coalescing-parameter-defaults.patch
target/linux/bcm27xx/patches-5.15/950-0165-net-bcmgenet-Workaround-2-for-Pi4-Ethernet-fail.patch
target/linux/bcm27xx/patches-5.15/950-0292-net-bcmgenet-Reset-RBUF-on-first-open.patch
target/linux/bcm27xx/patches-5.15/950-0914-mmc-block-Don-t-do-single-sector-reads-during-recove.patch
target/linux/generic/backport-5.15/797-v5.17-net-usb-ax88179_178a-add-TSO-feature.patch
target/linux/generic/hack-5.15/901-debloat_sock_diag.patch
target/linux/generic/hack-5.15/902-debloat_proc.patch
target/linux/generic/pending-5.15/670-ipv6-allow-rejecting-with-source-address-failed-policy.patch
target/linux/generic/pending-5.15/701-netfilter-nf_tables-ignore-EOPNOTSUPP-on-flowtable-d.patch

index f8ecac57422bfeaef06575a30c9b31b0bd68fe65..5cc07434b2a6cdbfbe971fb154237a174f1254fd 100644 (file)
@@ -1,2 +1,2 @@
-LINUX_VERSION-5.15 = .146
-LINUX_KERNEL_HASH-5.15.146 = 5a807a5fa2a80ada957d8079681dfb5cc196ec26f43244d1c8a4fd7af592d192
+LINUX_VERSION-5.15 = .147
+LINUX_KERNEL_HASH-5.15.147 = 56c1e65625d201db431efda7a3816e7b424071e7cb0245b2ba594d15b1fdfcd4
index 2f8829398588e10809829d8d116bb619e280f0ed..848ac83e3a0618399ad06ff787d5770c0f6cac8a 100644 (file)
@@ -244,7 +244,7 @@ bcm2835-mmc: uninitialized_var is no more
  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,
-@@ -2944,6 +2951,8 @@ static int mmc_blk_probe(struct mmc_card
+@@ -2946,6 +2953,8 @@ static int mmc_blk_probe(struct mmc_card
  {
        struct mmc_blk_data *md;
        int ret = 0;
@@ -253,7 +253,7 @@ bcm2835-mmc: uninitialized_var is no more
  
        /*
         * Check that the card supports the command class(es) we need.
-@@ -2951,7 +2960,16 @@ static int mmc_blk_probe(struct mmc_card
+@@ -2953,7 +2962,16 @@ static int mmc_blk_probe(struct mmc_card
        if (!(card->csd.cmdclass & CCC_BLOCK_READ))
                return -ENODEV;
  
@@ -271,7 +271,7 @@ bcm2835-mmc: uninitialized_var is no more
  
        card->complete_wq = alloc_workqueue("mmc_complete",
                                        WQ_MEM_RECLAIM | WQ_HIGHPRI, 0);
-@@ -2966,6 +2984,17 @@ static int mmc_blk_probe(struct mmc_card
+@@ -2968,6 +2986,17 @@ static int mmc_blk_probe(struct mmc_card
                goto out_free;
        }
  
index 69e99c5f99b84a94f454cc3de51792f1ce01d0ba..ebffb634cd56257c7633783d9ab44e43a956165d 100644 (file)
@@ -18,7 +18,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
 
 --- a/drivers/net/ethernet/broadcom/genet/bcmgenet.c
 +++ b/drivers/net/ethernet/broadcom/genet/bcmgenet.c
-@@ -2616,7 +2616,7 @@ static void bcmgenet_init_tx_ring(struct
+@@ -2618,7 +2618,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);
@@ -27,7 +27,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
        /* Disable rate control for now */
        bcmgenet_tdma_ring_writel(priv, index, flow_period_val,
                                  TDMA_FLOW_PERIOD);
-@@ -4084,9 +4084,12 @@ static int bcmgenet_probe(struct platfor
+@@ -4086,9 +4086,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 */
index b18208276378e5cdfc14267ced789eb2e74ac022..318681ff9101a06e3df0b4a6a1fbfee7034db398 100644 (file)
@@ -37,7 +37,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
  
  static inline void bcmgenet_writel(u32 value, void __iomem *offset)
  {
-@@ -2447,6 +2450,11 @@ static void reset_umac(struct bcmgenet_p
+@@ -2449,6 +2452,11 @@ static void reset_umac(struct bcmgenet_p
        bcmgenet_rbuf_ctrl_set(priv, 0);
        udelay(10);
  
index 254376ee052a697e220cd9742c1b0129ec9b54ce..21cd9dfc039849f10eb8fc9f6af200ad5767355c 100644 (file)
@@ -24,7 +24,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
 
 --- a/drivers/net/ethernet/broadcom/genet/bcmgenet.c
 +++ b/drivers/net/ethernet/broadcom/genet/bcmgenet.c
-@@ -3265,7 +3265,7 @@ static void bcmgenet_get_hw_addr(struct
+@@ -3267,7 +3267,7 @@ static void bcmgenet_get_hw_addr(struct
  }
  
  /* Returns a reusable dma control register value */
@@ -33,7 +33,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
  {
        unsigned int i;
        u32 reg;
-@@ -3290,6 +3290,14 @@ static u32 bcmgenet_dma_disable(struct b
+@@ -3292,6 +3292,14 @@ static u32 bcmgenet_dma_disable(struct b
        udelay(10);
        bcmgenet_umac_writel(priv, 0, UMAC_TX_FLUSH);
  
@@ -48,7 +48,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
        return dma_ctrl;
  }
  
-@@ -3353,8 +3361,8 @@ static int bcmgenet_open(struct net_devi
+@@ -3355,8 +3363,8 @@ static int bcmgenet_open(struct net_devi
  
        bcmgenet_set_hw_addr(priv, dev->dev_addr);
  
@@ -59,7 +59,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
  
        /* Reinitialize TDMA and RDMA and SW housekeeping */
        ret = bcmgenet_init_dma(priv);
-@@ -4213,7 +4221,7 @@ static int bcmgenet_resume(struct device
+@@ -4215,7 +4223,7 @@ static int bcmgenet_resume(struct device
                        bcmgenet_hfb_create_rxnfc_filter(priv, rule);
  
        /* Disable RX/TX DMA and flush TX queues */
index 2741660ee2ae9bc76df39993b2910baea64f52ba..604acfacc0f3d6e08a5b51093f4ceaedc0034ac2 100644 (file)
@@ -23,7 +23,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
 
 --- a/drivers/mmc/core/block.c
 +++ b/drivers/mmc/core/block.c
-@@ -1888,7 +1888,11 @@ static void mmc_blk_mq_rw_recovery(struc
+@@ -1890,7 +1890,11 @@ static void mmc_blk_mq_rw_recovery(struc
                return;
        }
  
index 598fa05e9bf00c21051ed5c9289a80ffbe5c1800..698e524c3565efed6553e98216d00bbcfb3193e4 100644 (file)
@@ -18,7 +18,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
 
 --- a/drivers/net/usb/ax88179_178a.c
 +++ b/drivers/net/usb/ax88179_178a.c
-@@ -1363,11 +1363,12 @@ static int ax88179_bind(struct usbnet *d
+@@ -1333,11 +1333,12 @@ static int ax88179_bind(struct usbnet *d
        dev->mii.phy_id = 0x03;
        dev->mii.supports_gmii = 1;
  
@@ -33,9 +33,9 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
 +
 +      netif_set_gso_max_size(dev->net, 16384);
  
-       /* Enable checksum offload */
-       *tmp = AX_RXCOE_IP | AX_RXCOE_TCP | AX_RXCOE_UDP |
-@@ -1573,17 +1574,19 @@ ax88179_tx_fixup(struct usbnet *dev, str
+       ax88179_reset(dev);
+@@ -1507,17 +1508,19 @@ ax88179_tx_fixup(struct usbnet *dev, str
  {
        u32 tx_hdr1, tx_hdr2;
        int frame_size = dev->maxpacket;
@@ -57,7 +57,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
        if ((skb_header_cloned(skb) || headroom < 0) &&
            pskb_expand_head(skb, headroom < 0 ? 8 : 0, 0, GFP_ATOMIC)) {
                dev_kfree_skb_any(skb);
-@@ -1594,6 +1597,8 @@ ax88179_tx_fixup(struct usbnet *dev, str
+@@ -1528,6 +1531,8 @@ ax88179_tx_fixup(struct usbnet *dev, str
        put_unaligned_le32(tx_hdr1, ptr);
        put_unaligned_le32(tx_hdr2, ptr + 4);
  
index 11f4f556e86391280a2f68934d039b7844a9cc81..ab4d636956e3dbed6a8979e08687b6af1b262094 100644 (file)
@@ -77,7 +77,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
  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 *,
-@@ -1987,9 +2001,11 @@ static void __sk_free(struct sock *sk)
+@@ -1994,9 +2008,11 @@ static void __sk_free(struct sock *sk)
        if (likely(sk->sk_net_refcnt))
                sock_inuse_add(sock_net(sk), -1);
  
index 768d3e1f0cfb764998ebacf55d2893be105d29e8..dcdad4ca695df4669d2b34fc60742db05bfbd225 100644 (file)
@@ -330,7 +330,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
  
 --- a/net/core/sock.c
 +++ b/net/core/sock.c
-@@ -3881,6 +3881,8 @@ static __net_initdata struct pernet_oper
+@@ -3889,6 +3889,8 @@ static __net_initdata struct pernet_oper
  
  static int __init proto_init(void)
  {
index 7aaac9653187b9ea9e9cd0d5a78101a707a9ffec..071a2ed3e5e0132e781189903c350d6ac61b7780 100644 (file)
@@ -157,7 +157,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
        case RTN_THROW:
        case RTN_UNREACHABLE:
        default:
-@@ -4560,6 +4579,17 @@ static int ip6_pkt_prohibit_out(struct n
+@@ -4557,6 +4576,17 @@ static int ip6_pkt_prohibit_out(struct n
        return ip6_pkt_drop(skb, ICMPV6_ADM_PROHIBITED, IPSTATS_MIB_OUTNOROUTES);
  }
  
@@ -175,7 +175,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
  /*
   *    Allocate a dst for local (unicast / anycast) address.
   */
-@@ -5047,7 +5077,8 @@ static int rtm_to_fib6_config(struct sk_
+@@ -5044,7 +5074,8 @@ static int rtm_to_fib6_config(struct sk_
        if (rtm->rtm_type == RTN_UNREACHABLE ||
            rtm->rtm_type == RTN_BLACKHOLE ||
            rtm->rtm_type == RTN_PROHIBIT ||
@@ -185,7 +185,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
                cfg->fc_flags |= RTF_REJECT;
  
        if (rtm->rtm_type == RTN_LOCAL)
-@@ -6301,6 +6332,8 @@ static int ip6_route_dev_notify(struct n
+@@ -6298,6 +6329,8 @@ static int ip6_route_dev_notify(struct n
  #ifdef CONFIG_IPV6_MULTIPLE_TABLES
                net->ipv6.ip6_prohibit_entry->dst.dev = dev;
                net->ipv6.ip6_prohibit_entry->rt6i_idev = in6_dev_get(dev);
@@ -194,7 +194,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
                net->ipv6.ip6_blk_hole_entry->dst.dev = dev;
                net->ipv6.ip6_blk_hole_entry->rt6i_idev = in6_dev_get(dev);
  #endif
-@@ -6312,6 +6345,7 @@ static int ip6_route_dev_notify(struct n
+@@ -6309,6 +6342,7 @@ static int ip6_route_dev_notify(struct n
                in6_dev_put_clear(&net->ipv6.ip6_null_entry->rt6i_idev);
  #ifdef CONFIG_IPV6_MULTIPLE_TABLES
                in6_dev_put_clear(&net->ipv6.ip6_prohibit_entry->rt6i_idev);
@@ -202,7 +202,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
                in6_dev_put_clear(&net->ipv6.ip6_blk_hole_entry->rt6i_idev);
  #endif
        }
-@@ -6503,6 +6537,8 @@ static int __net_init ip6_route_net_init
+@@ -6500,6 +6534,8 @@ static int __net_init ip6_route_net_init
  
  #ifdef CONFIG_IPV6_MULTIPLE_TABLES
        net->ipv6.fib6_has_custom_rules = false;
@@ -211,7 +211,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
        net->ipv6.ip6_prohibit_entry = kmemdup(&ip6_prohibit_entry_template,
                                               sizeof(*net->ipv6.ip6_prohibit_entry),
                                               GFP_KERNEL);
-@@ -6513,11 +6549,21 @@ static int __net_init ip6_route_net_init
+@@ -6510,11 +6546,21 @@ static int __net_init ip6_route_net_init
                         ip6_template_metrics, true);
        INIT_LIST_HEAD(&net->ipv6.ip6_prohibit_entry->rt6i_uncached);
  
@@ -234,7 +234,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
        net->ipv6.ip6_blk_hole_entry->dst.ops = &net->ipv6.ip6_dst_ops;
        dst_init_metrics(&net->ipv6.ip6_blk_hole_entry->dst,
                         ip6_template_metrics, true);
-@@ -6544,6 +6590,8 @@ out:
+@@ -6541,6 +6587,8 @@ out:
        return ret;
  
  #ifdef CONFIG_IPV6_MULTIPLE_TABLES
@@ -243,7 +243,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
  out_ip6_prohibit_entry:
        kfree(net->ipv6.ip6_prohibit_entry);
  out_ip6_null_entry:
-@@ -6563,6 +6611,7 @@ static void __net_exit ip6_route_net_exi
+@@ -6560,6 +6608,7 @@ static void __net_exit ip6_route_net_exi
        kfree(net->ipv6.ip6_null_entry);
  #ifdef CONFIG_IPV6_MULTIPLE_TABLES
        kfree(net->ipv6.ip6_prohibit_entry);
@@ -251,7 +251,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
        kfree(net->ipv6.ip6_blk_hole_entry);
  #endif
        dst_entries_destroy(&net->ipv6.ip6_dst_ops);
-@@ -6646,6 +6695,9 @@ void __init ip6_route_init_special_entri
+@@ -6643,6 +6692,9 @@ void __init ip6_route_init_special_entri
        init_net.ipv6.ip6_prohibit_entry->rt6i_idev = in6_dev_get(init_net.loopback_dev);
        init_net.ipv6.ip6_blk_hole_entry->dst.dev = init_net.loopback_dev;
        init_net.ipv6.ip6_blk_hole_entry->rt6i_idev = in6_dev_get(init_net.loopback_dev);
index 723af247703fd4ae88e7979081fa56779b370763..d2ca7c7b537008df2b7129201768ada1310f52a1 100644 (file)
@@ -18,7 +18,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
 
 --- a/net/netfilter/nf_tables_api.c
 +++ b/net/netfilter/nf_tables_api.c
-@@ -7709,7 +7709,7 @@ static int nft_register_flowtable_net_ho
+@@ -7736,7 +7736,7 @@ static int nft_register_flowtable_net_ho
                err = flowtable->data.type->setup(&flowtable->data,
                                                  hook->ops.dev,
                                                  FLOW_BLOCK_BIND);