netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* bpfilter causes a leftover kernel process
@ 2018-08-26 16:08 Olivier Brunel
  2018-08-27 16:31 ` Olivier Brunel
  0 siblings, 1 reply; 13+ messages in thread
From: Olivier Brunel @ 2018-08-26 16:08 UTC (permalink / raw)
  To: netdev

Hi,

(Please cc me as I'm not subscribed to the list, thanks.)

I'm running an Arch Linux x86_64 system, and recently updated to a 3.18
kernel, which led me to encounter what I believe to be a kernel bug
related to the bpfilter framework.

What happens is that upon boot, there's a "leftover kernel process"
running (shown as "[none]" in ps), which doesn't seem to do anything
(anymore) but does have references/fds open to the root fs, and so when
trying to shutdown the system umounting the root fs fails (EBUSY)
because of it, leading to expected issues.

Simply killing that process allows umounting the root fs fine and
"resolves" all issues. This process/behavior wasn't there with any
previous kernel, and is there with all tried kernels from 4.18.0 to
4.18.4, without any other change to the system -- although this is due
to CONFIG_BPFILTER=y in the kernel config.

Indeed I managed to compile a kernel 4.18.4 myself using the Arch Linux
config[1] with a single change of unsetting CONFIG_BPFILTER, and with
the resulting kernel I don't have this "leftover kernel process"
anymore, everything is back to normal.

Now, about this process, here's a few outputs to try and describe what
it is:

rafus# pgrep none
920

rafus# cd /proc/920

rafus# readlink exe
/ (deleted)

rafus# ls -l fd
total 0
lr-x------ 1 root root 64 Aug 26 17:17 0 -> 'pipe:[13366]'
l-wx------ 1 root root 64 Aug 26 17:17 1 -> 'pipe:[13367]'
lrwx------ 1 root root 64 Aug 26 17:17 2 -> /dev/console

rafus# cat status
Name:	none
Umask:	0022
State:	S (sleeping)
Tgid:	920
Ngid:	0
Pid:	920
PPid:	2
TracerPid:	0
Uid:	0	0	0	0
Gid:	0	0	0	0
FDSize:	64
Groups:	 
NStgid:	920
NSpid:	920
NSpgid:	0
NSsid:	0
VmPeak:	    2296 kB
VmSize:	    2296 kB
VmLck:	       0 kB
VmPin:	       0 kB
VmHWM:	     748 kB
VmRSS:	     748 kB
RssAnon:	      60 kB
RssFile:	     684 kB
RssShmem:	       4 kB
VmData:	     176 kB
VmStk:	     132 kB
VmExe:	       8 kB
VmLib:	    1452 kB
VmPTE:	      44 kB
VmSwap:	       0 kB
HugetlbPages:	       0 kB
CoreDumping:	0
Threads:	1
SigQ:	0/7861
SigPnd:	0000000000000000
ShdPnd:	0000000000000000
SigBlk:	0000000000000000
SigIgn:	0000000000000000
SigCgt:	0000000000000000
CapInh:	0000000000000000
CapPrm:	0000003fffffffff
CapEff:	0000003fffffffff
CapBnd:	0000003fffffffff
CapAmb:	0000000000000000
NoNewPrivs:	0
Seccomp:	0
Speculation_Store_Bypass:	vulnerable
Cpus_allowed:	1
Cpus_allowed_list:	0
Mems_allowed:	00000001
Mems_allowed_list:	0
voluntary_ctxt_switches:	65
nonvoluntary_ctxt_switches:	1

rafus# cat stack
[<0>] pipe_wait+0x6c/0xb0
[<0>] pipe_read+0x20a/0x2d0
[<0>] __vfs_read+0x13a/0x180
[<0>] vfs_read+0x8a/0x130
[<0>] ksys_read+0x4f/0xb0
[<0>] do_syscall_64+0x5b/0x170
[<0>] entry_SYSCALL_64_after_hwframe+0x44/0xa9
[<0>] 0xffffffffffffffff

rafus# file -L exe
exe: ELF 64-bit LSB pie executable x86-64, version 1 (SYSV),
dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for
GNU/Linux 3.2.0,
BuildID[sha1]=b247cedd3f8daaea3eee38477aa641d84b77f0ba, not stripped

rafus# stat -L exe
  File: exe
  Size: 16832     	Blocks: 40         IO Block: 4096   regular
file Device: 1h/1d	Inode: 13361       Links: 0
Access: (0777/-rwxrwxrwx)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2018-08-26 17:17:37.334261924 +0200
Modify: 2018-08-26 17:14:27.787595262 +0200
Change: 2018-08-26 17:14:27.787595262 +0200
 Birth: -

rafus# sha1sum exe
723d59584abe5e1e9917f0ec41d7e9120514afe7  exe

rafus# strings exe|grep bpf
Started bpfilter


I'm not actually sure what the process is, I'm guessing some kind of
helper is spawned at some point during boot, and for some reason it
never ends.

Although I can reproduce it (it happens on every boot with a kernel
4.18 and CONFIG_BPFILTER=y), I'm unfortunately not sure what is
actually needed to be done in order to trigger it.
I don't use bpfilter myself/directly, as said this happens with the
exact same system as with previous kernels, but I obviously have some
network configuration (done using iptables/iproute2) set up during boot.

Let me know if you need more information or need me to test things, and
I'll do my best.

Thank you.


[1]
https://git.archlinux.org/svntogit/packages.git/tree/trunk?h=packages/linux

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: bpfilter causes a leftover kernel process
  2018-08-26 16:08 bpfilter causes a leftover kernel process Olivier Brunel
@ 2018-08-27 16:31 ` Olivier Brunel
  2018-08-28  3:35   ` Alexei Starovoitov
  0 siblings, 1 reply; 13+ messages in thread
From: Olivier Brunel @ 2018-08-27 16:31 UTC (permalink / raw)
  To: netdev; +Cc: Olivier Brunel


Small addentum: Of course I failed to realize this bpfilter helper is
also mentioned in the kernel log:

kern.info: [    8.997711] bpfilter: Loaded bpfilter_umh pid 920


It also seems to be absolutely required when CONFIG_BPFILTER is
enabled, that is I tried blacklisting the module bpfilter, but then
other things (e.g. iptables-restore) just fail to work.

So the process is required, never ends and prevents umouting the
rootfs on shutdown. Unless I'm missing something, there's definitely a
bug there?

Thanks,

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: bpfilter causes a leftover kernel process
  2018-08-27 16:31 ` Olivier Brunel
