Thank you, Jason. Sorry I missed the Signed-off-by. As I said, I'm not that 
familiar with Linux development.
I'm quite sure I have the correct .config for my QNAP's kernel, and the WG 
kernel module I built works perfectly, with this patch. All of the *_NS entries 
in their config file are enabled.

After more research, I agree with you completely that this could easily be a 
QNAP-specific bug so shouldn't be merged. As a NAS, they probably have some 
custom network driver code and may have failed to initialize user_ns in this 
situation. The only somewhat-relevant kernel commit I could find for 
rtnetlink.c is 
https://github.com/torvalds/linux/commit/f428fe4a04cc339166c8bbd489789760de3a0cee
 and version 4.14.24 is more recent than that.

A lot of people like me use a QNAP NAS as their always-on "home server". 
Hopefully Google will crawl this message list so that tech-savvy people 
searching for Wireguard QNAP will find this patch and have a chance to use WG 
to remotely access their home network.

- Aaron

From: Jason A. Donenfeld <[email protected]>
Sent: Saturday, October 16, 2021 7:52 PM
To: Aaron Avery <[email protected]>
Cc: WireGuard mailing list <[email protected]>
Subject: Re: [PATCH] Fixed null pointer exception when user namespace is empty 
 
Hi Aaron,

That patch is missing your Signed-off-by line, so I won't be able to
take it as-is.

However, I also wonder if it makes sense. I just grepped the entire
kernel and I couldn't find any other instances of net->user_ns being
NULL checked. Is it possible that there's a bug in QNAP's kernel
somewhere? Or you're compiling against the wrong .config so the struct
offsets are wrong? Or something else? When should net->user_ns be
NULL?

Thanks,
Jason

Reply via email to