No description
  • C 98.2%
  • Assembly 1%
  • Makefile 0.3%
  • Shell 0.2%
  • Python 0.1%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Florian Westphal b60a77386b net: make skb_dst_force return true when dst is refcounted
netfilter did not expect that skb_dst_force() can cause skb to lose its
dst entry.

I got a bug report with a skb->dst NULL dereference in netfilter
output path.  The backtrace contains nf_reinject(), so the dst might have
been cleared when skb got queued to userspace.

Other users were fixed via
if (skb_dst(skb)) {
	skb_dst_force(skb);
	if (!skb_dst(skb))
		goto handle_err;
}

But I think its preferable to make the 'dst might be cleared' part
of the function explicit.

In netfilter case, skb with a null dst is expected when queueing in
prerouting hook, so drop skb for the other hooks.

v2:
 v1 of this patch returned true in case skb had no dst entry.
 Eric said:
   Say if we have two skb_dst_force() calls for some reason
   on the same skb, only the first one will return false.

 This now returns false even when skb had no dst, as per Erics
 suggestion, so callers might need to check skb_dst() first before
 skb_dst_force().

Signed-off-by: Florian Westphal <fw@strlen.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
2019-06-29 11:01:35 -07:00
arch ARM: SoC fixes 2019-06-28 08:37:04 +08:00
block
certs
crypto
Documentation Char/Misc driver fixes for 5.2-rc6 2019-06-21 10:18:16 -07:00
drivers net: mvpp2: prs: Don't override the sign bit in SRAM parser shift 2019-06-28 14:44:03 -07:00
fs for-linus-20190627 2019-06-28 08:41:18 +08:00
include net: make skb_dst_force return true when dst is refcounted 2019-06-29 11:01:35 -07:00
init
ipc
kernel copy_process(): don't use ksys_close() on cleanups 2019-06-27 12:24:03 +02:00
lib SPDX update for 5.2-rc6 2019-06-21 09:58:42 -07:00
LICENSES
mm
net net: make skb_dst_force return true when dst is refcounted 2019-06-29 11:01:35 -07:00
samples samples: make pidfd-metadata fail gracefully on older kernels 2019-06-24 15:55:50 +02:00
scripts treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 505 2019-06-19 17:11:22 +02:00
security SPDX update for 5.2-rc6 2019-06-21 09:58:42 -07:00
sound
tools powerpc fixes for 5.2 #6 2019-06-24 21:20:39 +08:00
usr
virt SPDX update for 5.2-rc6 2019-06-21 09:58:42 -07:00
.clang-format
.cocciconfig
.get_maintainer.ignore
.gitattributes
.gitignore
.mailmap
COPYING
CREDITS
Kbuild
Kconfig
MAINTAINERS ARM: SoC fixes 2019-06-28 08:37:04 +08:00
Makefile Linux 5.2-rc6 2019-06-22 16:01:36 -07: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.