diff options
author | Felix Fietkau <nbd@nbd.name> | 2019-08-12 12:24:06 +0200 |
---|---|---|
committer | Felix Fietkau <nbd@nbd.name> | 2019-08-12 12:27:06 +0200 |
commit | 7ec092e64125b920aee6d1767dacea3f61b2fa6f (patch) | |
tree | 8344335456c0a79dfea092be51ed23233f709538 /target/linux/generic | |
parent | 9861050b85e5381c93d73ffdbc24c130400e0fb8 (diff) | |
download | upstream-7ec092e64125b920aee6d1767dacea3f61b2fa6f.tar.gz upstream-7ec092e64125b920aee6d1767dacea3f61b2fa6f.tar.bz2 upstream-7ec092e64125b920aee6d1767dacea3f61b2fa6f.zip |
Revert faulty tree push
Revert "mac80211: add new minstrel_ht patches to improve probing on mt76x2" (9861050b85e5381c93d73ffdbc24c130400e0fb8)
Revert "kernel: use bulk free in kfree_skb_list to improve performance" (98b654de2e7502507b31f0fb82befbb48f9c8542)
Revert "ramips: add preliminary support for WIO ONE" (085141dc5ba5e763e1bf4c1a2fd6957160810ccc)
Revert "ramips: add preliminary support for SGE AP-MTKH7-0006 developer board" (b1db6d0539511f60bf65fbde28b16afa31180e34)
Revert "build: use config.site generated by autoconf-lean, drop hardcoded sitefiles" (363ce4329d4f6c00b4a7cb83dd1821fafc0d40ad)
Revert "toolchain: add autoconf-lean" (fdb30eed03ae56cd87078b64d9b2fac00799e783)
Revert "build: allow overriding the filename on the remote server when downloading" (6fa0e07758524eddf20c9b66dfcb55c490e1961e)
Signed-off-by: Felix Fietkau <nbd@nbd.name>
Diffstat (limited to 'target/linux/generic')
-rw-r--r-- | target/linux/generic/pending-4.14/650-net-use-bulk-free-in-kfree_skb_list.patch | 61 | ||||
-rw-r--r-- | target/linux/generic/pending-4.19/650-net-use-bulk-free-in-kfree_skb_list.patch | 61 |
2 files changed, 0 insertions, 122 deletions
diff --git a/target/linux/generic/pending-4.14/650-net-use-bulk-free-in-kfree_skb_list.patch b/target/linux/generic/pending-4.14/650-net-use-bulk-free-in-kfree_skb_list.patch deleted file mode 100644 index 1d1a6433d9..0000000000 --- a/target/linux/generic/pending-4.14/650-net-use-bulk-free-in-kfree_skb_list.patch +++ /dev/null @@ -1,61 +0,0 @@ -From: Felix Fietkau <nbd@nbd.name> -Date: Sat, 23 Mar 2019 18:26:10 +0100 -Subject: [PATCH] net: use bulk free in kfree_skb_list - -Since we're freeing multiple skbs, we might as well use bulk free to save a -few cycles. Use the same conditions for bulk free as in napi_consume_skb. - -Signed-off-by: Felix Fietkau <nbd@nbd.name> ---- - ---- a/net/core/skbuff.c -+++ b/net/core/skbuff.c -@@ -666,12 +666,44 @@ EXPORT_SYMBOL(kfree_skb); - - void kfree_skb_list(struct sk_buff *segs) - { -- while (segs) { -- struct sk_buff *next = segs->next; -+ struct sk_buff *next = segs; -+ void *skbs[16]; -+ int n_skbs = 0; - -- kfree_skb(segs); -- segs = next; -+ while ((segs = next) != NULL) { -+ next = segs->next; -+ -+ if (segs->fclone != SKB_FCLONE_UNAVAILABLE) { -+ kfree_skb(segs); -+ continue; -+ } -+ -+ if (!skb_unref(segs)) -+ continue; -+ -+ trace_kfree_skb(segs, __builtin_return_address(0)); -+ -+ /* drop skb->head and call any destructors for packet */ -+ skb_release_all(segs); -+ -+#ifdef CONFIG_SLUB -+ /* SLUB writes into objects when freeing */ -+ prefetchw(segs); -+#endif -+ -+ skbs[n_skbs++] = segs; -+ -+ if (n_skbs < ARRAY_SIZE(skbs)) -+ continue; -+ -+ kmem_cache_free_bulk(skbuff_head_cache, n_skbs, skbs); -+ n_skbs = 0; - } -+ -+ if (!n_skbs) -+ return; -+ -+ kmem_cache_free_bulk(skbuff_head_cache, n_skbs, skbs); - } - EXPORT_SYMBOL(kfree_skb_list); - diff --git a/target/linux/generic/pending-4.19/650-net-use-bulk-free-in-kfree_skb_list.patch b/target/linux/generic/pending-4.19/650-net-use-bulk-free-in-kfree_skb_list.patch deleted file mode 100644 index 1d1a6433d9..0000000000 --- a/target/linux/generic/pending-4.19/650-net-use-bulk-free-in-kfree_skb_list.patch +++ /dev/null @@ -1,61 +0,0 @@ -From: Felix Fietkau <nbd@nbd.name> -Date: Sat, 23 Mar 2019 18:26:10 +0100 -Subject: [PATCH] net: use bulk free in kfree_skb_list - -Since we're freeing multiple skbs, we might as well use bulk free to save a -few cycles. Use the same conditions for bulk free as in napi_consume_skb. - -Signed-off-by: Felix Fietkau <nbd@nbd.name> ---- - ---- a/net/core/skbuff.c -+++ b/net/core/skbuff.c -@@ -666,12 +666,44 @@ EXPORT_SYMBOL(kfree_skb); - - void kfree_skb_list(struct sk_buff *segs) - { -- while (segs) { -- struct sk_buff *next = segs->next; -+ struct sk_buff *next = segs; -+ void *skbs[16]; -+ int n_skbs = 0; - -- kfree_skb(segs); -- segs = next; -+ while ((segs = next) != NULL) { -+ next = segs->next; -+ -+ if (segs->fclone != SKB_FCLONE_UNAVAILABLE) { -+ kfree_skb(segs); -+ continue; -+ } -+ -+ if (!skb_unref(segs)) -+ continue; -+ -+ trace_kfree_skb(segs, __builtin_return_address(0)); -+ -+ /* drop skb->head and call any destructors for packet */ -+ skb_release_all(segs); -+ -+#ifdef CONFIG_SLUB -+ /* SLUB writes into objects when freeing */ -+ prefetchw(segs); -+#endif -+ -+ skbs[n_skbs++] = segs; -+ -+ if (n_skbs < ARRAY_SIZE(skbs)) -+ continue; -+ -+ kmem_cache_free_bulk(skbuff_head_cache, n_skbs, skbs); -+ n_skbs = 0; - } -+ -+ if (!n_skbs) -+ return; -+ -+ kmem_cache_free_bulk(skbuff_head_cache, n_skbs, skbs); - } - EXPORT_SYMBOL(kfree_skb_list); - |