diff options
author | Kumar Kartikeya Dwivedi <memxor@gmail.com> | 2022-11-03 22:09:51 +0300 |
---|---|---|
committer | Alexei Starovoitov <ast@kernel.org> | 2022-11-04 05:31:17 +0300 |
commit | 23da464dd6b8935b66f4ee306ad8947fd32ccd75 (patch) | |
tree | c6374961daa5a9d76af819da69d114d628ca30ee /include | |
parent | 9805af8d8a5b17f9ea0a16f636f3440b970049f3 (diff) | |
download | linux-23da464dd6b8935b66f4ee306ad8947fd32ccd75.tar.xz |
bpf: Allow specifying volatile type modifier for kptrs
This is useful in particular to mark the pointer as volatile, so that
compiler treats each load and store to the field as a volatile access.
The alternative is having to define and use READ_ONCE and WRITE_ONCE in
the BPF program.
Signed-off-by: Kumar Kartikeya Dwivedi <memxor@gmail.com>
Acked-by: David Vernet <void@manifault.com>
Link: https://lore.kernel.org/r/20221103191013.1236066-3-memxor@gmail.com
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/btf.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/include/linux/btf.h b/include/linux/btf.h index f9aababc5d78..86aad9b2ce02 100644 --- a/include/linux/btf.h +++ b/include/linux/btf.h @@ -288,6 +288,11 @@ static inline bool btf_type_is_typedef(const struct btf_type *t) return BTF_INFO_KIND(t->info) == BTF_KIND_TYPEDEF; } +static inline bool btf_type_is_volatile(const struct btf_type *t) +{ + return BTF_INFO_KIND(t->info) == BTF_KIND_VOLATILE; +} + static inline bool btf_type_is_func(const struct btf_type *t) { return BTF_INFO_KIND(t->info) == BTF_KIND_FUNC; |