@ 2018-08-28  3:35   ` Alexei Starovoitov
  2018-08-28 11:23     ` Olivier Brunel
  2018-09-05 15:52     ` Olivier Brunel
  0 siblings, 2 replies; 13+ messages in thread
From: Alexei Starovoitov @ 2018-08-28  3:35 UTC (permalink / raw)
  To: Olivier Brunel; +Cc: netdev, daniel

On Mon, Aug 27, 2018 at 06:31:22PM +0200, Olivier Brunel wrote:
> 
> So the process is required, never ends and prevents umouting the

it's not required. It's not doing anything useful at the moment
and defaults to 'n' in kconfig. Please disable it your kernel.

> rootfs on shutdown. Unless I'm missing something, there's definitely a
> bug there?

I'm also running Arch Linux in my VM, but I'm not able to reproduce umount issue.
I'm guessing it's somehow related to non-static build and libc.so being busy
with old systemd.
Typical shutdown should have done:
[   73.498022] shutdown[1]: Sending SIGTERM to remaining processes...
[   73.505501] shutdown[1]: Sending SIGKILL to remaining processes...
[   73.512783] shutdown[1]: Unmounting file systems.
And at the time of umount / no processes are alive other than systemd.

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: bpfilter causes a leftover kernel process
  2018-08-28  3:35   ` Alexei Starovoitov
@ 2018-08-28 11:23     ` Olivier Brunel
  2018-08-29  5:35       ` Alexei Starovoitov
  2018-09-05 15:52     ` Olivier Brunel
  1 sibling, 1 reply; 13+ messages in thread
From: Olivier Brunel @ 2018-08-28 11:23 UTC (permalink / raw)
  To: Alexei Starovoitov; +Cc: netdev, daniel

On Mon, 27 Aug 2018 20:35:02 -0700
Alexei Starovoitov <alexei.starovoitov@gmail.com> wrote:

> I'm also running Arch Linux in my VM, but I'm not able to reproduce
> umount issue. I'm guessing it's somehow related to non-static build
> and libc.so being busy with old systemd.

Oh, I mentioned it in a previous draft of my original mail but it
seems it got lost in rewrites, I don't actually use systemd. Not that
it should matter here though.


> Typical shutdown should have done:
> [   73.498022] shutdown[1]: Sending SIGTERM to remaining processes...
> [   73.505501] shutdown[1]: Sending SIGKILL to remaining processes...
> [   73.512783] shutdown[1]: Unmounting file systems.
> And at the time of umount / no processes are alive other than systemd.

Yeah, I have a similar thing happening on shutdown, except that we're
talking about a kernel thread here, so that process is ignored by the
mentionned killing spree as a result, thus leaving that process running.

>From a shell opened after the umounting fails I can see that only my
pid1 & the opened shell are running, except of course that this
bpfilter process is there, as a kernel thread "[none]"

Manually killing it at that point works, i.e. allows the umounting to
succeed and a proper shutdown to complete.

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: bpfilter causes a leftover kernel process
  2018-08-28 11:23     ` Olivier Brunel
