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
Xu Kuohai 3c660fa0f9 libbpf: Skip forward declaration when counting duplicated type names
[ Upstream commit 4226961b0019b2e1612029e8950a9e911affc995 ]

Currently if a declaration appears in the BTF before the definition, the
definition is dumped as a conflicting name, e.g.:

    $ bpftool btf dump file vmlinux format raw | grep "'unix_sock'"
    [81287] FWD 'unix_sock' fwd_kind=struct
    [89336] STRUCT 'unix_sock' size=1024 vlen=14

    $ bpftool btf dump file vmlinux format c | grep "struct unix_sock"
    struct unix_sock;
    struct unix_sock___2 {	<--- conflict, the "___2" is unexpected
		    struct unix_sock___2 *unix_sk;

This causes a compilation error if the dump output is used as a header file.

Fix it by skipping declaration when counting duplicated type names.

Fixes: 351131b51c ("libbpf: add btf_dump API for BTF-to-C conversion")
Signed-off-by: Xu Kuohai <xukuohai@huawei.com>
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Acked-by: Song Liu <songliubraving@fb.com>
Link: https://lore.kernel.org/bpf/20220301053250.1464204-2-xukuohai@huawei.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
2022-04-15 14:18:14 +02:00
arch bpf, arm64: Feed byte-offset into bpf line info 2022-04-15 14:18:14 +02:00
block block: don't delete queue kobject before its children 2022-04-15 14:18:05 +02:00
certs
crypto crypto: authenc - Fix sleep in atomic context in decrypt_tail 2022-04-15 14:18:04 +02:00
Documentation Documentation: update stable tree link 2022-04-15 14:17:58 +02:00
drivers drm/bridge: cdns-dsi: Make sure to to create proper aliases for dt 2022-04-15 14:18:14 +02:00
fs ext2: correct max file size computing 2022-04-15 14:18:13 +02:00
include block: don't merge across cgroup boundaries if blkcg is enabled 2022-04-15 14:18:01 +02:00
init bpf: Add kconfig knob for disabling unpriv bpf by default 2022-02-16 12:52:49 +01:00
ipc shm: extend forced shm destroy to support objects from several IPC nses 2021-12-01 09:23:35 +01:00
kernel printk: fix return value of printk.devkmsg __setup handler 2022-04-15 14:18:08 +02:00
lib lib/raid6/test: fix multiple definition linking error 2022-04-15 14:18:02 +02:00
LICENSES
mm mm/kmemleak: reset tag when compare object pointer 2022-04-15 14:18:01 +02:00
net udp: call udp_encap_enable for v6 sockets when enabling encap 2022-04-15 14:18:01 +02:00
samples samples/kretprobes: Fix return value if register_kretprobe() failed 2021-11-17 09:48:39 +01:00
scripts kconfig: fix failing to generate auto.conf 2022-02-23 12:00:01 +01:00
security TOMOYO: fix __setup handlers return values 2022-04-15 14:18:13 +02:00
sound ASoC: msm8916-wcd-analog: Fix error handling in pm8916_wcd_analog_spmi_probe 2022-04-15 14:18:10 +02:00
tools libbpf: Skip forward declaration when counting duplicated type names 2022-04-15 14:18:14 +02:00
usr
virt KVM: arm64: Allow SMCCC_ARCH_WORKAROUND_3 to be discovered and migrated 2022-03-19 13:40:15 +01:00
.clang-format
.cocciconfig
.get_maintainer.ignore
.gitattributes
.gitignore
.mailmap
COPYING
CREDITS
Kbuild
Kconfig
MAINTAINERS
Makefile Linux 5.4.188 2022-03-28 08:46:49 +02: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.