android_kernel_motorola_sm6375/scripts
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Yonghong Song 26a17770c4
UPSTREAM: bpf: Add bpf_seq_printf and bpf_seq_write helpers
Two helpers bpf_seq_printf and bpf_seq_write, are added for
writing data to the seq_file buffer.

bpf_seq_printf supports common format string flag/width/type
fields so at least I can get identical results for
netlink and ipv6_route targets.

For bpf_seq_printf and bpf_seq_write, return value -EOVERFLOW
specifically indicates a write failure due to overflow, which
means the object will be repeated in the next bpf invocation
if object collection stays the same. Note that if the object
collection is changed, depending how collection traversal is
done, even if the object still in the collection, it may not
be visited.

For bpf_seq_printf, format %s, %p{i,I}{4,6} needs to
read kernel memory. Reading kernel memory may fail in
the following two cases:
  - invalid kernel address, or
  - valid kernel address but requiring a major fault
If reading kernel memory failed, the %s string will be
an empty string and %p{i,I}{4,6} will be all 0.
Not returning error to bpf program is consistent with
what bpf_trace_printk() does for now.

bpf_seq_printf may return -EBUSY meaning that internal percpu
buffer for memory copy of strings or other pointees is
not available. Bpf program can return 1 to indicate it
wants the same object to be repeated. Right now, this should not
happen on no-RT kernels since migrate_disable(), which guards
bpf prog call, calls preempt_disable().

