From: Greg Kroah-Hartman Date: Mon, 19 Jun 2023 06:50:32 +0000 (+0200) Subject: 4.14-stable patches X-Git-Tag: v4.14.319~27 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=aff6bfc0e29c67f00ac864147e244f8960596788;p=thirdparty%2Fkernel%2Fstable-queue.git 4.14-stable patches added patches: neighbour-delete-neigh_lookup_nodev-as-not-used.patch neighbour-remove-unused-inline-function-neigh_key_eq16.patch net-remove-decnet-leftovers-from-flow.h.patch --- diff --git a/queue-4.14/neighbour-delete-neigh_lookup_nodev-as-not-used.patch b/queue-4.14/neighbour-delete-neigh_lookup_nodev-as-not-used.patch new file mode 100644 index 00000000000..e1315caa113 --- /dev/null +++ b/queue-4.14/neighbour-delete-neigh_lookup_nodev-as-not-used.patch @@ -0,0 +1,75 @@ +From 76b9bf965c98c9b53ef7420b3b11438dbd764f92 Mon Sep 17 00:00:00 2001 +From: Leon Romanovsky +Date: Wed, 8 Mar 2023 11:23:13 +0200 +Subject: neighbour: delete neigh_lookup_nodev as not used + +From: Leon Romanovsky + +commit 76b9bf965c98c9b53ef7420b3b11438dbd764f92 upstream. + +neigh_lookup_nodev isn't used in the kernel after removal +of DECnet. So let's remove it. + +Fixes: 1202cdd66531 ("Remove DECnet support from kernel") +Signed-off-by: Leon Romanovsky +Reviewed-by: Eric Dumazet +Reviewed-by: Nikolay Aleksandrov +Link: https://lore.kernel.org/r/eb5656200d7964b2d177a36b77efa3c597d6d72d.1678267343.git.leonro@nvidia.com +Signed-off-by: Jakub Kicinski +Signed-off-by: Greg Kroah-Hartman +--- + include/net/neighbour.h | 2 -- + net/core/neighbour.c | 31 ------------------------------- + 2 files changed, 33 deletions(-) + +--- a/include/net/neighbour.h ++++ b/include/net/neighbour.h +@@ -299,8 +299,6 @@ void neigh_table_init(int index, struct + int neigh_table_clear(int index, struct neigh_table *tbl); + struct neighbour *neigh_lookup(struct neigh_table *tbl, const void *pkey, + struct net_device *dev); +-struct neighbour *neigh_lookup_nodev(struct neigh_table *tbl, struct net *net, +- const void *pkey); + struct neighbour *__neigh_create(struct neigh_table *tbl, const void *pkey, + struct net_device *dev, bool want_ref); + static inline struct neighbour *neigh_create(struct neigh_table *tbl, +--- a/net/core/neighbour.c ++++ b/net/core/neighbour.c +@@ -474,37 +474,6 @@ struct neighbour *neigh_lookup(struct ne + } + EXPORT_SYMBOL(neigh_lookup); + +-struct neighbour *neigh_lookup_nodev(struct neigh_table *tbl, struct net *net, +- const void *pkey) +-{ +- struct neighbour *n; +- int key_len = tbl->key_len; +- u32 hash_val; +- struct neigh_hash_table *nht; +- +- NEIGH_CACHE_STAT_INC(tbl, lookups); +- +- rcu_read_lock_bh(); +- nht = rcu_dereference_bh(tbl->nht); +- hash_val = tbl->hash(pkey, NULL, nht->hash_rnd) >> (32 - nht->hash_shift); +- +- for (n = rcu_dereference_bh(nht->hash_buckets[hash_val]); +- n != NULL; +- n = rcu_dereference_bh(n->next)) { +- if (!memcmp(n->primary_key, pkey, key_len) && +- net_eq(dev_net(n->dev), net)) { +- if (!refcount_inc_not_zero(&n->refcnt)) +- n = NULL; +- NEIGH_CACHE_STAT_INC(tbl, hits); +- break; +- } +- } +- +- rcu_read_unlock_bh(); +- return n; +-} +-EXPORT_SYMBOL(neigh_lookup_nodev); +- + struct neighbour *__neigh_create(struct neigh_table *tbl, const void *pkey, + struct net_device *dev, bool want_ref) + { diff --git a/queue-4.14/neighbour-remove-unused-inline-function-neigh_key_eq16.patch b/queue-4.14/neighbour-remove-unused-inline-function-neigh_key_eq16.patch new file mode 100644 index 00000000000..3049a21bc7c --- /dev/null +++ b/queue-4.14/neighbour-remove-unused-inline-function-neigh_key_eq16.patch @@ -0,0 +1,34 @@ +From c8f01a4a54473f88f8cc0d9046ec9eb5a99815d5 Mon Sep 17 00:00:00 2001 +From: Gaosheng Cui +Date: Thu, 22 Sep 2022 16:38:55 +0800 +Subject: neighbour: Remove unused inline function neigh_key_eq16() + +From: Gaosheng Cui + +commit c8f01a4a54473f88f8cc0d9046ec9eb5a99815d5 upstream. + +All uses of neigh_key_eq16() have +been removed since commit 1202cdd66531 ("Remove DECnet support +from kernel"), so remove it. + +Signed-off-by: Gaosheng Cui +Signed-off-by: Jakub Kicinski +Signed-off-by: Greg Kroah-Hartman +--- + include/net/neighbour.h | 5 ----- + 1 file changed, 5 deletions(-) + +--- a/include/net/neighbour.h ++++ b/include/net/neighbour.h +@@ -250,11 +250,6 @@ static inline void *neighbour_priv(const + #define NEIGH_UPDATE_F_ADMIN 0x80000000 + + +-static inline bool neigh_key_eq16(const struct neighbour *n, const void *pkey) +-{ +- return *(const u16 *)n->primary_key == *(const u16 *)pkey; +-} +- + static inline bool neigh_key_eq32(const struct neighbour *n, const void *pkey) + { + return *(const u32 *)n->primary_key == *(const u32 *)pkey; diff --git a/queue-4.14/net-remove-decnet-leftovers-from-flow.h.patch b/queue-4.14/net-remove-decnet-leftovers-from-flow.h.patch new file mode 100644 index 00000000000..75f540ea940 --- /dev/null +++ b/queue-4.14/net-remove-decnet-leftovers-from-flow.h.patch @@ -0,0 +1,76 @@ +From 9bc61c04ff6cce6a3756b86e6b34914f7b39d734 Mon Sep 17 00:00:00 2001 +From: Guillaume Nault +Date: Fri, 30 Sep 2022 16:37:30 +0200 +Subject: net: Remove DECnet leftovers from flow.h. + +From: Guillaume Nault + +commit 9bc61c04ff6cce6a3756b86e6b34914f7b39d734 upstream. + +DECnet was removed by commit 1202cdd66531 ("Remove DECnet support from +kernel"). Let's also revome its flow structure. + +Compile-tested only (allmodconfig). + +Signed-off-by: Guillaume Nault +Acked-by: Stephen Hemminger +Signed-off-by: David S. Miller +Signed-off-by: Greg Kroah-Hartman +--- + include/net/flow.h | 26 -------------------------- + 1 file changed, 26 deletions(-) + +--- a/include/net/flow.h ++++ b/include/net/flow.h +@@ -53,11 +53,6 @@ union flowi_uli { + __u8 code; + } icmpt; + +- struct { +- __le16 dport; +- __le16 sport; +- } dnports; +- + __be32 spi; + __be32 gre_key; + +@@ -153,27 +148,11 @@ struct flowi6 { + __u32 mp_hash; + } __attribute__((__aligned__(BITS_PER_LONG/8))); + +-struct flowidn { +- struct flowi_common __fl_common; +-#define flowidn_oif __fl_common.flowic_oif +-#define flowidn_iif __fl_common.flowic_iif +-#define flowidn_mark __fl_common.flowic_mark +-#define flowidn_scope __fl_common.flowic_scope +-#define flowidn_proto __fl_common.flowic_proto +-#define flowidn_flags __fl_common.flowic_flags +- __le16 daddr; +- __le16 saddr; +- union flowi_uli uli; +-#define fld_sport uli.ports.sport +-#define fld_dport uli.ports.dport +-} __attribute__((__aligned__(BITS_PER_LONG/8))); +- + struct flowi { + union { + struct flowi_common __fl_common; + struct flowi4 ip4; + struct flowi6 ip6; +- struct flowidn dn; + } u; + #define flowi_oif u.__fl_common.flowic_oif + #define flowi_iif u.__fl_common.flowic_iif +@@ -197,11 +176,6 @@ static inline struct flowi *flowi6_to_fl + return container_of(fl6, struct flowi, u.ip6); + } + +-static inline struct flowi *flowidn_to_flowi(struct flowidn *fldn) +-{ +- return container_of(fldn, struct flowi, u.dn); +-} +- + typedef unsigned long flow_compare_t; + + static inline unsigned int flow_key_size(u16 family) diff --git a/queue-4.14/series b/queue-4.14/series index c616b24860f..ad1752ad664 100644 --- a/queue-4.14/series +++ b/queue-4.14/series @@ -26,3 +26,6 @@ drm-nouveau-dp-check-for-null-nv_connector-native_mo.patch net-lapbether-only-support-ethernet-devices.patch net-tipc-resize-nlattr-array-to-correct-size.patch selftests-ptp-fix-timestamp-printf-format-for-ptp_sy.patch +neighbour-remove-unused-inline-function-neigh_key_eq16.patch +net-remove-decnet-leftovers-from-flow.h.patch +neighbour-delete-neigh_lookup_nodev-as-not-used.patch