aboutsummaryrefslogtreecommitdiff
path: root/trace/qmp.c
diff options
context:
space:
mode:
authorAlex Bennée <alex.bennee@linaro.org>2023-05-26 17:53:57 +0100
committerStefan Hajnoczi <stefanha@redhat.com>2023-06-01 11:05:05 -0400
commit89aafcf2a79307b7d658b174e2d649dd63365bd1 (patch)
tree8f39180c2e7c1468e52e55646f646050c184ef0c /trace/qmp.c
parent5485e52a332c3b38e338081a7275b2c7cb4f0813 (diff)
trace: remove code that depends on setting vcpu
Now we no longer have any events that are for vcpus we can start excising the code from the trace control. As the vcpu parameter is encoded as part of QMP we just stub out the has_vcpu/vcpu parameters rather than alter the API. Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com> Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Message-id: 20230526165401.574474-8-alex.bennee@linaro.org Message-Id: <20230524133952.3971948-7-alex.bennee@linaro.org> Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Diffstat (limited to 'trace/qmp.c')
-rw-r--r--trace/qmp.c74
1 files changed, 8 insertions, 66 deletions
diff --git a/trace/qmp.c b/trace/qmp.c
index 3b4f4702b4..aa760f1fc4 100644
--- a/trace/qmp.c
+++ b/trace/qmp.c
@@ -13,20 +13,7 @@
#include "control-vcpu.h"
-static CPUState *get_cpu(bool has_vcpu, int vcpu, Error **errp)
-{
- if (has_vcpu) {
- CPUState *cpu = qemu_get_cpu(vcpu);
- if (cpu == NULL) {
- error_setg(errp, "invalid vCPU index %u", vcpu);
- }
- return cpu;
- } else {
- return NULL;
- }
-}
-
-static bool check_events(bool has_vcpu, bool ignore_unavailable, bool is_pattern,
+static bool check_events(bool ignore_unavailable, bool is_pattern,
const char *name, Error **errp)
{
if (!is_pattern) {
@@ -38,12 +25,6 @@ static bool check_events(bool has_vcpu, bool ignore_unavailable, bool is_pattern
return false;
}
- /* error for non-vcpu event */
- if (has_vcpu && !trace_event_is_vcpu(ev)) {
- error_setg(errp, "event \"%s\" is not vCPU-specific", name);
- return false;
- }
-
/* error for unavailable event */
if (!ignore_unavailable && !trace_event_get_state_static(ev)) {
error_setg(errp, "event \"%s\" is disabled", name);
@@ -70,22 +51,13 @@ TraceEventInfoList *qmp_trace_event_get_state(const char *name,
bool has_vcpu, int64_t vcpu,
Error **errp)
{
- Error *err = NULL;
TraceEventInfoList *events = NULL;
TraceEventIter iter;
TraceEvent *ev;
bool is_pattern = trace_event_is_pattern(name);
- CPUState *cpu;
-
- /* Check provided vcpu */
- cpu = get_cpu(has_vcpu, vcpu, &err);
- if (err) {
- error_propagate(errp, err);
- return NULL;
- }
/* Check events */
- if (!check_events(has_vcpu, true, is_pattern, name, errp)) {
+ if (!check_events(true, is_pattern, name, errp)) {
return NULL;
}
@@ -93,33 +65,17 @@ TraceEventInfoList *qmp_trace_event_get_state(const char *name,
trace_event_iter_init_pattern(&iter, name);
while ((ev = trace_event_iter_next(&iter)) != NULL) {
TraceEventInfo *value;
- bool is_vcpu = trace_event_is_vcpu(ev);
- if (has_vcpu && !is_vcpu) {
- continue;
- }
value = g_new(TraceEventInfo, 1);
- value->vcpu = is_vcpu;
value->name = g_strdup(trace_event_get_name(ev));
if (!trace_event_get_state_static(ev)) {
value->state = TRACE_EVENT_STATE_UNAVAILABLE;
} else {
- if (has_vcpu) {
- if (is_vcpu) {
- if (trace_event_get_vcpu_state_dynamic(cpu, ev)) {
- value->state = TRACE_EVENT_STATE_ENABLED;
- } else {
- value->state = TRACE_EVENT_STATE_DISABLED;
- }
- }
- /* else: already skipped above */
+ if (trace_event_get_state_dynamic(ev)) {
+ value->state = TRACE_EVENT_STATE_ENABLED;
} else {
- if (trace_event_get_state_dynamic(ev)) {
- value->state = TRACE_EVENT_STATE_ENABLED;
- } else {
- value->state = TRACE_EVENT_STATE_DISABLED;
- }
+ value->state = TRACE_EVENT_STATE_DISABLED;
}
}
QAPI_LIST_PREPEND(events, value);
@@ -133,21 +89,12 @@ void qmp_trace_event_set_state(const char *name, bool enable,
bool has_vcpu, int64_t vcpu,
Error **errp)
{
- Error *err = NULL;
TraceEventIter iter;
TraceEvent *ev;
bool is_pattern = trace_event_is_pattern(name);
- CPUState *cpu;
-
- /* Check provided vcpu */
- cpu = get_cpu(has_vcpu, vcpu, &err);
- if (err) {
- error_propagate(errp, err);
- return;
- }
/* Check events */
- if (!check_events(has_vcpu, has_ignore_unavailable && ignore_unavailable,
+ if (!check_events(has_ignore_unavailable && ignore_unavailable,
is_pattern, name, errp)) {
return;
}
@@ -155,14 +102,9 @@ void qmp_trace_event_set_state(const char *name, bool enable,
/* Apply changes (all errors checked above) */
trace_event_iter_init_pattern(&iter, name);
while ((ev = trace_event_iter_next(&iter)) != NULL) {
- if (!trace_event_get_state_static(ev) ||
- (has_vcpu && !trace_event_is_vcpu(ev))) {
+ if (!trace_event_get_state_static(ev)) {
continue;
}
- if (has_vcpu) {
- trace_event_set_vcpu_state_dynamic(cpu, ev, enable);
- } else {
- trace_event_set_state_dynamic(ev, enable);
- }
+ trace_event_set_state_dynamic(ev, enable);
}
}