All of lore.kernel.org
 help / color / mirror / Atom feed
* [GIT PULL v2] tracing: Updates for v6.9
@ 2024-03-18 15:30 Steven Rostedt
  2024-03-18 22:47 ` pr-tracker-bot
  2024-03-19 16:23 ` Linus Torvalds
  0 siblings, 2 replies; 10+ messages in thread
From: Steven Rostedt @ 2024-03-18 15:30 UTC (permalink / raw)
  To: Linus Torvalds
  Cc: LKML, Masami Hiramatsu, Mathieu Desnoyers, Alison Schofield,
	Beau Belgrave, Huang Yiwei, John Garry, Randy Dunlap,
	Thorsten Blum, Vincent Donnefort, linke li


Linus,

[
  I rebased my entire queue on top of the last pull request you took from
  me. This made it so that I didn't need to do a merge with commits in that
  branch. It also included fixes needed for the __assign_str() update.

  The rebase removed the ring buffer user space mmapping and that will be
  worked on later to fix the issues you had with it, and hopefully that can
  go into the next merge window. Preparations for mapping are still there
  like zeroing out the pages (that should be done anyway) and the snapshot
  accounting.

  I added the __string() and __assign_str() checks with fixes to users that
  had that broken. The second parameter of __assign_str() is no longer used
  but it is now checked to make sure that its the same as what is passed into
  __string() so that the next merge window than second parameter can be
  removed without causing regressions.
]

Tracing updates for 6.9:

Main user visible change:

- User events can now have "multi formats"

  The current user events have a single format. If another event is created
  with a different format, it will fail to be created. That is, once an
  event name is used, it cannot be used again with a different format. This
  can cause issues if a library is using an event and updates its format.
  An application using the older format will prevent an application using
  the new library from registering its event.

  A task could also DOS another application if it knows the event names, and
  it creates events with different formats.

  The multi-format event is in a different name space from the single
  format. Both the event name and its format are the unique identifier.
  This will allow two different applications to use the same user event name
  but with different payloads.

- Added support to have ftrace_dump_on_oops dump out instances and
  not just the main top level tracing buffer.

Other changes:

- Add eventfs_root_inode

  Only the root inode has a dentry that is static (never goes away) and
  stores it upon creation. There's no reason that the thousands of other
  eventfs inodes should have a pointer that never gets set in its
  descriptor. Create a eventfs_root_inode desciptor that has a eventfs_inode
  descriptor and a dentry pointer, and only the root inode will use this.

- Added WARN_ON()s in eventfs

  There's some conditionals remaining in eventfs that should never be hit,
  but instead of removing them, add WARN_ON() around them to make sure that
  they are never hit.

- Have saved_cmdlines allocation also include the map_cmdline_to_pid array

  The saved_cmdlines structure allocates a large amount of data to hold its
  mappings. Within it, it has three arrays. Two are already apart of it:
  map_pid_to_cmdline[] and saved_cmdlines[]. More memory can be saved by
  also including the map_cmdline_to_pid[] array as well.

- Restructure __string() and __assign_str() macros used in TRACE_EVENT().

  Dynamic strings in TRACE_EVENT() are declared with:

      __string(name, source)

  And assigned with:

     __assign_str(name, source)

  In the tracepoint callback of the event, the __string() is used to get the
  size needed to allocate on the ring buffer and __assign_str() is used to
  copy the string into the ring buffer. There's a helper structure that is
  created in the TRACE_EVENT() macro logic that will hold the string length
  and its position in the ring buffer which is created by __string().

  There are several trace events that have a function to create the string
  to save. This function is executed twice. Once for __string() and again
  for __assign_str(). There's no reason for this. The helper structure could
  also save the string it used in __string() and simply copy that into
  __assign_str() (it also already has its length).

  By using the structure to store the source string for the assignment, it
  means that the second argument to __assign_str() is no longer needed.

  It will be removed in the next merge window, but for now add a warning if
  the source string given to __string() is different than the source string
  given to __assign_str(), as the source to __assign_str() isn't even used
  and will be going away.

- Added checks to make sure that the source of __string() is also the
  source of __assign_str() so that it can be safely removed in the next
  merge window.

  Included fixes that the above check found.

- Other minor clean ups and fixes


Please pull the latest trace-v6.9-2 tree, which can be found at:


  git://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace.git
trace-v6.9-2

Tag SHA1: f40626f0ff0f9241d1d565a355c3375c8a007c69
Head SHA1: 7604256cecef34a82333d9f78262d3180f4eb525


Alison Schofield (1):
      cxl/trace: Properly initialize cxl_poison region name

Beau Belgrave (4):
      tracing/user_events: Prepare find/delete for same name events
      tracing/user_events: Introduce multi-format events
      selftests/user_events: Test multi-format events
      tracing/user_events: Document multi-format flag

Huang Yiwei (1):
      tracing: Support to dump instance traces by ftrace_dump_on_oops

John Garry (1):
      tracing: Use init_utsname()->release

Randy Dunlap (1):
      ftrace: Fix most kernel-doc warnings

Steven Rostedt (Google) (22):
      eventfs: Add WARN_ON_ONCE() to checks in eventfs_root_lookup()
      eventfs: Create eventfs_root_inode to store dentry
      tracing: Have saved_cmdlines arrays all in one allocation
      tracing: Move open coded processing of tgid_map into helper function
      tracing: Move saved_cmdline code into trace_sched_switch.c
      ring-buffer: Make wake once of ring_buffer_wait() more robust
      NFSD: Fix nfsd_clid_class use of __string_len() macro
      drm/i915: Add missing ; to __assign_str() macros in tracepoint code
      net: hns3: tracing: fix hclgevf trace event strings
      tracing: Rework __assign_str() and __string() to not duplicate getting the string
      tracing: Do not calculate strlen() twice for __string() fields
      tracing: Use ? : shortcut in trace macros
      tracing: Use EVENT_NULL_STR macro instead of open coding "(null)"
      tracing: Fix snapshot counter going between two tracers that use it
      tracing: Decrement the snapshot if the snapshot trigger fails to register
      tracing: Remove __assign_str_len()
      tracing: Add __string_len() example
      tracing: Add warning if string in __assign_str() does not match __string()
      tracing: Remove second parameter to __assign_rel_str()
      tracepoints: Use WARN() and not WARN_ON() for warnings
      tracing: Use strcmp() in __assign_str() WARN_ON() check
      tracing: Add __string_src() helper to help compilers not to get confused

Thorsten Blum (1):
      tracing: Use div64_u64() instead of do_div()

Vincent Donnefort (2):
      ring-buffer: Zero ring-buffer sub-buffers
      tracing: Add snapshot refcount

linke li (1):
      ring-buffer: use READ_ONCE() to read cpu_buffer->commit_page in concurrent environment

----
 Documentation/admin-guide/kernel-parameters.txt    |  26 +-
 Documentation/admin-guide/sysctl/kernel.rst        |  30 +-
 Documentation/trace/user_events.rst                |  27 +-
 drivers/cxl/core/trace.h                           |  14 +-
 drivers/gpu/drm/i915/display/intel_display_trace.h |   6 +-
 .../ethernet/hisilicon/hns3/hns3pf/hclge_trace.h   |   8 +-
 .../ethernet/hisilicon/hns3/hns3vf/hclgevf_trace.h |   8 +-
 fs/nfsd/trace.h                                    |  10 +-
 fs/tracefs/event_inode.c                           |  70 +-
 fs/tracefs/internal.h                              |   2 -
 include/linux/ftrace.h                             |   4 +-
 include/linux/kernel.h                             |   1 +
 include/linux/trace_events.h                       |   3 +
 include/linux/tracepoint.h                         |   6 +-
 include/trace/events/sunrpc.h                      |  12 +-
 include/trace/stages/stage2_data_offsets.h         |   4 +-
 include/trace/stages/stage5_get_offsets.h          |  25 +-
 include/trace/stages/stage6_event_callback.h       |  29 +-
 include/uapi/linux/user_events.h                   |   6 +-
 kernel/sysctl.c                                    |   4 +-
 kernel/trace/ftrace.c                              |  90 +--
 kernel/trace/ring_buffer.c                         |  45 +-
 kernel/trace/trace.c                               | 768 ++++++---------------
 kernel/trace/trace.h                               |  18 +-
 kernel/trace/trace_benchmark.c                     |   5 +-
 kernel/trace/trace_events_trigger.c                |  63 +-
 kernel/trace/trace_events_user.c                   | 209 ++++--
 kernel/trace/trace_sched_switch.c                  | 515 ++++++++++++++
 kernel/trace/trace_selftest.c                      |   2 +-
 samples/trace_events/trace-events-sample.h         |  18 +-
 tools/testing/selftests/user_events/abi_test.c     | 134 ++++
 31 files changed, 1363 insertions(+), 799 deletions(-)
---------------------------

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [GIT PULL v2] tracing: Updates for v6.9
  2024-03-18 15:30 [GIT PULL v2] tracing: Updates for v6.9 Steven Rostedt
@ 2024-03-18 22:47 ` pr-tracker-bot
  2024-03-19 16:23 ` Linus Torvalds
  1 sibling, 0 replies; 10+ messages in thread
From: pr-tracker-bot @ 2024-03-18 22:47 UTC (permalink / raw)
  To: Steven Rostedt
  Cc: Linus Torvalds, LKML, Masami Hiramatsu, Mathieu Desnoyers,
	Alison Schofield, Beau Belgrave, Huang Yiwei, John Garry,
	Randy Dunlap, Thorsten Blum, Vincent Donnefort, linke li

The pull request you sent on Mon, 18 Mar 2024 11:30:53 -0400:

> git://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace.git trace-v6.9-2

has been merged into torvalds/linux.git:
https://git.kernel.org/torvalds/c/ad584d73a22b2f6e6b4c928956fdece5c44cdb3e

Thank you!

-- 
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/prtracker.html

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [GIT PULL v2] tracing: Updates for v6.9
  2024-03-18 15:30 [GIT PULL v2] tracing: Updates for v6.9 Steven Rostedt
  2024-03-18 22:47 ` pr-tracker-bot
@ 2024-03-19 16:23 ` Linus Torvalds
  2024-03-19 16:58   ` Steven Rostedt
  2024-03-19 17:06   ` Steven Rostedt
  1 sibling, 2 replies; 10+ messages in thread
From: Linus Torvalds @ 2024-03-19 16:23 UTC (permalink / raw)
  To: Steven Rostedt
  Cc: LKML, Masami Hiramatsu, Mathieu Desnoyers, Alison Schofield,
	Beau Belgrave, Huang Yiwei, John Garry, Randy Dunlap,
	Thorsten Blum, Vincent Donnefort, linke li

On Mon, 18 Mar 2024 at 08:28, Steven Rostedt <rostedt@goodmis.org> wrote:
>
> - Added checks to make sure that the source of __string() is also the
>   source of __assign_str() so that it can be safely removed in the next
>   merge window.

Aargh.

I didn't notice this initially, because it doesn't happen with gcc (or
maybe not with allmodconfig), but with clang I get

    CC [M]  net/sunrpc/sched.o
  In file included from net/sunrpc/sched.c:31:
  In file included from ./include/trace/events/sunrpc.h:2524:
  In file included from ./include/trace/define_trace.h:102:
  In file included from ./include/trace/trace_events.h:419:
  include/trace/events/sunrpc.h:707:4: error: result of comparison
against a string literal is unspecified (use an explicit string
comparison function instead) [-Werror,-Wstring-compare]

and then about 250 lines ot messy "explanations" for how it was
expanded because it happens on line 709 too in the same macro, and it
ends up being three macros deep or something.

