curvetun-libs = -l${CONFIG_NACL_LIB} \ -lpthread curvetun-objs = xmalloc.o \ epoll2.o \ str.o \ dev.o \ stun.o \ sock.o \ sig.o \ link.o \ patricia.o \ corking.o \ trie.o \ taia.o \ hash.o \ rnd.o \ curve.o \ curve_test.o \ cookie.o \ keypair.o \ ioexact.o \ ioops.o \ cpusched.o \ curvetun_mgmt_servers.o \ curvetun_mgmt_users.o \ curvetun_server.o \ curvetun_client.o \ curvetun.o curvetun-eflags = -I ${CONFIG_NACL_INC_DIR} curvetun-confs = /cgit.cgi/linux/net-next.git' title='net-next.git Git repository'/>
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Borkmann <daniel@iogearbox.net>2016-06-04 20:50:59 +0200
committerDavid S. Miller <davem@davemloft.net>2016-06-07 14:48:03 -0700
commit5b6c1b4d46b0dae4edea636a776d09f2064f4cd7 (patch)
treeeb0522bdbb70a44f7942f8636da2b36f54f50ac6
parenta27758ffaf96f89002129eedb2cc172d254099f8 (diff)
bpf, trace: use READ_ONCE for retrieving file ptr
In bpf_perf_event_read() and bpf_perf_event_output(), we must use READ_ONCE() for fetching the struct file pointer, which could get updated concurrently, so we must prevent the compiler from potential refetching. We already do this with tail calls for fetching the related bpf_prog, but not so on stored perf events. Semantics for both are the same with regards to updates. Fixes: a43eec304259 ("bpf: introduce bpf_perf_event_output() helper") Fixes: 35578d798400 ("bpf: Implement function bpf_perf_event_read() that get the selected hardware PMU conuter") Signed-off-by: Daniel Borkmann <daniel@iogearbox.net> Acked-by: Alexei Starovoitov <ast@kernel.org> Signed-off-by: David S. Miller <davem@davemloft.net>