Don't pass scope args to _exit trace points

When we trace a scope, then we pass the scope args to the _entry trace
point. There is no need to do that also for the _exit trace points, it
just blows up the trace data for no obvious gain. Any decent tracing
consumer can easily find the args for the _exit call by matching it to
its _entry call.

Note that this is standard practice in trace points, and also done like
this in the Linux Kernel trace points for example.

Change-Id: I273293b0c7e799767acc1960b50ab675fc765a36
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
This commit is contained in:
Milian Wolff 2019-04-26 15:21:12 +02:00
parent e5eaae100b
commit 75c0c02641
4 changed files with 9 additions and 9 deletions

View File

@ -127,7 +127,7 @@ QT_BEGIN_NAMESPACE
const auto qTraceExit_ ## x ## __COUNTER__ = qScopeGuard([&]() { Q_TRACE(x, __VA_ARGS__); });
# define Q_TRACE_SCOPE(x, ...) \
Q_TRACE(x ## _entry, __VA_ARGS__); \
Q_TRACE_EXIT(x ## _exit, __VA_ARGS__);
Q_TRACE_EXIT(x ## _exit);
# define Q_UNCONDITIONAL_TRACE(x, ...) QtPrivate::do_trace_ ## x(__VA_ARGS__)
# define Q_TRACE_ENABLED(x) QtPrivate::trace_ ## x ## _enabled()
#else

View File

@ -16,7 +16,7 @@ QEvent_ctor(QEvent *event, int type)
QEvent_dtor(QEvent *event, int type)
QCoreApplication_postEvent_entry(QObject *receiver, QEvent *event, int type)
QCoreApplication_postEvent_exit(QObject *receiver, QEvent *event, int type)
QCoreApplication_postEvent_exit()
QCoreApplication_postEvent_event_compressed(QObject *receiver, QEvent *event)
QCoreApplication_postEvent_event_posted(QObject *receiver, QEvent *event, int type)
@ -24,7 +24,7 @@ QCoreApplication_sendEvent(QObject *receiver, QEvent *event, int type)
QCoreApplication_sendSpontaneousEvent(QObject *receiver, QEvent *event, int type)
QCoreApplication_notify_entry(QObject *receiver, QEvent *event, int type)
QCoreApplication_notify_exit(QObject *receiver, QEvent *event, int type)
QCoreApplication_notify_exit()
QCoreApplication_notify_event_filtered(QObject *receiver, QEvent *event, int type)
QCoreApplication_notify_before_delivery(QObject *receiver, QEvent *event, int type)
QCoreApplication_notify_after_delivery(QObject *receiver, QEvent *event, int type, bool consumed)
@ -33,12 +33,12 @@ QObject_ctor(QObject *object)
QObject_dtor(QObject *object)
QMetaObject_activate_entry(QObject *sender, int signalIndex)
QMetaObject_activate_exit(QObject *sender, int signalIndex)
QMetaObject_activate_exit()
QMetaObject_activate_slot_entry(QObject *receiver, int slotIndex)
QMetaObject_activate_slot_exit(QObject *receiver, int slotIndex)
QMetaObject_activate_slot_exit()
QMetaObject_activate_slot_functor_entry(void *slotObject)
QMetaObject_activate_slot_functor_exit(void *slotObject)
QMetaObject_activate_slot_functor_exit()
QMetaObject_activate_declarative_signal_entry(QObject *sender, int signalIndex)
QMetaObject_activate_declarative_signal_exit(QObject *sender, int signalIndex)
QMetaObject_activate_declarative_signal_exit()
qt_message_print(int type, const char *category, const char *function, const char *file, int line, const QString &message)

View File

@ -8,7 +8,7 @@ QGuiApplicationPrivate_init_entry()
QGuiApplicationPrivate_init_exit()
QGuiApplicationPrivate_processWindowSystemEvent_entry(int type)
QGuiApplicationPrivate_processWindowSystemEvent_exit(int type)
QGuiApplicationPrivate_processWindowSystemEvent_exit()
QFontDatabase_addApplicationFont(const QString &filename)
QFontDatabase_load(const QString &family, int pointSize)

View File

@ -5,7 +5,7 @@ QT_END_NAMESPACE
}
QApplication_notify_entry(QObject *receiver, QEvent *event, int type)
QApplication_notify_exit(QObject *receiver, QEvent *event, int type)
QApplication_notify_exit()
QApplication_notify_event_filtered(QObject *receiver, QEvent *event, int type)
QApplication_notify_before_delivery(QObject *receiver, QEvent *event, int type)
QApplication_notify_after_delivery(QObject *receiver, QEvent *event, int type, bool consumed)