linux-perf-users.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH net-next] tools: Fix MSG_SPLICE_PAGES build error in trace tools
@ 2023-06-26 13:20 David Howells
  2023-06-26 13:47 ` Matthieu Baerts
  2023-06-26 13:50 ` David Howells
  0 siblings, 2 replies; 8+ messages in thread
From: David Howells @ 2023-06-26 13:20 UTC (permalink / raw)
  To: netdev
  Cc: dhowells, Matthieu Baerts, Arnaldo Carvalho de Melo, David Miller,
	Eric Dumazet, Jakub Kicinski, Paolo Abeni, Jens Axboe,
	Matthew Wilcox, Peter Zijlstra, Ingo Molnar,
	Arnaldo Carvalho de Melo, Mark Rutland, Alexander Shishkin,
	Jiri Olsa, Namhyung Kim, Ian Rogers, Adrian Hunter,
	linux-perf-users, bpf, linux-next, linux-kernel

The following error is being seen the perf tools because they have their
own copies of a lot of kernel headers:

In file included from builtin-trace.c:907:
trace/beauty/msg_flags.c: In function 'syscall_arg__scnprintf_msg_flags':
trace/beauty/msg_flags.c:28:21: error: 'MSG_SPLICE_PAGES' undeclared (first use in this function)
   28 |         if (flags & MSG_##n) { \
      |                     ^~~~
trace/beauty/msg_flags.c:50:9: note: in expansion of macro 'P_MSG_FLAG'
   50 |         P_MSG_FLAG(SPLICE_PAGES);
      |         ^~~~~~~~~~
trace/beauty/msg_flags.c:28:21: note: each undeclared identifier is reported only once for each function it appears in
   28 |         if (flags & MSG_##n) { \
      |                     ^~~~
trace/beauty/msg_flags.c:50:9: note: in expansion of macro 'P_MSG_FLAG'
   50 |         P_MSG_FLAG(SPLICE_PAGES);
      |         ^~~~~~~~~~

Fix this by (1) adding MSG_SPLICE_PAGES to
tools/perf/trace/beauty/include/linux/socket.h - which looks like it ought
to work, but doesn't, and (2) defining it conditionally in the file on
which the error occurs (suggested by Matthieu Baerts - this is also done
for some other flags).

Fixes: b848b26c6672 ("net: Kill MSG_SENDPAGE_NOTLAST")
Reported-by: Stephen Rothwell <sfr@canb.auug.org.au>
Link: https://lore.kernel.org/r/20230626112847.2ef3d422@canb.auug.org.au/
Signed-off-by: David Howells <dhowells@redhat.com>
cc: Matthieu Baerts <matthieu.baerts@tessares.net>
cc: Arnaldo Carvalho de Melo <acme@redhat.com>
cc: "David S. Miller" <davem@davemloft.net>
cc: Eric Dumazet <edumazet@google.com>
cc: Jakub Kicinski <kuba@kernel.org>
cc: Paolo Abeni <pabeni@redhat.com>
cc: Jens Axboe <axboe@kernel.dk>
cc: Matthew Wilcox <willy@infradead.org>
cc: bpf@vger.kernel.org
cc: dccp@vger.kernel.org
cc: linux-crypto@vger.kernel.org
cc: mptcp@lists.linux.dev
cc: netdev@vger.kernel.org
cc: tipc-discussion@lists.sourceforge.net
cc: virtualization@lists.linux-foundation.org
---
 include/linux/socket.h |    1 +
 msg_flags.c            |    3 +++
 2 files changed, 4 insertions(+)

diff --git a/tools/perf/trace/beauty/include/linux/socket.h b/tools/perf/trace/beauty/include/linux/socket.h
index 3bef212a24d7..77cb707a566a 100644
--- a/tools/perf/trace/beauty/include/linux/socket.h
+++ b/tools/perf/trace/beauty/include/linux/socket.h
@@ -326,6 +326,7 @@ struct ucred {
 					  */
 
 #define MSG_ZEROCOPY	0x4000000	/* Use user data in kernel path */
+#define MSG_SPLICE_PAGES 0x8000000	/* Splice the pages from the iterator in sendmsg() */
 #define MSG_FASTOPEN	0x20000000	/* Send data in TCP SYN */
 #define MSG_CMSG_CLOEXEC 0x40000000	/* Set close_on_exec for file
 					   descriptor received through
diff --git a/tools/perf/trace/beauty/msg_flags.c b/tools/perf/trace/beauty/msg_flags.c
index 5cdebd7ece7e..aa9934020232 100644
--- a/tools/perf/trace/beauty/msg_flags.c
+++ b/tools/perf/trace/beauty/msg_flags.c
@@ -8,6 +8,9 @@
 #ifndef MSG_WAITFORONE
 #define MSG_WAITFORONE		   0x10000
 #endif
+#ifndef MSG_SPLICE_PAGES
+#define MSG_SPLICE_PAGES	0x8000000
+#endif
 #ifndef MSG_FASTOPEN
 #define MSG_FASTOPEN		0x20000000
 #endif


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

end of thread, other threads:[~2023-06-27  9:54 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-06-26 13:20 [PATCH net-next] tools: Fix MSG_SPLICE_PAGES build error in trace tools David Howells
2023-06-26 13:47 ` Matthieu Baerts
2023-06-26 13:50 ` David Howells
2023-06-26 13:56   ` Matthieu Baerts
2023-06-26 21:31     ` Namhyung Kim
2023-06-26 21:53       ` Jakub Kicinski
2023-06-26 21:59         ` Namhyung Kim
2023-06-27  9:53           ` Paolo Abeni

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