summaryrefslogtreecommitdiffstats
path: root/debian/patches-rt/0197-net-Use-skbufhead-with-raw-lock.patch
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-05-08 04:17:46 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-05-08 04:17:58 +0000
commitbefd7d6833514b1396e87fdff689ce8be3ad4ab1 (patch)
tree279aa396beb362a9f4c449a1fb0ed5062c2444d3 /debian/patches-rt/0197-net-Use-skbufhead-with-raw-lock.patch
parentMerging upstream version 4.19.289. (diff)
downloadlinux-befd7d6833514b1396e87fdff689ce8be3ad4ab1.tar.xz
linux-befd7d6833514b1396e87fdff689ce8be3ad4ab1.zip
Merging debian version 4.19.289-1.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to '')
-rw-r--r--debian/patches-rt/0197-net-Use-skbufhead-with-raw-lock.patch14
1 files changed, 7 insertions, 7 deletions
diff --git a/debian/patches-rt/0197-net-Use-skbufhead-with-raw-lock.patch b/debian/patches-rt/0197-net-Use-skbufhead-with-raw-lock.patch
index 5754fc715..9ea8b1ddc 100644
--- a/debian/patches-rt/0197-net-Use-skbufhead-with-raw-lock.patch
+++ b/debian/patches-rt/0197-net-Use-skbufhead-with-raw-lock.patch
@@ -1,7 +1,7 @@
From: Thomas Gleixner <tglx@linutronix.de>
Date: Tue, 12 Jul 2011 15:38:34 +0200
Subject: [PATCH 197/353] net: Use skbufhead with raw lock
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=fa140c5c4b497581079c3170f383502ced597296
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=128030e2370b7b2d2b5607a2e95202392ae79eaa
Use the rps lock as rawlock so we can keep irq-off regions. It looks low
latency. However we can't kfree() from this context therefore we defer this
@@ -52,7 +52,7 @@ index f97734f34746..3ede4f0eac10 100644
struct lock_class_key *class)
{
diff --git a/net/core/dev.c b/net/core/dev.c
-index d03162a1828b..1f73badebddc 100644
+index 70a3cebdac89..7bce4581d6f0 100644
--- a/net/core/dev.c
+++ b/net/core/dev.c
@@ -219,14 +219,14 @@ static inline struct hlist_head *dev_index_hash(struct net *net, int ifindex)
@@ -72,7 +72,7 @@ index d03162a1828b..1f73badebddc 100644
#endif
}
-@@ -5860,7 +5860,9 @@ static int process_backlog(struct napi_struct *napi, int quota)
+@@ -5862,7 +5862,9 @@ static int process_backlog(struct napi_struct *napi, int quota)
while (again) {
struct sk_buff *skb;
@@ -82,7 +82,7 @@ index d03162a1828b..1f73badebddc 100644
rcu_read_lock();
__netif_receive_skb(skb);
rcu_read_unlock();
-@@ -5868,9 +5870,9 @@ static int process_backlog(struct napi_struct *napi, int quota)
+@@ -5870,9 +5872,9 @@ static int process_backlog(struct napi_struct *napi, int quota)
if (++work >= quota)
return work;
@@ -93,7 +93,7 @@ index d03162a1828b..1f73badebddc 100644
rps_lock(sd);
if (skb_queue_empty(&sd->input_pkt_queue)) {
/*
-@@ -6343,13 +6345,21 @@ static __latent_entropy void net_rx_action(struct softirq_action *h)
+@@ -6345,13 +6347,21 @@ static __latent_entropy void net_rx_action(struct softirq_action *h)
unsigned long time_limit = jiffies +
usecs_to_jiffies(READ_ONCE(netdev_budget_usecs));
int budget = READ_ONCE(netdev_budget);
@@ -115,7 +115,7 @@ index d03162a1828b..1f73badebddc 100644
for (;;) {
struct napi_struct *n;
-@@ -9547,10 +9557,13 @@ static int dev_cpu_dead(unsigned int oldcpu)
+@@ -9549,10 +9559,13 @@ static int dev_cpu_dead(unsigned int oldcpu)
netif_rx_ni(skb);
input_queue_head_incr(oldsd);
}
@@ -130,7 +130,7 @@ index d03162a1828b..1f73badebddc 100644
return 0;
}
-@@ -9861,8 +9874,9 @@ static int __init net_dev_init(void)
+@@ -9863,8 +9876,9 @@ static int __init net_dev_init(void)
INIT_WORK(flush, flush_backlog);