--- zzzz-none-000/linux-4.4.271/net/netlink/af_netlink.c 2021-06-03 06:22:09.000000000 +0000 +++ maple-fsgw-759/linux-4.4.271/net/netlink/af_netlink.c 2023-12-20 10:37:41.000000000 +0000 @@ -1242,24 +1242,7 @@ static struct sk_buff *netlink_trim(struct sk_buff *skb, gfp_t allocation) { - int delta; - WARN_ON(skb->sk != NULL); - delta = skb->end - skb->tail; - if (is_vmalloc_addr(skb->head) || delta * 2 < skb->truesize) - return skb; - - if (skb_shared(skb)) { - struct sk_buff *nskb = skb_clone(skb, allocation); - if (!nskb) - return skb; - consume_skb(skb); - skb = nskb; - } - - if (!pskb_expand_head(skb, 0, -delta, allocation)) - skb->truesize -= delta; - return skb; } @@ -2428,7 +2411,8 @@ { int err; - err = rhashtable_walk_init(&nl_table[iter->link].hash, &iter->hti); + err = rhashtable_walk_init(&nl_table[iter->link].hash, + &iter->hti, GFP_KERNEL); if (err) { iter->link = MAX_LINKS; return err;