projects
/
lttng-tools.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fix: add missing rcu lock for UST lookup
[lttng-tools.git]
/
src
/
bin
/
lttng-sessiond
/
cmd.c
diff --git
a/src/bin/lttng-sessiond/cmd.c
b/src/bin/lttng-sessiond/cmd.c
index 5ec65b78637beaf0904a1c32ef1d25377dbcdc11..456ddeb77d85fd4d1a6f70ca7116494435a12b5e 100644
(file)
--- a/
src/bin/lttng-sessiond/cmd.c
+++ b/
src/bin/lttng-sessiond/cmd.c
@@
-766,6
+766,8
@@
int cmd_disable_channel(struct ltt_session *session, int domain,
usess = session->ust_session;
usess = session->ust_session;
+ rcu_read_lock();
+
switch (domain) {
case LTTNG_DOMAIN_KERNEL:
{
switch (domain) {
case LTTNG_DOMAIN_KERNEL:
{
@@
-810,6
+812,7
@@
int cmd_disable_channel(struct ltt_session *session, int domain,
ret = LTTNG_OK;
error:
ret = LTTNG_OK;
error:
+ rcu_read_unlock();
return ret;
}
return ret;
}
@@
-830,6
+833,8
@@
int cmd_enable_channel(struct ltt_session *session,
DBG("Enabling channel %s for session %s", attr->name, session->name);
DBG("Enabling channel %s for session %s", attr->name, session->name);
+ rcu_read_lock();
+
switch (domain) {
case LTTNG_DOMAIN_KERNEL:
{
switch (domain) {
case LTTNG_DOMAIN_KERNEL:
{
@@
-898,6
+903,7
@@
int cmd_enable_channel(struct ltt_session *session,
}
error:
}
error:
+ rcu_read_unlock();
return ret;
}
return ret;
}
@@
-910,6
+916,8
@@
int cmd_disable_event(struct ltt_session *session, int domain,
{
int ret;
{
int ret;
+ rcu_read_lock();
+
switch (domain) {
case LTTNG_DOMAIN_KERNEL:
{
switch (domain) {
case LTTNG_DOMAIN_KERNEL:
{
@@
-968,6
+976,7
@@
int cmd_disable_event(struct ltt_session *session, int domain,
ret = LTTNG_OK;
error:
ret = LTTNG_OK;
error:
+ rcu_read_unlock();
return ret;
}
return ret;
}
@@
-979,6
+988,8
@@
int cmd_disable_event_all(struct ltt_session *session, int domain,
{
int ret;
{
int ret;
+ rcu_read_lock();
+
switch (domain) {
case LTTNG_DOMAIN_KERNEL:
{
switch (domain) {
case LTTNG_DOMAIN_KERNEL:
{
@@
-1037,6
+1048,7
@@
int cmd_disable_event_all(struct ltt_session *session, int domain,
ret = LTTNG_OK;
error:
ret = LTTNG_OK;
error:
+ rcu_read_unlock();
return ret;
}
return ret;
}
@@
-1126,6
+1138,8
@@
int cmd_enable_event(struct ltt_session *session, int domain,
assert(event);
assert(channel_name);
assert(event);
assert(channel_name);
+ rcu_read_lock();
+
switch (domain) {
case LTTNG_DOMAIN_KERNEL:
{
switch (domain) {
case LTTNG_DOMAIN_KERNEL:
{
@@
-1224,6
+1238,7
@@
int cmd_enable_event(struct ltt_session *session, int domain,
ret = LTTNG_OK;
error:
ret = LTTNG_OK;
error:
+ rcu_read_unlock();
return ret;
}
return ret;
}
@@
-1240,6
+1255,8
@@
int cmd_enable_event_all(struct ltt_session *session, int domain,
assert(session);
assert(channel_name);
assert(session);
assert(channel_name);
+ rcu_read_lock();
+
switch (domain) {
case LTTNG_DOMAIN_KERNEL:
{
switch (domain) {
case LTTNG_DOMAIN_KERNEL:
{
@@
-1371,6
+1388,7
@@
int cmd_enable_event_all(struct ltt_session *session, int domain,
ret = LTTNG_OK;
error:
ret = LTTNG_OK;
error:
+ rcu_read_unlock();
return ret;
}
return ret;
}
This page took
0.025397 seconds
and
4
git commands to generate.