Change-Id: I9d79c2ed32e2ef2276a17c37fcde5a634d71ed8f
Signed-off-by: Yonghong Song <yhs@fb.com>
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
Acked-by: Andrii Nakryiko <andriin@fb.com>
Link: https://lore.kernel.org/bpf/20200509175914.2476661-1-yhs@fb.com
2025-12-23 13:36:20 -08:00
..
atomic
basic
coccinelle
dtc
gcc-plugins Merge tag 'ASB-2025-10-06_11-5.4' of https://android.googlesource.com/kernel/common into android13-5.4-lahaina 2025-10-08 15:17:54 +03:00
gdb Revert "PM: domains: Fix up terminology with parent/child" 2023-06-16 09:26:26 +00:00
genksyms genksyms: fix memory leak when the same symbol is read from *.symref file 2025-03-13 12:43:00 +01:00
gki
kconfig Merge branch 'android11-5.4-lts' of https://android.googlesource.com/kernel/common into android13-5.4-lahaina 2025-12-11 01:41:51 -08:00
ksymoops
mod Merge tag 'LA.UM.9.14.r1-25800-LAHAINA.QSSI15.0' of https://git.codelinaro.org/clo/la/kernel/msm-5.4 into android13-5.4-lahaina 2025-02-14 02:42:56 +02:00
package
selinux selinux: Chain up tool resolving errors in install_policy.sh 2025-04-10 14:29:39 +02:00
tracing ftrace/scripts: Update the instructions for ftrace-bisect.sh 2023-02-06 07:52:44 +01:00
.gitignore
adjust_autoksyms.sh
asn1_compiler.c ASN.1: Fix check for strdup() success 2023-04-26 11:24:06 +02:00
bin2c.c
bloat-o-meter
bootgraph.pl
bpf_helpers_doc.py UPSTREAM: bpf: Add bpf_seq_printf and bpf_seq_write helpers 2025-12-23 13:36:20 -08:00
build-all.py
cc-can-link.sh
check-config-debug-exemptions
check-config-perf-exemptions
check-config.py
check_extable.sh
checkincludes.pl
checkkconfigsymbols.py
checkpatch.pl Merge android11-5.4.259+ (70db018) into msm-5.4 2024-01-31 01:01:26 -08:00
checkstack.pl
checksyscalls.sh
checkversion.pl
clang-version.sh
cleanfile
cleanpatch
coccicheck
config kbuild: fix argument parsing in scripts/config 2025-06-04 14:32:31 +02:00
conmakehash.c
const_structs.checkpatch
decode_stacktrace.sh
decodecode
depmod.sh
diffconfig
documentation-file-ref-check
export_report.pl
extract-cert.c Merge tag 'ASB-2023-02-05_11-5.4' of https://android.googlesource.com/kernel/common into android13-5.4-lahaina 2023-02-08 18:28:38 +02:00
extract-ikconfig
extract-module-sig.pl
extract-sys-certs.pl
extract-vmlinux
extract_xc3028.pl
faddr2line scripts/faddr2line: Fix regression in name resolution on ppc64le 2022-12-08 11:23:02 +01:00
file-size.sh
find-unused-docs.sh
gcc-goto.sh
gcc-ld
gcc-plugin.sh
gcc-version.sh
gcc-x86_32-has-stack-protector.sh kbuild: Fix '-S -c' in x86 stack protector scripts 2024-08-19 05:33:53 +02:00
gcc-x86_64-has-stack-protector.sh kbuild: Fix '-S -c' in x86 stack protector scripts 2024-08-19 05:33:53 +02:00
gen_autoksyms.sh
gen_compile_commands.py
gen_ksymdeps.sh
generate_initcall_order.pl
get_abi.pl
get_dvb_firmware
get_maintainer.pl
gfp-translate
headerdep.pl
headers_check.pl
headers_install.sh
insert-sys-cert.c
kallsyms.c
Kbuild.include Merge tag 'ASB-2025-10-06_11-5.4' of https://android.googlesource.com/kernel/common into android13-5.4-lahaina 2025-10-08 15:17:54 +03:00
Kconfig.include UPSTREAM: kbuild: Add support for 'as-instr' to be used in Kconfig files 2022-11-14 03:04:02 +02:00
kernel-doc
ld-version.sh
leaking_addresses.pl
Lindent
link-vmlinux.sh Merge android11-5.4.274 (564901b) into msm-5.4 2024-07-24 20:38:43 -07:00
Makefile
Makefile.asm-generic
Makefile.build kbuild: add infrastructure to build userspace programs 2025-09-28 10:00:32 +02:00
Makefile.clean kbuild: add infrastructure to build userspace programs 2025-09-28 10:00:32 +02:00
Makefile.dtbinst
Makefile.dtbo
Makefile.extrawarn kbuild: Move -Wenum-enum-conversion to W=2 2025-03-13 12:43:09 +01:00
Makefile.gcc-plugins
Makefile.headersinst
Makefile.host kbuild: use -MMD instead of -MD to exclude system headers from dependency 2025-07-17 18:24:51 +02:00
Makefile.kasan
Makefile.kcov
Makefile.lib Merge tag 'ASB-2025-09-05_11-5.4' of https://android.googlesource.com/kernel/common into android13-5.4-lahaina 2025-09-12 18:48:05 +03:00
Makefile.modbuiltin
Makefile.modfinal
Makefile.modinst
Makefile.modpost This is the 5.4.212 stable release 2022-09-21 12:34:35 +02:00
Makefile.modsign
Makefile.package
Makefile.ubsan
Makefile.userprogs kbuild: add infrastructure to build userspace programs 2025-09-28 10:00:32 +02:00
makelst
markup_oops.pl
mkcompile_h Merge 5.4.287 into android11-5.4-lts 2024-12-16 10:50:16 +00:00
mkmakefile
mksysmap mksysmap: Fix the mismatch of 'L0' symbols in System.map 2022-09-28 11:03:59 +02:00
mkuboot.sh
module-common.lds
module-lto.lds
modules-check.sh
namespace.pl
nsdeps
objdiff
parse-maintainers.pl
patch-kernel
pnmtologo.c
profile2linkerlist.pl
prune-kernel
recordmcount.c This is the 5.4.244 stable release 2023-06-20 11:07:18 +00:00
recordmcount.h
recordmcount.pl
setlocalversion
show_delta
sign-file.c sign-file: Fix incorrect return values check 2023-12-20 15:41:17 +01:00
sortextable.c
sortextable.h
spdxcheck-test.sh
spdxcheck.py
spelling.txt
sphinx-pre-install
split-man.pl
stackdelta
stackusage
subarch.include
tags.sh scripts/tags.sh: Resolve gtags empty index generation 2023-07-27 08:37:03 +02:00
tools-support-relr.sh
unifdef.c
ver_linux
xen-hypercalls.sh
xz_wrap.sh