summaryrefslogtreecommitdiff
path: root/kernel
diff options
context:
space:
mode:
authorIlya Leoshkevich <iii@linux.ibm.com>2021-03-05 02:30:02 +0300
committerAlexei Starovoitov <ast@kernel.org>2021-03-16 22:18:49 +0300
commitba3b86b9cef0c72ae78173f2c4db8a08bf4d3770 (patch)
tree113ebc5fd57ee5f42f87482d4fda016c6a710208 /kernel
parent23f50b5ac331c8c27c421a7116618355508e8427 (diff)
downloadlinux-ba3b86b9cef0c72ae78173f2c4db8a08bf4d3770.tar.xz
s390/bpf: Implement new atomic ops
Implement BPF_AND, BPF_OR and BPF_XOR as the existing BPF_ADD. Since the corresponding machine instructions return the old value, BPF_FETCH happens by itself, the only additional thing that is required is zero-extension. There is no single instruction that implements BPF_XCHG on s390, so use a COMPARE AND SWAP loop. BPF_CMPXCHG, on the other hand, can be implemented by a single COMPARE AND SWAP. Zero-extension is automatically inserted by the verifier. Signed-off-by: Ilya Leoshkevich <iii@linux.ibm.com> Signed-off-by: Alexei Starovoitov <ast@kernel.org> Link: https://lore.kernel.org/bpf/20210304233002.149096-1-iii@linux.ibm.com
Diffstat (limited to 'kernel')
0 files changed, 0 insertions, 0 deletions