Thread (6 messages) 6 messages, 5 authors, 2020-08-03

Re: [PATCH net] net/bpfilter: initialize pos in __bpfilter_process_sockopt

From: Daniel Borkmann <daniel@iogearbox.net>
Date: 2020-08-03 14:56:40
Also in: netdev

On 8/1/20 9:48 PM, Alexei Starovoitov wrote:
On Fri, Jul 31, 2020 at 02:07:42AM +0200, Daniel Borkmann wrote:
quoted
On 7/30/20 6:13 PM, Christian Brauner wrote:
quoted
On Thu, Jul 30, 2020 at 06:09:00PM +0200, Christoph Hellwig wrote:
quoted
__bpfilter_process_sockopt never initialized the pos variable passed to
the pipe write.  This has been mostly harmless in the past as pipes
ignore the offset, but the switch to kernel_write no verified the
s/no/now/
quoted
position, which can lead to a failure depending on the exact stack
initialization patter.  Initialize the variable to zero to make
s/patter/pattern/
quoted
rw_verify_area happy.

Fixes: 6955a76fbcd5 ("bpfilter: switch to kernel_write")
Reported-by: Christian Brauner <redacted>
Reported-by: Rodrigo Madera <redacted>
Signed-off-by: Christoph Hellwig <hch@lst.de>
Tested-by: Rodrigo Madera <redacted>
---
Thanks for tracking this down, Christoph! This fixes the logging issue
for me.
Tested-by: Christian Brauner <redacted>
Reviewed-by: Christian Brauner <redacted>
Applied to bpf & fixed up the typos in the commit msg, thanks everyone!
Daniel,
why is it necessary in bpf tree?

I fixed it already in bpf-next in commit a4fa458950b4 ("bpfilter: Initialize pos variable")
two weeks ago...
Several folks reported that with v5.8-rc kernels their console is spammed with
'bpfilter: write fail' messages [0]. Given this affected the 5.8 release and
the fix was a one-line change, it felt appropriate to route it there. Why was
a4fa458950b4 not pushed into bpf tree given it was affected there too? Either
way, we can undo the double pos assignment upon tree sync..

   [0] https://lore.kernel.org/lkml/20200727104636.nuz3u4xb7ba7ue5a@wittgenstein/ (local)
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help