diff mbox series

[08/13] USB: mtu3: tracing: Use the new __vstring() helper

Message ID 20220705224750.354926535@goodmis.org (mailing list archive)
State New, archived
Headers show
Series None | expand

Commit Message

Steven Rostedt July 5, 2022, 10:45 p.m. UTC
From: "Steven Rostedt (Google)" <rostedt@goodmis.org>

Instead of open coding a __dynamic_array() with a fixed length (which
defeats the purpose of the dynamic array in the first place). Use the new
__vstring() helper that will use a va_list and only write enough of the
string into the ring buffer that is needed.

Cc: Chunfeng Yun <chunfeng.yun@mediatek.com>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: linux-usb@vger.kernel.org
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-mediatek@lists.infradead.org
Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org>
---
 drivers/usb/mtu3/mtu3_trace.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

Comments

kernel test robot July 6, 2022, 10:23 a.m. UTC | #1
Hi Steven,

Thank you for the patch! Yet something to improve:

[auto build test ERROR on rostedt-trace/for-next]
[also build test ERROR on wireless-next/main wireless/main linus/master v5.19-rc5 next-20220705]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]

url:    https://github.com/intel-lab-lkp/linux/commits/Steven-Rostedt/tracing-events-Add-__vstring-and-__assign_vstr-helpers/20220706-065125
base:   https://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace.git for-next
config: arm-allyesconfig (https://download.01.org/0day-ci/archive/20220706/202207061812.KyUeiLeY-lkp@intel.com/config)
compiler: arm-linux-gnueabi-gcc (GCC) 11.3.0
reproduce (this is a W=1 build):
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # https://github.com/intel-lab-lkp/linux/commit/829b320ff9db68465d88e10181df019fffb775db
        git remote add linux-review https://github.com/intel-lab-lkp/linux
        git fetch --no-tags linux-review Steven-Rostedt/tracing-events-Add-__vstring-and-__assign_vstr-helpers/20220706-065125
        git checkout 829b320ff9db68465d88e10181df019fffb775db
        # save the config file
        mkdir build_dir && cp config build_dir/.config
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.3.0 make.cross W=1 O=build_dir ARCH=arm SHELL=/bin/bash

If you fix the issue, kindly add following tag where applicable
Reported-by: kernel test robot <lkp@intel.com>

All errors (new ones prefixed by >>):

   In file included from include/trace/define_trace.h:102,
                    from drivers/usb/mtu3/mtu3_trace.h:279,
                    from drivers/usb/mtu3/mtu3_trace.c:12:
>> drivers/usb/mtu3/./mtu3_trace.h:28:50: error: expected specifier-qualifier-list before ',' token
      28 |                 __vstring(msg, vaf->fmt, vaf->va),
         |                                                  ^
   include/trace/trace_events.h:54:17: note: in definition of macro 'DECLARE_EVENT_CLASS'
      54 |                 tstruct                                                 \
         |                 ^~~~~~~
   include/trace/trace_events.h:43:30: note: in expansion of macro 'PARAMS'
      43 |                              PARAMS(tstruct),                  \
         |                              ^~~~~~
   drivers/usb/mtu3/./mtu3_trace.h:23:1: note: in expansion of macro 'TRACE_EVENT'
      23 | TRACE_EVENT(mtu3_log,
         | ^~~~~~~~~~~
   drivers/usb/mtu3/./mtu3_trace.h:26:9: note: in expansion of macro 'TP_STRUCT__entry'
      26 |         TP_STRUCT__entry(
         |         ^~~~~~~~~~~~~~~~
   In file included from include/trace/define_trace.h:102,
                    from drivers/usb/mtu3/mtu3_trace.h:279,
                    from drivers/usb/mtu3/mtu3_trace.c:12:
>> drivers/usb/mtu3/./mtu3_trace.h:28:50: error: expected specifier-qualifier-list before ',' token
      28 |                 __vstring(msg, vaf->fmt, vaf->va),
         |                                                  ^
   include/trace/trace_events.h:117:17: note: in definition of macro 'DECLARE_EVENT_CLASS'
     117 |                 tstruct;                                                \
         |                 ^~~~~~~
   include/trace/trace_events.h:43:30: note: in expansion of macro 'PARAMS'
      43 |                              PARAMS(tstruct),                  \
         |                              ^~~~~~
   drivers/usb/mtu3/./mtu3_trace.h:23:1: note: in expansion of macro 'TRACE_EVENT'
      23 | TRACE_EVENT(mtu3_log,
         | ^~~~~~~~~~~
   drivers/usb/mtu3/./mtu3_trace.h:26:9: note: in expansion of macro 'TP_STRUCT__entry'
      26 |         TP_STRUCT__entry(
         |         ^~~~~~~~~~~~~~~~
   In file included from include/trace/define_trace.h:102,
                    from drivers/usb/mtu3/mtu3_trace.h:279,
                    from drivers/usb/mtu3/mtu3_trace.c:12:
>> drivers/usb/mtu3/./mtu3_trace.h:28:50: error: expected expression before ',' token
      28 |                 __vstring(msg, vaf->fmt, vaf->va),
         |                                                  ^
   include/trace/trace_events.h:244:9: note: in definition of macro 'DECLARE_EVENT_CLASS'
     244 |         tstruct                                                         \
         |         ^~~~~~~
   include/trace/trace_events.h:43:30: note: in expansion of macro 'PARAMS'
      43 |                              PARAMS(tstruct),                  \
         |                              ^~~~~~
   drivers/usb/mtu3/./mtu3_trace.h:23:1: note: in expansion of macro 'TRACE_EVENT'
      23 | TRACE_EVENT(mtu3_log,
         | ^~~~~~~~~~~
   drivers/usb/mtu3/./mtu3_trace.h:26:9: note: in expansion of macro 'TP_STRUCT__entry'
      26 |         TP_STRUCT__entry(
         |         ^~~~~~~~~~~~~~~~
   In file included from include/trace/define_trace.h:102,
                    from drivers/usb/mtu3/mtu3_trace.h:279,
                    from drivers/usb/mtu3/mtu3_trace.c:12:
   drivers/usb/mtu3/./mtu3_trace.h: In function 'trace_event_get_offsets_mtu3_log':
>> include/linux/stddef.h:16:33: error: 'struct trace_event_raw_mtu3_log' has no member named '__data'
      16 | #define offsetof(TYPE, MEMBER)  __builtin_offsetof(TYPE, MEMBER)
         |                                 ^~~~~~~~~~~~~~~~~~
   include/trace/trace_events.h:263:9: note: in definition of macro 'DECLARE_EVENT_CLASS'
     263 |         tstruct;                                                        \
         |         ^~~~~~~
   include/trace/trace_events.h:43:30: note: in expansion of macro 'PARAMS'
      43 |                              PARAMS(tstruct),                  \
         |                              ^~~~~~
   drivers/usb/mtu3/./mtu3_trace.h:23:1: note: in expansion of macro 'TRACE_EVENT'
      23 | TRACE_EVENT(mtu3_log,
         | ^~~~~~~~~~~
   drivers/usb/mtu3/./mtu3_trace.h:26:9: note: in expansion of macro 'TP_STRUCT__entry'
      26 |         TP_STRUCT__entry(
         |         ^~~~~~~~~~~~~~~~
   include/trace/stages/stage5_get_offsets.h:31:32: note: in expansion of macro 'offsetof'
      31 |                                offsetof(typeof(*entry), __data);        \
         |                                ^~~~~~~~
   include/trace/stages/stage5_get_offsets.h:36:29: note: in expansion of macro '__dynamic_array'
      36 | #define __string(item, src) __dynamic_array(char, item,                 \
         |                             ^~~~~~~~~~~~~~~
   drivers/usb/mtu3/./mtu3_trace.h:27:17: note: in expansion of macro '__string'
      27 |                 __string(name, dev_name(dev))
         |                 ^~~~~~~~
>> include/linux/stddef.h:16:33: error: 'struct trace_event_raw_mtu3_log' has no member named '__data'
      16 | #define offsetof(TYPE, MEMBER)  __builtin_offsetof(TYPE, MEMBER)
         |                                 ^~~~~~~~~~~~~~~~~~
   include/trace/trace_events.h:263:9: note: in definition of macro 'DECLARE_EVENT_CLASS'
     263 |         tstruct;                                                        \
         |         ^~~~~~~
   include/trace/trace_events.h:43:30: note: in expansion of macro 'PARAMS'
      43 |                              PARAMS(tstruct),                  \
         |                              ^~~~~~
   drivers/usb/mtu3/./mtu3_trace.h:23:1: note: in expansion of macro 'TRACE_EVENT'
      23 | TRACE_EVENT(mtu3_log,
         | ^~~~~~~~~~~
   drivers/usb/mtu3/./mtu3_trace.h:26:9: note: in expansion of macro 'TP_STRUCT__entry'
      26 |         TP_STRUCT__entry(
         |         ^~~~~~~~~~~~~~~~
   include/trace/stages/stage5_get_offsets.h:31:32: note: in expansion of macro 'offsetof'
      31 |                                offsetof(typeof(*entry), __data);        \
         |                                ^~~~~~~~
   include/trace/stages/stage5_get_offsets.h:43:34: note: in expansion of macro '__dynamic_array'
      43 | #define __vstring(item, fmt, ap) __dynamic_array(char, item,            \
         |                                  ^~~~~~~~~~~~~~~
   drivers/usb/mtu3/./mtu3_trace.h:28:17: note: in expansion of macro '__vstring'
      28 |                 __vstring(msg, vaf->fmt, vaf->va),
         |                 ^~~~~~~~~
>> drivers/usb/mtu3/./mtu3_trace.h:28:50: error: expected expression before ',' token
      28 |                 __vstring(msg, vaf->fmt, vaf->va),
         |                                                  ^
   include/trace/trace_events.h:263:9: note: in definition of macro 'DECLARE_EVENT_CLASS'
     263 |         tstruct;                                                        \
         |         ^~~~~~~
   include/trace/trace_events.h:43:30: note: in expansion of macro 'PARAMS'
      43 |                              PARAMS(tstruct),                  \
         |                              ^~~~~~
   drivers/usb/mtu3/./mtu3_trace.h:23:1: note: in expansion of macro 'TRACE_EVENT'
      23 | TRACE_EVENT(mtu3_log,
         | ^~~~~~~~~~~
   drivers/usb/mtu3/./mtu3_trace.h:26:9: note: in expansion of macro 'TP_STRUCT__entry'
      26 |         TP_STRUCT__entry(
         |         ^~~~~~~~~~~~~~~~
   drivers/usb/mtu3/./mtu3_trace.h:28:50: warning: left-hand operand of comma expression has no effect [-Wunused-value]
      28 |                 __vstring(msg, vaf->fmt, vaf->va),
         |                                                  ^
   include/trace/trace_events.h:263:9: note: in definition of macro 'DECLARE_EVENT_CLASS'
     263 |         tstruct;                                                        \
         |         ^~~~~~~
   include/trace/trace_events.h:43:30: note: in expansion of macro 'PARAMS'
      43 |                              PARAMS(tstruct),                  \
         |                              ^~~~~~
   drivers/usb/mtu3/./mtu3_trace.h:23:1: note: in expansion of macro 'TRACE_EVENT'
      23 | TRACE_EVENT(mtu3_log,
         | ^~~~~~~~~~~
   drivers/usb/mtu3/./mtu3_trace.h:26:9: note: in expansion of macro 'TP_STRUCT__entry'
      26 |         TP_STRUCT__entry(
         |         ^~~~~~~~~~~~~~~~
   In file included from include/trace/define_trace.h:102,
                    from drivers/usb/mtu3/mtu3_trace.h:279,
                    from drivers/usb/mtu3/mtu3_trace.c:12:
   drivers/usb/mtu3/./mtu3_trace.h: In function 'trace_event_raw_event_mtu3_log':
>> drivers/usb/mtu3/./mtu3_trace.h:28:50: error: expected expression before ',' token
      28 |                 __vstring(msg, vaf->fmt, vaf->va),
         |                                                  ^
   include/trace/trace_events.h:400:9: note: in definition of macro 'DECLARE_EVENT_CLASS'
     400 |         tstruct                                                         \
         |         ^~~~~~~
   include/trace/trace_events.h:43:30: note: in expansion of macro 'PARAMS'
      43 |                              PARAMS(tstruct),                  \
         |                              ^~~~~~
   drivers/usb/mtu3/./mtu3_trace.h:23:1: note: in expansion of macro 'TRACE_EVENT'
      23 | TRACE_EVENT(mtu3_log,
         | ^~~~~~~~~~~
   drivers/usb/mtu3/./mtu3_trace.h:26:9: note: in expansion of macro 'TP_STRUCT__entry'
      26 |         TP_STRUCT__entry(
         |         ^~~~~~~~~~~~~~~~
   drivers/usb/mtu3/./mtu3_trace.h:28:50: warning: left-hand operand of comma expression has no effect [-Wunused-value]
      28 |                 __vstring(msg, vaf->fmt, vaf->va),
         |                                                  ^
   include/trace/trace_events.h:400:9: note: in definition of macro 'DECLARE_EVENT_CLASS'
     400 |         tstruct                                                         \
         |         ^~~~~~~
   include/trace/trace_events.h:43:30: note: in expansion of macro 'PARAMS'
      43 |                              PARAMS(tstruct),                  \
         |                              ^~~~~~
   drivers/usb/mtu3/./mtu3_trace.h:23:1: note: in expansion of macro 'TRACE_EVENT'
      23 | TRACE_EVENT(mtu3_log,
         | ^~~~~~~~~~~
   drivers/usb/mtu3/./mtu3_trace.h:26:9: note: in expansion of macro 'TP_STRUCT__entry'
      26 |         TP_STRUCT__entry(
         |         ^~~~~~~~~~~~~~~~
   In file included from include/trace/define_trace.h:103,
                    from drivers/usb/mtu3/mtu3_trace.h:279,
                    from drivers/usb/mtu3/mtu3_trace.c:12:
   drivers/usb/mtu3/./mtu3_trace.h: In function 'perf_trace_mtu3_log':
>> drivers/usb/mtu3/./mtu3_trace.h:28:50: error: expected expression before ',' token
      28 |                 __vstring(msg, vaf->fmt, vaf->va),
         |                                                  ^
   include/trace/perf.h:87:9: note: in definition of macro 'DECLARE_EVENT_CLASS'
      87 |         tstruct                                                         \
         |         ^~~~~~~
   include/trace/trace_events.h:43:30: note: in expansion of macro 'PARAMS'
      43 |                              PARAMS(tstruct),                  \
         |                              ^~~~~~
   drivers/usb/mtu3/./mtu3_trace.h:23:1: note: in expansion of macro 'TRACE_EVENT'
      23 | TRACE_EVENT(mtu3_log,
         | ^~~~~~~~~~~
   drivers/usb/mtu3/./mtu3_trace.h:26:9: note: in expansion of macro 'TP_STRUCT__entry'
      26 |         TP_STRUCT__entry(
         |         ^~~~~~~~~~~~~~~~
   drivers/usb/mtu3/./mtu3_trace.h:28:50: warning: left-hand operand of comma expression has no effect [-Wunused-value]
      28 |                 __vstring(msg, vaf->fmt, vaf->va),
         |                                                  ^
   include/trace/perf.h:87:9: note: in definition of macro 'DECLARE_EVENT_CLASS'
      87 |         tstruct                                                         \
         |         ^~~~~~~
   include/trace/trace_events.h:43:30: note: in expansion of macro 'PARAMS'
      43 |                              PARAMS(tstruct),                  \
         |                              ^~~~~~
   drivers/usb/mtu3/./mtu3_trace.h:23:1: note: in expansion of macro 'TRACE_EVENT'
      23 | TRACE_EVENT(mtu3_log,
         | ^~~~~~~~~~~
   drivers/usb/mtu3/./mtu3_trace.h:26:9: note: in expansion of macro 'TP_STRUCT__entry'
      26 |         TP_STRUCT__entry(
         |         ^~~~~~~~~~~~~~~~
   include/trace/perf.h:62:13: warning: unused variable '__count' [-Wunused-variable]
      62 |         u64 __count = 1;                                                \
         |             ^~~~~~~
   include/trace/trace_events.h:40:9: note: in expansion of macro 'DECLARE_EVENT_CLASS'
      40 |         DECLARE_EVENT_CLASS(name,                              \
         |         ^~~~~~~~~~~~~~~~~~~
   drivers/usb/mtu3/./mtu3_trace.h:23:1: note: in expansion of macro 'TRACE_EVENT'
      23 | TRACE_EVENT(mtu3_log,
         | ^~~~~~~~~~~


vim +28 drivers/usb/mtu3/./mtu3_trace.h

    22	
    23	TRACE_EVENT(mtu3_log,
    24		TP_PROTO(struct device *dev, struct va_format *vaf),
    25		TP_ARGS(dev, vaf),
    26		TP_STRUCT__entry(
    27			__string(name, dev_name(dev))
  > 28			__vstring(msg, vaf->fmt, vaf->va),
    29		),
    30		TP_fast_assign(
    31			__assign_str(name, dev_name(dev));
    32			__assign_vstr(msg, vaf->fmt, vaf->va);
    33		),
    34		TP_printk("%s: %s", __get_str(name), __get_str(msg))
    35	);
    36
diff mbox series

Patch

diff --git a/drivers/usb/mtu3/mtu3_trace.h b/drivers/usb/mtu3/mtu3_trace.h
index 1b897636daf2..57981082a6b1 100644
--- a/drivers/usb/mtu3/mtu3_trace.h
+++ b/drivers/usb/mtu3/mtu3_trace.h
@@ -25,11 +25,11 @@  TRACE_EVENT(mtu3_log,
 	TP_ARGS(dev, vaf),
 	TP_STRUCT__entry(
 		__string(name, dev_name(dev))
-		__dynamic_array(char, msg, MTU3_MSG_MAX)
+		__vstring(msg, vaf->fmt, vaf->va),
 	),
 	TP_fast_assign(
 		__assign_str(name, dev_name(dev));
-		vsnprintf(__get_str(msg), MTU3_MSG_MAX, vaf->fmt, *vaf->va);
+		__assign_vstr(msg, vaf->fmt, vaf->va);
 	),
 	TP_printk("%s: %s", __get_str(name), __get_str(msg))
 );