projects
/
deliverable
/
lttng-modules.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fix: use lttng_rcu_dereference within lttng-syscalls.c
[deliverable/lttng-modules.git]
/
lttng-syscalls.c
diff --git
a/lttng-syscalls.c
b/lttng-syscalls.c
index f46fd91ae265e882a8a1c2b6d10558e02d5e0db7..4d8490e97889dcb3ed5463d34f806a899bf378c1 100644
(file)
--- a/
lttng-syscalls.c
+++ b/
lttng-syscalls.c
@@
-37,6
+37,7
@@
#include "lib/bitfield.h"
#include "wrapper/tracepoint.h"
#include "wrapper/file.h"
#include "lib/bitfield.h"
#include "wrapper/tracepoint.h"
#include "wrapper/file.h"
+#include "wrapper/rcu.h"
#include "lttng-events.h"
#ifndef CONFIG_COMPAT
#include "lttng-events.h"
#ifndef CONFIG_COMPAT
@@
-368,7
+369,7
@@
void syscall_entry_probe(void *__data, struct pt_regs *regs, long id)
if (unlikely(is_compat_task())) {
struct lttng_syscall_filter *filter;
if (unlikely(is_compat_task())) {
struct lttng_syscall_filter *filter;
- filter = rcu_dereference(chan->sc_filter);
+ filter =
lttng_
rcu_dereference(chan->sc_filter);
if (filter) {
if (id < 0 || id >= NR_compat_syscalls
|| !test_bit(id, filter->sc_compat)) {
if (filter) {
if (id < 0 || id >= NR_compat_syscalls
|| !test_bit(id, filter->sc_compat)) {
@@
-382,7
+383,7
@@
void syscall_entry_probe(void *__data, struct pt_regs *regs, long id)
} else {
struct lttng_syscall_filter *filter;
} else {
struct lttng_syscall_filter *filter;
- filter = rcu_dereference(chan->sc_filter);
+ filter =
lttng_
rcu_dereference(chan->sc_filter);
if (filter) {
if (id < 0 || id >= NR_syscalls
|| !test_bit(id, filter->sc)) {
if (filter) {
if (id < 0 || id >= NR_syscalls
|| !test_bit(id, filter->sc)) {
@@
-522,7
+523,7
@@
void syscall_exit_probe(void *__data, struct pt_regs *regs, long ret)
if (unlikely(is_compat_task())) {
struct lttng_syscall_filter *filter;
if (unlikely(is_compat_task())) {
struct lttng_syscall_filter *filter;
- filter = rcu_dereference(chan->sc_filter);
+ filter =
lttng_
rcu_dereference(chan->sc_filter);
if (filter) {
if (id < 0 || id >= NR_compat_syscalls
|| !test_bit(id, filter->sc_compat)) {
if (filter) {
if (id < 0 || id >= NR_compat_syscalls
|| !test_bit(id, filter->sc_compat)) {
@@
-536,7
+537,7
@@
void syscall_exit_probe(void *__data, struct pt_regs *regs, long ret)
} else {
struct lttng_syscall_filter *filter;
} else {
struct lttng_syscall_filter *filter;
- filter = rcu_dereference(chan->sc_filter);
+ filter =
lttng_
rcu_dereference(chan->sc_filter);
if (filter) {
if (id < 0 || id >= NR_syscalls
|| !test_bit(id, filter->sc)) {
if (filter) {
if (id < 0 || id >= NR_syscalls
|| !test_bit(id, filter->sc)) {
This page took
0.031262 seconds
and
5
git commands to generate.