projects
/
lttng-tools.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fix: RCU read-side lock released too early in destroy_agent_app
[lttng-tools.git]
/
src
/
bin
/
lttng-sessiond
/
agent-thread.c
diff --git
a/src/bin/lttng-sessiond/agent-thread.c
b/src/bin/lttng-sessiond/agent-thread.c
index 33cb387c906dd744a12aa8dff554fb2dfda13ab8..9ac975cbf1ea9539c4d81db352089b25d12af561 100644
(file)
--- a/
src/bin/lttng-sessiond/agent-thread.c
+++ b/
src/bin/lttng-sessiond/agent-thread.c
@@
-90,13
+90,13
@@
static void destroy_agent_app(int sock)
rcu_read_lock();
app = agent_find_app_by_sock(sock);
assert(app);
rcu_read_lock();
app = agent_find_app_by_sock(sock);
assert(app);
- rcu_read_unlock();
- /* RCU read side lock is
taken in this function call
. */
+ /* RCU read side lock is
assumed to be held by this function
. */
agent_delete_app(app);
/* The application is freed in a RCU call but the socket is closed here. */
agent_destroy_app(app);
agent_delete_app(app);
/* The application is freed in a RCU call but the socket is closed here. */
agent_destroy_app(app);
+ rcu_read_unlock();
}
/*
}
/*
This page took
0.023854 seconds
and
4
git commands to generate.