]> sourceware.org Git - systemtap.git/commit
PR30456: kernel 5.18+ removed set_fs() and we should use the new replacement, user_ac...
authorYichun Zhang (agentzh) <yichun@openresty.com>
Wed, 17 May 2023 00:17:07 +0000 (17:17 -0700)
committerYichun Zhang (agentzh) <yichun@openresty.com>
Thu, 18 May 2023 17:53:10 +0000 (10:53 -0700)
commita9337abbb213e82e919e67150b31399cc49c469f
tree62934f2eb8311d99a6aeeb5235b4e03f5f274780
parentc893e0eaa4dedc90fafc9353ea00fc34ad4b6d42
PR30456: kernel 5.18+ removed set_fs() and we should use the new replacement, user_access_begin()/user_access_end() for userland memory accesses.

Alas. user_access_begin() in newer kernels also performs access_ok() itself.
We pay a small price of duplicate access_ok() checks here for now.

We also use __access_ok() instead of access_ok() to avoid warnings on debug kernels.

We use __always_inline instead of inline for the C functions which might
be within the regions with UACCESS enabled (to please objtool's checker).
buildrun.cxx
runtime/dyninst/loc2c-runtime.h
runtime/linux/addr-map.c
runtime/linux/autoconf-asm-access-ok.c [new file with mode: 0644]
runtime/linux/autoconf-asm-tlbflush-h.c [new file with mode: 0644]
runtime/linux/autoconf-user-access-begin-2-args.c [new file with mode: 0644]
runtime/linux/autoconf-user-access-begin-3-args.c [new file with mode: 0644]
runtime/linux/autoconf-user-access-end.c [new file with mode: 0644]
runtime/linux/copy.c
runtime/linux/loc2c-runtime.h
runtime/linux/runtime.h
This page took 0.026982 seconds and 5 git commands to generate.