linux-trace-devel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v3] libtraceevent: Add back log functions for backward compatibility
@ 2021-05-13  2:22 Steven Rostedt
  0 siblings, 0 replies; only message in thread
From: Steven Rostedt @ 2021-05-13  2:22 UTC (permalink / raw)
  To: linux-trace-devel


From: "Steven Rostedt (VMware)" <rostedt@goodmis.org>

The following functions are obsolete and were removed:

  tep_vwarning()
  pr_stat()
  vpr_stat()
  __pr_stat()
  __vpr_stat()

But unfortunately they were part of a library release. Add them back as
all weak functions and label them deprecated.

Link: https://lore.kernel.org/linux-trace-devel/20210428073001.755905-1-tz.stoyanov@gmail.com/

Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
---
Changes since v2:
  Added "deprecated" to warn on use cases.

 src/event-utils.h |  9 +++++++++
 src/parse-utils.c | 16 ++++++++++++++++
 2 files changed, 25 insertions(+)

diff --git a/src/event-utils.h b/src/event-utils.h
index bdc6880..695905d 100644
--- a/src/event-utils.h
+++ b/src/event-utils.h
@@ -16,6 +16,15 @@ void tep_info(const char *fmt, ...);
 int tep_vprint(const char *name, enum tep_loglevel level,
 	       bool print_err, const char *fmt, va_list ap);
 
+#define __deprecated(msg) __attribute__((deprecated("msg")))
+
+/* For backward compatibilty, do not use */
+int tep_vwarning(const char *name, const char *fmt, va_list ap) __deprecated(Use tep_vprint instead);
+void pr_stat(const char *fmt, ...) __deprecated(Use tep_info instead);
+void vpr_stat(const char *fmt, va_list ap) __deprecated(Use tep_vprint instead);
+void __pr_stat(const char *fmt, ...) __deprecated(Use tep_info instead);;
+void __vpr_stat(const char *fmt, va_list ap) __deprecated(Use tep_vprint instead);;
+
 #define min(x, y) ({				\
 	typeof(x) _min1 = (x);			\
 	typeof(y) _min2 = (y);			\
diff --git a/src/parse-utils.c b/src/parse-utils.c
index 7510157..04237ba 100644
--- a/src/parse-utils.c
+++ b/src/parse-utils.c
@@ -79,3 +79,19 @@ void tep_info(const char *fmt, ...)
 	tep_vprint("libtraceevent", TEP_LOG_INFO, false, fmt, ap);
 	va_end(ap);
 }
+
+/* The below is for backward compatibility */
+int __weak tep_vwarning(const char *name, const char *fmt, va_list ap)
+{
+	return tep_vprint(name, TEP_LOG_WARNING, true, fmt, ap);
+}
+
+void pr_stat(const char *fmt, ...) __attribute__((weak, alias("tep_info")));
+void __pr_stat(const char *fmt, ...) __attribute__((weak, alias("tep_info")));
+
+void __weak __vpr_stat(const char *fmt, va_list ap)
+{
+	tep_vprint("libtraceevent", TEP_LOG_INFO, false, fmt, ap);
+}
+
+void vpr_stat(const char *fmt, va_list ap) __attribute__((weak, alias("__vpr_stat")));
-- 
2.29.2


^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2021-05-13  2:23 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-05-13  2:22 [PATCH v3] libtraceevent: Add back log functions for backward compatibility Steven Rostedt

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).