From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
To: stable@vger.kernel.org, netfilter-devel@vger.kernel.org
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
patches@lists.linux.dev, Pablo Neira Ayuso <pablo@netfilter.org>
Subject: [PATCH 4.19 168/213] netfilter: nf_tables: GC transaction API to avoid race with control plane
Date: Thu, 13 Jun 2024 13:33:36 +0200 [thread overview]
Message-ID: <20240613113234.464096393@linuxfoundation.org> (raw)
In-Reply-To: <20240613113227.969123070@linuxfoundation.org>
4.19-stable review patch. If anyone has any objections, please let me know.
------------------
From: Pablo Neira Ayuso <pablo@netfilter.org>
commit 5f68718b34a531a556f2f50300ead2862278da26 upstream.
[ this includes
8357bc946a2a ("netfilter: nf_tables: use correct lock to protect gc_list") ]
The set types rhashtable and rbtree use a GC worker to reclaim memory.
>From system work queue, in periodic intervals, a scan of the table is
done.
The major caveat here is that the nft transaction mutex is not held.
This causes a race between control plane and GC when they attempt to
delete the same element.
We cannot grab the netlink mutex from the work queue, because the
control plane has to wait for the GC work queue in case the set is to be
removed, so we get following deadlock:
cpu 1 cpu2
GC work transaction comes in , lock nft mutex
`acquire nft mutex // BLOCKS
transaction asks to remove the set
set destruction calls cancel_work_sync()
cancel_work_sync will now block forever, because it is waiting for the
mutex the caller already owns.
This patch adds a new API that deals with garbage collection in two
steps:
1) Lockless GC of expired elements sets on the NFT_SET_ELEM_DEAD_BIT
so they are not visible via lookup. Annotate current GC sequence in
the GC transaction. Enqueue GC transaction work as soon as it is
full. If ruleset is updated, then GC transaction is aborted and
retried later.
2) GC work grabs the mutex. If GC sequence has changed then this GC
transaction lost race with control plane, abort it as it contains
stale references to objects and let GC try again later. If the
ruleset is intact, then this GC transaction deactivates and removes
the elements and it uses call_rcu() to destroy elements.
Note that no elements are removed from GC lockless path, the _DEAD bit
is set and pointers are collected. GC catchall does not remove the
elements anymore too. There is a new set->dead flag that is set on to
abort the GC transaction to deal with set->ops->destroy() path which
removes the remaining elements in the set from commit_release, where no
mutex is held.
To deal with GC when mutex is held, which allows safe deactivate and
removal, add sync GC API which releases the set element object via
call_rcu(). This is used by rbtree and pipapo backends which also
perform garbage collection from control plane path.
Since element removal from sets can happen from control plane and
element garbage collection/timeout, it is necessary to keep the set
structure alive until all elements have been deactivated and destroyed.
We cannot do a cancel_work_sync or flush_work in nft_set_destroy because
its called with the transaction mutex held, but the aforementioned async
work queue might be blocked on the very mutex that nft_set_destroy()
callchain is sitting on.
This gives us the choice of ABBA deadlock or UaF.
To avoid both, add set->refs refcount_t member. The GC API can then
increment the set refcount and release it once the elements have been
free'd.
Set backends are adapted to use the GC transaction API in a follow up
patch entitled:
("netfilter: nf_tables: use gc transaction API in set backends")
This is joint work with Florian Westphal.
Fixes: cfed7e1b1f8e ("netfilter: nf_tables: add set garbage collection helpers")
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
include/net/netfilter/nf_tables.h | 61 ++++++++++
net/netfilter/nf_tables_api.c | 225 ++++++++++++++++++++++++++++++++++++--
2 files changed, 276 insertions(+), 10 deletions(-)
--- a/include/net/netfilter/nf_tables.h
+++ b/include/net/netfilter/nf_tables.h
@@ -380,6 +380,7 @@ void nft_unregister_set(struct nft_set_t
*
* @list: table set list node
* @bindings: list of set bindings
+ * @refs: internal refcounting for async set destruction
* @table: table this set belongs to
* @net: netnamespace this set belongs to
* @name: name of the set
@@ -406,6 +407,7 @@ void nft_unregister_set(struct nft_set_t
struct nft_set {
struct list_head list;
struct list_head bindings;
+ refcount_t refs;
struct nft_table *table;
possible_net_t net;
char *name;
@@ -424,7 +426,8 @@ struct nft_set {
unsigned char *udata;
/* runtime data below here */
const struct nft_set_ops *ops ____cacheline_aligned;
- u16 flags:14,
+ u16 flags:13,
+ dead:1,
genmask:2;
u8 klen;
u8 dlen;
@@ -1346,6 +1349,32 @@ static inline void nft_set_elem_clear_bu
clear_bit(NFT_SET_ELEM_BUSY_BIT, word);
}
+#define NFT_SET_ELEM_DEAD_MASK (1 << 3)
+
+#if defined(__LITTLE_ENDIAN_BITFIELD)
+#define NFT_SET_ELEM_DEAD_BIT 3
+#elif defined(__BIG_ENDIAN_BITFIELD)
+#define NFT_SET_ELEM_DEAD_BIT (BITS_PER_LONG - BITS_PER_BYTE + 3)
+#else
+#error
+#endif
+
+static inline void nft_set_elem_dead(struct nft_set_ext *ext)
+{
+ unsigned long *word = (unsigned long *)ext;
+
+ BUILD_BUG_ON(offsetof(struct nft_set_ext, genmask) != 0);
+ set_bit(NFT_SET_ELEM_DEAD_BIT, word);
+}
+
+static inline int nft_set_elem_is_dead(const struct nft_set_ext *ext)
+{
+ unsigned long *word = (unsigned long *)ext;
+
+ BUILD_BUG_ON(offsetof(struct nft_set_ext, genmask) != 0);
+ return test_bit(NFT_SET_ELEM_DEAD_BIT, word);
+}
+
/**
* struct nft_trans - nf_tables object update in transaction
*
@@ -1439,6 +1468,35 @@ struct nft_trans_flowtable {
#define nft_trans_flowtable(trans) \
(((struct nft_trans_flowtable *)trans->data)->flowtable)
+#define NFT_TRANS_GC_BATCHCOUNT 256
+
+struct nft_trans_gc {
+ struct list_head list;
+ struct net *net;
+ struct nft_set *set;
+ u32 seq;
+ u8 count;
+ void *priv[NFT_TRANS_GC_BATCHCOUNT];
+ struct rcu_head rcu;
+};
+
+struct nft_trans_gc *nft_trans_gc_alloc(struct nft_set *set,
+ unsigned int gc_seq, gfp_t gfp);
+void nft_trans_gc_destroy(struct nft_trans_gc *trans);
+
+struct nft_trans_gc *nft_trans_gc_queue_async(struct nft_trans_gc *gc,
+ unsigned int gc_seq, gfp_t gfp);
+void nft_trans_gc_queue_async_done(struct nft_trans_gc *gc);
+
+struct nft_trans_gc *nft_trans_gc_queue_sync(struct nft_trans_gc *gc, gfp_t gfp);
+void nft_trans_gc_queue_sync_done(struct nft_trans_gc *trans);
+
+void nft_trans_gc_elem_add(struct nft_trans_gc *gc, void *priv);
+
+void nft_setelem_data_deactivate(const struct net *net,
+ const struct nft_set *set,
+ struct nft_set_elem *elem);
+
int __init nft_chain_filter_init(void);
void nft_chain_filter_fini(void);
@@ -1451,6 +1509,7 @@ struct nftables_pernet {
struct mutex commit_mutex;
unsigned int base_seq;
u8 validate_state;
+ unsigned int gc_seq;
};
#endif /* _NET_NF_TABLES_H */
--- a/net/netfilter/nf_tables_api.c
+++ b/net/netfilter/nf_tables_api.c
@@ -29,10 +29,13 @@
#define NFT_SET_MAX_ANONLEN 16
unsigned int nf_tables_net_id __read_mostly;
+EXPORT_SYMBOL_GPL(nf_tables_net_id);
static LIST_HEAD(nf_tables_expressions);
static LIST_HEAD(nf_tables_objects);
static LIST_HEAD(nf_tables_flowtables);
+static LIST_HEAD(nf_tables_gc_list);
+static DEFINE_SPINLOCK(nf_tables_gc_list_lock);
static u64 table_handle;
enum {
@@ -73,6 +76,9 @@ static void nft_validate_state_update(st
nft_net->validate_state = new_validate_state;
}
+static void nft_trans_gc_work(struct work_struct *work);
+static DECLARE_WORK(trans_gc_work, nft_trans_gc_work);
+
static void nft_ctx_init(struct nft_ctx *ctx,
struct net *net,
const struct sk_buff *skb,
@@ -388,10 +394,6 @@ static int nft_trans_set_add(const struc
return 0;
}
-static void nft_setelem_data_deactivate(const struct net *net,
- const struct nft_set *set,
- struct nft_set_elem *elem);
-
static int nft_mapelem_deactivate(const struct nft_ctx *ctx,
struct nft_set *set,
const struct nft_set_iter *iter,
@@ -3739,6 +3741,7 @@ static int nf_tables_newset(struct net *
}
INIT_LIST_HEAD(&set->bindings);
+ refcount_set(&set->refs, 1);
set->table = table;
write_pnet(&set->net, net);
set->ops = ops;
@@ -3781,6 +3784,14 @@ err1:
return err;
}
+static void nft_set_put(struct nft_set *set)
+{
+ if (refcount_dec_and_test(&set->refs)) {
+ kfree(set->name);
+ kvfree(set);
+ }
+}
+
static void nft_set_destroy(const struct nft_ctx *ctx, struct nft_set *set)
{
if (WARN_ON(set->use > 0))
@@ -3788,8 +3799,7 @@ static void nft_set_destroy(const struct
set->ops->destroy(ctx, set);
module_put(to_set_type(set->ops)->owner);
- kfree(set->name);
- kvfree(set);
+ nft_set_put(set);
}
static int nf_tables_delset(struct net *net, struct sock *nlsk,
@@ -4888,9 +4898,9 @@ static void nft_setelem_data_activate(co
nft_use_inc_restore(&(*nft_set_ext_obj(ext))->use);
}
-static void nft_setelem_data_deactivate(const struct net *net,
- const struct nft_set *set,
- struct nft_set_elem *elem)
+void nft_setelem_data_deactivate(const struct net *net,
+ const struct nft_set *set,
+ struct nft_set_elem *elem)
{
const struct nft_set_ext *ext = nft_set_elem_ext(set, elem->priv);
@@ -4899,6 +4909,7 @@ static void nft_setelem_data_deactivate(
if (nft_set_ext_exists(ext, NFT_SET_EXT_OBJREF))
nft_use_dec(&(*nft_set_ext_obj(ext))->use);
}
+EXPORT_SYMBOL_GPL(nft_setelem_data_deactivate);
static int nft_del_setelem(struct nft_ctx *ctx, struct nft_set *set,
const struct nlattr *attr)
@@ -6732,6 +6743,186 @@ static void nft_chain_del(struct nft_cha
list_del_rcu(&chain->list);
}
+static void nft_trans_gc_setelem_remove(struct nft_ctx *ctx,
+ struct nft_trans_gc *trans)
+{
+ void **priv = trans->priv;
+ unsigned int i;
+
+ for (i = 0; i < trans->count; i++) {
+ struct nft_set_elem elem = {
+ .priv = priv[i],
+ };
+
+ nft_setelem_data_deactivate(ctx->net, trans->set, &elem);
+ trans->set->ops->remove(trans->net, trans->set, &elem);
+ }
+}
+
+void nft_trans_gc_destroy(struct nft_trans_gc *trans)
+{
+ nft_set_put(trans->set);
+ put_net(trans->net);
+ kfree(trans);
+}
+EXPORT_SYMBOL_GPL(nft_trans_gc_destroy);
+
+static void nft_trans_gc_trans_free(struct rcu_head *rcu)
+{
+ struct nft_set_elem elem = {};
+ struct nft_trans_gc *trans;
+ struct nft_ctx ctx = {};
+ unsigned int i;
+
+ trans = container_of(rcu, struct nft_trans_gc, rcu);
+ ctx.net = read_pnet(&trans->set->net);
+
+ for (i = 0; i < trans->count; i++) {
+ elem.priv = trans->priv[i];
+ atomic_dec(&trans->set->nelems);
+
+ nf_tables_set_elem_destroy(&ctx, trans->set, elem.priv);
+ }
+
+ nft_trans_gc_destroy(trans);
+}
+
+static bool nft_trans_gc_work_done(struct nft_trans_gc *trans)
+{
+ struct nftables_pernet *nft_net;
+ struct nft_ctx ctx = {};
+
+ nft_net = net_generic(trans->net, nf_tables_net_id);
+
+ mutex_lock(&nft_net->commit_mutex);
+
+ /* Check for race with transaction, otherwise this batch refers to
+ * stale objects that might not be there anymore. Skip transaction if
+ * set has been destroyed from control plane transaction in case gc
+ * worker loses race.
+ */
+ if (READ_ONCE(nft_net->gc_seq) != trans->seq || trans->set->dead) {
+ mutex_unlock(&nft_net->commit_mutex);
+ return false;
+ }
+
+ ctx.net = trans->net;
+ ctx.table = trans->set->table;
+
+ nft_trans_gc_setelem_remove(&ctx, trans);
+ mutex_unlock(&nft_net->commit_mutex);
+
+ return true;
+}
+
+static void nft_trans_gc_work(struct work_struct *work)
+{
+ struct nft_trans_gc *trans, *next;
+ LIST_HEAD(trans_gc_list);
+
+ spin_lock(&nf_tables_gc_list_lock);
+ list_splice_init(&nf_tables_gc_list, &trans_gc_list);
+ spin_unlock(&nf_tables_gc_list_lock);
+
+ list_for_each_entry_safe(trans, next, &trans_gc_list, list) {
+ list_del(&trans->list);
+ if (!nft_trans_gc_work_done(trans)) {
+ nft_trans_gc_destroy(trans);
+ continue;
+ }
+ call_rcu(&trans->rcu, nft_trans_gc_trans_free);
+ }
+}
+
+struct nft_trans_gc *nft_trans_gc_alloc(struct nft_set *set,
+ unsigned int gc_seq, gfp_t gfp)
+{
+ struct net *net = read_pnet(&set->net);
+ struct nft_trans_gc *trans;
+
+ trans = kzalloc(sizeof(*trans), gfp);
+ if (!trans)
+ return NULL;
+
+ refcount_inc(&set->refs);
+ trans->set = set;
+ trans->net = get_net(net);
+ trans->seq = gc_seq;
+
+ return trans;
+}
+EXPORT_SYMBOL_GPL(nft_trans_gc_alloc);
+
+void nft_trans_gc_elem_add(struct nft_trans_gc *trans, void *priv)
+{
+ trans->priv[trans->count++] = priv;
+}
+EXPORT_SYMBOL_GPL(nft_trans_gc_elem_add);
+
+static void nft_trans_gc_queue_work(struct nft_trans_gc *trans)
+{
+ spin_lock(&nf_tables_gc_list_lock);
+ list_add_tail(&trans->list, &nf_tables_gc_list);
+ spin_unlock(&nf_tables_gc_list_lock);
+
+ schedule_work(&trans_gc_work);
+}
+
+static int nft_trans_gc_space(struct nft_trans_gc *trans)
+{
+ return NFT_TRANS_GC_BATCHCOUNT - trans->count;
+}
+
+struct nft_trans_gc *nft_trans_gc_queue_async(struct nft_trans_gc *gc,
+ unsigned int gc_seq, gfp_t gfp)
+{
+ if (nft_trans_gc_space(gc))
+ return gc;
+
+ nft_trans_gc_queue_work(gc);
+
+ return nft_trans_gc_alloc(gc->set, gc_seq, gfp);
+}
+EXPORT_SYMBOL_GPL(nft_trans_gc_queue_async);
+
+void nft_trans_gc_queue_async_done(struct nft_trans_gc *trans)
+{
+ if (trans->count == 0) {
+ nft_trans_gc_destroy(trans);
+ return;
+ }
+
+ nft_trans_gc_queue_work(trans);
+}
+EXPORT_SYMBOL_GPL(nft_trans_gc_queue_async_done);
+
+struct nft_trans_gc *nft_trans_gc_queue_sync(struct nft_trans_gc *gc, gfp_t gfp)
+{
+ if (WARN_ON_ONCE(!lockdep_commit_lock_is_held(gc->net)))
+ return NULL;
+
+ if (nft_trans_gc_space(gc))
+ return gc;
+
+ call_rcu(&gc->rcu, nft_trans_gc_trans_free);
+
+ return nft_trans_gc_alloc(gc->set, 0, gfp);
+}
+EXPORT_SYMBOL_GPL(nft_trans_gc_queue_sync);
+
+void nft_trans_gc_queue_sync_done(struct nft_trans_gc *trans)
+{
+ WARN_ON_ONCE(!lockdep_commit_lock_is_held(trans->net));
+
+ if (trans->count == 0) {
+ nft_trans_gc_destroy(trans);
+ return;
+ }
+
+ call_rcu(&trans->rcu, nft_trans_gc_trans_free);
+}
+EXPORT_SYMBOL_GPL(nft_trans_gc_queue_sync_done);
+
static int nf_tables_commit(struct net *net, struct sk_buff *skb)
{
struct nftables_pernet *nft_net = net_generic(net, nf_tables_net_id);
@@ -6739,6 +6930,7 @@ static int nf_tables_commit(struct net *
struct nft_trans_elem *te;
struct nft_chain *chain;
struct nft_table *table;
+ unsigned int gc_seq;
list_for_each_entry(trans, &nft_net->binding_list, binding_list) {
switch (trans->msg_type) {
@@ -6785,6 +6977,10 @@ static int nf_tables_commit(struct net *
while (++nft_net->base_seq == 0)
;
+ /* Bump gc counter, it becomes odd, this is the busy mark. */
+ gc_seq = READ_ONCE(nft_net->gc_seq);
+ WRITE_ONCE(nft_net->gc_seq, ++gc_seq);
+
/* step 3. Start new generation, rules_gen_X now in use. */
net->nft.gencursor = nft_gencursor_next(net);
@@ -6855,6 +7051,7 @@ static int nf_tables_commit(struct net *
nft_trans_destroy(trans);
break;
case NFT_MSG_DELSET:
+ nft_trans_set(trans)->dead = 1;
list_del_rcu(&nft_trans_set(trans)->list);
nf_tables_set_notify(&trans->ctx, nft_trans_set(trans),
NFT_MSG_DELSET, GFP_KERNEL);
@@ -6909,6 +7106,8 @@ static int nf_tables_commit(struct net *
nf_tables_commit_release(net);
nf_tables_gen_notify(net, skb, NFT_MSG_NEWGEN);
+
+ WRITE_ONCE(nft_net->gc_seq, ++gc_seq);
mutex_unlock(&nft_net->commit_mutex);
return 0;
@@ -7715,6 +7914,7 @@ static int __net_init nf_tables_init_net
mutex_init(&nft_net->commit_mutex);
nft_net->base_seq = 1;
nft_net->validate_state = NFT_VALIDATE_SKIP;
+ nft_net->gc_seq = 0;
return 0;
}
@@ -7731,9 +7931,15 @@ static void __net_exit nf_tables_exit_ne
WARN_ON_ONCE(!list_empty(&nft_net->tables));
}
+static void nf_tables_exit_batch(struct list_head *net_exit_list)
+{
+ flush_work(&trans_gc_work);
+}
+
static struct pernet_operations nf_tables_net_ops = {
.init = nf_tables_init_net,
.exit = nf_tables_exit_net,
+ .exit_batch = nf_tables_exit_batch,
.id = &nf_tables_net_id,
.size = sizeof(struct nftables_pernet),
};
@@ -7781,6 +7987,7 @@ static void __exit nf_tables_module_exit
unregister_netdevice_notifier(&nf_tables_flowtable_notifier);
nft_chain_filter_fini();
unregister_pernet_subsys(&nf_tables_net_ops);
+ cancel_work_sync(&trans_gc_work);
rcu_barrier();
nf_tables_core_module_exit();
}
next prev parent reply other threads:[~2024-06-13 11:44 UTC|newest]
Thread overview: 228+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-06-13 11:30 [PATCH 4.19 000/213] 4.19.316-rc1 review Greg Kroah-Hartman
2024-06-13 11:30 ` [PATCH 4.19 001/213] x86/tsc: Trust initial offset in architectural TSC-adjust MSRs Greg Kroah-Hartman
2024-06-13 11:30 ` [PATCH 4.19 002/213] speakup: Fix sizeof() vs ARRAY_SIZE() bug Greg Kroah-Hartman
2024-06-13 11:30 ` [PATCH 4.19 003/213] ring-buffer: Fix a race between readers and resize checks Greg Kroah-Hartman
2024-06-13 11:30 ` [PATCH 4.19 004/213] net: smc91x: Fix m68k kernel compilation for ColdFire CPU Greg Kroah-Hartman
2024-06-13 11:30 ` [PATCH 4.19 005/213] nilfs2: fix unexpected freezing of nilfs_segctor_sync() Greg Kroah-Hartman
2024-06-13 11:30 ` [PATCH 4.19 006/213] nilfs2: fix potential hang in nilfs_detach_log_writer() Greg Kroah-Hartman
2024-06-13 11:30 ` [PATCH 4.19 007/213] tty: n_gsm: fix possible out-of-bounds in gsm0_receive() Greg Kroah-Hartman
2024-06-13 11:30 ` [PATCH 4.19 008/213] wifi: cfg80211: fix the order of arguments for trace events of the tx_rx_evt class Greg Kroah-Hartman
2024-06-13 11:30 ` [PATCH 4.19 009/213] net: usb: qmi_wwan: add Telit FN920C04 compositions Greg Kroah-Hartman
2024-06-13 11:30 ` [PATCH 4.19 010/213] drm/amd/display: Set color_mgmt_changed to true on unsuspend Greg Kroah-Hartman
2024-06-13 11:30 ` [PATCH 4.19 011/213] ASoC: rt5645: Fix the electric noise due to the CBJ contacts floating Greg Kroah-Hartman
2024-06-13 11:31 ` [PATCH 4.19 012/213] ASoC: dt-bindings: rt5645: add cbj sleeve gpio property Greg Kroah-Hartman
2024-06-13 11:31 ` [PATCH 4.19 013/213] ASoC: da7219-aad: fix usage of device_get_named_child_node() Greg Kroah-Hartman
2024-06-13 11:31 ` [PATCH 4.19 014/213] crypto: bcm - Fix pointer arithmetic Greg Kroah-Hartman
2024-06-13 11:31 ` [PATCH 4.19 015/213] firmware: raspberrypi: Use correct device for DMA mappings Greg Kroah-Hartman
2024-06-13 11:31 ` [PATCH 4.19 016/213] ecryptfs: Fix buffer size for tag 66 packet Greg Kroah-Hartman
2024-06-13 11:31 ` [PATCH 4.19 017/213] nilfs2: fix out-of-range warning Greg Kroah-Hartman
2024-06-13 11:31 ` [PATCH 4.19 018/213] parisc: add missing export of __cmpxchg_u8() Greg Kroah-Hartman
2024-06-13 11:31 ` [PATCH 4.19 019/213] crypto: ccp - Remove forward declaration Greg Kroah-Hartman
2024-06-13 11:31 ` [PATCH 4.19 020/213] crypto: ccp - drop platform ifdef checks Greg Kroah-Hartman
2024-06-13 11:31 ` [PATCH 4.19 021/213] s390/cio: fix tracepoint subchannel type field Greg Kroah-Hartman
2024-06-13 11:31 ` [PATCH 4.19 022/213] jffs2: prevent xattr node from overflowing the eraseblock Greg Kroah-Hartman
2024-06-13 11:31 ` [PATCH 4.19 023/213] null_blk: Fix missing mutex_destroy() at module removal Greg Kroah-Hartman
2024-06-13 11:31 ` [PATCH 4.19 024/213] md: fix resync softlockup when bitmap size is less than array size Greg Kroah-Hartman
2024-06-13 11:31 ` [PATCH 4.19 025/213] power: supply: cros_usbpd: provide ID table for avoiding fallback match Greg Kroah-Hartman
2024-06-13 11:31 ` [PATCH 4.19 026/213] HSI: omap_ssi_core: Convert to platform remove callback returning void Greg Kroah-Hartman
2024-06-13 20:14 ` Uwe Kleine-König
2024-06-15 10:53 ` Greg Kroah-Hartman
2024-06-13 11:31 ` [PATCH 4.19 027/213] HSI: omap_ssi_port: " Greg Kroah-Hartman
2024-06-13 11:31 ` [PATCH 4.19 028/213] nfsd: drop st_mutex before calling move_to_close_lru() Greg Kroah-Hartman
2024-06-13 11:31 ` [PATCH 4.19 029/213] wifi: ath10k: poll service ready message before failing Greg Kroah-Hartman
2024-06-13 11:31 ` [PATCH 4.19 030/213] x86/boot: Ignore relocations in .notes sections in walk_relocs() too Greg Kroah-Hartman
2024-06-13 11:31 ` [PATCH 4.19 031/213] qed: avoid truncating work queue length Greg Kroah-Hartman
2024-06-13 11:31 ` [PATCH 4.19 032/213] scsi: ufs: qcom: Perform read back after writing reset bit Greg Kroah-Hartman
2024-06-13 11:31 ` [PATCH 4.19 033/213] scsi: ufs: cleanup struct utp_task_req_desc Greg Kroah-Hartman
2024-06-13 11:31 ` [PATCH 4.19 034/213] scsi: ufs: add a low-level __ufshcd_issue_tm_cmd helper Greg Kroah-Hartman
2024-06-13 11:31 ` [PATCH 4.19 035/213] scsi: ufs: core: Perform read back after disabling interrupts Greg Kroah-Hartman
2024-06-13 11:31 ` [PATCH 4.19 036/213] scsi: ufs: core: Perform read back after disabling UIC_COMMAND_COMPL Greg Kroah-Hartman
2024-06-13 11:31 ` [PATCH 4.19 037/213] irqchip/alpine-msi: Fix off-by-one in allocation error path Greg Kroah-Hartman
2024-06-13 11:31 ` [PATCH 4.19 038/213] ACPI: disable -Wstringop-truncation Greg Kroah-Hartman
2024-06-13 11:31 ` [PATCH 4.19 039/213] scsi: libsas: Fix the failure of adding phy with zero-address to port Greg Kroah-Hartman
2024-06-13 11:31 ` [PATCH 4.19 040/213] scsi: hpsa: Fix allocation size for Scsi_Host private data Greg Kroah-Hartman
2024-06-13 11:31 ` [PATCH 4.19 041/213] x86/purgatory: Switch to the position-independent small code model Greg Kroah-Hartman
2024-06-13 11:31 ` [PATCH 4.19 042/213] wifi: ath10k: Fix an error code problem in ath10k_dbg_sta_write_peer_debug_trigger() Greg Kroah-Hartman
2024-06-13 11:31 ` [PATCH 4.19 043/213] wifi: ath10k: populate board data for WCN3990 Greg Kroah-Hartman
2024-06-13 11:31 ` [PATCH 4.19 044/213] macintosh/via-macii: Remove BUG_ON assertions Greg Kroah-Hartman
2024-06-13 11:31 ` [PATCH 4.19 045/213] macintosh/via-macii, macintosh/adb-iop: Clean up whitespace Greg Kroah-Hartman
2024-06-13 11:31 ` [PATCH 4.19 046/213] macintosh/via-macii: Fix "BUG: sleeping function called from invalid context" Greg Kroah-Hartman
2024-06-13 11:31 ` [PATCH 4.19 047/213] wifi: carl9170: add a proper sanity check for endpoints Greg Kroah-Hartman
2024-06-13 11:31 ` [PATCH 4.19 048/213] wifi: ar5523: enable proper endpoint verification Greg Kroah-Hartman
2024-06-13 11:31 ` [PATCH 4.19 049/213] sh: kprobes: Merge arch_copy_kprobe() into arch_prepare_kprobe() Greg Kroah-Hartman
2024-06-13 11:31 ` [PATCH 4.19 050/213] Revert "sh: Handle calling csum_partial with misaligned data" Greg Kroah-Hartman
2024-06-13 11:31 ` [PATCH 4.19 051/213] scsi: bfa: Ensure the copied buf is NUL terminated Greg Kroah-Hartman
2024-06-13 11:31 ` [PATCH 4.19 052/213] scsi: qedf: " Greg Kroah-Hartman
2024-06-13 11:31 ` [PATCH 4.19 053/213] wifi: mwl8k: initialize cmd->addr[] properly Greg Kroah-Hartman
2024-06-13 11:31 ` [PATCH 4.19 054/213] net: usb: sr9700: stop lying about skb->truesize Greg Kroah-Hartman
2024-06-13 11:31 ` [PATCH 4.19 055/213] m68k: Fix spinlock race in kernel thread creation Greg Kroah-Hartman
2024-06-13 11:31 ` [PATCH 4.19 056/213] m68k/mac: Use 030 reset method on SE/30 Greg Kroah-Hartman
2024-06-13 11:31 ` [PATCH 4.19 057/213] m68k: mac: Fix reboot hang on Mac IIci Greg Kroah-Hartman
2024-06-13 11:31 ` [PATCH 4.19 058/213] net: ethernet: cortina: Locking fixes Greg Kroah-Hartman
2024-06-13 11:31 ` [PATCH 4.19 059/213] af_unix: Fix data races in unix_release_sock/unix_stream_sendmsg Greg Kroah-Hartman
2024-06-13 11:31 ` [PATCH 4.19 060/213] net: usb: smsc95xx: stop lying about skb->truesize Greg Kroah-Hartman
2024-06-13 11:31 ` [PATCH 4.19 061/213] net: openvswitch: fix overwriting ct original tuple for ICMPv6 Greg Kroah-Hartman
2024-06-13 11:31 ` [PATCH 4.19 062/213] ipv6: sr: add missing seg6_local_exit Greg Kroah-Hartman
2024-06-13 11:31 ` [PATCH 4.19 063/213] ipv6: sr: fix incorrect unregister order Greg Kroah-Hartman
2024-06-13 11:31 ` [PATCH 4.19 064/213] ipv6: sr: fix invalid unregister error path Greg Kroah-Hartman
2024-06-13 11:31 ` [PATCH 4.19 065/213] drm/amd/display: Fix potential index out of bounds in color transformation function Greg Kroah-Hartman
2024-06-13 11:31 ` [PATCH 4.19 066/213] mtd: rawnand: hynix: fixed typo Greg Kroah-Hartman
2024-06-13 11:31 ` [PATCH 4.19 067/213] fbdev: shmobile: fix snprintf truncation Greg Kroah-Hartman
2024-06-13 11:31 ` [PATCH 4.19 068/213] drm/mediatek: Add 0 size check to mtk_drm_gem_obj Greg Kroah-Hartman
2024-06-13 11:31 ` [PATCH 4.19 069/213] powerpc/fsl-soc: hide unused const variable Greg Kroah-Hartman
2024-06-13 11:31 ` [PATCH 4.19 070/213] fbdev: sisfb: hide unused variables Greg Kroah-Hartman
2024-06-13 11:31 ` [PATCH 4.19 071/213] media: ngene: Add dvb_ca_en50221_init return value check Greg Kroah-Hartman
2024-06-13 11:32 ` [PATCH 4.19 072/213] media: radio-shark2: Avoid led_names truncations Greg Kroah-Hartman
2024-06-13 11:32 ` [PATCH 4.19 073/213] fbdev: sh7760fb: allow modular build Greg Kroah-Hartman
2024-06-13 11:32 ` [PATCH 4.19 074/213] drm/arm/malidp: fix a possible null pointer dereference Greg Kroah-Hartman
2024-06-13 11:32 ` [PATCH 4.19 075/213] ASoC: tracing: Export SND_SOC_DAPM_DIR_OUT to its value Greg Kroah-Hartman
2024-06-13 11:32 ` [PATCH 4.19 076/213] RDMA/hns: Use complete parentheses in macros Greg Kroah-Hartman
2024-06-13 11:32 ` [PATCH 4.19 077/213] x86/insn: Fix PUSH instruction in x86 instruction decoder opcode map Greg Kroah-Hartman
2024-06-13 11:32 ` [PATCH 4.19 078/213] ext4: avoid excessive credit estimate in ext4_tmpfile() Greg Kroah-Hartman
2024-06-13 11:32 ` [PATCH 4.19 079/213] SUNRPC: Fix gss_free_in_token_pages() Greg Kroah-Hartman
2024-06-13 11:32 ` [PATCH 4.19 080/213] selftests/kcmp: Make the test output consistent and clear Greg Kroah-Hartman
2024-06-13 11:32 ` [PATCH 4.19 081/213] selftests/kcmp: remove unused open mode Greg Kroah-Hartman
2024-06-13 11:32 ` [PATCH 4.19 082/213] RDMA/IPoIB: Fix format truncation compilation errors Greg Kroah-Hartman
2024-06-13 11:32 ` [PATCH 4.19 083/213] netrom: fix possible dead-lock in nr_rt_ioctl() Greg Kroah-Hartman
2024-06-13 11:32 ` [PATCH 4.19 084/213] af_packet: do not call packet_read_pending() from tpacket_destruct_skb() Greg Kroah-Hartman
2024-06-13 11:32 ` [PATCH 4.19 085/213] sched/topology: Dont set SD_BALANCE_WAKE on cpuset domain relax Greg Kroah-Hartman
2024-06-13 11:32 ` [PATCH 4.19 086/213] sched/fair: Allow disabling sched_balance_newidle with sched_relax_domain_level Greg Kroah-Hartman
2024-06-13 11:32 ` [PATCH 4.19 087/213] perf probe: Add missing libgen.h header needed for using basename() Greg Kroah-Hartman
2024-06-13 11:32 ` [PATCH 4.19 088/213] greybus: lights: check return of get_channel_from_mode Greg Kroah-Hartman
2024-06-13 11:32 ` [PATCH 4.19 089/213] perf annotate: Add --demangle and --demangle-kernel Greg Kroah-Hartman
2024-06-13 11:32 ` [PATCH 4.19 090/213] perf annotate: Get rid of duplicate --group option item Greg Kroah-Hartman
2024-06-13 11:32 ` [PATCH 4.19 091/213] dmaengine: idma64: Add check for dma_set_max_seg_size Greg Kroah-Hartman
2024-06-13 11:32 ` [PATCH 4.19 092/213] firmware: dmi-id: add a release callback function Greg Kroah-Hartman
2024-06-13 11:32 ` [PATCH 4.19 093/213] serial: max3100: Lock port->lock when calling uart_handle_cts_change() Greg Kroah-Hartman
2024-06-13 11:32 ` [PATCH 4.19 094/213] serial: max3100: Update uart_driver_registered on driver removal Greg Kroah-Hartman
2024-06-13 11:32 ` [PATCH 4.19 095/213] serial: max3100: Fix bitwise types Greg Kroah-Hartman
2024-06-13 11:32 ` [PATCH 4.19 096/213] greybus: arche-ctrl: move device table to its right location Greg Kroah-Hartman
2024-06-13 11:32 ` [PATCH 4.19 097/213] microblaze: Remove gcc flag for non existing early_printk.c file Greg Kroah-Hartman
2024-06-13 11:32 ` [PATCH 4.19 098/213] microblaze: Remove early printk call from cpuinfo-static.c Greg Kroah-Hartman
2024-06-13 11:32 ` [PATCH 4.19 099/213] usb: gadget: u_audio: Clear uac pointer when freed Greg Kroah-Hartman
2024-06-13 11:32 ` [PATCH 4.19 100/213] stm class: Fix a double free in stm_register_device() Greg Kroah-Hartman
2024-06-13 11:32 ` [PATCH 4.19 101/213] ppdev: Remove usage of the deprecated ida_simple_xx() API Greg Kroah-Hartman
2024-06-13 11:32 ` [PATCH 4.19 102/213] ppdev: Add an error check in register_device Greg Kroah-Hartman
2024-06-13 11:32 ` [PATCH 4.19 103/213] extcon: max8997: select IRQ_DOMAIN instead of depending on it Greg Kroah-Hartman
2024-06-13 11:32 ` [PATCH 4.19 104/213] f2fs: add error prints for debugging mount failure Greg Kroah-Hartman
2024-06-13 11:32 ` [PATCH 4.19 105/213] f2fs: fix to release node block count in error path of f2fs_new_node_page() Greg Kroah-Hartman
2024-06-13 11:32 ` [PATCH 4.19 106/213] serial: sh-sci: Extract sci_dma_rx_chan_invalidate() Greg Kroah-Hartman
2024-06-13 11:32 ` [PATCH 4.19 107/213] serial: sh-sci: protect invalidating RXDMA on shutdown Greg Kroah-Hartman
2024-06-13 11:32 ` [PATCH 4.19 108/213] libsubcmd: Fix parse-options memory leak Greg Kroah-Hartman
2024-06-13 11:32 ` [PATCH 4.19 109/213] Input: ims-pcu - fix printf string overflow Greg Kroah-Hartman
2024-06-13 11:32 ` [PATCH 4.19 110/213] Input: pm8xxx-vibrator - correct VIB_MAX_LEVELS calculation Greg Kroah-Hartman
2024-06-13 11:32 ` [PATCH 4.19 111/213] drm/msm/dpu: use kms stored hw mdp block Greg Kroah-Hartman
2024-06-13 11:32 ` [PATCH 4.19 112/213] um: Fix return value in ubd_init() Greg Kroah-Hartman
2024-06-13 11:32 ` [PATCH 4.19 113/213] um: Add winch to winch_handlers before registering winch IRQ Greg Kroah-Hartman
2024-06-13 11:32 ` [PATCH 4.19 114/213] media: stk1160: fix bounds checking in stk1160_copy_video() Greg Kroah-Hartman
2024-06-13 11:32 ` [PATCH 4.19 115/213] powerpc/pseries: Add failure related checks for h_get_mpp and h_get_ppp Greg Kroah-Hartman
2024-06-13 11:32 ` [PATCH 4.19 116/213] um: Fix the -Wmissing-prototypes warning for __switch_mm Greg Kroah-Hartman
2024-06-13 11:32 ` [PATCH 4.19 117/213] media: cec: cec-adap: always cancel work in cec_transmit_msg_fh Greg Kroah-Hartman
2024-06-13 11:32 ` [PATCH 4.19 118/213] media: cec: cec-api: add locking in cec_release() Greg Kroah-Hartman
2024-06-13 11:32 ` [PATCH 4.19 119/213] null_blk: Fix the WARNING: modpost: missing MODULE_DESCRIPTION() Greg Kroah-Hartman
2024-06-13 11:32 ` [PATCH 4.19 120/213] x86/kconfig: Select ARCH_WANT_FRAME_POINTERS again when UNWINDER_FRAME_POINTER=y Greg Kroah-Hartman
2024-06-13 11:32 ` [PATCH 4.19 121/213] nfc: nci: Fix uninit-value in nci_rx_work Greg Kroah-Hartman
2024-06-13 11:32 ` [PATCH 4.19 122/213] ipv6: sr: fix memleak in seg6_hmac_init_algo Greg Kroah-Hartman
2024-06-13 11:32 ` [PATCH 4.19 123/213] params: lift param_set_uint_minmax to common code Greg Kroah-Hartman
2024-06-13 11:32 ` [PATCH 4.19 124/213] tcp: Fix shift-out-of-bounds in dctcp_update_alpha() Greg Kroah-Hartman
2024-06-13 11:32 ` [PATCH 4.19 125/213] openvswitch: Set the skbuff pkt_type for proper pmtud support Greg Kroah-Hartman
2024-06-13 11:32 ` [PATCH 4.19 126/213] arm64: asm-bug: Add .align 2 to the end of __BUG_ENTRY Greg Kroah-Hartman
2024-06-13 11:32 ` [PATCH 4.19 127/213] virtio: delete vq in vp_find_vqs_msix() when request_irq() fails Greg Kroah-Hartman
2024-06-13 11:32 ` [PATCH 4.19 128/213] net: fec: avoid lock evasion when reading pps_enable Greg Kroah-Hartman
2024-06-13 11:32 ` [PATCH 4.19 129/213] nfc: nci: Fix kcov check in nci_rx_work() Greg Kroah-Hartman
2024-06-13 11:32 ` [PATCH 4.19 130/213] nfc: nci: Fix handling of zero-length payload packets " Greg Kroah-Hartman
2024-06-13 11:32 ` [PATCH 4.19 131/213] netfilter: nfnetlink_queue: acquire rcu_read_lock() in instance_destroy_rcu() Greg Kroah-Hartman
2024-06-13 11:33 ` [PATCH 4.19 132/213] spi: Dont mark message DMA mapped when no transfer in it is Greg Kroah-Hartman
2024-06-13 11:33 ` [PATCH 4.19 133/213] nvmet: fix ns enable/disable possible hang Greg Kroah-Hartman
2024-06-13 11:33 ` [PATCH 4.19 134/213] net/mlx5e: Use rx_missed_errors instead of rx_dropped for reporting buffer exhaustion Greg Kroah-Hartman
2024-06-13 11:33 ` [PATCH 4.19 135/213] dma-buf/sw-sync: dont enable IRQ from sync_print_obj() Greg Kroah-Hartman
2024-06-13 11:33 ` [PATCH 4.19 136/213] enic: Validate length of nl attributes in enic_set_vf_port Greg Kroah-Hartman
2024-06-13 11:33 ` [PATCH 4.19 137/213] smsc95xx: remove redundant function arguments Greg Kroah-Hartman
2024-06-13 11:33 ` [PATCH 4.19 138/213] smsc95xx: use usbnet->driver_priv Greg Kroah-Hartman
2024-06-13 11:33 ` [PATCH 4.19 139/213] net: usb: smsc95xx: fix changing LED_SEL bit value updated from EEPROM Greg Kroah-Hartman
2024-06-13 11:33 ` [PATCH 4.19 140/213] net:fec: Add fec_enet_deinit() Greg Kroah-Hartman
2024-06-13 11:33 ` [PATCH 4.19 141/213] kconfig: fix comparison to constant symbols, m, n Greg Kroah-Hartman
2024-06-13 11:33 ` [PATCH 4.19 142/213] ipvlan: Dont Use skb->sk in ipvlan_process_v{4,6}_outbound Greg Kroah-Hartman
2024-06-13 11:33 ` [PATCH 4.19 143/213] ALSA: timer: Set lower bound of start tick time Greg Kroah-Hartman
2024-06-13 11:33 ` [PATCH 4.19 144/213] genirq/cpuhotplug, x86/vector: Prevent vector leak during CPU offline Greg Kroah-Hartman
2024-06-13 11:33 ` [PATCH 4.19 145/213] SUNRPC: Fix loop termination condition in gss_free_in_token_pages() Greg Kroah-Hartman
2024-06-13 11:33 ` [PATCH 4.19 146/213] binder: fix max_thread type inconsistency Greg Kroah-Hartman
2024-06-13 11:33 ` [PATCH 4.19 147/213] mmc: core: Do not force a retune before RPMB switch Greg Kroah-Hartman
2024-06-13 11:33 ` [PATCH 4.19 148/213] nilfs2: fix use-after-free of timer for log writer thread Greg Kroah-Hartman
2024-06-13 11:33 ` [PATCH 4.19 149/213] vxlan: Fix regression when dropping packets due to invalid src addresses Greg Kroah-Hartman
2024-06-13 11:33 ` [PATCH 4.19 150/213] neighbour: fix unaligned access to pneigh_entry Greg Kroah-Hartman
2024-06-13 11:33 ` [PATCH 4.19 151/213] ata: pata_legacy: make legacy_exit() work again Greg Kroah-Hartman
2024-06-13 11:33 ` [PATCH 4.19 152/213] arm64: tegra: Correct Tegra132 I2C alias Greg Kroah-Hartman
2024-06-13 11:33 ` [PATCH 4.19 153/213] md/raid5: fix deadlock that raid5d() wait for itself to clear MD_SB_CHANGE_PENDING Greg Kroah-Hartman
2024-06-13 11:33 ` [PATCH 4.19 154/213] wifi: rtl8xxxu: Fix the TX power of RTL8192CU, RTL8723AU Greg Kroah-Hartman
2024-06-13 11:33 ` [PATCH 4.19 155/213] arm64: dts: hi3798cv200: fix the size of GICR Greg Kroah-Hartman
2024-06-13 11:33 ` [PATCH 4.19 156/213] media: mxl5xx: Move xpt structures off stack Greg Kroah-Hartman
2024-06-13 11:33 ` [PATCH 4.19 157/213] media: v4l2-core: hold videodev_lock until dev reg, finishes Greg Kroah-Hartman
2024-06-13 11:33 ` [PATCH 4.19 158/213] fbdev: savage: Handle err return when savagefb_check_var failed Greg Kroah-Hartman
2024-06-13 11:33 ` [PATCH 4.19 159/213] netfilter: nf_tables: pass context to nft_set_destroy() Greg Kroah-Hartman
2024-06-13 11:33 ` [PATCH 4.19 160/213] netfilter: nftables: rename set element data activation/deactivation functions Greg Kroah-Hartman
2024-06-13 11:33 ` [PATCH 4.19 161/213] netfilter: nf_tables: drop map element references from preparation phase Greg Kroah-Hartman
2024-06-13 11:33 ` [PATCH 4.19 162/213] netfilter: nft_set_rbtree: allow loose matching of closing element in interval Greg Kroah-Hartman
2024-06-13 11:33 ` [PATCH 4.19 163/213] netfilter: nft_set_rbtree: Add missing expired checks Greg Kroah-Hartman
2024-06-13 11:33 ` [PATCH 4.19 164/213] netfilter: nft_set_rbtree: Switch to node list walk for overlap detection Greg Kroah-Hartman
2024-07-01 20:51 ` Ben Hutchings
2024-07-01 21:48 ` Pablo Neira Ayuso
2024-07-01 21:52 ` Pablo Neira Ayuso
2024-07-01 22:02 ` Ben Hutchings
2024-06-13 11:33 ` [PATCH 4.19 165/213] netfilter: nft_set_rbtree: fix null deref on element insertion Greg Kroah-Hartman
2024-06-13 11:33 ` [PATCH 4.19 166/213] netfilter: nft_set_rbtree: fix overlap expiration walk Greg Kroah-Hartman
2024-06-13 11:33 ` [PATCH 4.19 167/213] netfilter: nf_tables: dont skip expired elements during walk Greg Kroah-Hartman
2024-06-13 11:33 ` Greg Kroah-Hartman [this message]
2024-06-13 11:33 ` [PATCH 4.19 169/213] netfilter: nf_tables: adapt set backend to use GC transaction API Greg Kroah-Hartman
2024-06-13 11:33 ` [PATCH 4.19 170/213] netfilter: nf_tables: remove busy mark and gc batch API Greg Kroah-Hartman
2024-06-13 11:33 ` [PATCH 4.19 171/213] netfilter: nf_tables: fix GC transaction races with netns and netlink event exit path Greg Kroah-Hartman
2024-06-13 11:33 ` [PATCH 4.19 172/213] netfilter: nf_tables: GC transaction race with netns dismantle Greg Kroah-Hartman
2024-06-13 11:33 ` [PATCH 4.19 173/213] netfilter: nf_tables: GC transaction race with abort path Greg Kroah-Hartman
2024-06-13 11:33 ` [PATCH 4.19 174/213] netfilter: nf_tables: defer gc run if previous batch is still pending Greg Kroah-Hartman
2024-06-13 11:33 ` [PATCH 4.19 175/213] netfilter: nft_set_rbtree: skip sync GC for new elements in this transaction Greg Kroah-Hartman
2024-06-13 11:33 ` [PATCH 4.19 176/213] netfilter: nft_set_rbtree: use read spinlock to avoid datapath contention Greg Kroah-Hartman
2024-06-13 11:33 ` [PATCH 4.19 177/213] netfilter: nft_set_hash: try later when GC hits EAGAIN on iteration Greg Kroah-Hartman
2024-06-13 11:33 ` [PATCH 4.19 178/213] netfilter: nf_tables: fix memleak when more than 255 elements expired Greg Kroah-Hartman
2024-06-13 11:33 ` [PATCH 4.19 179/213] netfilter: nf_tables: unregister flowtable hooks on netns exit Greg Kroah-Hartman
2024-06-13 11:33 ` [PATCH 4.19 180/213] netfilter: nf_tables: double hook unregistration in netns path Greg Kroah-Hartman
2024-06-13 11:33 ` [PATCH 4.19 181/213] netfilter: nftables: update table flags from the commit phase Greg Kroah-Hartman
2024-06-13 11:33 ` [PATCH 4.19 182/213] netfilter: nf_tables: fix table flag updates Greg Kroah-Hartman
2024-06-13 11:33 ` [PATCH 4.19 183/213] netfilter: nf_tables: disable toggling dormant table state more than once Greg Kroah-Hartman
2024-06-13 11:33 ` [PATCH 4.19 184/213] netfilter: nf_tables: bogus EBUSY when deleting flowtable after flush (for 4.19) Greg Kroah-Hartman
2024-06-13 11:33 ` [PATCH 4.19 185/213] netfilter: nft_dynset: fix timeouts later than 23 days Greg Kroah-Hartman
2024-06-13 11:33 ` [PATCH 4.19 186/213] netfilter: nftables: exthdr: fix 4-byte stack OOB write Greg Kroah-Hartman
2024-06-13 11:33 ` [PATCH 4.19 187/213] netfilter: nft_dynset: report EOPNOTSUPP on missing set feature Greg Kroah-Hartman
2024-06-13 11:33 ` [PATCH 4.19 188/213] netfilter: nft_dynset: relax superfluous check on set updates Greg Kroah-Hartman
2024-06-13 11:33 ` [PATCH 4.19 189/213] netfilter: nf_tables: mark newset as dead on transaction abort Greg Kroah-Hartman
2024-06-13 11:33 ` [PATCH 4.19 190/213] netfilter: nf_tables: skip dead set elements in netlink dump Greg Kroah-Hartman
2024-06-13 11:33 ` [PATCH 4.19 191/213] netfilter: nf_tables: validate NFPROTO_* family Greg Kroah-Hartman
2024-06-13 11:34 ` [PATCH 4.19 192/213] netfilter: nft_set_rbtree: skip end interval element from gc Greg Kroah-Hartman
2024-06-13 11:34 ` [PATCH 4.19 193/213] netfilter: nf_tables: set dormant flag on hook register failure Greg Kroah-Hartman
2024-06-13 11:34 ` [PATCH 4.19 194/213] netfilter: nf_tables: allow NFPROTO_INET in nft_(match/target)_validate() Greg Kroah-Hartman
2024-06-13 11:34 ` [PATCH 4.19 195/213] netfilter: nf_tables: do not compare internal table flags on updates Greg Kroah-Hartman
2024-06-13 11:34 ` [PATCH 4.19 196/213] netfilter: nf_tables: mark set as dead when unbinding anonymous set with timeout Greg Kroah-Hartman
2024-06-13 11:34 ` [PATCH 4.19 197/213] netfilter: nf_tables: reject new basechain after table flag update Greg Kroah-Hartman
2024-06-13 11:34 ` [PATCH 4.19 198/213] netfilter: nf_tables: discard table flag update with pending basechain deletion Greg Kroah-Hartman
2024-06-13 11:34 ` [PATCH 4.19 199/213] KVM: arm64: Allow AArch32 PSTATE.M to be restored as System mode Greg Kroah-Hartman
2024-06-13 11:34 ` [PATCH 4.19 200/213] crypto: qat - Fix ADF_DEV_RESET_SYNC memory leak Greg Kroah-Hartman
2024-06-13 11:34 ` [PATCH 4.19 201/213] net/9p: fix uninit-value in p9_client_rpc() Greg Kroah-Hartman
2024-06-13 11:34 ` [PATCH 4.19 202/213] intel_th: pci: Add Meteor Lake-S CPU support Greg Kroah-Hartman
2024-06-13 11:34 ` [PATCH 4.19 203/213] sparc64: Fix number of online CPUs Greg Kroah-Hartman
2024-06-13 11:34 ` [PATCH 4.19 204/213] kdb: Fix buffer overflow during tab-complete Greg Kroah-Hartman
2024-06-13 11:34 ` [PATCH 4.19 205/213] kdb: Use format-strings rather than \0 injection in kdb_read() Greg Kroah-Hartman
2024-06-13 11:34 ` [PATCH 4.19 206/213] kdb: Fix console handling when editing and tab-completing commands Greg Kroah-Hartman
2024-06-13 11:34 ` [PATCH 4.19 207/213] kdb: Merge identical case statements in kdb_read() Greg Kroah-Hartman
2024-06-13 11:34 ` [PATCH 4.19 208/213] kdb: Use format-specifiers rather than memset() for padding " Greg Kroah-Hartman
2024-06-13 11:34 ` [PATCH 4.19 209/213] net: fix __dst_negative_advice() race Greg Kroah-Hartman
2024-06-13 11:34 ` [PATCH 4.19 210/213] sparc: move struct termio to asm/termios.h Greg Kroah-Hartman
2024-06-13 11:34 ` [PATCH 4.19 211/213] ext4: fix mb_cache_entrys e_refcnt leak in ext4_xattr_block_cache_find() Greg Kroah-Hartman
2024-06-13 11:34 ` [PATCH 4.19 212/213] s390/ap: Fix crash in AP internal function modify_bitmap() Greg Kroah-Hartman
2024-06-13 11:34 ` [PATCH 4.19 213/213] nfs: fix undefined behavior in nfs_block_bits() Greg Kroah-Hartman
2024-06-13 16:24 ` [PATCH 4.19 000/213] 4.19.316-rc1 review Guenter Roeck
2024-06-15 10:53 ` Greg Kroah-Hartman
2024-06-14 9:36 ` Pavel Machek
2024-06-14 17:03 ` Jon Hunter
2024-06-14 19:02 ` Harshit Mogalapalli
2024-06-15 2:12 ` Shuah Khan
2024-06-15 10:33 ` Naresh Kamboju
2024-06-15 10:53 ` Greg Kroah-Hartman
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20240613113234.464096393@linuxfoundation.org \
--to=gregkh@linuxfoundation.org \
--cc=netfilter-devel@vger.kernel.org \
--cc=pablo@netfilter.org \
--cc=patches@lists.linux.dev \
--cc=stable@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).