trace: add trace_event_get_state_backends()
commitd87aa138039a4be6d705793fd3e397c69c52405a
authorStefan Hajnoczi <stefanha@redhat.com>
Mon, 31 Jul 2017 14:07:18 +0000 (31 15:07 +0100)
committerStefan Hajnoczi <stefanha@redhat.com>
Tue, 1 Aug 2017 11:13:07 +0000 (1 12:13 +0100)
treef0880c8b8daf9469aa4df2c93b256d3f044898ce
parent3932ef3ffb54baf22ab05767e827bda1834d20df
trace: add trace_event_get_state_backends()

Code that checks dstate is unaware of SystemTap and LTTng UST dstate, so
the following trace event will not fire when solely enabled by SystemTap
or LTTng UST:

  if (trace_event_get_state(TRACE_MY_EVENT)) {
      str = g_strdup_printf("Expensive string to generate ...",
                            ...);
      trace_my_event(str);
      g_free(str);
  }

Add trace_event_get_state_backends() to fetch backend dstate.  Those
backends that use QEMU dstate fetch it as part of
generate_h_backend_dstate().

Update existing trace_event_get_state() callers to use
trace_event_get_state_backends() instead.

Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Message-id: 20170731140718.22010-3-stefanha@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
docs/devel/tracing.txt
hw/usb/hcd-ohci.c
net/colo-compare.c
net/filter-rewriter.c
trace/control.h