@ 2018-08-29  5:35       ` Alexei Starovoitov
  2018-08-29 16:21         ` Olivier Brunel
  0 siblings, 1 reply; 13+ messages in thread
From: Alexei Starovoitov @ 2018-08-29  5:35 UTC (permalink / raw)
  To: Olivier Brunel; +Cc: netdev, daniel

On Tue, Aug 28, 2018 at 01:23:38PM +0200, Olivier Brunel wrote:
> On Mon, 27 Aug 2018 20:35:02 -0700
> Alexei Starovoitov <alexei.starovoitov@gmail.com> wrote:
> 
> > I'm also running Arch Linux in my VM, but I'm not able to reproduce
> > umount issue. I'm guessing it's somehow related to non-static build
> > and libc.so being busy with old systemd.
> 
> Oh, I mentioned it in a previous draft of my original mail but it
> seems it got lost in rewrites, I don't actually use systemd. Not that
> it should matter here though.
> 
> 
> > Typical shutdown should have done:
> > [   73.498022] shutdown[1]: Sending SIGTERM to remaining processes...
> > [   73.505501] shutdown[1]: Sending SIGKILL to remaining processes...
> > [   73.512783] shutdown[1]: Unmounting file systems.
> > And at the time of umount / no processes are alive other than systemd.
> 
> Yeah, I have a similar thing happening on shutdown, except that we're
> talking about a kernel thread here, so that process is ignored by the
> mentionned killing spree as a result, thus leaving that process running.

it's not a kernel thread and sounds like there is a bug in your pid 1
that is worth fixing.

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: bpfilter causes a leftover kernel process
  2018-08-29  5:35       ` Alexei Starovoitov
@ 2018-08-29 16:21         ` Olivier Brunel
  0 siblings, 0 replies; 13+ messages in thread
From: Olivier Brunel @ 2018-08-29 16:21 UTC (permalink / raw)
  To: Alexei Starovoitov; +Cc: netdev, daniel

On Tue, 28 Aug 2018 22:35:38 -0700
Alexei Starovoitov <alexei.starovoitov@gmail.com> wrote:

> > Yeah, I have a similar thing happening on shutdown, except that
> > we're talking about a kernel thread here, so that process is
> > ignored by the mentionned killing spree as a result, thus leaving
> > that process running.  
> 
> it's not a kernel thread and sounds like there is a bug in your pid 1
> that is worth fixing.
 