So no, this all needs to be re-done. That

                WARN_ON_ONCE(__builtin_constant_p(src) ?                \
                             strcmp((src), __data_offsets.dst##_ptr_) : \
                             (src) != __data_offsets.dst##_ptr_);       \

does *NOT* work.

Also, looking at that __assign_str() macro, it seems literally insane.
On the next line it will do

                memcpy(__str__, __data_offsets.dst##_ptr_ ? :           \
                       EVENT_NULL_STR, __len__);                        \

so now it checks "__data_offsets.dst##_ptr_" for NULL - but that's one
line after it just did that strcmp on it.

WTF?

This code is completely bogus.

               Linus

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [GIT PULL v2] tracing: Updates for v6.9
  2024-03-19 16:23 ` Linus Torvalds
@ 2024-03-19 16:58   ` Steven Rostedt
  2024-03-19 17:06   ` Steven Rostedt
  1 sibling, 0 replies; 10+ messages in thread
From: Steven Rostedt @ 2024-03-19 16:58 UTC (permalink / raw)
  To: Linus Torvalds
  Cc: LKML, Masami Hiramatsu, Mathieu Desnoyers, Alison Schofield,
	Beau Belgrave, Huang Yiwei, John Garry, Randy Dunlap,
	Thorsten Blum, Vincent Donnefort, linke li

On Tue, 19 Mar 2024 09:23:10 -0700
Linus Torvalds <torvalds@linux-foundation.org> wrote:

> On Mon, 18 Mar 2024 at 08:28, Steven Rostedt <rostedt@goodmis.org> wrote:
> >
> > - Added checks to make sure that the source of __string() is also the
> >   source of __assign_str() so that it can be safely removed in the next
> >   merge window.  
> 
> Aargh.
> 
> I didn't notice this initially, because it doesn't happen with gcc (or
> maybe not with allmodconfig), but with clang I get
> 
>     CC [M]  net/sunrpc/sched.o
>   In file included from net/sunrpc/sched.c:31:
>   In file included from ./include/trace/events/sunrpc.h:2524:
>   In file included from ./include/trace/define_trace.h:102:
>   In file included from ./include/trace/trace_events.h:419:
>   include/trace/events/sunrpc.h:707:4: error: result of comparison
> against a string literal is unspecified (use an explicit string
> comparison function instead) [-Werror,-Wstring-compare]
> 
> and then about 250 lines ot messy "explanations" for how it was
> expanded because it happens on line 709 too in the same macro, and it
> ends up being three macros deep or something.
> 
> So no, this all needs to be re-done. That
> 
>                 WARN_ON_ONCE(__builtin_constant_p(src) ?                \
>                              strcmp((src), __data_offsets.dst##_ptr_) : \
>                              (src) != __data_offsets.dst##_ptr_);       \
> 
> does *NOT* work.
> 
> Also, looking at that __assign_str() macro, it seems literally insane.
> On the next line it will do
> 
>                 memcpy(__str__, __data_offsets.dst##_ptr_ ? :           \
>                        EVENT_NULL_STR, __len__);                        \
> 
> so now it checks "__data_offsets.dst##_ptr_" for NULL - but that's one
> line after it just did that strcmp on it.
> 
> WTF?
> 
> This code is completely bogus.

The WARN_ON_ONCE() was added separately and missed that we do now allow it
to be NULL.

I'll fix that.

-- Steve

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [GIT PULL v2] tracing: Updates for v6.9
  2024-03-19 16:23 ` Linus Torvalds
  2024-03-19 16:58   ` Steven Rostedt
@ 2024-03-19 17:06   ` Steven Rostedt
  2024-03-19 17:13     ` Steven Rostedt
  1 sibling, 1 reply; 10+ messages in thread
From: Steven Rostedt @ 2024-03-19 17:06 UTC (permalink / raw)
  To: Linus Torvalds
  Cc: LKML, Masami Hiramatsu, Mathieu Desnoyers, Alison Schofield,
	Beau Belgrave, Huang Yiwei, John Garry, Randy Dunlap,
	Thorsten Blum, Vincent Donnefort, linke li

On Tue, 19 Mar 2024 09:23:10 -0700
Linus Torvalds <torvalds@linux-foundation.org> wrote:

> On Mon, 18 Mar 2024 at 08:28, Steven Rostedt <rostedt@goodmis.org> wrote:
> >
> > - Added checks to make sure that the source of __string() is also the
> >   source of __assign_str() so that it can be safely removed in the next
> >   merge window.  
> 
> Aargh.
> 
> I didn't notice this initially, because it doesn't happen with gcc (or
> maybe not with allmodconfig), but with clang I get
> 
>     CC [M]  net/sunrpc/sched.o
>   In file included from net/sunrpc/sched.c:31:
>   In file included from ./include/trace/events/sunrpc.h:2524:
>   In file included from ./include/trace/define_trace.h:102:
>   In file included from ./include/trace/trace_events.h:419:
>   include/trace/events/sunrpc.h:707:4: error: result of comparison
> against a string literal is unspecified (use an explicit string
> comparison function instead) [-Werror,-Wstring-compare]
> 
> and then about 250 lines ot messy "explanations" for how it was
> expanded because it happens on line 709 too in the same macro, and it
> ends up being three macros deep or something.
> 
> So no, this all needs to be re-done. That
> 
>                 WARN_ON_ONCE(__builtin_constant_p(src) ?                \
>                              strcmp((src), __data_offsets.dst##_ptr_) : \
>                              (src) != __data_offsets.dst##_ptr_);       \
> 
> does *NOT* work.

In most all cases, src is not a constant and should always equal to what was
passed to __string(), but if it is a constant like "some string" then clang
warns that comparing pointers to strings is UB.

That is,

	__string(src, mystring)

[..]

	__assign_str(src, mystring);

works, but if it has:

	__string(src, "this string");

then

	__assign_str(src, "this string");

is UB due to the compiler having two different pointers to "this string".

I originally just had the "src != str" check but then it was reported that
clang complained about it. It still complained with the
__builtin_constant_p() but the code that it produced did the right thing.

This is in the fast path (where the trace event happens), but I can make it
always do strcmp(), even though it will slow down what is being recorded,
as I plan on removing the parameter in the next merge window anyway.

-- Steve


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [GIT PULL v2] tracing: Updates for v6.9
  2024-03-19 17:06   ` Steven Rostedt
@ 2024-03-19 17:13     ` Steven Rostedt
  2024-03-19 21:03       ` Nathan Chancellor
  0 siblings, 1 reply; 10+ messages in thread
From: Steven Rostedt @ 2024-03-19 17:13 UTC (permalink / raw)
  To: Linus Torvalds
  Cc: LKML, Masami Hiramatsu, Mathieu Desnoyers, Alison Schofield,
	Beau Belgrave, Huang Yiwei, John Garry, Randy Dunlap,
	Thorsten Blum, Vincent Donnefort, linke li

On Tue, 19 Mar 2024 13:06:53 -0400
Steven Rostedt <rostedt@goodmis.org> wrote:

> This is in the fast path (where the trace event happens), but I can make it
> always do strcmp(), even though it will slow down what is being recorded,
> as I plan on removing the parameter in the next merge window anyway.

I'll change it to this:

#define __assign_str(dst, src)						\
	do {								\
		char *__str__ = __get_str(dst);				\
		int __len__ = __get_dynamic_array_len(dst) - 1;		\
		WARN_ON_ONCE(!src != !__data_offsets.dst##_ptr_);	\
		WARN_ON_ONCE(src && strcmp((src), __data_offsets.dst##_ptr_)); \
		memcpy(__str__, __data_offsets.dst##_ptr_ ? :		\
		       EVENT_NULL_STR, __len__);			\
		__str__[__len__] = '\0';				\
	} while (0)

The first WARN_ON() will report the bug if src is not NULL and the pointer
is even though the strcmp() will likely crash in that case. But that's a
bug if that happens anyway.

-- Steve

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [GIT PULL v2] tracing: Updates for v6.9
  2024-03-19 17:13     ` Steven Rostedt
@ 2024-03-19 21:03       ` Nathan Chancellor
  2024-03-19 21:22         ` Linus Torvalds
  2024-03-19 21:27         ` Steven Rostedt
  0 siblings, 2 replies; 10+ messages in thread
From: Nathan Chancellor @ 2024-03-19 21:03 UTC (permalink / raw)
  To: Steven Rostedt
  Cc: Linus Torvalds, LKML, Masami Hiramatsu, Mathieu Desnoyers,
	Alison Schofield, Beau Belgrave, Huang Yiwei, John Garry,
	Randy Dunlap, Thorsten Blum, Vincent Donnefort, linke li, llvm

[-- Attachment #1: Type: text/plain, Size: 1364 bytes --]

On Tue, Mar 19, 2024 at 01:13:33PM -0400, Steven Rostedt wrote:
> On Tue, 19 Mar 2024 13:06:53 -0400
> Steven Rostedt <rostedt@goodmis.org> wrote:
> 
> > This is in the fast path (where the trace event happens), but I can make it
> > always do strcmp(), even though it will slow down what is being recorded,
> > as I plan on removing the parameter in the next merge window anyway.
> 
> I'll change it to this:
> 
> #define __assign_str(dst, src)						\
> 	do {								\
> 		char *__str__ = __get_str(dst);				\
> 		int __len__ = __get_dynamic_array_len(dst) - 1;		\
> 		WARN_ON_ONCE(!src != !__data_offsets.dst##_ptr_);	\
> 		WARN_ON_ONCE(src && strcmp((src), __data_offsets.dst##_ptr_)); \
> 		memcpy(__str__, __data_offsets.dst##_ptr_ ? :		\
> 		       EVENT_NULL_STR, __len__);			\
> 		__str__[__len__] = '\0';				\
> 	} while (0)
> 
> The first WARN_ON() will report the bug if src is not NULL and the pointer
> is even though the strcmp() will likely crash in that case. But that's a
> bug if that happens anyway.

For what it's worth, I applied that change and built ARCH=x86_64
defconfig with LLVM 18.1.1 from [1] but it does not appear to help the
instances of -Wstring-compare; in fact, it adds some additional warnings
that I have not seen before. I have attached the full build log.

[1]: https://mirrors.edge.kernel.org/pub/tools/llvm/

Cheers,
Nathan

[-- Attachment #2: build.log --]
[-- Type: text/plain, Size: 206342 bytes --]

In file included from net/sunrpc/sched.c:31:
In file included from include/trace/events/sunrpc.h:2520:
In file included from include/trace/define_trace.h:102:
In file included from include/trace/trace_events.h:419:
include/trace/events/sunrpc.h:1338:3: error: result of comparison against a string literal is unspecified (use an explicit string comparison function instead) [-Werror,-Wstring-compare]
 1338 |                 __assign_str(addr, xprt ?
      |                 ^
 1339 |                         xprt->address_strings[RPC_DISPLAY_ADDR] : EVENT_NULL_STR);
      |                                                                   ~~~~~~~~~~~~~~
include/trace/stages/stage6_event_callback.h:38:21: note: expanded from macro '__assign_str'
   38 |                 WARN_ON_ONCE(!src != !__data_offsets.dst##_ptr_);       \
      |                               ~~~ ^
include/asm-generic/bug.h:111:25: note: expanded from macro 'WARN_ON_ONCE'
  111 |         int __ret_warn_on = !!(condition);                      \
      |                                ^~~~~~~~~
include/trace/stages/stage6_event_callback.h:135:33: note: expanded from macro 'TP_fast_assign'
  135 | #define TP_fast_assign(args...) args
      |                                 ^~~~
include/trace/trace_events.h:44:16: note: expanded from macro 'TRACE_EVENT'
   44 |                              PARAMS(assign),                   \
      |                                     ^~~~~~
include/linux/tracepoint.h:107:25: note: expanded from macro 'PARAMS'
  107 | #define PARAMS(args...) args
      |                         ^~~~
include/trace/trace_events.h:402:4: note: expanded from macro 'DECLARE_EVENT_CLASS'
  402 |         { assign; }                                                     \
      |           ^~~~~~
In file included from net/sunrpc/sched.c:31:
In file included from include/trace/events/sunrpc.h:2520:
In file included from include/trace/define_trace.h:102:
In file included from include/trace/trace_events.h:419:
include/trace/events/sunrpc.h:1338:3: error: comparison between pointer and integer ('char *' and 'int') [-Werror,-Wpointer-integer-compare]
 1321 |                 __string(port, xprt ? xprt->address_strings[RPC_DISPLAY_PORT] :
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1322 |                                 EVENT_NULL_STR)
      |                                 ~~~~~~~~~~~~~~~
 1323 |         ),
      |         ~~
 1324 | 
 1325 |         TP_fast_assign(
      |         ~~~~~~~~~~~~~~~
 1326 |                 __entry->err = err;
      |                 ~~~~~~~~~~~~~~~~~~~
 1327 |                 __entry->total = total;
      |                 ~~~~~~~~~~~~~~~~~~~~~~~
 1328 |                 __assign_str(addr, xprt ?
      |                 ^~~~~~~~~~~~~~~~~~~~~~~~~
 1329 |                         xprt->address_strings[RPC_DISPLAY_ADDR] : EVENT_NULL_STR);
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1330 |                 __assign_str(port, xprt ?
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~
 1331 |                         xprt->address_strings[RPC_DISPLAY_PORT] : EVENT_NULL_STR);
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1332 |         ),
      |         ~~
 1333 | 
 1334 |         TP_printk("peer=[%s]:%s err=%zd total=%zu", __get_str(addr),
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1335 |                         __get_str(port), __entry->err, __entry->total)
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1336 | );
      | ~
include/trace/stages/stage6_event_callback.h:38:21: note: expanded from macro '__assign_str'
   38 |                 WARN_ON_ONCE(!src != !__data_offsets.dst##_ptr_);       \
      |                               ~~~ ^
include/asm-generic/bug.h:111:25: note: expanded from macro 'WARN_ON_ONCE'
  111 |         int __ret_warn_on = !!(condition);                      \
      |                                ^~~~~~~~~
include/trace/stages/stage6_event_callback.h:135:33: note: expanded from macro 'TP_fast_assign'
  135 | #define TP_fast_assign(args...) args
      |                                 ^~~~
include/trace/trace_events.h:44:16: note: expanded from macro 'TRACE_EVENT'
   40 |         DECLARE_EVENT_CLASS(name,                              \
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   41 |                              PARAMS(proto),                    \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   42 |                              PARAMS(args),                     \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   43 |                              PARAMS(tstruct),                  \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   44 |                              PARAMS(assign),                   \
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
   45 |                              PARAMS(print));                   \
      |                              ~~~~~~~~~~~~~~
include/linux/tracepoint.h:107:25: note: expanded from macro 'PARAMS'
  107 | #define PARAMS(args...) args
      |                         ^~~~
include/trace/trace_events.h:402:4: note: expanded from macro 'DECLARE_EVENT_CLASS'
  402 |         { assign; }                                                     \
      |           ^~~~~~
In file included from net/sunrpc/sched.c:31:
In file included from include/trace/events/sunrpc.h:2520:
In file included from include/trace/define_trace.h:102:
In file included from include/trace/trace_events.h:419:
include/trace/events/sunrpc.h:1338:27: error: pointer/integer type mismatch in conditional expression ('const char *' and 'int') [-Werror,-Wconditional-type-mismatch]
 1321 |                 __string(port, xprt ? xprt->address_strings[RPC_DISPLAY_PORT] :
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1322 |                                 EVENT_NULL_STR)
      |                                 ~~~~~~~~~~~~~~~
 1323 |         ),
      |         ~~
 1324 | 
 1325 |         TP_fast_assign(
      |         ~~~~~~~~~~~~~~~
 1326 |                 __entry->err = err;
      |                 ~~~~~~~~~~~~~~~~~~~
 1327 |                 __entry->total = total;
      |                 ~~~~~~~~~~~~~~~~~~~~~~~
 1328 |                 __assign_str(addr, xprt ?
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~^
 1329 |                         xprt->address_strings[RPC_DISPLAY_ADDR] : EVENT_NULL_STR);
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1330 |                 __assign_str(port, xprt ?
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~
 1331 |                         xprt->address_strings[RPC_DISPLAY_PORT] : EVENT_NULL_STR);
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1332 |         ),
      |         ~~
 1333 | 
 1334 |         TP_printk("peer=[%s]:%s err=%zd total=%zu", __get_str(addr),
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1335 |                         __get_str(port), __entry->err, __entry->total)
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1336 | );
      | ~
include/trace/stages/stage6_event_callback.h:38:17: note: expanded from macro '__assign_str'
   38 |                 WARN_ON_ONCE(!src != !__data_offsets.dst##_ptr_);       \
      |                               ^~~
include/asm-generic/bug.h:111:25: note: expanded from macro 'WARN_ON_ONCE'
  111 |         int __ret_warn_on = !!(condition);                      \
      |                                ^~~~~~~~~
include/trace/stages/stage6_event_callback.h:135:33: note: expanded from macro 'TP_fast_assign'
  135 | #define TP_fast_assign(args...) args
      |                                 ^~~~
include/trace/trace_events.h:44:16: note: expanded from macro 'TRACE_EVENT'
   40 |         DECLARE_EVENT_CLASS(name,                              \
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   41 |                              PARAMS(proto),                    \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   42 |                              PARAMS(args),                     \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   43 |                              PARAMS(tstruct),                  \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   44 |                              PARAMS(assign),                   \
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
   45 |                              PARAMS(print));                   \
      |                              ~~~~~~~~~~~~~~
include/linux/tracepoint.h:107:25: note: expanded from macro 'PARAMS'
  107 | #define PARAMS(args...) args
      |                         ^~~~
include/trace/trace_events.h:402:4: note: expanded from macro 'DECLARE_EVENT_CLASS'
  402 |         { assign; }                                                     \
      |           ^~~~~~
In file included from net/sunrpc/sched.c:31:
In file included from include/trace/events/sunrpc.h:2520:
In file included from include/trace/define_trace.h:102:
In file included from include/trace/trace_events.h:419:
include/trace/events/sunrpc.h:1338:27: error: pointer/integer type mismatch in conditional expression ('const char *' and 'int') [-Werror,-Wconditional-type-mismatch]
 1321 |                 __string(port, xprt ? xprt->address_strings[RPC_DISPLAY_PORT] :
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1322 |                                 EVENT_NULL_STR)
      |                                 ~~~~~~~~~~~~~~~
 1323 |         ),
      |         ~~
 1324 | 
 1325 |         TP_fast_assign(
      |         ~~~~~~~~~~~~~~~
 1326 |                 __entry->err = err;
      |                 ~~~~~~~~~~~~~~~~~~~
 1327 |                 __entry->total = total;
      |                 ~~~~~~~~~~~~~~~~~~~~~~~
 1328 |                 __assign_str(addr, xprt ?
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~^
 1329 |                         xprt->address_strings[RPC_DISPLAY_ADDR] : EVENT_NULL_STR);
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1330 |                 __assign_str(port, xprt ?
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~
 1331 |                         xprt->address_strings[RPC_DISPLAY_PORT] : EVENT_NULL_STR);
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1332 |         ),
      |         ~~
 1333 | 
 1334 |         TP_printk("peer=[%s]:%s err=%zd total=%zu", __get_str(addr),
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1335 |                         __get_str(port), __entry->err, __entry->total)
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1336 | );
      | ~
include/trace/stages/stage6_event_callback.h:39:16: note: expanded from macro '__assign_str'
   39 |                 WARN_ON_ONCE(src && strcmp((src), __data_offsets.dst##_ptr_)); \
      |                              ^~~
include/asm-generic/bug.h:111:25: note: expanded from macro 'WARN_ON_ONCE'
  111 |         int __ret_warn_on = !!(condition);                      \
      |                                ^~~~~~~~~
include/trace/stages/stage6_event_callback.h:135:33: note: expanded from macro 'TP_fast_assign'
  135 | #define TP_fast_assign(args...) args
      |                                 ^~~~
include/trace/trace_events.h:44:16: note: expanded from macro 'TRACE_EVENT'
   40 |         DECLARE_EVENT_CLASS(name,                              \
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   41 |                              PARAMS(proto),                    \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   42 |                              PARAMS(args),                     \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   43 |                              PARAMS(tstruct),                  \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   44 |                              PARAMS(assign),                   \
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
   45 |                              PARAMS(print));                   \
      |                              ~~~~~~~~~~~~~~
include/linux/tracepoint.h:107:25: note: expanded from macro 'PARAMS'
  107 | #define PARAMS(args...) args
      |                         ^~~~
include/trace/trace_events.h:402:4: note: expanded from macro 'DECLARE_EVENT_CLASS'
  402 |         { assign; }                                                     \
      |           ^~~~~~
In file included from net/sunrpc/sched.c:31:
In file included from include/trace/events/sunrpc.h:2520:
In file included from include/trace/define_trace.h:102:
In file included from include/trace/trace_events.h:419:
include/trace/events/sunrpc.h:1340:3: error: result of comparison against a string literal is unspecified (use an explicit string comparison function instead) [-Werror,-Wstring-compare]
 1340 |                 __assign_str(port, xprt ?
      |                 ^
 1341 |                         xprt->address_strings[RPC_DISPLAY_PORT] : EVENT_NULL_STR);
      |                                                                   ~~~~~~~~~~~~~~
include/trace/stages/stage6_event_callback.h:38:21: note: expanded from macro '__assign_str'
   38 |                 WARN_ON_ONCE(!src != !__data_offsets.dst##_ptr_);       \
      |                               ~~~ ^
include/asm-generic/bug.h:111:25: note: expanded from macro 'WARN_ON_ONCE'
  111 |         int __ret_warn_on = !!(condition);                      \
      |                                ^~~~~~~~~
include/trace/stages/stage6_event_callback.h:135:33: note: expanded from macro 'TP_fast_assign'
  135 | #define TP_fast_assign(args...) args
      |                                 ^~~~
include/trace/trace_events.h:44:16: note: expanded from macro 'TRACE_EVENT'
   44 |                              PARAMS(assign),                   \
      |                                     ^~~~~~
include/linux/tracepoint.h:107:25: note: expanded from macro 'PARAMS'
  107 | #define PARAMS(args...) args
      |                         ^~~~
include/trace/trace_events.h:402:4: note: expanded from macro 'DECLARE_EVENT_CLASS'
  402 |         { assign; }                                                     \
      |           ^~~~~~
In file included from net/sunrpc/sched.c:31:
In file included from include/trace/events/sunrpc.h:2520:
In file included from include/trace/define_trace.h:102:
In file included from include/trace/trace_events.h:419:
include/trace/events/sunrpc.h:1340:3: error: comparison between pointer and integer ('char *' and 'int') [-Werror,-Wpointer-integer-compare]
 1321 |                 __string(port, xprt ? xprt->address_strings[RPC_DISPLAY_PORT] :
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1322 |                                 EVENT_NULL_STR)
      |                                 ~~~~~~~~~~~~~~~
 1323 |         ),
      |         ~~
 1324 | 
 1325 |         TP_fast_assign(
      |         ~~~~~~~~~~~~~~~
 1326 |                 __entry->err = err;
      |                 ~~~~~~~~~~~~~~~~~~~
 1327 |                 __entry->total = total;
      |                 ~~~~~~~~~~~~~~~~~~~~~~~
 1328 |                 __assign_str(addr, xprt ?
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~
 1329 |                         xprt->address_strings[RPC_DISPLAY_ADDR] : EVENT_NULL_STR);
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1330 |                 __assign_str(port, xprt ?
      |                 ^~~~~~~~~~~~~~~~~~~~~~~~~
 1331 |                         xprt->address_strings[RPC_DISPLAY_PORT] : EVENT_NULL_STR);
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1332 |         ),
      |         ~~
 1333 | 
 1334 |         TP_printk("peer=[%s]:%s err=%zd total=%zu", __get_str(addr),
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1335 |                         __get_str(port), __entry->err, __entry->total)
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1336 | );
      | ~
include/trace/stages/stage6_event_callback.h:38:21: note: expanded from macro '__assign_str'
   38 |                 WARN_ON_ONCE(!src != !__data_offsets.dst##_ptr_);       \
      |                               ~~~ ^
include/asm-generic/bug.h:111:25: note: expanded from macro 'WARN_ON_ONCE'
  111 |         int __ret_warn_on = !!(condition);                      \
      |                                ^~~~~~~~~
include/trace/stages/stage6_event_callback.h:135:33: note: expanded from macro 'TP_fast_assign'
  135 | #define TP_fast_assign(args...) args
      |                                 ^~~~
include/trace/trace_events.h:44:16: note: expanded from macro 'TRACE_EVENT'
   40 |         DECLARE_EVENT_CLASS(name,                              \
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   41 |                              PARAMS(proto),                    \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   42 |                              PARAMS(args),                     \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   43 |                              PARAMS(tstruct),                  \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   44 |                              PARAMS(assign),                   \
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
   45 |                              PARAMS(print));                   \
      |                              ~~~~~~~~~~~~~~
include/linux/tracepoint.h:107:25: note: expanded from macro 'PARAMS'
  107 | #define PARAMS(args...) args
      |                         ^~~~
include/trace/trace_events.h:402:4: note: expanded from macro 'DECLARE_EVENT_CLASS'
  402 |         { assign; }                                                     \
      |           ^~~~~~
In file included from net/sunrpc/sched.c:31:
In file included from include/trace/events/sunrpc.h:2520:
In file included from include/trace/define_trace.h:102:
In file included from include/trace/trace_events.h:419:
include/trace/events/sunrpc.h:1340:27: error: pointer/integer type mismatch in conditional expression ('const char *' and 'int') [-Werror,-Wconditional-type-mismatch]
 1321 |                 __string(port, xprt ? xprt->address_strings[RPC_DISPLAY_PORT] :
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1322 |                                 EVENT_NULL_STR)
      |                                 ~~~~~~~~~~~~~~~
 1323 |         ),
      |         ~~
 1324 | 
 1325 |         TP_fast_assign(
      |         ~~~~~~~~~~~~~~~
 1326 |                 __entry->err = err;
      |                 ~~~~~~~~~~~~~~~~~~~
 1327 |                 __entry->total = total;
      |                 ~~~~~~~~~~~~~~~~~~~~~~~
 1328 |                 __assign_str(addr, xprt ?
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~
 1329 |                         xprt->address_strings[RPC_DISPLAY_ADDR] : EVENT_NULL_STR);
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1330 |                 __assign_str(port, xprt ?
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~^
 1331 |                         xprt->address_strings[RPC_DISPLAY_PORT] : EVENT_NULL_STR);
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1332 |         ),
      |         ~~
 1333 | 
 1334 |         TP_printk("peer=[%s]:%s err=%zd total=%zu", __get_str(addr),
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1335 |                         __get_str(port), __entry->err, __entry->total)
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1336 | );
      | ~
include/trace/stages/stage6_event_callback.h:38:17: note: expanded from macro '__assign_str'
   38 |                 WARN_ON_ONCE(!src != !__data_offsets.dst##_ptr_);       \
      |                               ^~~
include/asm-generic/bug.h:111:25: note: expanded from macro 'WARN_ON_ONCE'
  111 |         int __ret_warn_on = !!(condition);                      \
      |                                ^~~~~~~~~
include/trace/stages/stage6_event_callback.h:135:33: note: expanded from macro 'TP_fast_assign'
  135 | #define TP_fast_assign(args...) args
      |                                 ^~~~
include/trace/trace_events.h:44:16: note: expanded from macro 'TRACE_EVENT'
   40 |         DECLARE_EVENT_CLASS(name,                              \
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   41 |                              PARAMS(proto),                    \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   42 |                              PARAMS(args),                     \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   43 |                              PARAMS(tstruct),                  \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   44 |                              PARAMS(assign),                   \
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
   45 |                              PARAMS(print));                   \
      |                              ~~~~~~~~~~~~~~
include/linux/tracepoint.h:107:25: note: expanded from macro 'PARAMS'
  107 | #define PARAMS(args...) args
      |                         ^~~~
include/trace/trace_events.h:402:4: note: expanded from macro 'DECLARE_EVENT_CLASS'
  402 |         { assign; }                                                     \
      |           ^~~~~~
In file included from net/sunrpc/sched.c:31:
In file included from include/trace/events/sunrpc.h:2520:
In file included from include/trace/define_trace.h:102:
In file included from include/trace/trace_events.h:419:
include/trace/events/sunrpc.h:1340:27: error: pointer/integer type mismatch in conditional expression ('const char *' and 'int') [-Werror,-Wconditional-type-mismatch]
 1321 |                 __string(port, xprt ? xprt->address_strings[RPC_DISPLAY_PORT] :
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1322 |                                 EVENT_NULL_STR)
      |                                 ~~~~~~~~~~~~~~~
 1323 |         ),
      |         ~~
 1324 | 
 1325 |         TP_fast_assign(
      |         ~~~~~~~~~~~~~~~
 1326 |                 __entry->err = err;
      |                 ~~~~~~~~~~~~~~~~~~~
 1327 |                 __entry->total = total;
      |                 ~~~~~~~~~~~~~~~~~~~~~~~
 1328 |                 __assign_str(addr, xprt ?
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~
 1329 |                         xprt->address_strings[RPC_DISPLAY_ADDR] : EVENT_NULL_STR);
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1330 |                 __assign_str(port, xprt ?
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~^
 1331 |                         xprt->address_strings[RPC_DISPLAY_PORT] : EVENT_NULL_STR);
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1332 |         ),
      |         ~~
 1333 | 
 1334 |         TP_printk("peer=[%s]:%s err=%zd total=%zu", __get_str(addr),
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1335 |                         __get_str(port), __entry->err, __entry->total)
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1336 | );
      | ~
include/trace/stages/stage6_event_callback.h:39:16: note: expanded from macro '__assign_str'
   39 |                 WARN_ON_ONCE(src && strcmp((src), __data_offsets.dst##_ptr_)); \
      |                              ^~~
include/asm-generic/bug.h:111:25: note: expanded from macro 'WARN_ON_ONCE'
  111 |         int __ret_warn_on = !!(condition);                      \
      |                                ^~~~~~~~~
include/trace/stages/stage6_event_callback.h:135:33: note: expanded from macro 'TP_fast_assign'
  135 | #define TP_fast_assign(args...) args
      |                                 ^~~~
include/trace/trace_events.h:44:16: note: expanded from macro 'TRACE_EVENT'
   40 |         DECLARE_EVENT_CLASS(name,                              \
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   41 |                              PARAMS(proto),                    \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   42 |                              PARAMS(args),                     \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   43 |                              PARAMS(tstruct),                  \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   44 |                              PARAMS(assign),                   \
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
   45 |                              PARAMS(print));                   \
      |                              ~~~~~~~~~~~~~~
include/linux/tracepoint.h:107:25: note: expanded from macro 'PARAMS'
  107 | #define PARAMS(args...) args
      |                         ^~~~
include/trace/trace_events.h:402:4: note: expanded from macro 'DECLARE_EVENT_CLASS'
  402 |         { assign; }                                                     \
      |           ^~~~~~
In file included from net/sunrpc/sched.c:31:
In file included from include/trace/events/sunrpc.h:2520:
In file included from include/trace/define_trace.h:102:
In file included from include/trace/trace_events.h:419:
include/trace/events/sunrpc.h:1795:3: error: result of comparison against a string literal is unspecified (use an explicit string comparison function instead) [-Werror,-Wstring-compare]
 1795 |                 __assign_str(addr, rqst->rq_xprt ?
      |                 ^
 1796 |                              rqst->rq_xprt->xpt_remotebuf : EVENT_NULL_STR);
      |                                                             ~~~~~~~~~~~~~~
include/trace/stages/stage6_event_callback.h:38:21: note: expanded from macro '__assign_str'
   38 |                 WARN_ON_ONCE(!src != !__data_offsets.dst##_ptr_);       \
      |                               ~~~ ^
include/asm-generic/bug.h:111:25: note: expanded from macro 'WARN_ON_ONCE'
  111 |         int __ret_warn_on = !!(condition);                      \
      |                                ^~~~~~~~~
include/trace/stages/stage6_event_callback.h:135:33: note: expanded from macro 'TP_fast_assign'
  135 | #define TP_fast_assign(args...) args
      |                                 ^~~~
include/trace/trace_events.h:44:16: note: expanded from macro 'TRACE_EVENT'
   44 |                              PARAMS(assign),                   \
      |                                     ^~~~~~
include/linux/tracepoint.h:107:25: note: expanded from macro 'PARAMS'
  107 | #define PARAMS(args...) args
      |                         ^~~~
include/trace/trace_events.h:402:4: note: expanded from macro 'DECLARE_EVENT_CLASS'
  402 |         { assign; }                                                     \
      |           ^~~~~~
In file included from net/sunrpc/sched.c:31:
In file included from include/trace/events/sunrpc.h:2520:
In file included from include/trace/define_trace.h:102:
In file included from include/trace/trace_events.h:419:
include/trace/events/sunrpc.h:1795:3: error: comparison between pointer and integer ('char *' and 'int') [-Werror,-Wpointer-integer-compare]
 1774 | 
 1775 |         TP_fast_assign(
      |         ~~~~~~~~~~~~~~~
 1776 |                 __entry->xid = be32_to_cpu(rqst->rq_xid);
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1777 |                 __entry->vers = rqst->rq_vers;
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1778 |                 __entry->proc = rqst->rq_proc;
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1779 |                 __assign_str(service, name);
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1780 |                 __assign_str(procedure, svc_proc_name(rqst));
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1781 |                 __assign_str(addr, rqst->rq_xprt ?
      |                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1782 |                              rqst->rq_xprt->xpt_remotebuf : EVENT_NULL_STR);
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1783 |         ),
      |         ~~
 1784 | 
 1785 |         TP_printk("addr=%s xid=0x%08x service=%s vers=%u proc=%s",
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1786 |                         __get_str(addr), __entry->xid,
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1787 |                         __get_str(service), __entry->vers,
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1788 |                         __get_str(procedure)
      |                         ~~~~~~~~~~~~~~~~~~~~
 1789 |         )
      |         ~
include/trace/stages/stage6_event_callback.h:38:21: note: expanded from macro '__assign_str'
   38 |                 WARN_ON_ONCE(!src != !__data_offsets.dst##_ptr_);       \
      |                               ~~~ ^
include/asm-generic/bug.h:111:25: note: expanded from macro 'WARN_ON_ONCE'
  111 |         int __ret_warn_on = !!(condition);                      \
      |                                ^~~~~~~~~
include/trace/stages/stage6_event_callback.h:135:33: note: expanded from macro 'TP_fast_assign'
  135 | #define TP_fast_assign(args...) args
      |                                 ^~~~
include/trace/trace_events.h:44:16: note: expanded from macro 'TRACE_EVENT'
   40 |         DECLARE_EVENT_CLASS(name,                              \
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   41 |                              PARAMS(proto),                    \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   42 |                              PARAMS(args),                     \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   43 |                              PARAMS(tstruct),                  \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   44 |                              PARAMS(assign),                   \
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
   45 |                              PARAMS(print));                   \
      |                              ~~~~~~~~~~~~~~
include/linux/tracepoint.h:107:25: note: expanded from macro 'PARAMS'
  107 | #define PARAMS(args...) args
      |                         ^~~~
include/trace/trace_events.h:402:4: note: expanded from macro 'DECLARE_EVENT_CLASS'
  402 |         { assign; }                                                     \
      |           ^~~~~~
In file included from net/sunrpc/sched.c:31:
In file included from include/trace/events/sunrpc.h:2520:
In file included from include/trace/define_trace.h:102:
In file included from include/trace/trace_events.h:419:
include/trace/events/sunrpc.h:1795:36: error: pointer/integer type mismatch in conditional expression ('char *' and 'int') [-Werror,-Wconditional-type-mismatch]
 1774 | 
 1775 |         TP_fast_assign(
      |         ~~~~~~~~~~~~~~~
 1776 |                 __entry->xid = be32_to_cpu(rqst->rq_xid);
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1777 |                 __entry->vers = rqst->rq_vers;
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1778 |                 __entry->proc = rqst->rq_proc;
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1779 |                 __assign_str(service, name);
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1780 |                 __assign_str(procedure, svc_proc_name(rqst));
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1781 |                 __assign_str(addr, rqst->rq_xprt ?
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
 1782 |                              rqst->rq_xprt->xpt_remotebuf : EVENT_NULL_STR);
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1783 |         ),
      |         ~~
 1784 | 
 1785 |         TP_printk("addr=%s xid=0x%08x service=%s vers=%u proc=%s",
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1786 |                         __get_str(addr), __entry->xid,
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1787 |                         __get_str(service), __entry->vers,
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1788 |                         __get_str(procedure)
      |                         ~~~~~~~~~~~~~~~~~~~~
 1789 |         )
      |         ~
include/trace/stages/stage6_event_callback.h:38:17: note: expanded from macro '__assign_str'
   38 |                 WARN_ON_ONCE(!src != !__data_offsets.dst##_ptr_);       \
      |                               ^~~
include/asm-generic/bug.h:111:25: note: expanded from macro 'WARN_ON_ONCE'
  111 |         int __ret_warn_on = !!(condition);                      \
      |                                ^~~~~~~~~
include/trace/stages/stage6_event_callback.h:135:33: note: expanded from macro 'TP_fast_assign'
  135 | #define TP_fast_assign(args...) args
      |                                 ^~~~
include/trace/trace_events.h:44:16: note: expanded from macro 'TRACE_EVENT'
   40 |         DECLARE_EVENT_CLASS(name,                              \
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   41 |                              PARAMS(proto),                    \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   42 |                              PARAMS(args),                     \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   43 |                              PARAMS(tstruct),                  \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   44 |                              PARAMS(assign),                   \
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
   45 |                              PARAMS(print));                   \
      |                              ~~~~~~~~~~~~~~
include/linux/tracepoint.h:107:25: note: expanded from macro 'PARAMS'
  107 | #define PARAMS(args...) args
      |                         ^~~~
include/trace/trace_events.h:402:4: note: expanded from macro 'DECLARE_EVENT_CLASS'
  402 |         { assign; }                                                     \
      |           ^~~~~~
In file included from net/sunrpc/sched.c:31:
In file included from include/trace/events/sunrpc.h:2520:
In file included from include/trace/define_trace.h:102:
In file included from include/trace/trace_events.h:419:
include/trace/events/sunrpc.h:1795:36: error: pointer/integer type mismatch in conditional expression ('char *' and 'int') [-Werror,-Wconditional-type-mismatch]
 1774 | 
 1775 |         TP_fast_assign(
      |         ~~~~~~~~~~~~~~~
 1776 |                 __entry->xid = be32_to_cpu(rqst->rq_xid);
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1777 |                 __entry->vers = rqst->rq_vers;
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1778 |                 __entry->proc = rqst->rq_proc;
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1779 |                 __assign_str(service, name);
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1780 |                 __assign_str(procedure, svc_proc_name(rqst));
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1781 |                 __assign_str(addr, rqst->rq_xprt ?
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
 1782 |                              rqst->rq_xprt->xpt_remotebuf : EVENT_NULL_STR);
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1783 |         ),
      |         ~~
 1784 | 
 1785 |         TP_printk("addr=%s xid=0x%08x service=%s vers=%u proc=%s",
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1786 |                         __get_str(addr), __entry->xid,
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1787 |                         __get_str(service), __entry->vers,
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1788 |                         __get_str(procedure)
      |                         ~~~~~~~~~~~~~~~~~~~~
 1789 |         )
      |         ~
include/trace/stages/stage6_event_callback.h:39:16: note: expanded from macro '__assign_str'
   39 |                 WARN_ON_ONCE(src && strcmp((src), __data_offsets.dst##_ptr_)); \
      |                              ^~~
include/asm-generic/bug.h:111:25: note: expanded from macro 'WARN_ON_ONCE'
  111 |         int __ret_warn_on = !!(condition);                      \
      |                                ^~~~~~~~~
include/trace/stages/stage6_event_callback.h:135:33: note: expanded from macro 'TP_fast_assign'
  135 | #define TP_fast_assign(args...) args
      |                                 ^~~~
include/trace/trace_events.h:44:16: note: expanded from macro 'TRACE_EVENT'
   40 |         DECLARE_EVENT_CLASS(name,                              \
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   41 |                              PARAMS(proto),                    \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   42 |                              PARAMS(args),                     \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   43 |                              PARAMS(tstruct),                  \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   44 |                              PARAMS(assign),                   \
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
   45 |                              PARAMS(print));                   \
      |                              ~~~~~~~~~~~~~~
include/linux/tracepoint.h:107:25: note: expanded from macro 'PARAMS'
  107 | #define PARAMS(args...) args
      |                         ^~~~
include/trace/trace_events.h:402:4: note: expanded from macro 'DECLARE_EVENT_CLASS'
  402 |         { assign; }                                                     \
      |           ^~~~~~
In file included from net/sunrpc/sched.c:31:
In file included from include/trace/events/sunrpc.h:2520:
In file included from include/trace/define_trace.h:103:
In file included from include/trace/perf.h:75:
include/trace/events/sunrpc.h:1338:3: error: result of comparison against a string literal is unspecified (use an explicit string comparison function instead) [-Werror,-Wstring-compare]
 1338 |                 __assign_str(addr, xprt ?
      |                 ^
 1339 |                         xprt->address_strings[RPC_DISPLAY_ADDR] : EVENT_NULL_STR);
      |                                                                   ~~~~~~~~~~~~~~
include/trace/stages/stage6_event_callback.h:38:21: note: expanded from macro '__assign_str'
   38 |                 WARN_ON_ONCE(!src != !__data_offsets.dst##_ptr_);       \
      |                               ~~~ ^
include/asm-generic/bug.h:111:25: note: expanded from macro 'WARN_ON_ONCE'
  111 |         int __ret_warn_on = !!(condition);                      \
      |                                ^~~~~~~~~
include/trace/stages/stage6_event_callback.h:135:33: note: expanded from macro 'TP_fast_assign'
  135 | #define TP_fast_assign(args...) args
      |                                 ^~~~
include/trace/trace_events.h:44:16: note: expanded from macro 'TRACE_EVENT'
   44 |                              PARAMS(assign),                   \
      |                                     ^~~~~~
include/linux/tracepoint.h:107:25: note: expanded from macro 'PARAMS'
  107 | #define PARAMS(args...) args
      |                         ^~~~
include/trace/perf.h:51:4: note: expanded from macro 'DECLARE_EVENT_CLASS'
   51 |         { assign; }                                                     \
      |           ^~~~~~
In file included from net/sunrpc/sched.c:31:
In file included from include/trace/events/sunrpc.h:2520:
In file included from include/trace/define_trace.h:103:
In file included from include/trace/perf.h:75:
include/trace/events/sunrpc.h:1338:3: error: comparison between pointer and integer ('char *' and 'int') [-Werror,-Wpointer-integer-compare]
 1321 |                 __string(port, xprt ? xprt->address_strings[RPC_DISPLAY_PORT] :
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1322 |                                 EVENT_NULL_STR)
      |                                 ~~~~~~~~~~~~~~~
 1323 |         ),
      |         ~~
 1324 | 
 1325 |         TP_fast_assign(
      |         ~~~~~~~~~~~~~~~
 1326 |                 __entry->err = err;
      |                 ~~~~~~~~~~~~~~~~~~~
 1327 |                 __entry->total = total;
      |                 ~~~~~~~~~~~~~~~~~~~~~~~
 1328 |                 __assign_str(addr, xprt ?
      |                 ^~~~~~~~~~~~~~~~~~~~~~~~~
 1329 |                         xprt->address_strings[RPC_DISPLAY_ADDR] : EVENT_NULL_STR);
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1330 |                 __assign_str(port, xprt ?
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~
 1331 |                         xprt->address_strings[RPC_DISPLAY_PORT] : EVENT_NULL_STR);
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1332 |         ),
      |         ~~
 1333 | 
 1334 |         TP_printk("peer=[%s]:%s err=%zd total=%zu", __get_str(addr),
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1335 |                         __get_str(port), __entry->err, __entry->total)
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1336 | );
      | ~
include/trace/stages/stage6_event_callback.h:38:21: note: expanded from macro '__assign_str'
   38 |                 WARN_ON_ONCE(!src != !__data_offsets.dst##_ptr_);       \
      |                               ~~~ ^
include/asm-generic/bug.h:111:25: note: expanded from macro 'WARN_ON_ONCE'
  111 |         int __ret_warn_on = !!(condition);                      \
      |                                ^~~~~~~~~
include/trace/stages/stage6_event_callback.h:135:33: note: expanded from macro 'TP_fast_assign'
  135 | #define TP_fast_assign(args...) args
      |                                 ^~~~
include/trace/trace_events.h:44:16: note: expanded from macro 'TRACE_EVENT'
   40 |         DECLARE_EVENT_CLASS(name,                              \
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   41 |                              PARAMS(proto),                    \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   42 |                              PARAMS(args),                     \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   43 |                              PARAMS(tstruct),                  \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   44 |                              PARAMS(assign),                   \
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
   45 |                              PARAMS(print));                   \
      |                              ~~~~~~~~~~~~~~
include/linux/tracepoint.h:107:25: note: expanded from macro 'PARAMS'
  107 | #define PARAMS(args...) args
      |                         ^~~~
include/trace/perf.h:51:4: note: expanded from macro 'DECLARE_EVENT_CLASS'
   51 |         { assign; }                                                     \
      |           ^~~~~~
In file included from net/sunrpc/sched.c:31:
In file included from include/trace/events/sunrpc.h:2520:
In file included from include/trace/define_trace.h:103:
In file included from include/trace/perf.h:75:
include/trace/events/sunrpc.h:1338:27: error: pointer/integer type mismatch in conditional expression ('const char *' and 'int') [-Werror,-Wconditional-type-mismatch]
 1321 |                 __string(port, xprt ? xprt->address_strings[RPC_DISPLAY_PORT] :
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1322 |                                 EVENT_NULL_STR)
      |                                 ~~~~~~~~~~~~~~~
 1323 |         ),
      |         ~~
 1324 | 
 1325 |         TP_fast_assign(
      |         ~~~~~~~~~~~~~~~
 1326 |                 __entry->err = err;
      |                 ~~~~~~~~~~~~~~~~~~~
 1327 |                 __entry->total = total;
      |                 ~~~~~~~~~~~~~~~~~~~~~~~
 1328 |                 __assign_str(addr, xprt ?
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~^
 1329 |                         xprt->address_strings[RPC_DISPLAY_ADDR] : EVENT_NULL_STR);
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1330 |                 __assign_str(port, xprt ?
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~
 1331 |                         xprt->address_strings[RPC_DISPLAY_PORT] : EVENT_NULL_STR);
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1332 |         ),
      |         ~~
 1333 | 
 1334 |         TP_printk("peer=[%s]:%s err=%zd total=%zu", __get_str(addr),
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1335 |                         __get_str(port), __entry->err, __entry->total)
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1336 | );
      | ~
include/trace/stages/stage6_event_callback.h:38:17: note: expanded from macro '__assign_str'
   38 |                 WARN_ON_ONCE(!src != !__data_offsets.dst##_ptr_);       \
      |                               ^~~
include/asm-generic/bug.h:111:25: note: expanded from macro 'WARN_ON_ONCE'
  111 |         int __ret_warn_on = !!(condition);                      \
      |                                ^~~~~~~~~
include/trace/stages/stage6_event_callback.h:135:33: note: expanded from macro 'TP_fast_assign'
  135 | #define TP_fast_assign(args...) args
      |                                 ^~~~
include/trace/trace_events.h:44:16: note: expanded from macro 'TRACE_EVENT'
   40 |         DECLARE_EVENT_CLASS(name,                              \
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   41 |                              PARAMS(proto),                    \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   42 |                              PARAMS(args),                     \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   43 |                              PARAMS(tstruct),                  \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   44 |                              PARAMS(assign),                   \
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
   45 |                              PARAMS(print));                   \
      |                              ~~~~~~~~~~~~~~
include/linux/tracepoint.h:107:25: note: expanded from macro 'PARAMS'
  107 | #define PARAMS(args...) args
      |                         ^~~~
include/trace/perf.h:51:4: note: expanded from macro 'DECLARE_EVENT_CLASS'
   51 |         { assign; }                                                     \
      |           ^~~~~~
In file included from net/sunrpc/sched.c:31:
In file included from include/trace/events/sunrpc.h:2520:
In file included from include/trace/define_trace.h:103:
In file included from include/trace/perf.h:75:
include/trace/events/sunrpc.h:1338:27: error: pointer/integer type mismatch in conditional expression ('const char *' and 'int') [-Werror,-Wconditional-type-mismatch]
 1321 |                 __string(port, xprt ? xprt->address_strings[RPC_DISPLAY_PORT] :
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1322 |                                 EVENT_NULL_STR)
      |                                 ~~~~~~~~~~~~~~~
 1323 |         ),
      |         ~~
 1324 | 
 1325 |         TP_fast_assign(
      |         ~~~~~~~~~~~~~~~
 1326 |                 __entry->err = err;
      |                 ~~~~~~~~~~~~~~~~~~~
 1327 |                 __entry->total = total;
      |                 ~~~~~~~~~~~~~~~~~~~~~~~
 1328 |                 __assign_str(addr, xprt ?
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~^
 1329 |                         xprt->address_strings[RPC_DISPLAY_ADDR] : EVENT_NULL_STR);
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1330 |                 __assign_str(port, xprt ?
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~
 1331 |                         xprt->address_strings[RPC_DISPLAY_PORT] : EVENT_NULL_STR);
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1332 |         ),
      |         ~~
 1333 | 
 1334 |         TP_printk("peer=[%s]:%s err=%zd total=%zu", __get_str(addr),
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1335 |                         __get_str(port), __entry->err, __entry->total)
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1336 | );
      | ~
include/trace/stages/stage6_event_callback.h:39:16: note: expanded from macro '__assign_str'
   39 |                 WARN_ON_ONCE(src && strcmp((src), __data_offsets.dst##_ptr_)); \
      |                              ^~~
include/asm-generic/bug.h:111:25: note: expanded from macro 'WARN_ON_ONCE'
  111 |         int __ret_warn_on = !!(condition);                      \
      |                                ^~~~~~~~~
include/trace/stages/stage6_event_callback.h:135:33: note: expanded from macro 'TP_fast_assign'
  135 | #define TP_fast_assign(args...) args
      |                                 ^~~~
include/trace/trace_events.h:44:16: note: expanded from macro 'TRACE_EVENT'
   40 |         DECLARE_EVENT_CLASS(name,                              \
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   41 |                              PARAMS(proto),                    \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   42 |                              PARAMS(args),                     \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   43 |                              PARAMS(tstruct),                  \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   44 |                              PARAMS(assign),                   \
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
   45 |                              PARAMS(print));                   \
      |                              ~~~~~~~~~~~~~~
include/linux/tracepoint.h:107:25: note: expanded from macro 'PARAMS'
  107 | #define PARAMS(args...) args
      |                         ^~~~
include/trace/perf.h:51:4: note: expanded from macro 'DECLARE_EVENT_CLASS'
   51 |         { assign; }                                                     \
      |           ^~~~~~
In file included from net/sunrpc/sched.c:31:
In file included from include/trace/events/sunrpc.h:2520:
In file included from include/trace/define_trace.h:103:
In file included from include/trace/perf.h:75:
include/trace/events/sunrpc.h:1340:3: error: result of comparison against a string literal is unspecified (use an explicit string comparison function instead) [-Werror,-Wstring-compare]
 1340 |                 __assign_str(port, xprt ?
      |                 ^
 1341 |                         xprt->address_strings[RPC_DISPLAY_PORT] : EVENT_NULL_STR);
      |                                                                   ~~~~~~~~~~~~~~
include/trace/stages/stage6_event_callback.h:38:21: note: expanded from macro '__assign_str'
   38 |                 WARN_ON_ONCE(!src != !__data_offsets.dst##_ptr_);       \
      |                               ~~~ ^
include/asm-generic/bug.h:111:25: note: expanded from macro 'WARN_ON_ONCE'
  111 |         int __ret_warn_on = !!(condition);                      \
      |                                ^~~~~~~~~
include/trace/stages/stage6_event_callback.h:135:33: note: expanded from macro 'TP_fast_assign'
  135 | #define TP_fast_assign(args...) args
      |                                 ^~~~
include/trace/trace_events.h:44:16: note: expanded from macro 'TRACE_EVENT'
   44 |                              PARAMS(assign),                   \
      |                                     ^~~~~~
include/linux/tracepoint.h:107:25: note: expanded from macro 'PARAMS'
  107 | #define PARAMS(args...) args
      |                         ^~~~
include/trace/perf.h:51:4: note: expanded from macro 'DECLARE_EVENT_CLASS'
   51 |         { assign; }                                                     \
      |           ^~~~~~
In file included from net/sunrpc/sched.c:31:
In file included from include/trace/events/sunrpc.h:2520:
In file included from include/trace/define_trace.h:103:
In file included from include/trace/perf.h:75:
include/trace/events/sunrpc.h:1340:3: error: comparison between pointer and integer ('char *' and 'int') [-Werror,-Wpointer-integer-compare]
 1321 |                 __string(port, xprt ? xprt->address_strings[RPC_DISPLAY_PORT] :
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1322 |                                 EVENT_NULL_STR)
      |                                 ~~~~~~~~~~~~~~~
 1323 |         ),
      |         ~~
 1324 | 
 1325 |         TP_fast_assign(
      |         ~~~~~~~~~~~~~~~
 1326 |                 __entry->err = err;
      |                 ~~~~~~~~~~~~~~~~~~~
 1327 |                 __entry->total = total;
      |                 ~~~~~~~~~~~~~~~~~~~~~~~
 1328 |                 __assign_str(addr, xprt ?
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~
 1329 |                         xprt->address_strings[RPC_DISPLAY_ADDR] : EVENT_NULL_STR);
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1330 |                 __assign_str(port, xprt ?
      |                 ^~~~~~~~~~~~~~~~~~~~~~~~~
 1331 |                         xprt->address_strings[RPC_DISPLAY_PORT] : EVENT_NULL_STR);
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1332 |         ),
      |         ~~
 1333 | 
 1334 |         TP_printk("peer=[%s]:%s err=%zd total=%zu", __get_str(addr),
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1335 |                         __get_str(port), __entry->err, __entry->total)
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1336 | );
      | ~
include/trace/stages/stage6_event_callback.h:38:21: note: expanded from macro '__assign_str'
   38 |                 WARN_ON_ONCE(!src != !__data_offsets.dst##_ptr_);       \
      |                               ~~~ ^
include/asm-generic/bug.h:111:25: note: expanded from macro 'WARN_ON_ONCE'
  111 |         int __ret_warn_on = !!(condition);                      \
      |                                ^~~~~~~~~
include/trace/stages/stage6_event_callback.h:135:33: note: expanded from macro 'TP_fast_assign'
  135 | #define TP_fast_assign(args...) args
      |                                 ^~~~
include/trace/trace_events.h:44:16: note: expanded from macro 'TRACE_EVENT'
   40 |         DECLARE_EVENT_CLASS(name,                              \
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   41 |                              PARAMS(proto),                    \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   42 |                              PARAMS(args),                     \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   43 |                              PARAMS(tstruct),                  \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   44 |                              PARAMS(assign),                   \
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
   45 |                              PARAMS(print));                   \
      |                              ~~~~~~~~~~~~~~
include/linux/tracepoint.h:107:25: note: expanded from macro 'PARAMS'
  107 | #define PARAMS(args...) args
      |                         ^~~~
include/trace/perf.h:51:4: note: expanded from macro 'DECLARE_EVENT_CLASS'
   51 |         { assign; }                                                     \
      |           ^~~~~~
In file included from net/sunrpc/sched.c:31:
In file included from include/trace/events/sunrpc.h:2520:
In file included from include/trace/define_trace.h:103:
In file included from include/trace/perf.h:75:
include/trace/events/sunrpc.h:1340:27: error: pointer/integer type mismatch in conditional expression ('const char *' and 'int') [-Werror,-Wconditional-type-mismatch]
 1321 |                 __string(port, xprt ? xprt->address_strings[RPC_DISPLAY_PORT] :
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1322 |                                 EVENT_NULL_STR)
      |                                 ~~~~~~~~~~~~~~~
 1323 |         ),
      |         ~~
 1324 | 
 1325 |         TP_fast_assign(
      |         ~~~~~~~~~~~~~~~
 1326 |                 __entry->err = err;
      |                 ~~~~~~~~~~~~~~~~~~~
 1327 |                 __entry->total = total;
      |                 ~~~~~~~~~~~~~~~~~~~~~~~
 1328 |                 __assign_str(addr, xprt ?
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~
 1329 |                         xprt->address_strings[RPC_DISPLAY_ADDR] : EVENT_NULL_STR);
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1330 |                 __assign_str(port, xprt ?
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~^
 1331 |                         xprt->address_strings[RPC_DISPLAY_PORT] : EVENT_NULL_STR);
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1332 |         ),
      |         ~~
 1333 | 
 1334 |         TP_printk("peer=[%s]:%s err=%zd total=%zu", __get_str(addr),
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1335 |                         __get_str(port), __entry->err, __entry->total)
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1336 | );
      | ~
include/trace/stages/stage6_event_callback.h:38:17: note: expanded from macro '__assign_str'
   38 |                 WARN_ON_ONCE(!src != !__data_offsets.dst##_ptr_);       \
      |                               ^~~
include/asm-generic/bug.h:111:25: note: expanded from macro 'WARN_ON_ONCE'
  111 |         int __ret_warn_on = !!(condition);                      \
      |                                ^~~~~~~~~
include/trace/stages/stage6_event_callback.h:135:33: note: expanded from macro 'TP_fast_assign'
  135 | #define TP_fast_assign(args...) args
      |                                 ^~~~
include/trace/trace_events.h:44:16: note: expanded from macro 'TRACE_EVENT'
   40 |         DECLARE_EVENT_CLASS(name,                              \
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   41 |                              PARAMS(proto),                    \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   42 |                              PARAMS(args),                     \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   43 |                              PARAMS(tstruct),                  \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   44 |                              PARAMS(assign),                   \
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
   45 |                              PARAMS(print));                   \
      |                              ~~~~~~~~~~~~~~
include/linux/tracepoint.h:107:25: note: expanded from macro 'PARAMS'
  107 | #define PARAMS(args...) args
      |                         ^~~~
include/trace/perf.h:51:4: note: expanded from macro 'DECLARE_EVENT_CLASS'
   51 |         { assign; }                                                     \
      |           ^~~~~~
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
make[6]: *** [scripts/Makefile.build:243: net/sunrpc/sched.o] Error 1
make[6]: Target 'net/sunrpc/' not remade because of errors.
make[5]: *** [scripts/Makefile.build:481: net/sunrpc] Error 2
In file included from net/core/net-traces.c:32:
In file included from include/trace/events/napi.h:77:
In file included from include/trace/define_trace.h:102:
In file included from include/trace/trace_events.h:419:
include/trace/events/napi.h:29:3: error: result of comparison against a string literal is unspecified (use an explicit string comparison function instead) [-Werror,-Wstring-compare]
   29 |                 __assign_str(dev_name, napi->dev ? napi->dev->name : NO_DEV);
      |                 ^                                                    ~~~~~~
include/trace/stages/stage6_event_callback.h:38:21: note: expanded from macro '__assign_str'
   38 |                 WARN_ON_ONCE(!src != !__data_offsets.dst##_ptr_);       \
      |                               ~~~ ^
include/asm-generic/bug.h:111:25: note: expanded from macro 'WARN_ON_ONCE'
  111 |         int __ret_warn_on = !!(condition);                      \
      |                                ^~~~~~~~~
include/trace/stages/stage6_event_callback.h:135:33: note: expanded from macro 'TP_fast_assign'
  135 | #define TP_fast_assign(args...) args
      |                                 ^~~~
include/trace/trace_events.h:44:16: note: expanded from macro 'TRACE_EVENT'
   44 |                              PARAMS(assign),                   \
      |                                     ^~~~~~
include/linux/tracepoint.h:107:25: note: expanded from macro 'PARAMS'
  107 | #define PARAMS(args...) args
      |                         ^~~~
include/trace/trace_events.h:402:4: note: expanded from macro 'DECLARE_EVENT_CLASS'
  402 |         { assign; }                                                     \
      |           ^~~~~~
In file included from net/core/net-traces.c:32:
In file included from include/trace/events/napi.h:77:
In file included from include/trace/define_trace.h:102:
In file included from include/trace/trace_events.h:419:
include/trace/events/napi.h:29:3: error: comparison between pointer and integer ('char *' and 'int') [-Werror,-Wpointer-integer-compare]
   14 |                 __string(       dev_name, napi->dev ? napi->dev->name : NO_DEV)
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   15 |                 __field(        int,                    work)
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   16 |                 __field(        int,                    budget)
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   17 |         ),
      |         ~~
   18 | 
   19 |         TP_fast_assign(
      |         ~~~~~~~~~~~~~~~
   20 |                 __entry->napi = napi;
      |                 ~~~~~~~~~~~~~~~~~~~~~
   21 |                 __assign_str(dev_name, napi->dev ? napi->dev->name : NO_DEV);
      |                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   22 |                 __entry->work = work;
      |                 ~~~~~~~~~~~~~~~~~~~~~
   23 |                 __entry->budget = budget;
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~
   24 |         ),
      |         ~~
   25 | 
   26 |         TP_printk("napi poll on napi struct %p for device %s work %d budget %d",
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   27 |                   __entry->napi, __get_str(dev_name),
      |                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   28 |                   __entry->work, __entry->budget)
      |                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   29 | );
      | ~
include/trace/stages/stage6_event_callback.h:38:21: note: expanded from macro '__assign_str'
   38 |                 WARN_ON_ONCE(!src != !__data_offsets.dst##_ptr_);       \
      |                               ~~~ ^
include/asm-generic/bug.h:111:25: note: expanded from macro 'WARN_ON_ONCE'
  111 |         int __ret_warn_on = !!(condition);                      \
      |                                ^~~~~~~~~
include/trace/stages/stage6_event_callback.h:135:33: note: expanded from macro 'TP_fast_assign'
  135 | #define TP_fast_assign(args...) args
      |                                 ^~~~
include/trace/trace_events.h:44:16: note: expanded from macro 'TRACE_EVENT'
   40 |         DECLARE_EVENT_CLASS(name,                              \
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   41 |                              PARAMS(proto),                    \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   42 |                              PARAMS(args),                     \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   43 |                              PARAMS(tstruct),                  \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   44 |                              PARAMS(assign),                   \
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
   45 |                              PARAMS(print));                   \
      |                              ~~~~~~~~~~~~~~
include/linux/tracepoint.h:107:25: note: expanded from macro 'PARAMS'
  107 | #define PARAMS(args...) args
      |                         ^~~~
include/trace/trace_events.h:402:4: note: expanded from macro 'DECLARE_EVENT_CLASS'
  402 |         { assign; }                                                     \
      |           ^~~~~~
In file included from net/core/net-traces.c:32:
In file included from include/trace/events/napi.h:77:
In file included from include/trace/define_trace.h:102:
In file included from include/trace/trace_events.h:419:
include/trace/events/napi.h:29:36: error: pointer/integer type mismatch in conditional expression ('char *' and 'int') [-Werror,-Wconditional-type-mismatch]
   14 |                 __string(       dev_name, napi->dev ? napi->dev->name : NO_DEV)
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   15 |                 __field(        int,                    work)
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   16 |                 __field(        int,                    budget)
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   17 |         ),
      |         ~~
   18 | 
   19 |         TP_fast_assign(
      |         ~~~~~~~~~~~~~~~
   20 |                 __entry->napi = napi;
      |                 ~~~~~~~~~~~~~~~~~~~~~
   21 |                 __assign_str(dev_name, napi->dev ? napi->dev->name : NO_DEV);
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
   22 |                 __entry->work = work;
      |                 ~~~~~~~~~~~~~~~~~~~~~
   23 |                 __entry->budget = budget;
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~
   24 |         ),
      |         ~~
   25 | 
   26 |         TP_printk("napi poll on napi struct %p for device %s work %d budget %d",
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   27 |                   __entry->napi, __get_str(dev_name),
      |                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   28 |                   __entry->work, __entry->budget)
      |                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   29 | );
      | ~
include/trace/stages/stage6_event_callback.h:38:17: note: expanded from macro '__assign_str'
   38 |                 WARN_ON_ONCE(!src != !__data_offsets.dst##_ptr_);       \
      |                               ^~~
include/asm-generic/bug.h:111:25: note: expanded from macro 'WARN_ON_ONCE'
  111 |         int __ret_warn_on = !!(condition);                      \
      |                                ^~~~~~~~~
include/trace/stages/stage6_event_callback.h:135:33: note: expanded from macro 'TP_fast_assign'
  135 | #define TP_fast_assign(args...) args
      |                                 ^~~~
include/trace/trace_events.h:44:16: note: expanded from macro 'TRACE_EVENT'
   40 |         DECLARE_EVENT_CLASS(name,                              \
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   41 |                              PARAMS(proto),                    \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   42 |                              PARAMS(args),                     \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   43 |                              PARAMS(tstruct),                  \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   44 |                              PARAMS(assign),                   \
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
   45 |                              PARAMS(print));                   \
      |                              ~~~~~~~~~~~~~~
include/linux/tracepoint.h:107:25: note: expanded from macro 'PARAMS'
  107 | #define PARAMS(args...) args
      |                         ^~~~
include/trace/trace_events.h:402:4: note: expanded from macro 'DECLARE_EVENT_CLASS'
  402 |         { assign; }                                                     \
      |           ^~~~~~
In file included from net/core/net-traces.c:32:
In file included from include/trace/events/napi.h:77:
In file included from include/trace/define_trace.h:102:
In file included from include/trace/trace_events.h:419:
include/trace/events/napi.h:29:36: error: pointer/integer type mismatch in conditional expression ('char *' and 'int') [-Werror,-Wconditional-type-mismatch]
   14 |                 __string(       dev_name, napi->dev ? napi->dev->name : NO_DEV)
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   15 |                 __field(        int,                    work)
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   16 |                 __field(        int,                    budget)
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   17 |         ),
      |         ~~
   18 | 
   19 |         TP_fast_assign(
      |         ~~~~~~~~~~~~~~~
   20 |                 __entry->napi = napi;
      |                 ~~~~~~~~~~~~~~~~~~~~~
   21 |                 __assign_str(dev_name, napi->dev ? napi->dev->name : NO_DEV);
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
   22 |                 __entry->work = work;
      |                 ~~~~~~~~~~~~~~~~~~~~~
   23 |                 __entry->budget = budget;
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~
   24 |         ),
      |         ~~
   25 | 
   26 |         TP_printk("napi poll on napi struct %p for device %s work %d budget %d",
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   27 |                   __entry->napi, __get_str(dev_name),
      |                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   28 |                   __entry->work, __entry->budget)
      |                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   29 | );
      | ~
include/trace/stages/stage6_event_callback.h:39:16: note: expanded from macro '__assign_str'
   39 |                 WARN_ON_ONCE(src && strcmp((src), __data_offsets.dst##_ptr_)); \
      |                              ^~~
include/asm-generic/bug.h:111:25: note: expanded from macro 'WARN_ON_ONCE'
  111 |         int __ret_warn_on = !!(condition);                      \
      |                                ^~~~~~~~~
include/trace/stages/stage6_event_callback.h:135:33: note: expanded from macro 'TP_fast_assign'
  135 | #define TP_fast_assign(args...) args
      |                                 ^~~~
include/trace/trace_events.h:44:16: note: expanded from macro 'TRACE_EVENT'
   40 |         DECLARE_EVENT_CLASS(name,                              \
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   41 |                              PARAMS(proto),                    \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   42 |                              PARAMS(args),                     \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   43 |                              PARAMS(tstruct),                  \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   44 |                              PARAMS(assign),                   \
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
   45 |                              PARAMS(print));                   \
      |                              ~~~~~~~~~~~~~~
include/linux/tracepoint.h:107:25: note: expanded from macro 'PARAMS'
  107 | #define PARAMS(args...) args
      |                         ^~~~
include/trace/trace_events.h:402:4: note: expanded from macro 'DECLARE_EVENT_CLASS'
  402 |         { assign; }                                                     \
      |           ^~~~~~
In file included from net/core/net-traces.c:32:
In file included from include/trace/events/napi.h:77:
In file included from include/trace/define_trace.h:103:
In file included from include/trace/perf.h:75:
include/trace/events/napi.h:29:3: error: result of comparison against a string literal is unspecified (use an explicit string comparison function instead) [-Werror,-Wstring-compare]
   29 |                 __assign_str(dev_name, napi->dev ? napi->dev->name : NO_DEV);
      |                 ^                                                    ~~~~~~
include/trace/stages/stage6_event_callback.h:38:21: note: expanded from macro '__assign_str'
   38 |                 WARN_ON_ONCE(!src != !__data_offsets.dst##_ptr_);       \
      |                               ~~~ ^
include/asm-generic/bug.h:111:25: note: expanded from macro 'WARN_ON_ONCE'
  111 |         int __ret_warn_on = !!(condition);                      \
      |                                ^~~~~~~~~
include/trace/stages/stage6_event_callback.h:135:33: note: expanded from macro 'TP_fast_assign'
  135 | #define TP_fast_assign(args...) args
      |                                 ^~~~
include/trace/trace_events.h:44:16: note: expanded from macro 'TRACE_EVENT'
   44 |                              PARAMS(assign),                   \
      |                                     ^~~~~~
include/linux/tracepoint.h:107:25: note: expanded from macro 'PARAMS'
  107 | #define PARAMS(args...) args
      |                         ^~~~
include/trace/perf.h:51:4: note: expanded from macro 'DECLARE_EVENT_CLASS'
   51 |         { assign; }                                                     \
      |           ^~~~~~
In file included from net/core/net-traces.c:32:
In file included from include/trace/events/napi.h:77:
In file included from include/trace/define_trace.h:103:
In file included from include/trace/perf.h:75:
include/trace/events/napi.h:29:3: error: comparison between pointer and integer ('char *' and 'int') [-Werror,-Wpointer-integer-compare]
   14 |                 __string(       dev_name, napi->dev ? napi->dev->name : NO_DEV)
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   15 |                 __field(        int,                    work)
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   16 |                 __field(        int,                    budget)
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   17 |         ),
      |         ~~
   18 | 
   19 |         TP_fast_assign(
      |         ~~~~~~~~~~~~~~~
   20 |                 __entry->napi = napi;
      |                 ~~~~~~~~~~~~~~~~~~~~~
   21 |                 __assign_str(dev_name, napi->dev ? napi->dev->name : NO_DEV);
      |                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   22 |                 __entry->work = work;
      |                 ~~~~~~~~~~~~~~~~~~~~~
   23 |                 __entry->budget = budget;
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~
   24 |         ),
      |         ~~
   25 | 
   26 |         TP_printk("napi poll on napi struct %p for device %s work %d budget %d",
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   27 |                   __entry->napi, __get_str(dev_name),
      |                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   28 |                   __entry->work, __entry->budget)
      |                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   29 | );
      | ~
include/trace/stages/stage6_event_callback.h:38:21: note: expanded from macro '__assign_str'
   38 |                 WARN_ON_ONCE(!src != !__data_offsets.dst##_ptr_);       \
      |                               ~~~ ^
include/asm-generic/bug.h:111:25: note: expanded from macro 'WARN_ON_ONCE'
  111 |         int __ret_warn_on = !!(condition);                      \
      |                                ^~~~~~~~~
include/trace/stages/stage6_event_callback.h:135:33: note: expanded from macro 'TP_fast_assign'
  135 | #define TP_fast_assign(args...) args
      |                                 ^~~~
include/trace/trace_events.h:44:16: note: expanded from macro 'TRACE_EVENT'
   40 |         DECLARE_EVENT_CLASS(name,                              \
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   41 |                              PARAMS(proto),                    \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   42 |                              PARAMS(args),                     \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   43 |                              PARAMS(tstruct),                  \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   44 |                              PARAMS(assign),                   \
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
   45 |                              PARAMS(print));                   \
      |                              ~~~~~~~~~~~~~~
include/linux/tracepoint.h:107:25: note: expanded from macro 'PARAMS'
  107 | #define PARAMS(args...) args
      |                         ^~~~
include/trace/perf.h:51:4: note: expanded from macro 'DECLARE_EVENT_CLASS'
   51 |         { assign; }                                                     \
      |           ^~~~~~
In file included from net/core/net-traces.c:32:
In file included from include/trace/events/napi.h:77:
In file included from include/trace/define_trace.h:103:
In file included from include/trace/perf.h:75:
include/trace/events/napi.h:29:36: error: pointer/integer type mismatch in conditional expression ('char *' and 'int') [-Werror,-Wconditional-type-mismatch]
   14 |                 __string(       dev_name, napi->dev ? napi->dev->name : NO_DEV)
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   15 |                 __field(        int,                    work)
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   16 |                 __field(        int,                    budget)
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   17 |         ),
      |         ~~
   18 | 
   19 |         TP_fast_assign(
      |         ~~~~~~~~~~~~~~~
   20 |                 __entry->napi = napi;
      |                 ~~~~~~~~~~~~~~~~~~~~~
   21 |                 __assign_str(dev_name, napi->dev ? napi->dev->name : NO_DEV);
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
   22 |                 __entry->work = work;
      |                 ~~~~~~~~~~~~~~~~~~~~~
   23 |                 __entry->budget = budget;
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~
   24 |         ),
      |         ~~
   25 | 
   26 |         TP_printk("napi poll on napi struct %p for device %s work %d budget %d",
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   27 |                   __entry->napi, __get_str(dev_name),
      |                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   28 |                   __entry->work, __entry->budget)
      |                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   29 | );
      | ~
include/trace/stages/stage6_event_callback.h:38:17: note: expanded from macro '__assign_str'
   38 |                 WARN_ON_ONCE(!src != !__data_offsets.dst##_ptr_);       \
      |                               ^~~
include/asm-generic/bug.h:111:25: note: expanded from macro 'WARN_ON_ONCE'
  111 |         int __ret_warn_on = !!(condition);                      \
      |                                ^~~~~~~~~
include/trace/stages/stage6_event_callback.h:135:33: note: expanded from macro 'TP_fast_assign'
  135 | #define TP_fast_assign(args...) args
      |                                 ^~~~
include/trace/trace_events.h:44:16: note: expanded from macro 'TRACE_EVENT'
   40 |         DECLARE_EVENT_CLASS(name,                              \
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   41 |                              PARAMS(proto),                    \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   42 |                              PARAMS(args),                     \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   43 |                              PARAMS(tstruct),                  \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   44 |                              PARAMS(assign),                   \
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
   45 |                              PARAMS(print));                   \
      |                              ~~~~~~~~~~~~~~
include/linux/tracepoint.h:107:25: note: expanded from macro 'PARAMS'
  107 | #define PARAMS(args...) args
      |                         ^~~~
include/trace/perf.h:51:4: note: expanded from macro 'DECLARE_EVENT_CLASS'
   51 |         { assign; }                                                     \
      |           ^~~~~~
In file included from net/core/net-traces.c:32:
In file included from include/trace/events/napi.h:77:
In file included from include/trace/define_trace.h:103:
In file included from include/trace/perf.h:75:
include/trace/events/napi.h:29:36: error: pointer/integer type mismatch in conditional expression ('char *' and 'int') [-Werror,-Wconditional-type-mismatch]
   14 |                 __string(       dev_name, napi->dev ? napi->dev->name : NO_DEV)
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   15 |                 __field(        int,                    work)
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   16 |                 __field(        int,                    budget)
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   17 |         ),
      |         ~~
   18 | 
   19 |         TP_fast_assign(
      |         ~~~~~~~~~~~~~~~
   20 |                 __entry->napi = napi;
      |                 ~~~~~~~~~~~~~~~~~~~~~
   21 |                 __assign_str(dev_name, napi->dev ? napi->dev->name : NO_DEV);
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
   22 |                 __entry->work = work;
      |                 ~~~~~~~~~~~~~~~~~~~~~
   23 |                 __entry->budget = budget;
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~
   24 |         ),
      |         ~~
   25 | 
   26 |         TP_printk("napi poll on napi struct %p for device %s work %d budget %d",
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   27 |                   __entry->napi, __get_str(dev_name),
      |                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   28 |                   __entry->work, __entry->budget)
      |                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   29 | );
      | ~
include/trace/stages/stage6_event_callback.h:39:16: note: expanded from macro '__assign_str'
   39 |                 WARN_ON_ONCE(src && strcmp((src), __data_offsets.dst##_ptr_)); \
      |                              ^~~
include/asm-generic/bug.h:111:25: note: expanded from macro 'WARN_ON_ONCE'
  111 |         int __ret_warn_on = !!(condition);                      \
      |                                ^~~~~~~~~
include/trace/stages/stage6_event_callback.h:135:33: note: expanded from macro 'TP_fast_assign'
  135 | #define TP_fast_assign(args...) args
      |                                 ^~~~
include/trace/trace_events.h:44:16: note: expanded from macro 'TRACE_EVENT'
   40 |         DECLARE_EVENT_CLASS(name,                              \
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   41 |                              PARAMS(proto),                    \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   42 |                              PARAMS(args),                     \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   43 |                              PARAMS(tstruct),                  \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   44 |                              PARAMS(assign),                   \
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
   45 |                              PARAMS(print));                   \
      |                              ~~~~~~~~~~~~~~
include/linux/tracepoint.h:107:25: note: expanded from macro 'PARAMS'
  107 | #define PARAMS(args...) args
      |                         ^~~~
include/trace/perf.h:51:4: note: expanded from macro 'DECLARE_EVENT_CLASS'
   51 |         { assign; }                                                     \
      |           ^~~~~~
8 errors generated.
make[6]: *** [scripts/Makefile.build:243: net/core/net-traces.o] Error 1
make[6]: Target 'net/core/' not remade because of errors.
make[5]: *** [scripts/Makefile.build:481: net/core] Error 2
In file included from net/wireless/trace.c:5:
In file included from net/wireless/trace.h:4014:
In file included from include/trace/define_trace.h:102:
In file included from include/trace/trace_events.h:419:
net/wireless/trace.h:375:3: error: result of comparison against a string literal is unspecified (use an explicit string comparison function instead) [-Werror,-Wstring-compare]
  375 |                 __assign_str(vir_intf_name, name ? name : "<noname>");
      |                 ^                                         ~~~~~~~~~~
include/trace/stages/stage6_event_callback.h:38:21: note: expanded from macro '__assign_str'
   38 |                 WARN_ON_ONCE(!src != !__data_offsets.dst##_ptr_);       \
      |                               ~~~ ^
include/asm-generic/bug.h:111:25: note: expanded from macro 'WARN_ON_ONCE'
  111 |         int __ret_warn_on = !!(condition);                      \
      |                                ^~~~~~~~~
include/trace/stages/stage6_event_callback.h:135:33: note: expanded from macro 'TP_fast_assign'
  135 | #define TP_fast_assign(args...) args
      |                                 ^~~~
include/trace/trace_events.h:44:16: note: expanded from macro 'TRACE_EVENT'
   44 |                              PARAMS(assign),                   \
      |                                     ^~~~~~
include/linux/tracepoint.h:107:25: note: expanded from macro 'PARAMS'
  107 | #define PARAMS(args...) args
      |                         ^~~~
include/trace/trace_events.h:402:4: note: expanded from macro 'DECLARE_EVENT_CLASS'
  402 |         { assign; }                                                     \
      |           ^~~~~~
In file included from net/wireless/trace.c:5:
In file included from net/wireless/trace.h:4014:
In file included from include/trace/define_trace.h:102:
In file included from include/trace/trace_events.h:419:
net/wireless/trace.h:375:3: error: comparison between pointer and integer ('char *' and 'int') [-Werror,-Wpointer-integer-compare]
  365 | TRACE_EVENT(rdev_add_virtual_intf,
      | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  366 |         TP_PROTO(struct wiphy *wiphy, char *name, enum nl80211_iftype type),
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  367 |         TP_ARGS(wiphy, name, type),
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~
  368 |         TP_STRUCT__entry(
      |         ~~~~~~~~~~~~~~~~~
  369 |                 WIPHY_ENTRY
      |                 ~~~~~~~~~~~
  370 |                 __string(vir_intf_name, name ? name : "<noname>")
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  371 |                 __field(enum nl80211_iftype, type)
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  372 |         ),
      |         ~~
  373 |         TP_fast_assign(
      |         ~~~~~~~~~~~~~~~
  374 |                 WIPHY_ASSIGN;
      |                 ~~~~~~~~~~~~~
  375 |                 __assign_str(vir_intf_name, name ? name : "<noname>");
      |                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  376 |                 __entry->type = type;
      |                 ~~~~~~~~~~~~~~~~~~~~~
  377 |         ),
      |         ~~
  378 |         TP_printk(WIPHY_PR_FMT ", virtual intf name: %s, type: %d",
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  379 |                   WIPHY_PR_ARG, __get_str(vir_intf_name), __entry->type)
      |                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  380 | );
      | ~
include/trace/stages/stage6_event_callback.h:38:21: note: expanded from macro '__assign_str'
   38 |                 WARN_ON_ONCE(!src != !__data_offsets.dst##_ptr_);       \
      |                               ~~~ ^
include/asm-generic/bug.h:111:25: note: expanded from macro 'WARN_ON_ONCE'
  111 |         int __ret_warn_on = !!(condition);                      \
      |                                ^~~~~~~~~
include/trace/stages/stage6_event_callback.h:135:33: note: expanded from macro 'TP_fast_assign'
  135 | #define TP_fast_assign(args...) args
      |                                 ^~~~
include/trace/trace_events.h:44:16: note: expanded from macro 'TRACE_EVENT'
   40 |         DECLARE_EVENT_CLASS(name,                              \
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   41 |                              PARAMS(proto),                    \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   42 |                              PARAMS(args),                     \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   43 |                              PARAMS(tstruct),                  \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   44 |                              PARAMS(assign),                   \
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
   45 |                              PARAMS(print));                   \
      |                              ~~~~~~~~~~~~~~
include/linux/tracepoint.h:107:25: note: expanded from macro 'PARAMS'
  107 | #define PARAMS(args...) args
      |                         ^~~~
include/trace/trace_events.h:402:4: note: expanded from macro 'DECLARE_EVENT_CLASS'
  402 |         { assign; }                                                     \
      |           ^~~~~~
In file included from net/wireless/trace.c:5:
In file included from net/wireless/trace.h:4014:
In file included from include/trace/define_trace.h:102:
In file included from include/trace/trace_events.h:419:
net/wireless/trace.h:375:36: error: pointer/integer type mismatch in conditional expression ('char *' and 'int') [-Werror,-Wconditional-type-mismatch]
  365 | TRACE_EVENT(rdev_add_virtual_intf,
      | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  366 |         TP_PROTO(struct wiphy *wiphy, char *name, enum nl80211_iftype type),
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  367 |         TP_ARGS(wiphy, name, type),
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~
  368 |         TP_STRUCT__entry(
      |         ~~~~~~~~~~~~~~~~~
  369 |                 WIPHY_ENTRY
      |                 ~~~~~~~~~~~
  370 |                 __string(vir_intf_name, name ? name : "<noname>")
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  371 |                 __field(enum nl80211_iftype, type)
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  372 |         ),
      |         ~~
  373 |         TP_fast_assign(
      |         ~~~~~~~~~~~~~~~
  374 |                 WIPHY_ASSIGN;
      |                 ~~~~~~~~~~~~~
  375 |                 __assign_str(vir_intf_name, name ? name : "<noname>");
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
  376 |                 __entry->type = type;
      |                 ~~~~~~~~~~~~~~~~~~~~~
  377 |         ),
      |         ~~
  378 |         TP_printk(WIPHY_PR_FMT ", virtual intf name: %s, type: %d",
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  379 |                   WIPHY_PR_ARG, __get_str(vir_intf_name), __entry->type)
      |                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  380 | );
      | ~
include/trace/stages/stage6_event_callback.h:38:17: note: expanded from macro '__assign_str'
   38 |                 WARN_ON_ONCE(!src != !__data_offsets.dst##_ptr_);       \
      |                               ^~~
include/asm-generic/bug.h:111:25: note: expanded from macro 'WARN_ON_ONCE'
  111 |         int __ret_warn_on = !!(condition);                      \
      |                                ^~~~~~~~~
include/trace/stages/stage6_event_callback.h:135:33: note: expanded from macro 'TP_fast_assign'
  135 | #define TP_fast_assign(args...) args
      |                                 ^~~~
include/trace/trace_events.h:44:16: note: expanded from macro 'TRACE_EVENT'
   40 |         DECLARE_EVENT_CLASS(name,                              \
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   41 |                              PARAMS(proto),                    \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   42 |                              PARAMS(args),                     \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   43 |                              PARAMS(tstruct),                  \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   44 |                              PARAMS(assign),                   \
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
   45 |                              PARAMS(print));                   \
      |                              ~~~~~~~~~~~~~~
include/linux/tracepoint.h:107:25: note: expanded from macro 'PARAMS'
  107 | #define PARAMS(args...) args
      |                         ^~~~
include/trace/trace_events.h:402:4: note: expanded from macro 'DECLARE_EVENT_CLASS'
  402 |         { assign; }                                                     \
      |           ^~~~~~
In file included from net/wireless/trace.c:5:
In file included from net/wireless/trace.h:4014:
In file included from include/trace/define_trace.h:102:
In file included from include/trace/trace_events.h:419:
net/wireless/trace.h:375:36: error: pointer/integer type mismatch in conditional expression ('char *' and 'int') [-Werror,-Wconditional-type-mismatch]
  365 | TRACE_EVENT(rdev_add_virtual_intf,
      | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  366 |         TP_PROTO(struct wiphy *wiphy, char *name, enum nl80211_iftype type),
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  367 |         TP_ARGS(wiphy, name, type),
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~
  368 |         TP_STRUCT__entry(
      |         ~~~~~~~~~~~~~~~~~
  369 |                 WIPHY_ENTRY
      |                 ~~~~~~~~~~~
  370 |                 __string(vir_intf_name, name ? name : "<noname>")
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  371 |                 __field(enum nl80211_iftype, type)
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  372 |         ),
      |         ~~
  373 |         TP_fast_assign(
      |         ~~~~~~~~~~~~~~~
  374 |                 WIPHY_ASSIGN;
      |                 ~~~~~~~~~~~~~
  375 |                 __assign_str(vir_intf_name, name ? name : "<noname>");
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
  376 |                 __entry->type = type;
      |                 ~~~~~~~~~~~~~~~~~~~~~
  377 |         ),
      |         ~~
  378 |         TP_printk(WIPHY_PR_FMT ", virtual intf name: %s, type: %d",
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  379 |                   WIPHY_PR_ARG, __get_str(vir_intf_name), __entry->type)
      |                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  380 | );
      | ~
include/trace/stages/stage6_event_callback.h:39:16: note: expanded from macro '__assign_str'
   39 |                 WARN_ON_ONCE(src && strcmp((src), __data_offsets.dst##_ptr_)); \
      |                              ^~~
include/asm-generic/bug.h:111:25: note: expanded from macro 'WARN_ON_ONCE'
  111 |         int __ret_warn_on = !!(condition);                      \
      |                                ^~~~~~~~~
include/trace/stages/stage6_event_callback.h:135:33: note: expanded from macro 'TP_fast_assign'
  135 | #define TP_fast_assign(args...) args
      |                                 ^~~~
include/trace/trace_events.h:44:16: note: expanded from macro 'TRACE_EVENT'
   40 |         DECLARE_EVENT_CLASS(name,                              \
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   41 |                              PARAMS(proto),                    \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   42 |                              PARAMS(args),                     \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   43 |                              PARAMS(tstruct),                  \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   44 |                              PARAMS(assign),                   \
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
   45 |                              PARAMS(print));                   \
      |                              ~~~~~~~~~~~~~~
include/linux/tracepoint.h:107:25: note: expanded from macro 'PARAMS'
  107 | #define PARAMS(args...) args
      |                         ^~~~
include/trace/trace_events.h:402:4: note: expanded from macro 'DECLARE_EVENT_CLASS'
  402 |         { assign; }                                                     \
      |           ^~~~~~
In file included from net/wireless/trace.c:5:
In file included from net/wireless/trace.h:4014:
In file included from include/trace/define_trace.h:103:
In file included from include/trace/perf.h:75:
net/wireless/trace.h:375:3: error: result of comparison against a string literal is unspecified (use an explicit string comparison function instead) [-Werror,-Wstring-compare]
  375 |                 __assign_str(vir_intf_name, name ? name : "<noname>");
      |                 ^                                         ~~~~~~~~~~
include/trace/stages/stage6_event_callback.h:38:21: note: expanded from macro '__assign_str'
   38 |                 WARN_ON_ONCE(!src != !__data_offsets.dst##_ptr_);       \
      |                               ~~~ ^
include/asm-generic/bug.h:111:25: note: expanded from macro 'WARN_ON_ONCE'
  111 |         int __ret_warn_on = !!(condition);                      \
      |                                ^~~~~~~~~
include/trace/stages/stage6_event_callback.h:135:33: note: expanded from macro 'TP_fast_assign'
  135 | #define TP_fast_assign(args...) args
      |                                 ^~~~
include/trace/trace_events.h:44:16: note: expanded from macro 'TRACE_EVENT'
   44 |                              PARAMS(assign),                   \
      |                                     ^~~~~~
include/linux/tracepoint.h:107:25: note: expanded from macro 'PARAMS'
  107 | #define PARAMS(args...) args
      |                         ^~~~
include/trace/perf.h:51:4: note: expanded from macro 'DECLARE_EVENT_CLASS'
   51 |         { assign; }                                                     \
      |           ^~~~~~
In file included from net/wireless/trace.c:5:
In file included from net/wireless/trace.h:4014:
In file included from include/trace/define_trace.h:103:
In file included from include/trace/perf.h:75:
net/wireless/trace.h:375:3: error: comparison between pointer and integer ('char *' and 'int') [-Werror,-Wpointer-integer-compare]
  365 | TRACE_EVENT(rdev_add_virtual_intf,
      | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  366 |         TP_PROTO(struct wiphy *wiphy, char *name, enum nl80211_iftype type),
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  367 |         TP_ARGS(wiphy, name, type),
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~
  368 |         TP_STRUCT__entry(
      |         ~~~~~~~~~~~~~~~~~
  369 |                 WIPHY_ENTRY
      |                 ~~~~~~~~~~~
  370 |                 __string(vir_intf_name, name ? name : "<noname>")
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  371 |                 __field(enum nl80211_iftype, type)
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  372 |         ),
      |         ~~
  373 |         TP_fast_assign(
      |         ~~~~~~~~~~~~~~~
  374 |                 WIPHY_ASSIGN;
      |                 ~~~~~~~~~~~~~
  375 |                 __assign_str(vir_intf_name, name ? name : "<noname>");
      |                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  376 |                 __entry->type = type;
      |                 ~~~~~~~~~~~~~~~~~~~~~
  377 |         ),
      |         ~~
  378 |         TP_printk(WIPHY_PR_FMT ", virtual intf name: %s, type: %d",
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  379 |                   WIPHY_PR_ARG, __get_str(vir_intf_name), __entry->type)
      |                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  380 | );
      | ~
include/trace/stages/stage6_event_callback.h:38:21: note: expanded from macro '__assign_str'
   38 |                 WARN_ON_ONCE(!src != !__data_offsets.dst##_ptr_);       \
      |                               ~~~ ^
include/asm-generic/bug.h:111:25: note: expanded from macro 'WARN_ON_ONCE'
  111 |         int __ret_warn_on = !!(condition);                      \
      |                                ^~~~~~~~~
include/trace/stages/stage6_event_callback.h:135:33: note: expanded from macro 'TP_fast_assign'
  135 | #define TP_fast_assign(args...) args
      |                                 ^~~~
include/trace/trace_events.h:44:16: note: expanded from macro 'TRACE_EVENT'
   40 |         DECLARE_EVENT_CLASS(name,                              \
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   41 |                              PARAMS(proto),                    \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   42 |                              PARAMS(args),                     \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   43 |                              PARAMS(tstruct),                  \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   44 |                              PARAMS(assign),                   \
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
   45 |                              PARAMS(print));                   \
      |                              ~~~~~~~~~~~~~~
include/linux/tracepoint.h:107:25: note: expanded from macro 'PARAMS'
  107 | #define PARAMS(args...) args
      |                         ^~~~
include/trace/perf.h:51:4: note: expanded from macro 'DECLARE_EVENT_CLASS'
   51 |         { assign; }                                                     \
      |           ^~~~~~
In file included from net/wireless/trace.c:5:
In file included from net/wireless/trace.h:4014:
In file included from include/trace/define_trace.h:103:
In file included from include/trace/perf.h:75:
net/wireless/trace.h:375:36: error: pointer/integer type mismatch in conditional expression ('char *' and 'int') [-Werror,-Wconditional-type-mismatch]
  365 | TRACE_EVENT(rdev_add_virtual_intf,
      | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  366 |         TP_PROTO(struct wiphy *wiphy, char *name, enum nl80211_iftype type),
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  367 |         TP_ARGS(wiphy, name, type),
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~
  368 |         TP_STRUCT__entry(
      |         ~~~~~~~~~~~~~~~~~
  369 |                 WIPHY_ENTRY
      |                 ~~~~~~~~~~~
  370 |                 __string(vir_intf_name, name ? name : "<noname>")
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  371 |                 __field(enum nl80211_iftype, type)
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  372 |         ),
      |         ~~
  373 |         TP_fast_assign(
      |         ~~~~~~~~~~~~~~~
  374 |                 WIPHY_ASSIGN;
      |                 ~~~~~~~~~~~~~
  375 |                 __assign_str(vir_intf_name, name ? name : "<noname>");
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
  376 |                 __entry->type = type;
      |                 ~~~~~~~~~~~~~~~~~~~~~
  377 |         ),
      |         ~~
  378 |         TP_printk(WIPHY_PR_FMT ", virtual intf name: %s, type: %d",
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  379 |                   WIPHY_PR_ARG, __get_str(vir_intf_name), __entry->type)
      |                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  380 | );
      | ~
include/trace/stages/stage6_event_callback.h:38:17: note: expanded from macro '__assign_str'
   38 |                 WARN_ON_ONCE(!src != !__data_offsets.dst##_ptr_);       \
      |                               ^~~
include/asm-generic/bug.h:111:25: note: expanded from macro 'WARN_ON_ONCE'
  111 |         int __ret_warn_on = !!(condition);                      \
      |                                ^~~~~~~~~
include/trace/stages/stage6_event_callback.h:135:33: note: expanded from macro 'TP_fast_assign'
  135 | #define TP_fast_assign(args...) args
      |                                 ^~~~
include/trace/trace_events.h:44:16: note: expanded from macro 'TRACE_EVENT'
   40 |         DECLARE_EVENT_CLASS(name,                              \
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   41 |                              PARAMS(proto),                    \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   42 |                              PARAMS(args),                     \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   43 |                              PARAMS(tstruct),                  \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   44 |                              PARAMS(assign),                   \
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
   45 |                              PARAMS(print));                   \
      |                              ~~~~~~~~~~~~~~
include/linux/tracepoint.h:107:25: note: expanded from macro 'PARAMS'
  107 | #define PARAMS(args...) args
      |                         ^~~~
include/trace/perf.h:51:4: note: expanded from macro 'DECLARE_EVENT_CLASS'
   51 |         { assign; }                                                     \
      |           ^~~~~~
In file included from net/wireless/trace.c:5:
In file included from net/wireless/trace.h:4014:
In file included from include/trace/define_trace.h:103:
In file included from include/trace/perf.h:75:
net/wireless/trace.h:375:36: error: pointer/integer type mismatch in conditional expression ('char *' and 'int') [-Werror,-Wconditional-type-mismatch]
  365 | TRACE_EVENT(rdev_add_virtual_intf,
      | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  366 |         TP_PROTO(struct wiphy *wiphy, char *name, enum nl80211_iftype type),
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  367 |         TP_ARGS(wiphy, name, type),
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~
  368 |         TP_STRUCT__entry(
      |         ~~~~~~~~~~~~~~~~~
  369 |                 WIPHY_ENTRY
      |                 ~~~~~~~~~~~
  370 |                 __string(vir_intf_name, name ? name : "<noname>")
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  371 |                 __field(enum nl80211_iftype, type)
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  372 |         ),
      |         ~~
  373 |         TP_fast_assign(
      |         ~~~~~~~~~~~~~~~
  374 |                 WIPHY_ASSIGN;
      |                 ~~~~~~~~~~~~~
  375 |                 __assign_str(vir_intf_name, name ? name : "<noname>");
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
  376 |                 __entry->type = type;
      |                 ~~~~~~~~~~~~~~~~~~~~~
  377 |         ),
      |         ~~
  378 |         TP_printk(WIPHY_PR_FMT ", virtual intf name: %s, type: %d",
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  379 |                   WIPHY_PR_ARG, __get_str(vir_intf_name), __entry->type)
      |                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  380 | );
      | ~
include/trace/stages/stage6_event_callback.h:39:16: note: expanded from macro '__assign_str'
   39 |                 WARN_ON_ONCE(src && strcmp((src), __data_offsets.dst##_ptr_)); \
      |                              ^~~
include/asm-generic/bug.h:111:25: note: expanded from macro 'WARN_ON_ONCE'
  111 |         int __ret_warn_on = !!(condition);                      \
      |                                ^~~~~~~~~
include/trace/stages/stage6_event_callback.h:135:33: note: expanded from macro 'TP_fast_assign'
  135 | #define TP_fast_assign(args...) args
      |                                 ^~~~
include/trace/trace_events.h:44:16: note: expanded from macro 'TRACE_EVENT'
   40 |         DECLARE_EVENT_CLASS(name,                              \
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   41 |                              PARAMS(proto),                    \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   42 |                              PARAMS(args),                     \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   43 |                              PARAMS(tstruct),                  \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   44 |                              PARAMS(assign),                   \
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
   45 |                              PARAMS(print));                   \
      |                              ~~~~~~~~~~~~~~
include/linux/tracepoint.h:107:25: note: expanded from macro 'PARAMS'
  107 | #define PARAMS(args...) args
      |                         ^~~~
include/trace/perf.h:51:4: note: expanded from macro 'DECLARE_EVENT_CLASS'
   51 |         { assign; }                                                     \
      |           ^~~~~~
8 errors generated.
make[6]: *** [scripts/Makefile.build:243: net/wireless/trace.o] Error 1
make[6]: Target 'net/wireless/' not remade because of errors.
make[5]: *** [scripts/Makefile.build:481: net/wireless] Error 2
make[5]: Target 'net/' not remade because of errors.
make[4]: *** [scripts/Makefile.build:481: net] Error 2
In file included from kernel/trace/power-traces.c:15:
In file included from include/trace/events/power.h:557:
In file included from include/trace/define_trace.h:102:
In file included from include/trace/trace_events.h:419:
include/trace/events/power.h:215:3: error: result of comparison against a string literal is unspecified (use an explicit string comparison function instead) [-Werror,-Wstring-compare]
  215 |                 __assign_str(parent,
      |                 ^
  216 |                         dev->parent ? dev_name(dev->parent) : "none");
      |                                                               ~~~~~~
include/trace/stages/stage6_event_callback.h:38:21: note: expanded from macro '__assign_str'
   38 |                 WARN_ON_ONCE(!src != !__data_offsets.dst##_ptr_);       \
      |                               ~~~ ^
include/asm-generic/bug.h:111:25: note: expanded from macro 'WARN_ON_ONCE'
  111 |         int __ret_warn_on = !!(condition);                      \
      |                                ^~~~~~~~~
include/trace/stages/stage6_event_callback.h:135:33: note: expanded from macro 'TP_fast_assign'
  135 | #define TP_fast_assign(args...) args
      |                                 ^~~~
include/trace/trace_events.h:44:16: note: expanded from macro 'TRACE_EVENT'
   44 |                              PARAMS(assign),                   \
      |                                     ^~~~~~
include/linux/tracepoint.h:107:25: note: expanded from macro 'PARAMS'
  107 | #define PARAMS(args...) args
      |                         ^~~~
include/trace/trace_events.h:402:4: note: expanded from macro 'DECLARE_EVENT_CLASS'
  402 |         { assign; }                                                     \
      |           ^~~~~~
In file included from kernel/trace/power-traces.c:15:
In file included from include/trace/events/power.h:557:
In file included from include/trace/define_trace.h:102:
In file included from include/trace/trace_events.h:419:
include/trace/events/power.h:215:3: error: comparison between pointer and integer ('char *' and 'int') [-Werror,-Wpointer-integer-compare]
  198 |                 __string(pm_ops, pm_ops ? pm_ops : "none ")
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  199 |                 __field(int, event)
      |                 ~~~~~~~~~~~~~~~~~~~
  200 |         ),
      |         ~~
  201 | 
  202 |         TP_fast_assign(
      |         ~~~~~~~~~~~~~~~
  203 |                 __assign_str(device, dev_name(dev));
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  204 |                 __assign_str(driver, dev_driver_string(dev));
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  205 |                 __assign_str(parent,
      |                 ^~~~~~~~~~~~~~~~~~~~
  206 |                         dev->parent ? dev_name(dev->parent) : "none");
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  207 |                 __assign_str(pm_ops, pm_ops ? pm_ops : "none ");
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  208 |                 __entry->event = event;
      |                 ~~~~~~~~~~~~~~~~~~~~~~~
  209 |         ),
      |         ~~
  210 | 
  211 |         TP_printk("%s %s, parent: %s, %s[%s]", __get_str(driver),
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  212 |                 __get_str(device), __get_str(parent), __get_str(pm_ops),
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  213 |                 pm_verb_symbolic(__entry->event))
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/trace/stages/stage6_event_callback.h:38:21: note: expanded from macro '__assign_str'
   38 |                 WARN_ON_ONCE(!src != !__data_offsets.dst##_ptr_);       \
      |                               ~~~ ^
include/asm-generic/bug.h:111:25: note: expanded from macro 'WARN_ON_ONCE'
  111 |         int __ret_warn_on = !!(condition);                      \
      |                                ^~~~~~~~~
include/trace/stages/stage6_event_callback.h:135:33: note: expanded from macro 'TP_fast_assign'
  135 | #define TP_fast_assign(args...) args
      |                                 ^~~~
include/trace/trace_events.h:44:16: note: expanded from macro 'TRACE_EVENT'
   40 |         DECLARE_EVENT_CLASS(name,                              \
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   41 |                              PARAMS(proto),                    \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   42 |                              PARAMS(args),                     \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   43 |                              PARAMS(tstruct),                  \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   44 |                              PARAMS(assign),                   \
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
   45 |                              PARAMS(print));                   \
      |                              ~~~~~~~~~~~~~~
include/linux/tracepoint.h:107:25: note: expanded from macro 'PARAMS'
  107 | #define PARAMS(args...) args
      |                         ^~~~
include/trace/trace_events.h:402:4: note: expanded from macro 'DECLARE_EVENT_CLASS'
  402 |         { assign; }                                                     \
      |           ^~~~~~
In file included from kernel/trace/power-traces.c:15:
In file included from include/trace/events/power.h:557:
In file included from include/trace/define_trace.h:102:
In file included from include/trace/trace_events.h:419:
include/trace/events/power.h:216:16: error: pointer/integer type mismatch in conditional expression ('const char *' and 'int') [-Werror,-Wconditional-type-mismatch]
  198 |                 __field(int, event)
      |                 ~~~~~~~~~~~~~~~~~~~
  199 |         ),
      |         ~~
  200 | 
  201 |         TP_fast_assign(
      |         ~~~~~~~~~~~~~~~
  202 |                 __assign_str(device, dev_name(dev));
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  203 |                 __assign_str(driver, dev_driver_string(dev));
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  204 |                 __assign_str(parent,
      |                 ~~~~~~~~~~~~~~~~~~~~
  205 |                         dev->parent ? dev_name(dev->parent) : "none");
      |                         ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  206 |                 __assign_str(pm_ops, pm_ops ? pm_ops : "none ");
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  207 |                 __entry->event = event;
      |                 ~~~~~~~~~~~~~~~~~~~~~~~
  208 |         ),
      |         ~~
  209 | 
  210 |         TP_printk("%s %s, parent: %s, %s[%s]", __get_str(driver),
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  211 |                 __get_str(device), __get_str(parent), __get_str(pm_ops),
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  212 |                 pm_verb_symbolic(__entry->event))
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  213 | );
      | ~
include/trace/stages/stage6_event_callback.h:38:17: note: expanded from macro '__assign_str'
   38 |                 WARN_ON_ONCE(!src != !__data_offsets.dst##_ptr_);       \
      |                               ^~~
include/asm-generic/bug.h:111:25: note: expanded from macro 'WARN_ON_ONCE'
  111 |         int __ret_warn_on = !!(condition);                      \
      |                                ^~~~~~~~~
include/trace/stages/stage6_event_callback.h:135:33: note: expanded from macro 'TP_fast_assign'
  135 | #define TP_fast_assign(args...) args
      |                                 ^~~~
include/trace/trace_events.h:44:16: note: expanded from macro 'TRACE_EVENT'
   40 |         DECLARE_EVENT_CLASS(name,                              \
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   41 |                              PARAMS(proto),                    \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   42 |                              PARAMS(args),                     \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   43 |                              PARAMS(tstruct),                  \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   44 |                              PARAMS(assign),                   \
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
   45 |                              PARAMS(print));                   \
      |                              ~~~~~~~~~~~~~~
include/linux/tracepoint.h:107:25: note: expanded from macro 'PARAMS'
  107 | #define PARAMS(args...) args
      |                         ^~~~
include/trace/trace_events.h:402:4: note: expanded from macro 'DECLARE_EVENT_CLASS'
  402 |         { assign; }                                                     \
      |           ^~~~~~
In file included from kernel/trace/power-traces.c:15:
In file included from include/trace/events/power.h:557:
In file included from include/trace/define_trace.h:102:
In file included from include/trace/trace_events.h:419:
include/trace/events/power.h:216:16: error: pointer/integer type mismatch in conditional expression ('const char *' and 'int') [-Werror,-Wconditional-type-mismatch]
  198 |                 __field(int, event)
      |                 ~~~~~~~~~~~~~~~~~~~
  199 |         ),
      |         ~~
  200 | 
  201 |         TP_fast_assign(
      |         ~~~~~~~~~~~~~~~
  202 |                 __assign_str(device, dev_name(dev));
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  203 |                 __assign_str(driver, dev_driver_string(dev));
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  204 |                 __assign_str(parent,
      |                 ~~~~~~~~~~~~~~~~~~~~
  205 |                         dev->parent ? dev_name(dev->parent) : "none");
      |                         ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  206 |                 __assign_str(pm_ops, pm_ops ? pm_ops : "none ");
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  207 |                 __entry->event = event;
      |                 ~~~~~~~~~~~~~~~~~~~~~~~
  208 |         ),
      |         ~~
  209 | 
  210 |         TP_printk("%s %s, parent: %s, %s[%s]", __get_str(driver),
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  211 |                 __get_str(device), __get_str(parent), __get_str(pm_ops),
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  212 |                 pm_verb_symbolic(__entry->event))
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  213 | );
      | ~
include/trace/stages/stage6_event_callback.h:39:16: note: expanded from macro '__assign_str'
   39 |                 WARN_ON_ONCE(src && strcmp((src), __data_offsets.dst##_ptr_)); \
      |                              ^~~
include/asm-generic/bug.h:111:25: note: expanded from macro 'WARN_ON_ONCE'
  111 |         int __ret_warn_on = !!(condition);                      \
      |                                ^~~~~~~~~
include/trace/stages/stage6_event_callback.h:135:33: note: expanded from macro 'TP_fast_assign'
  135 | #define TP_fast_assign(args...) args
      |                                 ^~~~
include/trace/trace_events.h:44:16: note: expanded from macro 'TRACE_EVENT'
   40 |         DECLARE_EVENT_CLASS(name,                              \
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   41 |                              PARAMS(proto),                    \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   42 |                              PARAMS(args),                     \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   43 |                              PARAMS(tstruct),                  \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   44 |                              PARAMS(assign),                   \
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
   45 |                              PARAMS(print));                   \
      |                              ~~~~~~~~~~~~~~
include/linux/tracepoint.h:107:25: note: expanded from macro 'PARAMS'
  107 | #define PARAMS(args...) args
      |                         ^~~~
include/trace/trace_events.h:402:4: note: expanded from macro 'DECLARE_EVENT_CLASS'
  402 |         { assign; }                                                     \
      |           ^~~~~~
In file included from kernel/trace/power-traces.c:15:
In file included from include/trace/events/power.h:557:
In file included from include/trace/define_trace.h:102:
In file included from include/trace/trace_events.h:419:
include/trace/events/power.h:217:3: error: result of comparison against a string literal is unspecified (use an explicit string comparison function instead) [-Werror,-Wstring-compare]
  217 |                 __assign_str(pm_ops, pm_ops ? pm_ops : "none ");
      |                 ^                                      ~~~~~~~
include/trace/stages/stage6_event_callback.h:38:21: note: expanded from macro '__assign_str'
   38 |                 WARN_ON_ONCE(!src != !__data_offsets.dst##_ptr_);       \
      |                               ~~~ ^
include/asm-generic/bug.h:111:25: note: expanded from macro 'WARN_ON_ONCE'
  111 |         int __ret_warn_on = !!(condition);                      \
      |                                ^~~~~~~~~
include/trace/stages/stage6_event_callback.h:135:33: note: expanded from macro 'TP_fast_assign'
  135 | #define TP_fast_assign(args...) args
      |                                 ^~~~
include/trace/trace_events.h:44:16: note: expanded from macro 'TRACE_EVENT'
   44 |                              PARAMS(assign),                   \
      |                                     ^~~~~~
include/linux/tracepoint.h:107:25: note: expanded from macro 'PARAMS'
  107 | #define PARAMS(args...) args
      |                         ^~~~
include/trace/trace_events.h:402:4: note: expanded from macro 'DECLARE_EVENT_CLASS'
  402 |         { assign; }                                                     \
      |           ^~~~~~
In file included from kernel/trace/power-traces.c:15:
In file included from include/trace/events/power.h:557:
In file included from include/trace/define_trace.h:102:
In file included from include/trace/trace_events.h:419:
include/trace/events/power.h:217:3: error: comparison between pointer and integer ('char *' and 'int') [-Werror,-Wpointer-integer-compare]
  198 |                 __field(int, event)
      |                 ~~~~~~~~~~~~~~~~~~~
  199 |         ),
      |         ~~
  200 | 
  201 |         TP_fast_assign(
      |         ~~~~~~~~~~~~~~~
  202 |                 __assign_str(device, dev_name(dev));
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  203 |                 __assign_str(driver, dev_driver_string(dev));
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  204 |                 __assign_str(parent,
      |                 ~~~~~~~~~~~~~~~~~~~~
  205 |                         dev->parent ? dev_name(dev->parent) : "none");
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  206 |                 __assign_str(pm_ops, pm_ops ? pm_ops : "none ");
      |                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  207 |                 __entry->event = event;
      |                 ~~~~~~~~~~~~~~~~~~~~~~~
  208 |         ),
      |         ~~
  209 | 
  210 |         TP_printk("%s %s, parent: %s, %s[%s]", __get_str(driver),
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  211 |                 __get_str(device), __get_str(parent), __get_str(pm_ops),
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  212 |                 pm_verb_symbolic(__entry->event))
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  213 | );
      | ~
include/trace/stages/stage6_event_callback.h:38:21: note: expanded from macro '__assign_str'
   38 |                 WARN_ON_ONCE(!src != !__data_offsets.dst##_ptr_);       \
      |                               ~~~ ^
include/asm-generic/bug.h:111:25: note: expanded from macro 'WARN_ON_ONCE'
  111 |         int __ret_warn_on = !!(condition);                      \
      |                                ^~~~~~~~~
include/trace/stages/stage6_event_callback.h:135:33: note: expanded from macro 'TP_fast_assign'
  135 | #define TP_fast_assign(args...) args
      |                                 ^~~~
include/trace/trace_events.h:44:16: note: expanded from macro 'TRACE_EVENT'
   40 |         DECLARE_EVENT_CLASS(name,                              \
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   41 |                              PARAMS(proto),                    \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   42 |                              PARAMS(args),                     \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   43 |                              PARAMS(tstruct),                  \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   44 |                              PARAMS(assign),                   \
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
   45 |                              PARAMS(print));                   \
      |                              ~~~~~~~~~~~~~~
include/linux/tracepoint.h:107:25: note: expanded from macro 'PARAMS'
  107 | #define PARAMS(args...) args
      |                         ^~~~
include/trace/trace_events.h:402:4: note: expanded from macro 'DECLARE_EVENT_CLASS'
  402 |         { assign; }                                                     \
      |           ^~~~~~
In file included from kernel/trace/power-traces.c:15:
In file included from include/trace/events/power.h:557:
In file included from include/trace/define_trace.h:102:
In file included from include/trace/trace_events.h:419:
include/trace/events/power.h:217:31: error: pointer/integer type mismatch in conditional expression ('const char *' and 'int') [-Werror,-Wconditional-type-mismatch]
  198 |                 __field(int, event)
      |                 ~~~~~~~~~~~~~~~~~~~
  199 |         ),
      |         ~~
  200 | 
  201 |         TP_fast_assign(
      |         ~~~~~~~~~~~~~~~
  202 |                 __assign_str(device, dev_name(dev));
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  203 |                 __assign_str(driver, dev_driver_string(dev));
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  204 |                 __assign_str(parent,
      |                 ~~~~~~~~~~~~~~~~~~~~
  205 |                         dev->parent ? dev_name(dev->parent) : "none");
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  206 |                 __assign_str(pm_ops, pm_ops ? pm_ops : "none ");
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
  207 |                 __entry->event = event;
      |                 ~~~~~~~~~~~~~~~~~~~~~~~
  208 |         ),
      |         ~~
  209 | 
  210 |         TP_printk("%s %s, parent: %s, %s[%s]", __get_str(driver),
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  211 |                 __get_str(device), __get_str(parent), __get_str(pm_ops),
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  212 |                 pm_verb_symbolic(__entry->event))
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  213 | );
      | ~
include/trace/stages/stage6_event_callback.h:38:17: note: expanded from macro '__assign_str'
   38 |                 WARN_ON_ONCE(!src != !__data_offsets.dst##_ptr_);       \
      |                               ^~~
include/asm-generic/bug.h:111:25: note: expanded from macro 'WARN_ON_ONCE'
  111 |         int __ret_warn_on = !!(condition);                      \
      |                                ^~~~~~~~~
include/trace/stages/stage6_event_callback.h:135:33: note: expanded from macro 'TP_fast_assign'
  135 | #define TP_fast_assign(args...) args
      |                                 ^~~~
include/trace/trace_events.h:44:16: note: expanded from macro 'TRACE_EVENT'
   40 |         DECLARE_EVENT_CLASS(name,                              \
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   41 |                              PARAMS(proto),                    \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   42 |                              PARAMS(args),                     \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   43 |                              PARAMS(tstruct),                  \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   44 |                              PARAMS(assign),                   \
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
   45 |                              PARAMS(print));                   \
      |                              ~~~~~~~~~~~~~~
include/linux/tracepoint.h:107:25: note: expanded from macro 'PARAMS'
  107 | #define PARAMS(args...) args
      |                         ^~~~
include/trace/trace_events.h:402:4: note: expanded from macro 'DECLARE_EVENT_CLASS'
  402 |         { assign; }                                                     \
      |           ^~~~~~
In file included from kernel/trace/power-traces.c:15:
In file included from include/trace/events/power.h:557:
In file included from include/trace/define_trace.h:102:
In file included from include/trace/trace_events.h:419:
include/trace/events/power.h:217:31: error: pointer/integer type mismatch in conditional expression ('const char *' and 'int') [-Werror,-Wconditional-type-mismatch]
  198 |                 __field(int, event)
      |                 ~~~~~~~~~~~~~~~~~~~
  199 |         ),
      |         ~~
  200 | 
  201 |         TP_fast_assign(
      |         ~~~~~~~~~~~~~~~
  202 |                 __assign_str(device, dev_name(dev));
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  203 |                 __assign_str(driver, dev_driver_string(dev));
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  204 |                 __assign_str(parent,
      |                 ~~~~~~~~~~~~~~~~~~~~
  205 |                         dev->parent ? dev_name(dev->parent) : "none");
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  206 |                 __assign_str(pm_ops, pm_ops ? pm_ops : "none ");
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
  207 |                 __entry->event = event;
      |                 ~~~~~~~~~~~~~~~~~~~~~~~
  208 |         ),
      |         ~~
  209 | 
  210 |         TP_printk("%s %s, parent: %s, %s[%s]", __get_str(driver),
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  211 |                 __get_str(device), __get_str(parent), __get_str(pm_ops),
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  212 |                 pm_verb_symbolic(__entry->event))
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  213 | );
      | ~
include/trace/stages/stage6_event_callback.h:39:16: note: expanded from macro '__assign_str'
   39 |                 WARN_ON_ONCE(src && strcmp((src), __data_offsets.dst##_ptr_)); \
      |                              ^~~
include/asm-generic/bug.h:111:25: note: expanded from macro 'WARN_ON_ONCE'
  111 |         int __ret_warn_on = !!(condition);                      \
      |                                ^~~~~~~~~
include/trace/stages/stage6_event_callback.h:135:33: note: expanded from macro 'TP_fast_assign'
  135 | #define TP_fast_assign(args...) args
      |                                 ^~~~
include/trace/trace_events.h:44:16: note: expanded from macro 'TRACE_EVENT'
   40 |         DECLARE_EVENT_CLASS(name,                              \
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   41 |                              PARAMS(proto),                    \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   42 |                              PARAMS(args),                     \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   43 |                              PARAMS(tstruct),                  \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   44 |                              PARAMS(assign),                   \
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
   45 |                              PARAMS(print));                   \
      |                              ~~~~~~~~~~~~~~
include/linux/tracepoint.h:107:25: note: expanded from macro 'PARAMS'
  107 | #define PARAMS(args...) args
      |                         ^~~~
include/trace/trace_events.h:402:4: note: expanded from macro 'DECLARE_EVENT_CLASS'
  402 |         { assign; }                                                     \
      |           ^~~~~~
In file included from kernel/trace/power-traces.c:15:
In file included from include/trace/events/power.h:557:
In file included from include/trace/define_trace.h:103:
In file included from include/trace/perf.h:75:
include/trace/events/power.h:215:3: error: result of comparison against a string literal is unspecified (use an explicit string comparison function instead) [-Werror,-Wstring-compare]
  215 |                 __assign_str(parent,
      |                 ^
  216 |                         dev->parent ? dev_name(dev->parent) : "none");
      |                                                               ~~~~~~
include/trace/stages/stage6_event_callback.h:38:21: note: expanded from macro '__assign_str'
   38 |                 WARN_ON_ONCE(!src != !__data_offsets.dst##_ptr_);       \
      |                               ~~~ ^
include/asm-generic/bug.h:111:25: note: expanded from macro 'WARN_ON_ONCE'
  111 |         int __ret_warn_on = !!(condition);                      \
      |                                ^~~~~~~~~
include/trace/stages/stage6_event_callback.h:135:33: note: expanded from macro 'TP_fast_assign'
  135 | #define TP_fast_assign(args...) args
      |                                 ^~~~
include/trace/trace_events.h:44:16: note: expanded from macro 'TRACE_EVENT'
   44 |                              PARAMS(assign),                   \
      |                                     ^~~~~~
include/linux/tracepoint.h:107:25: note: expanded from macro 'PARAMS'
  107 | #define PARAMS(args...) args
      |                         ^~~~
include/trace/perf.h:51:4: note: expanded from macro 'DECLARE_EVENT_CLASS'
   51 |         { assign; }                                                     \
      |           ^~~~~~
In file included from kernel/trace/power-traces.c:15:
In file included from include/trace/events/power.h:557:
In file included from include/trace/define_trace.h:103:
In file included from include/trace/perf.h:75:
include/trace/events/power.h:215:3: error: comparison between pointer and integer ('char *' and 'int') [-Werror,-Wpointer-integer-compare]
  198 |                 __string(pm_ops, pm_ops ? pm_ops : "none ")
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  199 |                 __field(int, event)
      |                 ~~~~~~~~~~~~~~~~~~~
  200 |         ),
      |         ~~
  201 | 
  202 |         TP_fast_assign(
      |         ~~~~~~~~~~~~~~~
  203 |                 __assign_str(device, dev_name(dev));
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  204 |                 __assign_str(driver, dev_driver_string(dev));
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  205 |                 __assign_str(parent,
      |                 ^~~~~~~~~~~~~~~~~~~~
  206 |                         dev->parent ? dev_name(dev->parent) : "none");
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  207 |                 __assign_str(pm_ops, pm_ops ? pm_ops : "none ");
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  208 |                 __entry->event = event;
      |                 ~~~~~~~~~~~~~~~~~~~~~~~
  209 |         ),
      |         ~~
  210 | 
  211 |         TP_printk("%s %s, parent: %s, %s[%s]", __get_str(driver),
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  212 |                 __get_str(device), __get_str(parent), __get_str(pm_ops),
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  213 |                 pm_verb_symbolic(__entry->event))
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/trace/stages/stage6_event_callback.h:38:21: note: expanded from macro '__assign_str'
   38 |                 WARN_ON_ONCE(!src != !__data_offsets.dst##_ptr_);       \
      |                               ~~~ ^
include/asm-generic/bug.h:111:25: note: expanded from macro 'WARN_ON_ONCE'
  111 |         int __ret_warn_on = !!(condition);                      \
      |                                ^~~~~~~~~
include/trace/stages/stage6_event_callback.h:135:33: note: expanded from macro 'TP_fast_assign'
  135 | #define TP_fast_assign(args...) args
      |                                 ^~~~
include/trace/trace_events.h:44:16: note: expanded from macro 'TRACE_EVENT'
   40 |         DECLARE_EVENT_CLASS(name,                              \
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   41 |                              PARAMS(proto),                    \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   42 |                              PARAMS(args),                     \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   43 |                              PARAMS(tstruct),                  \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   44 |                              PARAMS(assign),                   \
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
   45 |                              PARAMS(print));                   \
      |                              ~~~~~~~~~~~~~~
include/linux/tracepoint.h:107:25: note: expanded from macro 'PARAMS'
  107 | #define PARAMS(args...) args
      |                         ^~~~
include/trace/perf.h:51:4: note: expanded from macro 'DECLARE_EVENT_CLASS'
   51 |         { assign; }                                                     \
      |           ^~~~~~
In file included from kernel/trace/power-traces.c:15:
In file included from include/trace/events/power.h:557:
In file included from include/trace/define_trace.h:103:
In file included from include/trace/perf.h:75:
include/trace/events/power.h:216:16: error: pointer/integer type mismatch in conditional expression ('const char *' and 'int') [-Werror,-Wconditional-type-mismatch]
  198 |                 __field(int, event)
      |                 ~~~~~~~~~~~~~~~~~~~
  199 |         ),
      |         ~~
  200 | 
  201 |         TP_fast_assign(
      |         ~~~~~~~~~~~~~~~
  202 |                 __assign_str(device, dev_name(dev));
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  203 |                 __assign_str(driver, dev_driver_string(dev));
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  204 |                 __assign_str(parent,
      |                 ~~~~~~~~~~~~~~~~~~~~
  205 |                         dev->parent ? dev_name(dev->parent) : "none");
      |                         ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  206 |                 __assign_str(pm_ops, pm_ops ? pm_ops : "none ");
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  207 |                 __entry->event = event;
      |                 ~~~~~~~~~~~~~~~~~~~~~~~
  208 |         ),
      |         ~~
  209 | 
  210 |         TP_printk("%s %s, parent: %s, %s[%s]", __get_str(driver),
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  211 |                 __get_str(device), __get_str(parent), __get_str(pm_ops),
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  212 |                 pm_verb_symbolic(__entry->event))
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  213 | );
      | ~
include/trace/stages/stage6_event_callback.h:38:17: note: expanded from macro '__assign_str'
   38 |                 WARN_ON_ONCE(!src != !__data_offsets.dst##_ptr_);       \
      |                               ^~~
include/asm-generic/bug.h:111:25: note: expanded from macro 'WARN_ON_ONCE'
  111 |         int __ret_warn_on = !!(condition);                      \
      |                                ^~~~~~~~~
include/trace/stages/stage6_event_callback.h:135:33: note: expanded from macro 'TP_fast_assign'
  135 | #define TP_fast_assign(args...) args
      |                                 ^~~~
include/trace/trace_events.h:44:16: note: expanded from macro 'TRACE_EVENT'
   40 |         DECLARE_EVENT_CLASS(name,                              \
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   41 |                              PARAMS(proto),                    \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   42 |                              PARAMS(args),                     \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   43 |                              PARAMS(tstruct),                  \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   44 |                              PARAMS(assign),                   \
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
   45 |                              PARAMS(print));                   \
      |                              ~~~~~~~~~~~~~~
include/linux/tracepoint.h:107:25: note: expanded from macro 'PARAMS'
  107 | #define PARAMS(args...) args
      |                         ^~~~
include/trace/perf.h:51:4: note: expanded from macro 'DECLARE_EVENT_CLASS'
   51 |         { assign; }                                                     \
      |           ^~~~~~
In file included from kernel/trace/power-traces.c:15:
In file included from include/trace/events/power.h:557:
In file included from include/trace/define_trace.h:103:
In file included from include/trace/perf.h:75:
include/trace/events/power.h:216:16: error: pointer/integer type mismatch in conditional expression ('const char *' and 'int') [-Werror,-Wconditional-type-mismatch]
  198 |                 __field(int, event)
      |                 ~~~~~~~~~~~~~~~~~~~
  199 |         ),
      |         ~~
  200 | 
  201 |         TP_fast_assign(
      |         ~~~~~~~~~~~~~~~
  202 |                 __assign_str(device, dev_name(dev));
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  203 |                 __assign_str(driver, dev_driver_string(dev));
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  204 |                 __assign_str(parent,
      |                 ~~~~~~~~~~~~~~~~~~~~
  205 |                         dev->parent ? dev_name(dev->parent) : "none");
      |                         ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  206 |                 __assign_str(pm_ops, pm_ops ? pm_ops : "none ");
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  207 |                 __entry->event = event;
      |                 ~~~~~~~~~~~~~~~~~~~~~~~
  208 |         ),
      |         ~~
  209 | 
  210 |         TP_printk("%s %s, parent: %s, %s[%s]", __get_str(driver),
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  211 |                 __get_str(device), __get_str(parent), __get_str(pm_ops),
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  212 |                 pm_verb_symbolic(__entry->event))
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  213 | );
      | ~
include/trace/stages/stage6_event_callback.h:39:16: note: expanded from macro '__assign_str'
   39 |                 WARN_ON_ONCE(src && strcmp((src), __data_offsets.dst##_ptr_)); \
      |                              ^~~
include/asm-generic/bug.h:111:25: note: expanded from macro 'WARN_ON_ONCE'
  111 |         int __ret_warn_on = !!(condition);                      \
      |                                ^~~~~~~~~
include/trace/stages/stage6_event_callback.h:135:33: note: expanded from macro 'TP_fast_assign'
  135 | #define TP_fast_assign(args...) args
      |                                 ^~~~
include/trace/trace_events.h:44:16: note: expanded from macro 'TRACE_EVENT'
   40 |         DECLARE_EVENT_CLASS(name,                              \
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   41 |                              PARAMS(proto),                    \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   42 |                              PARAMS(args),                     \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   43 |                              PARAMS(tstruct),                  \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   44 |                              PARAMS(assign),                   \
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
   45 |                              PARAMS(print));                   \
      |                              ~~~~~~~~~~~~~~
include/linux/tracepoint.h:107:25: note: expanded from macro 'PARAMS'
  107 | #define PARAMS(args...) args
      |                         ^~~~
include/trace/perf.h:51:4: note: expanded from macro 'DECLARE_EVENT_CLASS'
   51 |         { assign; }                                                     \
      |           ^~~~~~
In file included from kernel/trace/power-traces.c:15:
In file included from include/trace/events/power.h:557:
In file included from include/trace/define_trace.h:103:
In file included from include/trace/perf.h:75:
include/trace/events/power.h:217:3: error: result of comparison against a string literal is unspecified (use an explicit string comparison function instead) [-Werror,-Wstring-compare]
  217 |                 __assign_str(pm_ops, pm_ops ? pm_ops : "none ");
      |                 ^                                      ~~~~~~~
include/trace/stages/stage6_event_callback.h:38:21: note: expanded from macro '__assign_str'
   38 |                 WARN_ON_ONCE(!src != !__data_offsets.dst##_ptr_);       \
      |                               ~~~ ^
include/asm-generic/bug.h:111:25: note: expanded from macro 'WARN_ON_ONCE'
  111 |         int __ret_warn_on = !!(condition);                      \
      |                                ^~~~~~~~~
include/trace/stages/stage6_event_callback.h:135:33: note: expanded from macro 'TP_fast_assign'
  135 | #define TP_fast_assign(args...) args
      |                                 ^~~~
include/trace/trace_events.h:44:16: note: expanded from macro 'TRACE_EVENT'
   44 |                              PARAMS(assign),                   \
      |                                     ^~~~~~
include/linux/tracepoint.h:107:25: note: expanded from macro 'PARAMS'
  107 | #define PARAMS(args...) args
      |                         ^~~~
include/trace/perf.h:51:4: note: expanded from macro 'DECLARE_EVENT_CLASS'
   51 |         { assign; }                                                     \
      |           ^~~~~~
In file included from kernel/trace/power-traces.c:15:
In file included from include/trace/events/power.h:557:
In file included from include/trace/define_trace.h:103:
In file included from include/trace/perf.h:75:
include/trace/events/power.h:217:3: error: comparison between pointer and integer ('char *' and 'int') [-Werror,-Wpointer-integer-compare]
  198 |                 __field(int, event)
      |                 ~~~~~~~~~~~~~~~~~~~
  199 |         ),
      |         ~~
  200 | 
  201 |         TP_fast_assign(
      |         ~~~~~~~~~~~~~~~
  202 |                 __assign_str(device, dev_name(dev));
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  203 |                 __assign_str(driver, dev_driver_string(dev));
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  204 |                 __assign_str(parent,
      |                 ~~~~~~~~~~~~~~~~~~~~
  205 |                         dev->parent ? dev_name(dev->parent) : "none");
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  206 |                 __assign_str(pm_ops, pm_ops ? pm_ops : "none ");
      |                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  207 |                 __entry->event = event;
      |                 ~~~~~~~~~~~~~~~~~~~~~~~
  208 |         ),
      |         ~~
  209 | 
  210 |         TP_printk("%s %s, parent: %s, %s[%s]", __get_str(driver),
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  211 |                 __get_str(device), __get_str(parent), __get_str(pm_ops),
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  212 |                 pm_verb_symbolic(__entry->event))
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  213 | );
      | ~
include/trace/stages/stage6_event_callback.h:38:21: note: expanded from macro '__assign_str'
   38 |                 WARN_ON_ONCE(!src != !__data_offsets.dst##_ptr_);       \
      |                               ~~~ ^
include/asm-generic/bug.h:111:25: note: expanded from macro 'WARN_ON_ONCE'
  111 |         int __ret_warn_on = !!(condition);                      \
      |                                ^~~~~~~~~
include/trace/stages/stage6_event_callback.h:135:33: note: expanded from macro 'TP_fast_assign'
  135 | #define TP_fast_assign(args...) args
      |                                 ^~~~
include/trace/trace_events.h:44:16: note: expanded from macro 'TRACE_EVENT'
   40 |         DECLARE_EVENT_CLASS(name,                              \
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   41 |                              PARAMS(proto),                    \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   42 |                              PARAMS(args),                     \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   43 |                              PARAMS(tstruct),                  \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   44 |                              PARAMS(assign),                   \
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
   45 |                              PARAMS(print));                   \
      |                              ~~~~~~~~~~~~~~
include/linux/tracepoint.h:107:25: note: expanded from macro 'PARAMS'
  107 | #define PARAMS(args...) args
      |                         ^~~~
include/trace/perf.h:51:4: note: expanded from macro 'DECLARE_EVENT_CLASS'
   51 |         { assign; }                                                     \
      |           ^~~~~~
In file included from kernel/trace/power-traces.c:15:
In file included from include/trace/events/power.h:557:
In file included from include/trace/define_trace.h:103:
In file included from include/trace/perf.h:75:
include/trace/events/power.h:217:31: error: pointer/integer type mismatch in conditional expression ('const char *' and 'int') [-Werror,-Wconditional-type-mismatch]
  198 |                 __field(int, event)
      |                 ~~~~~~~~~~~~~~~~~~~
  199 |         ),
      |         ~~
  200 | 
  201 |         TP_fast_assign(
      |         ~~~~~~~~~~~~~~~
  202 |                 __assign_str(device, dev_name(dev));
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  203 |                 __assign_str(driver, dev_driver_string(dev));
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  204 |                 __assign_str(parent,
      |                 ~~~~~~~~~~~~~~~~~~~~
  205 |                         dev->parent ? dev_name(dev->parent) : "none");
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  206 |                 __assign_str(pm_ops, pm_ops ? pm_ops : "none ");
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
  207 |                 __entry->event = event;
      |                 ~~~~~~~~~~~~~~~~~~~~~~~
  208 |         ),
      |         ~~
  209 | 
  210 |         TP_printk("%s %s, parent: %s, %s[%s]", __get_str(driver),
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  211 |                 __get_str(device), __get_str(parent), __get_str(pm_ops),
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  212 |                 pm_verb_symbolic(__entry->event))
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  213 | );
      | ~
include/trace/stages/stage6_event_callback.h:38:17: note: expanded from macro '__assign_str'
   38 |                 WARN_ON_ONCE(!src != !__data_offsets.dst##_ptr_);       \
      |                               ^~~
include/asm-generic/bug.h:111:25: note: expanded from macro 'WARN_ON_ONCE'
  111 |         int __ret_warn_on = !!(condition);                      \
      |                                ^~~~~~~~~
include/trace/stages/stage6_event_callback.h:135:33: note: expanded from macro 'TP_fast_assign'
  135 | #define TP_fast_assign(args...) args
      |                                 ^~~~
include/trace/trace_events.h:44:16: note: expanded from macro 'TRACE_EVENT'
   40 |         DECLARE_EVENT_CLASS(name,                              \
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   41 |                              PARAMS(proto),                    \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   42 |                              PARAMS(args),                     \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   43 |                              PARAMS(tstruct),                  \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   44 |                              PARAMS(assign),                   \
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
   45 |                              PARAMS(print));                   \
      |                              ~~~~~~~~~~~~~~
include/linux/tracepoint.h:107:25: note: expanded from macro 'PARAMS'
  107 | #define PARAMS(args...) args
      |                         ^~~~
include/trace/perf.h:51:4: note: expanded from macro 'DECLARE_EVENT_CLASS'
   51 |         { assign; }                                                     \
      |           ^~~~~~
In file included from kernel/trace/power-traces.c:15:
In file included from include/trace/events/power.h:557:
In file included from include/trace/define_trace.h:103:
In file included from include/trace/perf.h:75:
include/trace/events/power.h:217:31: error: pointer/integer type mismatch in conditional expression ('const char *' and 'int') [-Werror,-Wconditional-type-mismatch]
  198 |                 __field(int, event)
      |                 ~~~~~~~~~~~~~~~~~~~
  199 |         ),
      |         ~~
  200 | 
  201 |         TP_fast_assign(
      |         ~~~~~~~~~~~~~~~
  202 |                 __assign_str(device, dev_name(dev));
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  203 |                 __assign_str(driver, dev_driver_string(dev));
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  204 |                 __assign_str(parent,
      |                 ~~~~~~~~~~~~~~~~~~~~
  205 |                         dev->parent ? dev_name(dev->parent) : "none");
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  206 |                 __assign_str(pm_ops, pm_ops ? pm_ops : "none ");
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
  207 |                 __entry->event = event;
      |                 ~~~~~~~~~~~~~~~~~~~~~~~
  208 |         ),
      |         ~~
  209 | 
  210 |         TP_printk("%s %s, parent: %s, %s[%s]", __get_str(driver),
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  211 |                 __get_str(device), __get_str(parent), __get_str(pm_ops),
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  212 |                 pm_verb_symbolic(__entry->event))
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  213 | );
      | ~
include/trace/stages/stage6_event_callback.h:39:16: note: expanded from macro '__assign_str'
   39 |                 WARN_ON_ONCE(src && strcmp((src), __data_offsets.dst##_ptr_)); \
      |                              ^~~
include/asm-generic/bug.h:111:25: note: expanded from macro 'WARN_ON_ONCE'
  111 |         int __ret_warn_on = !!(condition);                      \
      |                                ^~~~~~~~~
include/trace/stages/stage6_event_callback.h:135:33: note: expanded from macro 'TP_fast_assign'
  135 | #define TP_fast_assign(args...) args
      |                                 ^~~~
include/trace/trace_events.h:44:16: note: expanded from macro 'TRACE_EVENT'
   40 |         DECLARE_EVENT_CLASS(name,                              \
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   41 |                              PARAMS(proto),                    \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   42 |                              PARAMS(args),                     \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   43 |                              PARAMS(tstruct),                  \
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   44 |                              PARAMS(assign),                   \
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
   45 |                              PARAMS(print));                   \
      |                              ~~~~~~~~~~~~~~
include/linux/tracepoint.h:107:25: note: expanded from macro 'PARAMS'
  107 | #define PARAMS(args...) args
      |                         ^~~~
include/trace/perf.h:51:4: note: expanded from macro 'DECLARE_EVENT_CLASS'
   51 |         { assign; }                                                     \
      |           ^~~~~~
16 errors generated.
make[6]: *** [scripts/Makefile.build:243: kernel/trace/power-traces.o] Error 1
make[6]: Target 'kernel/trace/' not remade because of errors.
make[5]: *** [scripts/Makefile.build:481: kernel/trace] Error 2
make[5]: Target 'kernel/' not remade because of errors.
make[4]: *** [scripts/Makefile.build:481: kernel] Error 2
In file included from fs/nfs/nfs4trace.c:13:
In file included from fs/nfs/nfs4trace.h:2559:
In file included from include/trace/define_trace.h:102:
In file included from include/trace/trace_events.h:419:
fs/nfs/nfs4trace.h:1332:4: error: result of comparison against a string literal is unspecified (use an explicit string comparison function instead) [-Werror,-Wstring-compare]
 1332 |                         __assign_str(dstaddr, clp ? clp->cl_hostname : "unknown");
      |                         ^                                              ~~~~~~~~~
include/trace/stages/stage6_event_callback.h:38:21: note: expanded from macro '__assign_str'
   38 |                 WARN_ON_ONCE(!src != !__data_offsets.dst##_ptr_);       \
      |                               ~~~ ^
include/asm-generic/bug.h:111:25: note: expanded from macro 'WARN_ON_ONCE'
  111 |         int __ret_warn_on = !!(condition);                      \
      |                                ^~~~~~~~~
include/trace/stages/stage6_event_callback.h:135:33: note: expanded from macro 'TP_fast_assign'
  135 | #define TP_fast_assign(args...) args
      |                                 ^~~~
include/trace/trace_events.h:402:4: note: expanded from macro 'DECLARE_EVENT_CLASS'
  402 |         { assign; }                                                     \
      |           ^~~~~~
In file included from fs/nfs/nfs4trace.c:13:
In file included from fs/nfs/nfs4trace.h:2559:
In file included from include/trace/define_trace.h:102:
In file included from include/trace/trace_events.h:419:
fs/nfs/nfs4trace.h:1332:4: error: comparison between pointer and integer ('char *' and 'int') [-Werror,-Wpointer-integer-compare]
 1304 |                         if (!IS_ERR_OR_NULL(inode)) {
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1305 |                                 __entry->fileid = NFS_FILEID(inode);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1306 |                                 __entry->dev = inode->i_sb->s_dev;
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1307 |                         } else {
      |                         ~~~~~~~~
 1308 |                                 __entry->fileid = 0;
      |                                 ~~~~~~~~~~~~~~~~~~~~
 1309 |                                 __entry->dev = 0;
      |                                 ~~~~~~~~~~~~~~~~~
 1310 |                         }
      |                         ~
 1311 |                         __assign_str(dstaddr, clp ? clp->cl_hostname : "unknown");
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1312 |                 ),
      |                 ~~
 1313 | 
 1314 |                 TP_printk(
      |                 ~~~~~~~~~~
 1315 |                         "error=%ld (%s) fileid=%02x:%02x:%llu fhandle=0x%08x "
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1316 |                         "dstaddr=%s",
      |                         ~~~~~~~~~~~~~
 1317 |                         -__entry->error,
      |                         ~~~~~~~~~~~~~~~~
 1318 |                         show_nfs4_status(__entry->error),
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1319 |                         MAJOR(__entry->dev), MINOR(__entry->dev),
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/trace/stages/stage6_event_callback.h:38:21: note: expanded from macro '__assign_str'
   38 |                 WARN_ON_ONCE(!src != !__data_offsets.dst##_ptr_);       \
      |                               ~~~ ^
include/asm-generic/bug.h:111:25: note: expanded from macro 'WARN_ON_ONCE'
  111 |         int __ret_warn_on = !!(condition);                      \
      |                                ^~~~~~~~~
include/trace/stages/stage6_event_callback.h:135:33: note: expanded from macro 'TP_fast_assign'
  135 | #define TP_fast_assign(args...) args
      |                                 ^~~~
include/trace/trace_events.h:402:4: note: expanded from macro 'DECLARE_EVENT_CLASS'
  402 |         { assign; }                                                     \
      |           ^~~~~~
In file included from fs/nfs/nfs4trace.c:13:
In file included from fs/nfs/nfs4trace.h:2559:
In file included from include/trace/define_trace.h:102:
In file included from include/trace/trace_events.h:419:
fs/nfs/nfs4trace.h:1332:30: error: pointer/integer type mismatch in conditional expression ('char *' and 'int') [-Werror,-Wconditional-type-mismatch]
 1304 |                         if (!IS_ERR_OR_NULL(inode)) {
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1305 |                                 __entry->fileid = NFS_FILEID(inode);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1306 |                                 __entry->dev = inode->i_sb->s_dev;
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1307 |                         } else {
      |                         ~~~~~~~~
 1308 |                                 __entry->fileid = 0;
      |                                 ~~~~~~~~~~~~~~~~~~~~
 1309 |                                 __entry->dev = 0;
      |                                 ~~~~~~~~~~~~~~~~~
 1310 |                         }
      |                         ~
 1311 |                         __assign_str(dstaddr, clp ? clp->cl_hostname : "unknown");
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1312 |                 ),
      |                 ~~
 1313 | 
 1314 |                 TP_printk(
      |                 ~~~~~~~~~~
 1315 |                         "error=%ld (%s) fileid=%02x:%02x:%llu fhandle=0x%08x "
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1316 |                         "dstaddr=%s",
      |                         ~~~~~~~~~~~~~
 1317 |                         -__entry->error,
      |                         ~~~~~~~~~~~~~~~~
 1318 |                         show_nfs4_status(__entry->error),
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1319 |                         MAJOR(__entry->dev), MINOR(__entry->dev),
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/trace/stages/stage6_event_callback.h:38:17: note: expanded from macro '__assign_str'
   38 |                 WARN_ON_ONCE(!src != !__data_offsets.dst##_ptr_);       \
      |                               ^~~
include/asm-generic/bug.h:111:25: note: expanded from macro 'WARN_ON_ONCE'
  111 |         int __ret_warn_on = !!(condition);                      \
      |                                ^~~~~~~~~
include/trace/stages/stage6_event_callback.h:135:33: note: expanded from macro 'TP_fast_assign'
  135 | #define TP_fast_assign(args...) args
      |                                 ^~~~
include/trace/trace_events.h:402:4: note: expanded from macro 'DECLARE_EVENT_CLASS'
  402 |         { assign; }                                                     \
      |           ^~~~~~
In file included from fs/nfs/nfs4trace.c:13:
In file included from fs/nfs/nfs4trace.h:2559:
In file included from include/trace/define_trace.h:102:
In file included from include/trace/trace_events.h:419:
fs/nfs/nfs4trace.h:1332:30: error: pointer/integer type mismatch in conditional expression ('char *' and 'int') [-Werror,-Wconditional-type-mismatch]
 1304 |                         if (!IS_ERR_OR_NULL(inode)) {
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1305 |                                 __entry->fileid = NFS_FILEID(inode);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1306 |                                 __entry->dev = inode->i_sb->s_dev;
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1307 |                         } else {
      |                         ~~~~~~~~
 1308 |                                 __entry->fileid = 0;
      |                                 ~~~~~~~~~~~~~~~~~~~~
 1309 |                                 __entry->dev = 0;
      |                                 ~~~~~~~~~~~~~~~~~
 1310 |                         }
      |                         ~
 1311 |                         __assign_str(dstaddr, clp ? clp->cl_hostname : "unknown");
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1312 |                 ),
      |                 ~~
 1313 | 
 1314 |                 TP_printk(
      |                 ~~~~~~~~~~
 1315 |                         "error=%ld (%s) fileid=%02x:%02x:%llu fhandle=0x%08x "
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1316 |                         "dstaddr=%s",
      |                         ~~~~~~~~~~~~~
 1317 |                         -__entry->error,
      |                         ~~~~~~~~~~~~~~~~
 1318 |                         show_nfs4_status(__entry->error),
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1319 |                         MAJOR(__entry->dev), MINOR(__entry->dev),
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/trace/stages/stage6_event_callback.h:39:16: note: expanded from macro '__assign_str'
   39 |                 WARN_ON_ONCE(src && strcmp((src), __data_offsets.dst##_ptr_)); \
      |                              ^~~
include/asm-generic/bug.h:111:25: note: expanded from macro 'WARN_ON_ONCE'
  111 |         int __ret_warn_on = !!(condition);                      \
      |                                ^~~~~~~~~
include/trace/stages/stage6_event_callback.h:135:33: note: expanded from macro 'TP_fast_assign'
  135 | #define TP_fast_assign(args...) args
      |                                 ^~~~
include/trace/trace_events.h:402:4: note: expanded from macro 'DECLARE_EVENT_CLASS'
  402 |         { assign; }                                                     \
      |           ^~~~~~
In file included from fs/nfs/nfs4trace.c:13:
In file included from fs/nfs/nfs4trace.h:2559:
In file included from include/trace/define_trace.h:102:
In file included from include/trace/trace_events.h:419:
fs/nfs/nfs4trace.h:1389:4: error: result of comparison against a string literal is unspecified (use an explicit string comparison function instead) [-Werror,-Wstring-compare]
 1389 |                         __assign_str(dstaddr, clp ? clp->cl_hostname : "unknown");
      |                         ^                                              ~~~~~~~~~
include/trace/stages/stage6_event_callback.h:38:21: note: expanded from macro '__assign_str'
   38 |                 WARN_ON_ONCE(!src != !__data_offsets.dst##_ptr_);       \
      |                               ~~~ ^
include/asm-generic/bug.h:111:25: note: expanded from macro 'WARN_ON_ONCE'
  111 |         int __ret_warn_on = !!(condition);                      \
      |                                ^~~~~~~~~
include/trace/stages/stage6_event_callback.h:135:33: note: expanded from macro 'TP_fast_assign'
  135 | #define TP_fast_assign(args...) args
      |                                 ^~~~
include/trace/trace_events.h:402:4: note: expanded from macro 'DECLARE_EVENT_CLASS'
  402 |         { assign; }                                                     \
      |           ^~~~~~
In file included from fs/nfs/nfs4trace.c:13:
In file included from fs/nfs/nfs4trace.h:2559:
In file included from include/trace/define_trace.h:102:
In file included from include/trace/trace_events.h:419:
fs/nfs/nfs4trace.h:1389:4: error: comparison between pointer and integer ('char *' and 'int') [-Werror,-Wpointer-integer-compare]
 1358 |                         if (!IS_ERR_OR_NULL(inode)) {
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1359 |                                 __entry->fileid = NFS_FILEID(inode);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1360 |                                 __entry->dev = inode->i_sb->s_dev;
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1361 |                         } else {
      |                         ~~~~~~~~
 1362 |                                 __entry->fileid = 0;
      |                                 ~~~~~~~~~~~~~~~~~~~~
 1363 |                                 __entry->dev = 0;
      |                                 ~~~~~~~~~~~~~~~~~
 1364 |                         }
      |                         ~
 1365 |                         __assign_str(dstaddr, clp ? clp->cl_hostname : "unknown");
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1366 |                         __entry->stateid_seq =
      |                         ~~~~~~~~~~~~~~~~~~~~~~
 1367 |                                 be32_to_cpu(stateid->seqid);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1368 |                         __entry->stateid_hash =
      |                         ~~~~~~~~~~~~~~~~~~~~~~~
 1369 |                                 nfs_stateid_hash(stateid);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~
 1370 |                 ),
      |                 ~~
 1371 | 
 1372 |                 TP_printk(
      |                 ~~~~~~~~~~
 1373 |                         "error=%ld (%s) fileid=%02x:%02x:%llu fhandle=0x%08x "
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/trace/stages/stage6_event_callback.h:38:21: note: expanded from macro '__assign_str'
   38 |                 WARN_ON_ONCE(!src != !__data_offsets.dst##_ptr_);       \
      |                               ~~~ ^
include/asm-generic/bug.h:111:25: note: expanded from macro 'WARN_ON_ONCE'
  111 |         int __ret_warn_on = !!(condition);                      \
      |                                ^~~~~~~~~
include/trace/stages/stage6_event_callback.h:135:33: note: expanded from macro 'TP_fast_assign'
  135 | #define TP_fast_assign(args...) args
      |                                 ^~~~
include/trace/trace_events.h:402:4: note: expanded from macro 'DECLARE_EVENT_CLASS'
  402 |         { assign; }                                                     \
      |           ^~~~~~
In file included from fs/nfs/nfs4trace.c:13:
In file included from fs/nfs/nfs4trace.h:2559:
In file included from include/trace/define_trace.h:102:
In file included from include/trace/trace_events.h:419:
fs/nfs/nfs4trace.h:1389:30: error: pointer/integer type mismatch in conditional expression ('char *' and 'int') [-Werror,-Wconditional-type-mismatch]
 1358 |                         if (!IS_ERR_OR_NULL(inode)) {
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1359 |                                 __entry->fileid = NFS_FILEID(inode);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1360 |                                 __entry->dev = inode->i_sb->s_dev;
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1361 |                         } else {
      |                         ~~~~~~~~
 1362 |                                 __entry->fileid = 0;
      |                                 ~~~~~~~~~~~~~~~~~~~~
 1363 |                                 __entry->dev = 0;
      |                                 ~~~~~~~~~~~~~~~~~
 1364 |                         }
      |                         ~
 1365 |                         __assign_str(dstaddr, clp ? clp->cl_hostname : "unknown");
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1366 |                         __entry->stateid_seq =
      |                         ~~~~~~~~~~~~~~~~~~~~~~
 1367 |                                 be32_to_cpu(stateid->seqid);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1368 |                         __entry->stateid_hash =
      |                         ~~~~~~~~~~~~~~~~~~~~~~~
 1369 |                                 nfs_stateid_hash(stateid);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~
 1370 |                 ),
      |                 ~~
 1371 | 
 1372 |                 TP_printk(
      |                 ~~~~~~~~~~
 1373 |                         "error=%ld (%s) fileid=%02x:%02x:%llu fhandle=0x%08x "
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/trace/stages/stage6_event_callback.h:38:17: note: expanded from macro '__assign_str'
   38 |                 WARN_ON_ONCE(!src != !__data_offsets.dst##_ptr_);       \
      |                               ^~~
include/asm-generic/bug.h:111:25: note: expanded from macro 'WARN_ON_ONCE'
  111 |         int __ret_warn_on = !!(condition);                      \
      |                                ^~~~~~~~~
include/trace/stages/stage6_event_callback.h:135:33: note: expanded from macro 'TP_fast_assign'
  135 | #define TP_fast_assign(args...) args
      |                                 ^~~~
include/trace/trace_events.h:402:4: note: expanded from macro 'DECLARE_EVENT_CLASS'
  402 |         { assign; }                                                     \
      |           ^~~~~~
In file included from fs/nfs/nfs4trace.c:13:
In file included from fs/nfs/nfs4trace.h:2559:
In file included from include/trace/define_trace.h:102:
In file included from include/trace/trace_events.h:419:
fs/nfs/nfs4trace.h:1389:30: error: pointer/integer type mismatch in conditional expression ('char *' and 'int') [-Werror,-Wconditional-type-mismatch]
 1358 |                         if (!IS_ERR_OR_NULL(inode)) {
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1359 |                                 __entry->fileid = NFS_FILEID(inode);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1360 |                                 __entry->dev = inode->i_sb->s_dev;
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1361 |                         } else {
      |                         ~~~~~~~~
 1362 |                                 __entry->fileid = 0;
      |                                 ~~~~~~~~~~~~~~~~~~~~
 1363 |                                 __entry->dev = 0;
      |                                 ~~~~~~~~~~~~~~~~~
 1364 |                         }
      |                         ~
 1365 |                         __assign_str(dstaddr, clp ? clp->cl_hostname : "unknown");
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1366 |                         __entry->stateid_seq =
      |                         ~~~~~~~~~~~~~~~~~~~~~~
 1367 |                                 be32_to_cpu(stateid->seqid);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1368 |                         __entry->stateid_hash =
      |                         ~~~~~~~~~~~~~~~~~~~~~~~
 1369 |                                 nfs_stateid_hash(stateid);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~
 1370 |                 ),
      |                 ~~
 1371 | 
 1372 |                 TP_printk(
      |                 ~~~~~~~~~~
 1373 |                         "error=%ld (%s) fileid=%02x:%02x:%llu fhandle=0x%08x "
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/trace/stages/stage6_event_callback.h:39:16: note: expanded from macro '__assign_str'
   39 |                 WARN_ON_ONCE(src && strcmp((src), __data_offsets.dst##_ptr_)); \
      |                              ^~~
include/asm-generic/bug.h:111:25: note: expanded from macro 'WARN_ON_ONCE'
  111 |         int __ret_warn_on = !!(condition);                      \
      |                                ^~~~~~~~~
include/trace/stages/stage6_event_callback.h:135:33: note: expanded from macro 'TP_fast_assign'
  135 | #define TP_fast_assign(args...) args
      |                                 ^~~~
include/trace/trace_events.h:402:4: note: expanded from macro 'DECLARE_EVENT_CLASS'
  402 |         { assign; }                                                     \
      |           ^~~~~~
In file included from fs/nfs/nfs4trace.c:13:
In file included from fs/nfs/nfs4trace.h:2559:
In file included from include/trace/define_trace.h:103:
In file included from include/trace/perf.h:75:
fs/nfs/nfs4trace.h:1332:4: error: result of comparison against a string literal is unspecified (use an explicit string comparison function instead) [-Werror,-Wstring-compare]
 1332 |                         __assign_str(dstaddr, clp ? clp->cl_hostname : "unknown");
      |                         ^                                              ~~~~~~~~~
include/trace/stages/stage6_event_callback.h:38:21: note: expanded from macro '__assign_str'
   38 |                 WARN_ON_ONCE(!src != !__data_offsets.dst##_ptr_);       \
      |                               ~~~ ^
include/asm-generic/bug.h:111:25: note: expanded from macro 'WARN_ON_ONCE'
  111 |         int __ret_warn_on = !!(condition);                      \
      |                                ^~~~~~~~~
include/trace/stages/stage6_event_callback.h:135:33: note: expanded from macro 'TP_fast_assign'
  135 | #define TP_fast_assign(args...) args
      |                                 ^~~~
include/trace/perf.h:51:4: note: expanded from macro 'DECLARE_EVENT_CLASS'
   51 |         { assign; }                                                     \
      |           ^~~~~~
In file included from fs/nfs/nfs4trace.c:13:
In file included from fs/nfs/nfs4trace.h:2559:
In file included from include/trace/define_trace.h:103:
In file included from include/trace/perf.h:75:
fs/nfs/nfs4trace.h:1332:4: error: comparison between pointer and integer ('char *' and 'int') [-Werror,-Wpointer-integer-compare]
 1304 |                         if (!IS_ERR_OR_NULL(inode)) {
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1305 |                                 __entry->fileid = NFS_FILEID(inode);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1306 |                                 __entry->dev = inode->i_sb->s_dev;
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1307 |                         } else {
      |                         ~~~~~~~~
 1308 |                                 __entry->fileid = 0;
      |                                 ~~~~~~~~~~~~~~~~~~~~
 1309 |                                 __entry->dev = 0;
      |                                 ~~~~~~~~~~~~~~~~~
 1310 |                         }
      |                         ~
 1311 |                         __assign_str(dstaddr, clp ? clp->cl_hostname : "unknown");
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1312 |                 ),
      |                 ~~
 1313 | 
 1314 |                 TP_printk(
      |                 ~~~~~~~~~~
 1315 |                         "error=%ld (%s) fileid=%02x:%02x:%llu fhandle=0x%08x "
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1316 |                         "dstaddr=%s",
      |                         ~~~~~~~~~~~~~
 1317 |                         -__entry->error,
      |                         ~~~~~~~~~~~~~~~~
 1318 |                         show_nfs4_status(__entry->error),
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1319 |                         MAJOR(__entry->dev), MINOR(__entry->dev),
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/trace/stages/stage6_event_callback.h:38:21: note: expanded from macro '__assign_str'
   38 |                 WARN_ON_ONCE(!src != !__data_offsets.dst##_ptr_);       \
      |                               ~~~ ^
include/asm-generic/bug.h:111:25: note: expanded from macro 'WARN_ON_ONCE'
  111 |         int __ret_warn_on = !!(condition);                      \
      |                                ^~~~~~~~~
include/trace/stages/stage6_event_callback.h:135:33: note: expanded from macro 'TP_fast_assign'
  135 | #define TP_fast_assign(args...) args
      |                                 ^~~~
include/trace/perf.h:51:4: note: expanded from macro 'DECLARE_EVENT_CLASS'
   51 |         { assign; }                                                     \
      |           ^~~~~~
In file included from fs/nfs/nfs4trace.c:13:
In file included from fs/nfs/nfs4trace.h:2559:
In file included from include/trace/define_trace.h:103:
In file included from include/trace/perf.h:75:
fs/nfs/nfs4trace.h:1332:30: error: pointer/integer type mismatch in conditional expression ('char *' and 'int') [-Werror,-Wconditional-type-mismatch]
 1304 |                         if (!IS_ERR_OR_NULL(inode)) {
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1305 |                                 __entry->fileid = NFS_FILEID(inode);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1306 |                                 __entry->dev = inode->i_sb->s_dev;
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1307 |                         } else {
      |                         ~~~~~~~~
 1308 |                                 __entry->fileid = 0;
      |                                 ~~~~~~~~~~~~~~~~~~~~
 1309 |                                 __entry->dev = 0;
      |                                 ~~~~~~~~~~~~~~~~~
 1310 |                         }
      |                         ~
 1311 |                         __assign_str(dstaddr, clp ? clp->cl_hostname : "unknown");
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1312 |                 ),
      |                 ~~
 1313 | 
 1314 |                 TP_printk(
      |                 ~~~~~~~~~~
 1315 |                         "error=%ld (%s) fileid=%02x:%02x:%llu fhandle=0x%08x "
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1316 |                         "dstaddr=%s",
      |                         ~~~~~~~~~~~~~
 1317 |                         -__entry->error,
      |                         ~~~~~~~~~~~~~~~~
 1318 |                         show_nfs4_status(__entry->error),
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1319 |                         MAJOR(__entry->dev), MINOR(__entry->dev),
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/trace/stages/stage6_event_callback.h:38:17: note: expanded from macro '__assign_str'
   38 |                 WARN_ON_ONCE(!src != !__data_offsets.dst##_ptr_);       \
      |                               ^~~
include/asm-generic/bug.h:111:25: note: expanded from macro 'WARN_ON_ONCE'
  111 |         int __ret_warn_on = !!(condition);                      \
      |                                ^~~~~~~~~
include/trace/stages/stage6_event_callback.h:135:33: note: expanded from macro 'TP_fast_assign'
  135 | #define TP_fast_assign(args...) args
      |                                 ^~~~
include/trace/perf.h:51:4: note: expanded from macro 'DECLARE_EVENT_CLASS'
   51 |         { assign; }                                                     \
      |           ^~~~~~
In file included from fs/nfs/nfs4trace.c:13:
In file included from fs/nfs/nfs4trace.h:2559:
In file included from include/trace/define_trace.h:103:
In file included from include/trace/perf.h:75:
fs/nfs/nfs4trace.h:1332:30: error: pointer/integer type mismatch in conditional expression ('char *' and 'int') [-Werror,-Wconditional-type-mismatch]
 1304 |                         if (!IS_ERR_OR_NULL(inode)) {
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1305 |                                 __entry->fileid = NFS_FILEID(inode);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1306 |                                 __entry->dev = inode->i_sb->s_dev;
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1307 |                         } else {
      |                         ~~~~~~~~
 1308 |                                 __entry->fileid = 0;
      |                                 ~~~~~~~~~~~~~~~~~~~~
 1309 |                                 __entry->dev = 0;
      |                                 ~~~~~~~~~~~~~~~~~
 1310 |                         }
      |                         ~
 1311 |                         __assign_str(dstaddr, clp ? clp->cl_hostname : "unknown");
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1312 |                 ),
      |                 ~~
 1313 | 
 1314 |                 TP_printk(
      |                 ~~~~~~~~~~
 1315 |                         "error=%ld (%s) fileid=%02x:%02x:%llu fhandle=0x%08x "
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1316 |                         "dstaddr=%s",
      |                         ~~~~~~~~~~~~~
 1317 |                         -__entry->error,
      |                         ~~~~~~~~~~~~~~~~
 1318 |                         show_nfs4_status(__entry->error),
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1319 |                         MAJOR(__entry->dev), MINOR(__entry->dev),
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/trace/stages/stage6_event_callback.h:39:16: note: expanded from macro '__assign_str'
   39 |                 WARN_ON_ONCE(src && strcmp((src), __data_offsets.dst##_ptr_)); \
      |                              ^~~
include/asm-generic/bug.h:111:25: note: expanded from macro 'WARN_ON_ONCE'
  111 |         int __ret_warn_on = !!(condition);                      \
      |                                ^~~~~~~~~
include/trace/stages/stage6_event_callback.h:135:33: note: expanded from macro 'TP_fast_assign'
  135 | #define TP_fast_assign(args...) args
      |                                 ^~~~
include/trace/perf.h:51:4: note: expanded from macro 'DECLARE_EVENT_CLASS'
   51 |         { assign; }                                                     \
      |           ^~~~~~
In file included from fs/nfs/nfs4trace.c:13:
In file included from fs/nfs/nfs4trace.h:2559:
In file included from include/trace/define_trace.h:103:
In file included from include/trace/perf.h:75:
fs/nfs/nfs4trace.h:1389:4: error: result of comparison against a string literal is unspecified (use an explicit string comparison function instead) [-Werror,-Wstring-compare]
 1389 |                         __assign_str(dstaddr, clp ? clp->cl_hostname : "unknown");
      |                         ^                                              ~~~~~~~~~
include/trace/stages/stage6_event_callback.h:38:21: note: expanded from macro '__assign_str'
   38 |                 WARN_ON_ONCE(!src != !__data_offsets.dst##_ptr_);       \
      |                               ~~~ ^
include/asm-generic/bug.h:111:25: note: expanded from macro 'WARN_ON_ONCE'
  111 |         int __ret_warn_on = !!(condition);                      \
      |                                ^~~~~~~~~
include/trace/stages/stage6_event_callback.h:135:33: note: expanded from macro 'TP_fast_assign'
  135 | #define TP_fast_assign(args...) args
      |                                 ^~~~
include/trace/perf.h:51:4: note: expanded from macro 'DECLARE_EVENT_CLASS'
   51 |         { assign; }                                                     \
      |           ^~~~~~
In file included from fs/nfs/nfs4trace.c:13:
In file included from fs/nfs/nfs4trace.h:2559:
In file included from include/trace/define_trace.h:103:
In file included from include/trace/perf.h:75:
fs/nfs/nfs4trace.h:1389:4: error: comparison between pointer and integer ('char *' and 'int') [-Werror,-Wpointer-integer-compare]
 1358 |                         if (!IS_ERR_OR_NULL(inode)) {
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1359 |                                 __entry->fileid = NFS_FILEID(inode);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1360 |                                 __entry->dev = inode->i_sb->s_dev;
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1361 |                         } else {
      |                         ~~~~~~~~
 1362 |                                 __entry->fileid = 0;
      |                                 ~~~~~~~~~~~~~~~~~~~~
 1363 |                                 __entry->dev = 0;
      |                                 ~~~~~~~~~~~~~~~~~
 1364 |                         }
      |                         ~
 1365 |                         __assign_str(dstaddr, clp ? clp->cl_hostname : "unknown");
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1366 |                         __entry->stateid_seq =
      |                         ~~~~~~~~~~~~~~~~~~~~~~
 1367 |                                 be32_to_cpu(stateid->seqid);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1368 |                         __entry->stateid_hash =
      |                         ~~~~~~~~~~~~~~~~~~~~~~~
 1369 |                                 nfs_stateid_hash(stateid);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~
 1370 |                 ),
      |                 ~~
 1371 | 
 1372 |                 TP_printk(
      |                 ~~~~~~~~~~
 1373 |                         "error=%ld (%s) fileid=%02x:%02x:%llu fhandle=0x%08x "
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/trace/stages/stage6_event_callback.h:38:21: note: expanded from macro '__assign_str'
   38 |                 WARN_ON_ONCE(!src != !__data_offsets.dst##_ptr_);       \
      |                               ~~~ ^
include/asm-generic/bug.h:111:25: note: expanded from macro 'WARN_ON_ONCE'
  111 |         int __ret_warn_on = !!(condition);                      \
      |                                ^~~~~~~~~
include/trace/stages/stage6_event_callback.h:135:33: note: expanded from macro 'TP_fast_assign'
  135 | #define TP_fast_assign(args...) args
      |                                 ^~~~
include/trace/perf.h:51:4: note: expanded from macro 'DECLARE_EVENT_CLASS'
   51 |         { assign; }                                                     \
      |           ^~~~~~
In file included from fs/nfs/nfs4trace.c:13:
In file included from fs/nfs/nfs4trace.h:2559:
In file included from include/trace/define_trace.h:103:
In file included from include/trace/perf.h:75:
fs/nfs/nfs4trace.h:1389:30: error: pointer/integer type mismatch in conditional expression ('char *' and 'int') [-Werror,-Wconditional-type-mismatch]
 1358 |                         if (!IS_ERR_OR_NULL(inode)) {
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1359 |                                 __entry->fileid = NFS_FILEID(inode);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1360 |                                 __entry->dev = inode->i_sb->s_dev;
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1361 |                         } else {
      |                         ~~~~~~~~
 1362 |                                 __entry->fileid = 0;
      |                                 ~~~~~~~~~~~~~~~~~~~~
 1363 |                                 __entry->dev = 0;
      |                                 ~~~~~~~~~~~~~~~~~
 1364 |                         }
      |                         ~
 1365 |                         __assign_str(dstaddr, clp ? clp->cl_hostname : "unknown");
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1366 |                         __entry->stateid_seq =
      |                         ~~~~~~~~~~~~~~~~~~~~~~
 1367 |                                 be32_to_cpu(stateid->seqid);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1368 |                         __entry->stateid_hash =
      |                         ~~~~~~~~~~~~~~~~~~~~~~~
 1369 |                                 nfs_stateid_hash(stateid);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~
 1370 |                 ),
      |                 ~~
 1371 | 
 1372 |                 TP_printk(
      |                 ~~~~~~~~~~
 1373 |                         "error=%ld (%s) fileid=%02x:%02x:%llu fhandle=0x%08x "
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/trace/stages/stage6_event_callback.h:38:17: note: expanded from macro '__assign_str'
   38 |                 WARN_ON_ONCE(!src != !__data_offsets.dst##_ptr_);       \
      |                               ^~~
include/asm-generic/bug.h:111:25: note: expanded from macro 'WARN_ON_ONCE'
  111 |         int __ret_warn_on = !!(condition);                      \
      |                                ^~~~~~~~~
include/trace/stages/stage6_event_callback.h:135:33: note: expanded from macro 'TP_fast_assign'
  135 | #define TP_fast_assign(args...) args
      |                                 ^~~~
include/trace/perf.h:51:4: note: expanded from macro 'DECLARE_EVENT_CLASS'
   51 |         { assign; }                                                     \
      |           ^~~~~~
In file included from fs/nfs/nfs4trace.c:13:
In file included from fs/nfs/nfs4trace.h:2559:
In file included from include/trace/define_trace.h:103:
In file included from include/trace/perf.h:75:
fs/nfs/nfs4trace.h:1389:30: error: pointer/integer type mismatch in conditional expression ('char *' and 'int') [-Werror,-Wconditional-type-mismatch]
 1358 |                         if (!IS_ERR_OR_NULL(inode)) {
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1359 |                                 __entry->fileid = NFS_FILEID(inode);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1360 |                                 __entry->dev = inode->i_sb->s_dev;
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1361 |                         } else {
      |                         ~~~~~~~~
 1362 |                                 __entry->fileid = 0;
      |                                 ~~~~~~~~~~~~~~~~~~~~
 1363 |                                 __entry->dev = 0;
      |                                 ~~~~~~~~~~~~~~~~~
 1364 |                         }
      |                         ~
 1365 |                         __assign_str(dstaddr, clp ? clp->cl_hostname : "unknown");
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1366 |                         __entry->stateid_seq =
      |                         ~~~~~~~~~~~~~~~~~~~~~~
 1367 |                                 be32_to_cpu(stateid->seqid);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1368 |                         __entry->stateid_hash =
      |                         ~~~~~~~~~~~~~~~~~~~~~~~
 1369 |                                 nfs_stateid_hash(stateid);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~
 1370 |                 ),
      |                 ~~
 1371 | 
 1372 |                 TP_printk(
      |                 ~~~~~~~~~~
 1373 |                         "error=%ld (%s) fileid=%02x:%02x:%llu fhandle=0x%08x "
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/trace/stages/stage6_event_callback.h:39:16: note: expanded from macro '__assign_str'
   39 |                 WARN_ON_ONCE(src && strcmp((src), __data_offsets.dst##_ptr_)); \
      |                              ^~~
include/asm-generic/bug.h:111:25: note: expanded from macro 'WARN_ON_ONCE'
  111 |         int __ret_warn_on = !!(condition);                      \
      |                                ^~~~~~~~~
include/trace/stages/stage6_event_callback.h:135:33: note: expanded from macro 'TP_fast_assign'
  135 | #define TP_fast_assign(args...) args
      |                                 ^~~~
include/trace/perf.h:51:4: note: expanded from macro 'DECLARE_EVENT_CLASS'
   51 |         { assign; }                                                     \
      |           ^~~~~~
16 errors generated.

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [GIT PULL v2] tracing: Updates for v6.9
  2024-03-19 21:03       ` Nathan Chancellor
@ 2024-03-19 21:22         ` Linus Torvalds
  2024-03-19 21:27           ` Nathan Chancellor
  2024-03-19 21:27         ` Steven Rostedt
  1 sibling, 1 reply; 10+ messages in thread
From: Linus Torvalds @ 2024-03-19 21:22 UTC (permalink / raw)
  To: Nathan Chancellor
  Cc: Steven Rostedt, LKML, Masami Hiramatsu, Mathieu Desnoyers,
	Alison Schofield, Beau Belgrave, Huang Yiwei, John Garry,
	Randy Dunlap, Thorsten Blum, Vincent Donnefort, linke li, llvm

On Tue, 19 Mar 2024 at 14:03, Nathan Chancellor <nathan@kernel.org> wrote:
>
> For what it's worth, I applied that change and built ARCH=x86_64
> defconfig with LLVM 18.1.1 from [1] but it does not appear to help the
> instances of -Wstring-compare; in fact, it adds some additional warnings
> that I have not seen before. I have attached the full build log.

Hmm. I'm no longer seeing any problems with commit 24f5bb9f24ad
("tracing: Just use strcmp() for testing __string() and __assign_str()
match").

But that's clang 17.0.6.

The patch that Steven sent out (and that I applied) is a bit different
from his "I'll change it to this" email, though. A couple of casts and
parentheses different.

So maybe current -git works for you?

              Linus

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [GIT PULL v2] tracing: Updates for v6.9
  2024-03-19 21:22         ` Linus Torvalds
@ 2024-03-19 21:27           ` Nathan Chancellor
  0 siblings, 0 replies; 10+ messages in thread
From: Nathan Chancellor @ 2024-03-19 21:27 UTC (permalink / raw)
  To: Linus Torvalds
  Cc: Steven Rostedt, LKML, Masami Hiramatsu, Mathieu Desnoyers,
	Alison Schofield, Beau Belgrave, Huang Yiwei, John Garry,
	Randy Dunlap, Thorsten Blum, Vincent Donnefort, linke li, llvm

On Tue, Mar 19, 2024 at 02:22:27PM -0700, Linus Torvalds wrote:
> On Tue, 19 Mar 2024 at 14:03, Nathan Chancellor <nathan@kernel.org> wrote:
> >
> > For what it's worth, I applied that change and built ARCH=x86_64
> > defconfig with LLVM 18.1.1 from [1] but it does not appear to help the
> > instances of -Wstring-compare; in fact, it adds some additional warnings
> > that I have not seen before. I have attached the full build log.
> 
> Hmm. I'm no longer seeing any problems with commit 24f5bb9f24ad
> ("tracing: Just use strcmp() for testing __string() and __assign_str()
> match").
> 
> But that's clang 17.0.6.
> 
> The patch that Steven sent out (and that I applied) is a bit different
> from his "I'll change it to this" email, though. A couple of casts and
> parentheses different.
> 
> So maybe current -git works for you?

Ah, I did not notice your tree was updated, I was working off of
b3603fcb79b1. Works for me here, thanks for letting me know.

Cheers,
Nathan

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [GIT PULL v2] tracing: Updates for v6.9
  2024-03-19 21:03       ` Nathan Chancellor
  2024-03-19 21:22         ` Linus Torvalds
@ 2024-03-19 21:27         ` Steven Rostedt
  1 sibling, 0 replies; 10+ messages in thread
From: Steven Rostedt @ 2024-03-19 21:27 UTC (permalink / raw)
  To: Nathan Chancellor
  Cc: Linus Torvalds, LKML, Masami Hiramatsu, Mathieu Desnoyers,
	Alison Schofield, Beau Belgrave, Huang Yiwei, John Garry,
	Randy Dunlap, Thorsten Blum, Vincent Donnefort, linke li, llvm

On Tue, 19 Mar 2024 14:03:29 -0700
Nathan Chancellor <nathan@kernel.org> wrote:

> > #define __assign_str(dst, src)						\
> > 	do {								\
> > 		char *__str__ = __get_str(dst);				\
> > 		int __len__ = __get_dynamic_array_len(dst) - 1;		\
> > 		WARN_ON_ONCE(!src != !__data_offsets.dst##_ptr_);	\
> > 		WARN_ON_ONCE(src && strcmp((src), __data_offsets.dst##_ptr_)); \
> > 		memcpy(__str__, __data_offsets.dst##_ptr_ ? :		\
> > 		       EVENT_NULL_STR, __len__);			\
> > 		__str__[__len__] = '\0';				\
> > 	} while (0)
> > 
> > The first WARN_ON() will report the bug if src is not NULL and the pointer
> > is even though the strcmp() will likely crash in that case. But that's a
> > bug if that happens anyway.  
> 
> For what it's worth, I applied that change and built ARCH=x86_64
> defconfig with LLVM 18.1.1 from [1] but it does not appear to help the
> instances of -Wstring-compare; in fact, it adds some additional warnings
> that I have not seen before. I have attached the full build log.

That was just me posting what I was going to do before testing it. You want
the actual patch that Linus pulled in.

  https://lore.kernel.org/all/20240319133959.349f5082@gandalf.local.home/

-- Steve

^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2024-03-19 21:27 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-03-18 15:30 [GIT PULL v2] tracing: Updates for v6.9 Steven Rostedt
2024-03-18 22:47 ` pr-tracker-bot
2024-03-19 16:23 ` Linus Torvalds
2024-03-19 16:58   ` Steven Rostedt
2024-03-19 17:06   ` Steven Rostedt
2024-03-19 17:13     ` Steven Rostedt
2024-03-19 21:03       ` Nathan Chancellor
2024-03-19 21:22         ` Linus Torvalds
2024-03-19 21:27           ` Nathan Chancellor
2024-03-19 21:27         ` Steven Rostedt

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.