From: Florian Westphal Date: Sun, 27 May 2018 09:24:34 +0000 (+0200) Subject: netfilter: nf_tables: fail batch if fatal signal is pending X-Git-Tag: Ubuntu-5.10.0-12.13~7703^2~78^2~11 X-Git-Url: https://git.proxmox.com/?a=commitdiff_plain;h=8a3d4c361224353435fb04b1790f498f500bc7fb;p=mirror_ubuntu-hirsute-kernel.git netfilter: nf_tables: fail batch if fatal signal is pending abort batch processing and return so task can exit faster. Otherwise even SIGKILL has no immediate effect. Signed-off-by: Florian Westphal Signed-off-by: Pablo Neira Ayuso --- diff --git a/net/netfilter/nfnetlink.c b/net/netfilter/nfnetlink.c index 88c9e222b670..5a1bd23af1a3 100644 --- a/net/netfilter/nfnetlink.c +++ b/net/netfilter/nfnetlink.c @@ -25,6 +25,7 @@ #include #include #include +#include #include #include @@ -330,6 +331,13 @@ replay: while (skb->len >= nlmsg_total_size(0)) { int msglen, type; + if (fatal_signal_pending(current)) { + nfnl_err_reset(&err_list); + err = -EINTR; + status = NFNL_BATCH_FAILURE; + goto done; + } + memset(&extack, 0, sizeof(extack)); nlh = nlmsg_hdr(skb); err = 0;