No description
Find a file
Eric Dumazet 8dbd76e79a tcp/dccp: fix possible race __inet_lookup_established()
Michal Kubecek and Firo Yang did a very nice analysis of crashes
happening in __inet_lookup_established().

Since a TCP socket can go from TCP_ESTABLISH to TCP_LISTEN
(via a close()/socket()/listen() cycle) without a RCU grace period,
I should not have changed listeners linkage in their hash table.

They must use the nulls protocol (Documentation/RCU/rculist_nulls.txt),
so that a lookup can detect a socket in a hash list was moved in
another one.

Since we added code in commit d296ba60d8 ("soreuseport: Resolve
merge conflict for v4/v6 ordering fix"), we have to add
hlist_nulls_add_tail_rcu() helper.

Fixes: 3b24d854cb ("tcp/dccp: do not touch listener sk_refcnt under synflood")
Signed-off-by: Eric Dumazet <edumazet@google.com>
Reported-by: Michal Kubecek <mkubecek@suse.cz>
Reported-by: Firo Yang <firo.yang@suse.com>
Reviewed-by: Michal Kubecek <mkubecek@suse.cz>
Link: https://lore.kernel.org/netdev/20191120083919.GH27852@unicorn.suse.cz/
Signed-off-by: Jakub Kicinski <jakub.kicinski@netronome.com>
2019-12-13 21:40:49 -08:00
arch bpf, mips: Limit to 33 tail calls 2019-12-11 13:57:22 +01:00
block
certs
crypto
Documentation linux-can-fixes-for-5.5-20191208 2019-12-09 09:27:47 -08:00
drivers net/ibmvnic: Fix typo in retry check 2019-12-13 17:23:10 -08:00
fs 9 cifs/smb3 fixes: two timestamp fixes, one oops fix (during oplock break) for stable, two fixes found in multichannel testing, two fixes for file create when using modeforsid mount parm 2019-12-08 12:12:18 -08:00
include tcp/dccp: fix possible race __inet_lookup_established() 2019-12-13 21:40:49 -08:00
init
ipc
kernel bpf: Make BPF trampoline use register_ftrace_direct() API 2019-12-11 15:18:08 -08:00
lib lib/: fix Kconfig indentation 2019-12-07 11:00:19 -08:00
LICENSES
mm
net tcp/dccp: fix possible race __inet_lookup_established() 2019-12-13 21:40:49 -08:00
samples samples: bpf: fix syscall_tp due to unused syscall 2019-12-11 15:28:06 -08:00
scripts Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2019-12-08 13:28:11 -08:00
security
sound sound updates #2 for 5.5-rc1 2019-12-06 13:06:14 -08:00
tools selftests/bpf: Test function_graph tracer and bpf trampoline together 2019-12-11 15:19:29 -08:00
usr
virt
.clang-format
.cocciconfig
.get_maintainer.ignore
.gitattributes
.gitignore
.mailmap mailmap: add entry for myself 2019-12-13 15:15:33 -08:00
COPYING
CREDITS
Kbuild
Kconfig
MAINTAINERS MAINTAINERS: Add maintainers for rmnet 2019-12-13 15:14:24 -08:00
Makefile Linux 5.5-rc1 2019-12-08 14:57:55 -08:00
README

Linux kernel
============

There are several guides for kernel developers and users. These guides can
be rendered in a number of formats, like HTML and PDF. Please read
Documentation/admin-guide/README.rst first.

In order to build the documentation, use ``make htmldocs`` or
``make pdfdocs``.  The formatted documentation can also be read online at:

    https://www.kernel.org/doc/html/latest/

There are various text files in the Documentation/ subdirectory,
several of them using the Restructured Text markup notation.

Please read the Documentation/process/changes.rst file, as it contains the
requirements for building and running the kernel, and information about
the problems which may result by upgrading your kernel.