From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
To: linux-kernel@vger.kernel.org
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
stable@vger.kernel.org, Taehee Yoo <ap420073@gmail.com>,
Florian Westphal <fw@strlen.de>,
Pablo Neira Ayuso <pablo@netfilter.org>,
Sasha Levin <sashal@kernel.org>
Subject: [PATCH 4.20 005/171] netfilter: nft_compat: make lists per netns
Date: Tue, 12 Mar 2019 10:06:25 -0700 [thread overview]
Message-ID: <20190312170348.325739242@linuxfoundation.org> (raw)
In-Reply-To: <20190312170347.868927101@linuxfoundation.org>
4.20-stable review patch. If anyone has any objections, please let me know.
------------------
[ Upstream commit cf52572ebbd7189a1966c2b5fc34b97078cd1dce ]
There are two problems with nft_compat since the netlink config
plane uses a per-netns mutex:
1. Concurrent add/del accesses to the same list
2. accesses to a list element after it has been free'd already.
This patch fixes the first problem.
Freeing occurs from a work queue, after transaction mutexes have been
released, i.e., it still possible for a new transaction (even from
same net ns) to find the to-be-deleted expression in the list.
The ->destroy functions are not allowed to have any such side effects,
i.e. the list_del() in the destroy function is not allowed.
This part of the problem is solved in the next patch.
I tried to make this work by serializing list access via mutex
and by moving list_del() to a deactivate callback, but
Taehee spotted following race on this approach:
NET #0 NET #1
>select_ops()
->init()
->select_ops()
->deactivate()
->destroy()
nft_xt_put()
kfree_rcu(xt, rcu_head);
->init() <-- use-after-free occurred.
Unfortunately, we can't increment reference count in
select_ops(), because we can't undo the refcount increase in
case a different expression fails in the same batch.
(The destroy hook will only be called in case the expression
was initialized successfully).
Fixes: f102d66b335a ("netfilter: nf_tables: use dedicated mutex to guard transactions")
Reported-by: Taehee Yoo <ap420073@gmail.com>
Signed-off-by: Florian Westphal <fw@strlen.de>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
net/netfilter/nft_compat.c | 129 +++++++++++++++++++++++++------------
1 file changed, 89 insertions(+), 40 deletions(-)
diff --git a/net/netfilter/nft_compat.c b/net/netfilter/nft_compat.c
index 791f3e693e3d..d3412138e000 100644
--- a/net/netfilter/nft_compat.c
+++ b/net/netfilter/nft_compat.c
@@ -22,6 +22,7 @@
#include <linux/netfilter_bridge/ebtables.h>
#include <linux/netfilter_arp/arp_tables.h>
#include <net/netfilter/nf_tables.h>
+#include <net/netns/generic.h>
struct nft_xt {
struct list_head head;
@@ -43,6 +44,20 @@ struct nft_xt_match_priv {
void *info;
};
+struct nft_compat_net {
+ struct list_head nft_target_list;
+ struct list_head nft_match_list;
+};
+
+static unsigned int nft_compat_net_id __read_mostly;
+static struct nft_expr_type nft_match_type;
+static struct nft_expr_type nft_target_type;
+
+static struct nft_compat_net *nft_compat_pernet(struct net *net)
+{
+ return net_generic(net, nft_compat_net_id);
+}
+
static bool nft_xt_put(struct nft_xt *xt)
{
if (refcount_dec_and_test(&xt->refcnt)) {
@@ -735,10 +750,6 @@ static const struct nfnetlink_subsystem nfnl_compat_subsys = {
.cb = nfnl_nft_compat_cb,
};
-static LIST_HEAD(nft_match_list);
-
-static struct nft_expr_type nft_match_type;
-
static bool nft_match_cmp(const struct xt_match *match,
const char *name, u32 rev, u32 family)
{
@@ -750,6 +761,7 @@ static const struct nft_expr_ops *
nft_match_select_ops(const struct nft_ctx *ctx,
const struct nlattr * const tb[])
{
+ struct nft_compat_net *cn;
struct nft_xt *nft_match;
struct xt_match *match;
unsigned int matchsize;
@@ -766,8 +778,10 @@ nft_match_select_ops(const struct nft_ctx *ctx,
rev = ntohl(nla_get_be32(tb[NFTA_MATCH_REV]));
family = ctx->family;
+ cn = nft_compat_pernet(ctx->net);
+
/* Re-use the existing match if it's already loaded. */
- list_for_each_entry(nft_match, &nft_match_list, head) {
+ list_for_each_entry(nft_match, &cn->nft_match_list, head) {
struct xt_match *match = nft_match->ops.data;
if (nft_match_cmp(match, mt_name, rev, family))
@@ -811,7 +825,7 @@ nft_match_select_ops(const struct nft_ctx *ctx,
nft_match->ops.size = matchsize;
- list_add(&nft_match->head, &nft_match_list);
+ list_add(&nft_match->head, &cn->nft_match_list);
return &nft_match->ops;
err:
@@ -827,10 +841,6 @@ static struct nft_expr_type nft_match_type __read_mostly = {
.owner = THIS_MODULE,
};
-static LIST_HEAD(nft_target_list);
-
-static struct nft_expr_type nft_target_type;
-
static bool nft_target_cmp(const struct xt_target *tg,
const char *name, u32 rev, u32 family)
{
@@ -842,6 +852,7 @@ static const struct nft_expr_ops *
nft_target_select_ops(const struct nft_ctx *ctx,
const struct nlattr * const tb[])
{
+ struct nft_compat_net *cn;
struct nft_xt *nft_target;
struct xt_target *target;
char *tg_name;
@@ -862,8 +873,9 @@ nft_target_select_ops(const struct nft_ctx *ctx,
strcmp(tg_name, "standard") == 0)
return ERR_PTR(-EINVAL);
+ cn = nft_compat_pernet(ctx->net);
/* Re-use the existing target if it's already loaded. */
- list_for_each_entry(nft_target, &nft_target_list, head) {
+ list_for_each_entry(nft_target, &cn->nft_target_list, head) {
struct xt_target *target = nft_target->ops.data;
if (!target->target)
@@ -908,7 +920,7 @@ nft_target_select_ops(const struct nft_ctx *ctx,
else
nft_target->ops.eval = nft_target_eval_xt;
- list_add(&nft_target->head, &nft_target_list);
+ list_add(&nft_target->head, &cn->nft_target_list);
return &nft_target->ops;
err:
@@ -924,13 +936,74 @@ static struct nft_expr_type nft_target_type __read_mostly = {
.owner = THIS_MODULE,
};
+static int __net_init nft_compat_init_net(struct net *net)
+{
+ struct nft_compat_net *cn = nft_compat_pernet(net);
+
+ INIT_LIST_HEAD(&cn->nft_target_list);
+ INIT_LIST_HEAD(&cn->nft_match_list);
+
+ return 0;
+}
+
+static void __net_exit nft_compat_exit_net(struct net *net)
+{
+ struct nft_compat_net *cn = nft_compat_pernet(net);
+ struct nft_xt *xt, *next;
+
+ if (list_empty(&cn->nft_match_list) &&
+ list_empty(&cn->nft_target_list))
+ return;
+
+ /* If there was an error that caused nft_xt expr to not be initialized
+ * fully and noone else requested the same expression later, the lists
+ * contain 0-refcount entries that still hold module reference.
+ *
+ * Clean them here.
+ */
+ mutex_lock(&net->nft.commit_mutex);
+ list_for_each_entry_safe(xt, next, &cn->nft_target_list, head) {
+ struct xt_target *target = xt->ops.data;
+
+ list_del_init(&xt->head);
+
+ if (refcount_read(&xt->refcnt))
+ continue;
+ module_put(target->me);
+ kfree(xt);
+ }
+
+ list_for_each_entry_safe(xt, next, &cn->nft_match_list, head) {
+ struct xt_match *match = xt->ops.data;
+
+ list_del_init(&xt->head);
+
+ if (refcount_read(&xt->refcnt))
+ continue;
+ module_put(match->me);
+ kfree(xt);
+ }
+ mutex_unlock(&net->nft.commit_mutex);
+}
+
+static struct pernet_operations nft_compat_net_ops = {
+ .init = nft_compat_init_net,
+ .exit = nft_compat_exit_net,
+ .id = &nft_compat_net_id,
+ .size = sizeof(struct nft_compat_net),
+};
+
static int __init nft_compat_module_init(void)
{
int ret;
+ ret = register_pernet_subsys(&nft_compat_net_ops);
+ if (ret < 0)
+ goto err_target;
+
ret = nft_register_expr(&nft_match_type);
if (ret < 0)
- return ret;
+ goto err_pernet;
ret = nft_register_expr(&nft_target_type);
if (ret < 0)
@@ -943,45 +1016,21 @@ static int __init nft_compat_module_init(void)
}
return ret;
-
err_target:
nft_unregister_expr(&nft_target_type);
err_match:
nft_unregister_expr(&nft_match_type);
+err_pernet:
+ unregister_pernet_subsys(&nft_compat_net_ops);
return ret;
}
static void __exit nft_compat_module_exit(void)
{
- struct nft_xt *xt, *next;
-
- /* list should be empty here, it can be non-empty only in case there
- * was an error that caused nft_xt expr to not be initialized fully
- * and noone else requested the same expression later.
- *
- * In this case, the lists contain 0-refcount entries that still
- * hold module reference.
- */
- list_for_each_entry_safe(xt, next, &nft_target_list, head) {
- struct xt_target *target = xt->ops.data;
-
- if (WARN_ON_ONCE(refcount_read(&xt->refcnt)))
- continue;
- module_put(target->me);
- kfree(xt);
- }
-
- list_for_each_entry_safe(xt, next, &nft_match_list, head) {
- struct xt_match *match = xt->ops.data;
-
- if (WARN_ON_ONCE(refcount_read(&xt->refcnt)))
- continue;
- module_put(match->me);
- kfree(xt);
- }
nfnetlink_subsys_unregister(&nfnl_compat_subsys);
nft_unregister_expr(&nft_target_type);
nft_unregister_expr(&nft_match_type);
+ unregister_pernet_subsys(&nft_compat_net_ops);
}
MODULE_ALIAS_NFNL_SUBSYS(NFNL_SUBSYS_NFT_COMPAT);
--
2.19.1
next prev parent reply other threads:[~2019-03-12 18:11 UTC|newest]
Thread overview: 178+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-03-12 17:06 [PATCH 4.20 000/171] 4.20.16-stable review Greg Kroah-Hartman
2019-03-12 17:06 ` [PATCH 4.20 001/171] media: uvcvideo: Fix type check leading to overflow Greg Kroah-Hartman
2019-03-12 17:06 ` [PATCH 4.20 002/171] vti4: Fix a ipip packet processing bug in IPCOMP virtual tunnel Greg Kroah-Hartman
2019-03-12 17:06 ` [PATCH 4.20 003/171] perf ordered_events: Fix crash in ordered_events__free Greg Kroah-Hartman
2019-03-12 17:06 ` [PATCH 4.20 004/171] netfilter: nft_compat: use refcnt_t type for nft_xt reference count Greg Kroah-Hartman
2019-03-12 17:06 ` Greg Kroah-Hartman [this message]
2019-03-12 17:06 ` [PATCH 4.20 006/171] netfilter: nft_compat: destroy function must not have side effects Greg Kroah-Hartman
2019-03-12 17:06 ` [PATCH 4.20 007/171] perf script: Fix crash with printing mixed trace point and other events Greg Kroah-Hartman
2019-03-12 17:06 ` [PATCH 4.20 008/171] perf core: Fix perf_proc_update_handler() bug Greg Kroah-Hartman
2019-03-12 17:06 ` [PATCH 4.20 009/171] perf python: Remove -fstack-clash-protection when building with some clang versions Greg Kroah-Hartman
2019-03-12 17:06 ` [PATCH 4.20 010/171] perf tools: Handle TOPOLOGY headers with no CPU Greg Kroah-Hartman
2019-03-12 17:06 ` [PATCH 4.20 011/171] perf script: Fix crash when processing recorded stat data Greg Kroah-Hartman
2019-03-12 17:06 ` [PATCH 4.20 012/171] IB/{hfi1, qib}: Fix WC.byte_len calculation for UD_SEND_WITH_IMM Greg Kroah-Hartman
2019-03-12 17:06 ` [PATCH 4.20 013/171] iommu/amd: Call free_iova_fast with pfn in map_sg Greg Kroah-Hartman
2019-03-12 17:06 ` [PATCH 4.20 014/171] iommu/amd: Unmap all mapped pages in error path of map_sg Greg Kroah-Hartman
2019-03-12 17:06 ` [PATCH 4.20 015/171] riscv: fixup max_low_pfn with PFN_DOWN Greg Kroah-Hartman
2019-03-12 17:06 ` [PATCH 4.20 016/171] ipvs: Fix signed integer overflow when setsockopt timeout Greg Kroah-Hartman
2019-03-12 17:06 ` [PATCH 4.20 017/171] iommu/amd: Fix IOMMU page flush when detach device from a domain Greg Kroah-Hartman
2019-03-12 17:06 ` [PATCH 4.20 018/171] clk: ti: Fix error handling in ti_clk_parse_divider_data() Greg Kroah-Hartman
2019-03-12 17:06 ` [PATCH 4.20 019/171] clk: qcom: gcc: Use active only source for CPUSS clocks Greg Kroah-Hartman
2019-03-12 17:06 ` [PATCH 4.20 020/171] xtensa: SMP: fix ccount_timer_shutdown Greg Kroah-Hartman
2019-03-12 17:06 ` [PATCH 4.20 021/171] RDMA/umem: Add missing initialization of owning_mm Greg Kroah-Hartman
2019-03-12 17:06 ` [PATCH 4.20 022/171] riscv: Adjust mmap base address at a third of task size Greg Kroah-Hartman
2019-03-12 17:06 ` [PATCH 4.20 023/171] IB/ipoib: Fix for use-after-free in ipoib_cm_tx_start Greg Kroah-Hartman
2019-03-12 17:06 ` [PATCH 4.20 024/171] selftests: cpu-hotplug: fix case where CPUs offline > CPUs present Greg Kroah-Hartman
2019-03-12 17:06 ` [PATCH 4.20 025/171] xtensa: SMP: fix secondary CPU initialization Greg Kroah-Hartman
2019-03-12 17:06 ` [PATCH 4.20 026/171] xtensa: smp_lx200_defconfig: fix vectors clash Greg Kroah-Hartman
2019-03-12 17:06 ` [PATCH 4.20 027/171] xtensa: SMP: mark each possible CPU as present Greg Kroah-Hartman
2019-03-12 17:06 ` [PATCH 4.20 028/171] iomap: get/put the page in iomap_page_create/release() Greg Kroah-Hartman
2019-03-12 17:06 ` [PATCH 4.20 029/171] iomap: fix a use after free in iomap_dio_rw Greg Kroah-Hartman
2019-03-12 17:06 ` [PATCH 4.20 030/171] xtensa: SMP: limit number of possible CPUs by NR_CPUS Greg Kroah-Hartman
2019-03-12 17:06 ` [PATCH 4.20 031/171] net: altera_tse: fix msgdma_tx_completion on non-zero fill_level case Greg Kroah-Hartman
2019-03-12 17:06 ` [PATCH 4.20 032/171] net: hns: Fix for missing of_node_put() after of_parse_phandle() Greg Kroah-Hartman
2019-03-12 17:06 ` [PATCH 4.20 033/171] net: hns: Restart autoneg need return failed when autoneg off Greg Kroah-Hartman
2019-03-12 17:06 ` [PATCH 4.20 034/171] net: hns: Fix wrong read accesses via Clause 45 MDIO protocol Greg Kroah-Hartman
2019-03-12 17:06 ` [PATCH 4.20 035/171] net: stmmac: dwmac-rk: fix error handling in rk_gmac_powerup() Greg Kroah-Hartman
2019-03-12 17:06 ` [PATCH 4.20 036/171] netfilter: ebtables: compat: un-break 32bit setsockopt when no rules are present Greg Kroah-Hartman
2019-03-12 17:06 ` [PATCH 4.20 037/171] gpio: vf610: Mask all GPIO interrupts Greg Kroah-Hartman
2019-03-12 17:06 ` [PATCH 4.20 038/171] selftests: net: use LDLIBS instead of LDFLAGS Greg Kroah-Hartman
2019-03-12 17:06 ` [PATCH 4.20 039/171] selftests: timers: " Greg Kroah-Hartman
2019-03-12 17:07 ` [PATCH 4.20 040/171] nfs: Fix NULL pointer dereference of dev_name Greg Kroah-Hartman
2019-03-12 17:07 ` [PATCH 4.20 041/171] qed: Fix bug in tx promiscuous mode settings Greg Kroah-Hartman
2019-03-12 17:07 ` [PATCH 4.20 042/171] qed: Fix LACP pdu drops for VFs Greg Kroah-Hartman
2019-03-12 17:07 ` [PATCH 4.20 043/171] qed: Fix VF probe failure while FLR Greg Kroah-Hartman
2019-03-12 17:07 ` [PATCH 4.20 044/171] qed: Fix system crash in ll2 xmit Greg Kroah-Hartman
2019-03-12 17:07 ` [PATCH 4.20 045/171] qed: Fix stack out of bounds bug Greg Kroah-Hartman
2019-03-12 17:07 ` [PATCH 4.20 046/171] scsi: libfc: free skb when receiving invalid flogi resp Greg Kroah-Hartman
2019-03-12 17:07 ` [PATCH 4.20 047/171] scsi: scsi_debug: fix write_same with virtual_gb problem Greg Kroah-Hartman
2019-03-12 17:07 ` [PATCH 4.20 048/171] scsi: bnx2fc: Fix error handling in probe() Greg Kroah-Hartman
2019-03-12 17:07 ` [PATCH 4.20 049/171] scsi: 53c700: pass correct "dev" to dma_alloc_attrs() Greg Kroah-Hartman
2019-03-12 17:07 ` [PATCH 4.20 050/171] platform/x86: Fix unmet dependency warning for ACPI_CMPC Greg Kroah-Hartman
2019-03-12 17:07 ` [PATCH 4.20 051/171] platform/x86: Fix unmet dependency warning for SAMSUNG_Q10 Greg Kroah-Hartman
2019-03-12 17:07 ` [PATCH 4.20 052/171] x86/cpu: Add Atom Tremont (Jacobsville) Greg Kroah-Hartman
2019-03-12 17:07 ` [PATCH 4.20 053/171] net: macb: Apply RXUBR workaround only to versions with errata Greg Kroah-Hartman
2019-03-12 17:07 ` [PATCH 4.20 054/171] x86/boot/compressed/64: Set EFER.LME=1 in 32-bit trampoline before returning to long mode Greg Kroah-Hartman
2019-03-12 17:07 ` [PATCH 4.20 055/171] cifs: fix computation for MAX_SMB2_HDR_SIZE Greg Kroah-Hartman
2019-03-12 17:07 ` [PATCH 4.20 056/171] x86/microcode/amd: Dont falsely trick the late loading mechanism Greg Kroah-Hartman
2019-03-12 17:07 ` [PATCH 4.20 057/171] apparmor: Fix warning about unused function apparmor_ipv6_postroute Greg Kroah-Hartman
2019-03-12 17:07 ` [PATCH 4.20 058/171] arm64: kprobe: Always blacklist the KVM world-switch code Greg Kroah-Hartman
2019-03-12 17:07 ` [PATCH 4.20 059/171] apparmor: Fix aa_label_build() error handling for failed merges Greg Kroah-Hartman
2019-03-12 17:07 ` [PATCH 4.20 060/171] x86/kexec: Dont setup EFI info if EFI runtime is not enabled Greg Kroah-Hartman
2019-03-12 17:07 ` [PATCH 4.20 061/171] proc: fix /proc/net/* after setns(2) Greg Kroah-Hartman
2019-03-12 17:07 ` [PATCH 4.20 062/171] x86_64: increase stack size for KASAN_EXTRA Greg Kroah-Hartman
2019-03-12 17:07 ` [PATCH 4.20 063/171] mm, memory_hotplug: is_mem_section_removable do not pass the end of a zone Greg Kroah-Hartman
2019-03-12 17:07 ` [PATCH 4.20 064/171] mm, memory_hotplug: test_pages_in_a_zone do not pass the end of zone Greg Kroah-Hartman
2019-03-12 17:07 ` [PATCH 4.20 065/171] psi: fix aggregation idle shut-off Greg Kroah-Hartman
2019-03-12 17:07 ` [PATCH 4.20 066/171] lib/test_kmod.c: potential double free in error handling Greg Kroah-Hartman
2019-03-12 17:07 ` [PATCH 4.20 067/171] fs/drop_caches.c: avoid softlockups in drop_pagecache_sb() Greg Kroah-Hartman
2019-03-12 17:07 ` [PATCH 4.20 068/171] autofs: drop dentry reference only when it is never used Greg Kroah-Hartman
2019-03-12 17:07 ` [PATCH 4.20 069/171] autofs: fix error return in autofs_fill_super() Greg Kroah-Hartman
2019-03-12 17:07 ` [PATCH 4.20 070/171] mm, memory_hotplug: fix off-by-one in is_pageblock_removable Greg Kroah-Hartman
2019-03-12 17:07 ` [PATCH 4.20 071/171] ARM: OMAP: dts: N950/N9: fix onenand timings Greg Kroah-Hartman
2019-03-12 17:07 ` [PATCH 4.20 072/171] ARM: dts: omap4-droid4: Fix typo in cpcap IRQ flags Greg Kroah-Hartman
2019-03-12 17:07 ` [PATCH 4.20 073/171] ARM: dts: sun8i: h3: Add ethernet0 alias to Beelink X2 Greg Kroah-Hartman
2019-03-12 17:07 ` [PATCH 4.20 074/171] arm: dts: meson: Fix IRQ trigger type for macirq Greg Kroah-Hartman
2019-03-12 17:07 ` [PATCH 4.20 075/171] ARM: dts: meson8b: odroidc1: mark the SD card detection GPIO active-low Greg Kroah-Hartman
2019-03-12 17:07 ` [PATCH 4.20 076/171] ARM: dts: meson8b: ec100: " Greg Kroah-Hartman
2019-03-12 17:07 ` [PATCH 4.20 077/171] ARM: dts: meson8m2: mxiii-plus: " Greg Kroah-Hartman
2019-03-12 17:07 ` [PATCH 4.20 078/171] signal: Make siginmask safe when passed a signal of 0 Greg Kroah-Hartman
2019-03-12 17:07 ` [PATCH 4.20 079/171] ARM: dts: imx6sx: correct backward compatible of gpt Greg Kroah-Hartman
2019-03-12 17:07 ` [PATCH 4.20 080/171] arm64: dts: renesas: r8a7796: Enable DMA for SCIF2 Greg Kroah-Hartman
2019-03-12 17:07 ` [PATCH 4.20 081/171] arm64: dts: renesas: r8a77965: " Greg Kroah-Hartman
2019-03-12 17:07 ` [PATCH 4.20 082/171] soc: fsl: qbman: avoid race in clearing QMan interrupt Greg Kroah-Hartman
2019-03-12 17:07 ` [PATCH 4.20 083/171] pinctrl: mcp23s08: spi: Fix regmap allocation for mcp23s18 Greg Kroah-Hartman
2019-03-12 17:07 ` [PATCH 4.20 084/171] wlcore: sdio: Fixup power on/off sequence Greg Kroah-Hartman
2019-03-12 17:07 ` [PATCH 4.20 085/171] bpftool: Fix prog dump by tag Greg Kroah-Hartman
2019-03-12 17:07 ` [PATCH 4.20 086/171] bpftool: fix percpu maps updating Greg Kroah-Hartman
2019-03-12 17:07 ` [PATCH 4.20 087/171] bpf: sock recvbuff must be limited by rmem_max in bpf_setsockopt() Greg Kroah-Hartman
2019-03-12 17:07 ` [PATCH 4.20 088/171] ARM: pxa: ssp: unneeded to free devm_ allocated data Greg Kroah-Hartman
2019-03-12 17:07 ` [PATCH 4.20 089/171] ARM: dts: omap3-gta04: Fix graph_port warning Greg Kroah-Hartman
2019-03-12 17:07 ` [PATCH 4.20 090/171] ARM: dts: n900: fix mmc1 card detect gpio polarity Greg Kroah-Hartman
2019-03-12 17:07 ` [PATCH 4.20 091/171] ARM: dts: am335x-shc.dts: fix wrong cd pin level Greg Kroah-Hartman
2019-03-12 17:07 ` [PATCH 4.20 092/171] arm64: dts: add msm8996 compatible to gicv3 Greg Kroah-Hartman
2019-03-12 17:07 ` [PATCH 4.20 093/171] batman-adv: release station info tidstats Greg Kroah-Hartman
2019-03-12 17:07 ` [PATCH 4.20 094/171] MIPS: DTS: jz4740: Correct interrupt number of DMA core Greg Kroah-Hartman
2019-03-12 17:07 ` [PATCH 4.20 095/171] DTS: CI20: Fix bugs in ci20s device tree Greg Kroah-Hartman
2019-03-12 17:07 ` [PATCH 4.20 096/171] usb: phy: fix link errors Greg Kroah-Hartman
2019-03-12 17:07 ` [PATCH 4.20 097/171] usb: dwc3: exynos: Fix error handling of clk_prepare_enable Greg Kroah-Hartman
2019-03-12 17:07 ` [PATCH 4.20 098/171] irqchip/gic-v4: Fix occasional VLPI drop Greg Kroah-Hartman
2019-03-12 17:07 ` [PATCH 4.20 099/171] irqchip/gic-v3-its: Gracefully fail on LPI exhaustion Greg Kroah-Hartman
2019-03-12 17:08 ` [PATCH 4.20 100/171] irqchip/mmp: Only touch the PJ4 IRQ & FIQ bits on enable/disable Greg Kroah-Hartman
2019-03-12 17:08 ` [PATCH 4.20 101/171] drm/amdgpu: Add missing power attribute to APU check Greg Kroah-Hartman
2019-03-12 17:08 ` [PATCH 4.20 102/171] drm/radeon: check if device is root before getting pci speed caps Greg Kroah-Hartman
2019-03-12 17:08 ` [PATCH 4.20 103/171] drm/amdgpu: Transfer fences to dmabuf importer Greg Kroah-Hartman
2019-03-12 17:08 ` [PATCH 4.20 104/171] net: stmmac: Fallback to Platform Data clock in Watchdog conversion Greg Kroah-Hartman
2019-03-12 17:08 ` [PATCH 4.20 105/171] net: stmmac: Send TSO packets always from Queue 0 Greg Kroah-Hartman
2019-04-08 20:22 ` Ben Hutchings
2019-03-12 17:08 ` [PATCH 4.20 106/171] net: stmmac: Disable EEE mode earlier in XMIT callback Greg Kroah-Hartman
2019-03-12 17:08 ` [PATCH 4.20 107/171] irqchip/gic-v3-its: Fix ITT_entry_size accessor Greg Kroah-Hartman
2019-03-12 17:08 ` [PATCH 4.20 108/171] relay: check return of create_buf_file() properly Greg Kroah-Hartman
2019-03-12 17:08 ` [PATCH 4.20 109/171] ath10k: correct bus type for WCN3990 Greg Kroah-Hartman
2019-03-12 17:08 ` [PATCH 4.20 110/171] bpf, selftests: fix handling of sparse CPU allocations Greg Kroah-Hartman
2019-03-12 17:08 ` [PATCH 4.20 111/171] bpf: run bpf programs with preemption disabled Greg Kroah-Hartman
2019-03-12 17:08 ` [PATCH 4.20 112/171] bpf: fix lockdep false positive in percpu_freelist Greg Kroah-Hartman
2019-03-12 17:08 ` [PATCH 4.20 113/171] bpf: fix potential deadlock in bpf_prog_register Greg Kroah-Hartman
2019-03-12 17:08 ` [PATCH 4.20 114/171] bpf: Fix syscalls stackmap lookup potential deadlock Greg Kroah-Hartman
2019-03-12 17:08 ` [PATCH 4.20 115/171] drm/amdgpu: Implement doorbell self-ring for NBIO 7.4 Greg Kroah-Hartman
2019-03-12 17:08 ` [PATCH 4.20 116/171] drm/amdgpu: fix the incorrect external id for raven series Greg Kroah-Hartman
2019-03-12 17:08 ` [PATCH 4.20 117/171] drm/sun4i: tcon: Prepare and enable TCON channel 0 clock at init Greg Kroah-Hartman
2019-03-12 17:08 ` [PATCH 4.20 118/171] dmaengine: at_xdmac: Fix wrongfull report of a channel as in use Greg Kroah-Hartman
2019-03-12 17:08 ` [PATCH 4.20 119/171] vsock/virtio: fix kernel panic after device hot-unplug Greg Kroah-Hartman
2019-03-12 17:08 ` [PATCH 4.20 120/171] vsock/virtio: reset connected sockets on device removal Greg Kroah-Hartman
2019-03-12 17:08 ` [PATCH 4.20 121/171] dmaengine: dmatest: Abort test in case of mapping error Greg Kroah-Hartman
2019-03-12 17:08 ` [PATCH 4.20 122/171] selftests: netfilter: fix config fragment CONFIG_NF_TABLES_INET Greg Kroah-Hartman
2019-03-12 17:08 ` [PATCH 4.20 123/171] selftests: netfilter: add simple masq/redirect test cases Greg Kroah-Hartman
2019-03-12 17:08 ` [PATCH 4.20 124/171] netfilter: nf_nat: skip nat clash resolution for same-origin entries Greg Kroah-Hartman
2019-03-12 17:08 ` [PATCH 4.20 125/171] s390/qeth: release cmd buffer in error paths Greg Kroah-Hartman
2019-03-12 17:08 ` [PATCH 4.20 126/171] s390/qeth: fix use-after-free in error path Greg Kroah-Hartman
2019-03-12 17:08 ` [PATCH 4.20 127/171] s390/qeth: cancel close_dev work before removing a card Greg Kroah-Hartman
2019-03-12 17:08 ` [PATCH 4.20 128/171] s390/qeth: conclude all event processing before offlining " Greg Kroah-Hartman
2019-03-12 17:08 ` [PATCH 4.20 129/171] perf symbols: Filter out hidden symbols from labels Greg Kroah-Hartman
2019-03-12 17:08 ` [PATCH 4.20 130/171] perf trace: Support multiple "vfs_getname" probes Greg Kroah-Hartman
2019-03-12 17:08 ` [PATCH 4.20 131/171] MIPS: Loongson: Introduce and use loongson_llsc_mb() Greg Kroah-Hartman
2019-03-12 17:08 ` [PATCH 4.20 132/171] MIPS: Remove function size check in get_frame_info() Greg Kroah-Hartman
2019-03-12 17:08 ` [PATCH 4.20 133/171] Revert "scsi: libfc: Add WARN_ON() when deleting rports" Greg Kroah-Hartman
2019-03-12 17:08 ` [PATCH 4.20 134/171] i2c: omap: Use noirq system sleep pm ops to idle device for suspend Greg Kroah-Hartman
2019-03-12 17:08 ` [PATCH 4.20 135/171] drm/amdgpu: use spin_lock_irqsave to protect vm_manager.pasid_idr Greg Kroah-Hartman
2019-03-12 17:08 ` [PATCH 4.20 136/171] drm/omap: dsi: Fix crash in DSI debug dumps Greg Kroah-Hartman
2019-03-12 17:08 ` [PATCH 4.20 137/171] drm/omap: dsi: Fix OF platform depopulate Greg Kroah-Hartman
2019-03-12 17:08 ` [PATCH 4.20 138/171] drm/omap: dsi: Hack-fix DSI bus flags Greg Kroah-Hartman
2019-03-12 17:08 ` [PATCH 4.20 139/171] nvme: lock NS list changes while handling command effects Greg Kroah-Hartman
2019-03-12 17:08 ` [PATCH 4.20 140/171] nvme-pci: fix rapid add remove sequence Greg Kroah-Hartman
2019-03-12 17:08 ` [PATCH 4.20 141/171] fs: ratelimit __find_get_block_slow() failure message Greg Kroah-Hartman
2019-03-12 17:08 ` [PATCH 4.20 142/171] qed: Fix EQ full firmware assert Greg Kroah-Hartman
2019-03-12 17:08 ` [PATCH 4.20 143/171] qed: Consider TX tcs while deriving the max num_queues for PF Greg Kroah-Hartman
2019-03-12 17:08 ` [PATCH 4.20 144/171] qede: Fix system crash on configuring channels Greg Kroah-Hartman
2019-03-12 17:08 ` [PATCH 4.20 145/171] blk-iolatency: fix IO hang due to negative inflight counter Greg Kroah-Hartman
2019-03-12 17:08 ` [PATCH 4.20 146/171] nvme-pci: add missing unlock for reset error Greg Kroah-Hartman
2019-03-12 17:08 ` [PATCH 4.20 147/171] netfilter: nf_tables: unbind set in rule from commit path Greg Kroah-Hartman
2019-03-12 17:08 ` [PATCH 4.20 148/171] netfilter: nft_compat: dont use refcount_inc on newly allocated entry Greg Kroah-Hartman
2019-03-12 17:08 ` [PATCH 4.20 149/171] Input: wacom_serial4 - add support for Wacom ArtPad II tablet Greg Kroah-Hartman
2019-03-12 17:08 ` [PATCH 4.20 150/171] Input: elan_i2c - add id for touchpad found in Lenovo s21e-20 Greg Kroah-Hartman
2019-03-12 17:08 ` [PATCH 4.20 151/171] iscsi_ibft: Fix missing break in switch statement Greg Kroah-Hartman
2019-03-12 17:08 ` [PATCH 4.20 152/171] scsi: aacraid: " Greg Kroah-Hartman
2019-03-12 17:08 ` [PATCH 4.20 153/171] x86/PCI: Fixup RTIT_BAR of Intel Denverton Trace Hub Greg Kroah-Hartman
2019-03-12 17:08 ` [PATCH 4.20 154/171] arm64: dts: zcu100-revC: Give wifi some time after power-on Greg Kroah-Hartman
2019-03-12 17:08 ` [PATCH 4.20 155/171] arm64: dts: hikey: " Greg Kroah-Hartman
2019-03-12 17:08 ` [PATCH 4.20 156/171] arm64: dts: hikey: Revert "Enable HS200 mode on eMMC" Greg Kroah-Hartman
2019-03-12 17:08 ` [PATCH 4.20 157/171] ARM: dts: exynos: Fix pinctrl definition for eMMC RTSN line on Odroid X2/U3 Greg Kroah-Hartman
2019-03-12 17:08 ` [PATCH 4.20 158/171] ARM: dts: exynos: Add minimal clkout parameters to Exynos3250 PMU Greg Kroah-Hartman
2019-03-12 17:08 ` [PATCH 4.20 159/171] ARM: dts: exynos: Fix max voltage for buck8 regulator on Odroid XU3/XU4 Greg Kroah-Hartman
2019-03-12 17:09 ` [PATCH 4.20 160/171] drm: disable uncached DMA optimization for ARM and arm64 Greg Kroah-Hartman
2019-03-12 17:09 ` [PATCH 4.20 161/171] media: Revert "media: rc: some events are dropped by userspace" Greg Kroah-Hartman
2019-03-12 17:09 ` [PATCH 4.20 162/171] Revert "PCI/PME: Implement runtime PM callbacks" Greg Kroah-Hartman
2019-03-12 17:09 ` [PATCH 4.20 163/171] sk_msg: Always cancel strp work before freeing the psock Greg Kroah-Hartman
2019-03-12 17:09 ` [PATCH 4.20 164/171] bpf: Stop the psock parser before canceling its work Greg Kroah-Hartman
2019-03-12 17:09 ` [PATCH 4.20 165/171] gfs2: Fix missed wakeups in find_insert_glock Greg Kroah-Hartman
2019-03-12 17:09 ` [PATCH 4.20 166/171] staging: erofs: keep corrupted fs from crashing kernel in erofs_namei() Greg Kroah-Hartman
2019-03-12 17:09 ` [PATCH 4.20 167/171] ath9k: Avoid OF no-EEPROM quirks without qca,no-eeprom Greg Kroah-Hartman
2019-03-12 17:09 ` [PATCH 4.20 168/171] perf/x86/intel: Make cpuc allocations consistent Greg Kroah-Hartman
2019-03-12 17:09 ` [PATCH 4.20 169/171] perf/x86/intel: Generalize dynamic constraint creation Greg Kroah-Hartman
2019-03-12 17:09 ` [PATCH 4.20 170/171] x86: Add TSX Force Abort CPUID/MSR Greg Kroah-Hartman
2019-03-12 17:09 ` [PATCH 4.20 171/171] perf/x86/intel: Implement support for TSX Force Abort Greg Kroah-Hartman
2019-03-13 11:54 ` [PATCH 4.20 000/171] 4.20.16-stable review Naresh Kamboju
2019-03-13 20:56 ` Greg Kroah-Hartman
2019-03-13 17:36 ` Jon Hunter
2019-03-13 20:56 ` Greg Kroah-Hartman
2019-03-13 20:35 ` Guenter Roeck
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=20190312170348.325739242@linuxfoundation.org \
--to=gregkh@linuxfoundation.org \
--cc=ap420073@gmail.com \
--cc=fw@strlen.de \
--cc=linux-kernel@vger.kernel.org \
--cc=pablo@netfilter.org \
--cc=sashal@kernel.org \
--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).