summaryrefslogtreecommitdiff
path: root/samples/bpf/xdp1_user.c
diff options
context:
space:
mode:
authorAndy Gospodarek <andy@greyhouse.net>2017-05-11 22:52:30 +0300
committerDavid S. Miller <davem@davemloft.net>2017-05-12 04:43:30 +0300
commitad990dbe6d3ac3af1f5f4484b1126b9fc601e98a (patch)
treedd21487768f0a759ea6c2432c58e4a459fc9e183 /samples/bpf/xdp1_user.c
parentd2be3667f3769b3c60aa294ef7f2b03d1b16559c (diff)
downloadlinux-ad990dbe6d3ac3af1f5f4484b1126b9fc601e98a.tar.xz
samples/bpf: run cleanup routines when receiving SIGTERM
Shahid Habib noticed that when xdp1 was killed from a different console the xdp program was not cleaned-up properly in the kernel and it continued to forward traffic. Most of the applications in samples/bpf cleanup properly, but only when getting SIGINT. Since kill defaults to using SIGTERM, add support to cleanup when the application receives either SIGINT or SIGTERM. Signed-off-by: Andy Gospodarek <andy@greyhouse.net> Reported-by: Shahid Habib <shahid.habib@broadcom.com> Acked-by: Alexei Starovoitov <ast@kernel.org> Acked-by: Daniel Borkmann <daniel@iogearbox.net> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'samples/bpf/xdp1_user.c')
-rw-r--r--samples/bpf/xdp1_user.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/samples/bpf/xdp1_user.c b/samples/bpf/xdp1_user.c
index 17be9ea3ecb2..2431c0321b71 100644
--- a/samples/bpf/xdp1_user.c
+++ b/samples/bpf/xdp1_user.c
@@ -106,6 +106,7 @@ int main(int argc, char **argv)
}
signal(SIGINT, int_exit);
+ signal(SIGTERM, int_exit);
if (set_link_xdp_fd(ifindex, prog_fd[0], xdp_flags) < 0) {
printf("link set xdp fd failed\n");