Well, it sure does look like one. By which I mean that looking at
its /proc/$PID entry, one can see that it has an empty command line and
kthreadd as parent (ppid 2), which usually are only true for kernel
threads (unless I'm mistaken).

The tool I'm using to send the signals on shutdown does indeed not use
kill(-1,sig) but instead scans /proc and determines whether or not to
signal a process (thus allowing to ignore a few specific processes to
be killed later on).

Kernel threads are obviously to be skipped, and to identify them it
uses the classic method of checking whether or not it has an empty
command line. As I said, this bpfilter helper does and that's why it is
considered a kernel thread & thus not killed.

This is also what other tools do, like ps or top, which is indeed why
they also show it as a kernel thread ("[none]").

So is this way of doing this wrong? And if so, what would be a better
way to identify kernel threads?

Out of curiosity I also had a look at how systemd does things, and it
looks to me like it does the exact same thing[1], also identifying
kernel threads by their empty command line. So I would think that a
similar issue could be observed under systemd as well.

Thanks.


[1]
https://github.com/systemd/systemd/blob/master/src/core/killall.c#L44

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: bpfilter causes a leftover kernel process
  2018-08-28  3:35   ` Alexei Starovoitov
  2018-08-28 11:23     ` Olivier Brunel
@ 2018-09-05 15:52     ` Olivier Brunel
  2018-10-16 16:38       ` Alexei Starovoitov
  1 sibling, 1 reply; 13+ messages in thread
From: Olivier Brunel @ 2018-09-05 15:52 UTC (permalink / raw)
  To: Alexei Starovoitov; +Cc: netdev, daniel

Hi,

Quick follow-up on this:

- first off, Arch devs have updated their kernel config so the next
  kernel will not have bpfilter enabled anymore, thus avoiding any
  issue.

- having said that, I've found a neasy way to reproduce it in an Arch
  VM, in case you're interested :

Boot the latest Arch ISO[1] which now contains a kernel 4.18.5 and do a
very basic installation, pretty much just:

# pacstrap /mnt base
# genfstab -U /mnt >> /mnt/etc/fstab

And of course install your boot loader of choice.

Then boot the brand new system, log in and make sure the helper is
actually started, i.e. `modprobe bpfilter` -- Now halt.

You'll see in the end that systemd complains that it can't
unmount /oldroot (EBUSY), aka the root fs; and that's because of the
bpfilter helper, which wasn't killed because it's seen as a kernel
thread due to its empty command line and therefore not signaled.


Cheers,



[1] https://www.archlinux.org/download/

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: bpfilter causes a leftover kernel process
  2018-09-05 15:52     ` Olivier Brunel
@ 2018-10-16 16:38       ` Alexei Starovoitov
  2018-10-20 17:39         ` [PATCH 0/2] " Olivier Brunel
  0 siblings, 1 reply; 13+ messages in thread
From: Alexei Starovoitov @ 2018-10-16 16:38 UTC (permalink / raw)
  To: Olivier Brunel; +Cc: Network Development, Daniel Borkmann

On Wed, Sep 5, 2018 at 5:05 PM Olivier Brunel <jjk@jjacky.com> wrote:
>
> You'll see in the end that systemd complains that it can't
> unmount /oldroot (EBUSY), aka the root fs; and that's because of the
> bpfilter helper, which wasn't killed because it's seen as a kernel
> thread due to its empty command line and therefore not signaled.

thanks for tracking it down.
can somebody send a patch to give bpfilter non-empty cmdline?
I think that would be a better fix than tweaking all pid1s.

^ permalink raw reply	[flat|nested] 13+ messages in thread

* [PATCH 0/2] Re: bpfilter causes a leftover kernel process
  2018-10-16 16:38       ` Alexei Starovoitov
@ 2018-10-20 17:39         ` Olivier Brunel
  2018-10-20 17:39           ` [PATCH 1/2] umh: Add command line to user mode helpers Olivier Brunel
  2018-10-20 17:39           ` [PATCH 2/2] net: bpfilter: Set user mode helper's command line Olivier Brunel
  0 siblings, 2 replies; 13+ messages in thread
From: Olivier Brunel @ 2018-10-20 17:39 UTC (permalink / raw)
  To: Network Development
  Cc: Alexei Starovoitov, Daniel Borkmann, Luis R . Rodriguez,
	linux-kernel, David S . Miller, Olivier Brunel

On Tue, 16 Oct 2018 16:38:56 +0000
Alexei Starovoitov <alexei.starovoitov@gmail.com> wrote:

> On Wed, Sep 5, 2018 at 5:05 PM Olivier Brunel <jjk@jjacky.com> wrote:
> >
> > You'll see in the end that systemd complains that it can't
> > unmount /oldroot (EBUSY), aka the root fs; and that's because of the
> > bpfilter helper, which wasn't killed because it's seen as a kernel
> > thread due to its empty command line and therefore not signaled.  
> 
> thanks for tracking it down.
> can somebody send a patch to give bpfilter non-empty cmdline?
> I think that would be a better fix than tweaking all pid1s.

So I'm not a kernel dev and this would be my first atttempt at a kernel patch,
but I did have a look and came up with the following patch(es) to fix this.
Hopefully I did things right.

It adds a default command line ("usermodehelper") to such processes, so any &
all such helpers will be seen as user process and not kernel threads, but
there's also the possibility to specify a command line to use, here
"bpfilter_umh"

Cheers,


Olivier Brunel (2):
  umh: Add command line to user mode helpers
  net: bpfilter: Set user mode helper's command line

 include/linux/umh.h          |  1 +
 kernel/umh.c                 | 16 ++++++++++++++--
 net/bpfilter/bpfilter_kern.c |  1 +
 3 files changed, 16 insertions(+), 2 deletions(-)

-- 
2.19.0

^ permalink raw reply	[flat|nested] 13+ messages in thread

* [PATCH 1/2] umh: Add command line to user mode helpers
  2018-10-20 17:39         ` [PATCH 0/2] " Olivier Brunel
@ 2018-10-20 17:39           ` Olivier Brunel
  2018-10-23  2:37             ` David Miller
  2018-10-20 17:39           ` [PATCH 2/2] net: bpfilter: Set user mode helper's command line Olivier Brunel
  1 sibling, 1 reply; 13+ messages in thread
From: Olivier Brunel @ 2018-10-20 17:39 UTC (permalink / raw)
  To: Network Development
  Cc: Alexei Starovoitov, Daniel Borkmann, Luis R . Rodriguez,
	linux-kernel, David S . Miller, Olivier Brunel

User mode helpers were spawned without a command line, and because
an empty command line is used by many tools to identify processes as
kernel threads, this could cause some issues.

Notably during killing spree on shutdown, since such helper would then
be skipped (i.e. not killed) which would result in the process remaining
alive, and thus preventing unmouting of the rootfs (as experienced with
the bpfilter umh).

Fixes: 449325b52b7a ("umh: introduce fork_usermode_blob() helper")
Signed-off-by: Olivier Brunel <jjk@jjacky.com>
---
 include/linux/umh.h |  1 +
 kernel/umh.c        | 16 ++++++++++++++--
 2 files changed, 15 insertions(+), 2 deletions(-)

diff --git a/include/linux/umh.h b/include/linux/umh.h
index 5c812acbb..235f51b62 100644
--- a/include/linux/umh.h
+++ b/include/linux/umh.h
@@ -44,6 +44,7 @@ struct subprocess_info *call_usermodehelper_setup_file(struct file *file,
 			  int (*init)(struct subprocess_info *info, struct cred *new),
 			  void (*cleanup)(struct subprocess_info *), void *data);
 struct umh_info {
+	const char *cmdline;
 	struct file *pipe_to_umh;
 	struct file *pipe_from_umh;
 	pid_t pid;
diff --git a/kernel/umh.c b/kernel/umh.c
index c44985894..0baa672e0 100644
--- a/kernel/umh.c
+++ b/kernel/umh.c
@@ -405,11 +405,19 @@ struct subprocess_info *call_usermodehelper_setup_file(struct file *file,
 		void (*cleanup)(struct subprocess_info *info), void *data)
 {
 	struct subprocess_info *sub_info;
+	struct umh_info *info = data;
+	const char *cmdline = (info->cmdline) ? info->cmdline : "usermodehelper";
 
 	sub_info = kzalloc(sizeof(struct subprocess_info), GFP_KERNEL);
 	if (!sub_info)
 		return NULL;
 
+	sub_info->argv = argv_split(GFP_KERNEL, cmdline, NULL);
+	if (!sub_info->argv) {
+		kfree(sub_info);
+		return NULL;
+	}
+
 	INIT_WORK(&sub_info->work, call_usermodehelper_exec_work);
 	sub_info->path = "none";
 	sub_info->file = file;
@@ -458,10 +466,11 @@ static int umh_pipe_setup(struct subprocess_info *info, struct cred *new)
 	return 0;
 }
 
-static void umh_save_pid(struct subprocess_info *info)
+static void umh_clean_and_save_pid(struct subprocess_info *info)
 {
 	struct umh_info *umh_info = info->data;
 
+	argv_free(info->argv);
 	umh_info->pid = info->pid;
 }
 
@@ -471,6 +480,9 @@ static void umh_save_pid(struct subprocess_info *info)
  * @len: length of the blob
  * @info: information about usermode process (shouldn't be NULL)
  *
+ * If info->cmdline is set it will be used as command line for the
+ * user process, else "usermodehelper" is used.
+ *
  * Returns either negative error or zero which indicates success
  * in executing a blob of bytes as a usermode process. In such
  * case 'struct umh_info *info' is populated with two pipes
@@ -500,7 +512,7 @@ int fork_usermode_blob(void *data, size_t len, struct umh_info *info)
 
 	err = -ENOMEM;
 	sub_info = call_usermodehelper_setup_file(file, umh_pipe_setup,
-						  umh_save_pid, info);
+						  umh_clean_and_save_pid, info);
 	if (!sub_info)
 		goto out;
 
-- 
2.19.0

^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [PATCH 2/2] net: bpfilter: Set user mode helper's command line
  2018-10-20 17:39         ` [PATCH 0/2] " Olivier Brunel
  2018-10-20 17:39           ` [PATCH 1/2] umh: Add command line to user mode helpers Olivier Brunel
@ 2018-10-20 17:39           ` Olivier Brunel
  2018-10-23  2:37             ` David Miller
  1 sibling, 1 reply; 13+ messages in thread
From: Olivier Brunel @ 2018-10-20 17:39 UTC (permalink / raw)
  To: Network Development
  Cc: Alexei Starovoitov, Daniel Borkmann, Luis R . Rodriguez,
	linux-kernel, David S . Miller, Olivier Brunel

Signed-off-by: Olivier Brunel <jjk@jjacky.com>
---
 net/bpfilter/bpfilter_kern.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/net/bpfilter/bpfilter_kern.c b/net/bpfilter/bpfilter_kern.c
index 94e88f510..7acfc8308 100644
--- a/net/bpfilter/bpfilter_kern.c
+++ b/net/bpfilter/bpfilter_kern.c
@@ -92,6 +92,7 @@ static int __init load_umh(void)
 	int err;
 
 	/* fork usermode process */
+	info.cmdline = "bpfilter_umh";
 	err = fork_usermode_blob(&bpfilter_umh_start,
 				 &bpfilter_umh_end - &bpfilter_umh_start,
 				 &info);
-- 
2.19.0

^ permalink raw reply related	[flat|nested] 13+ messages in thread

* Re: [PATCH 1/2] umh: Add command line to user mode helpers
  2018-10-20 17:39           ` [PATCH 1/2] umh: Add command line to user mode helpers Olivier Brunel
@ 2018-10-23  2:37             ` David Miller
  0 siblings, 0 replies; 13+ messages in thread
From: David Miller @ 2018-10-23  2:37 UTC (permalink / raw)
  To: jjk; +Cc: netdev, alexei.starovoitov, daniel, mcgrof, linux-kernel

From: Olivier Brunel <jjk@jjacky.com>
Date: Sat, 20 Oct 2018 19:39:56 +0200

> User mode helpers were spawned without a command line, and because
> an empty command line is used by many tools to identify processes as
> kernel threads, this could cause some issues.
> 
> Notably during killing spree on shutdown, since such helper would then
> be skipped (i.e. not killed) which would result in the process remaining
> alive, and thus preventing unmouting of the rootfs (as experienced with
> the bpfilter umh).
> 
> Fixes: 449325b52b7a ("umh: introduce fork_usermode_blob() helper")
> Signed-off-by: Olivier Brunel <jjk@jjacky.com>

Applied.

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH 2/2] net: bpfilter: Set user mode helper's command line
  2018-10-20 17:39           ` [PATCH 2/2] net: bpfilter: Set user mode helper's command line Olivier Brunel
@ 2018-10-23  2:37             ` David Miller
  0 siblings, 0 replies; 13+ messages in thread
From: David Miller @ 2018-10-23  2:37 UTC (permalink / raw)
  To: jjk; +Cc: netdev, alexei.starovoitov, daniel, mcgrof, linux-kernel

aFrom: Olivier Brunel <jjk@jjacky.com>
Date: Sat, 20 Oct 2018 19:39:57 +0200

> Signed-off-by: Olivier Brunel <jjk@jjacky.com>

Applied.

^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2018-10-23  2:37 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-08-26 16:08 bpfilter causes a leftover kernel process Olivier Brunel
2018-08-27 16:31 ` Olivier Brunel
2018-08-28  3:35   ` Alexei Starovoitov
2018-08-28 11:23     ` Olivier Brunel
2018-08-29  5:35       ` Alexei Starovoitov
2018-08-29 16:21         ` Olivier Brunel
2018-09-05 15:52     ` Olivier Brunel
2018-10-16 16:38       ` Alexei Starovoitov
2018-10-20 17:39         ` [PATCH 0/2] " Olivier Brunel
2018-10-20 17:39           ` [PATCH 1/2] umh: Add command line to user mode helpers Olivier Brunel
2018-10-23  2:37             ` David Miller
2018-10-20 17:39           ` [PATCH 2/2] net: bpfilter: Set user mode helper's command line Olivier Brunel
2018-10-23  2:37             ` David Miller

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).