* Re: [PATCH 3/4] SUNRPC: Replace dprintk() call site in xs_data_ready [not found] ` <9FDA46D8-4D6E-49B0-A583-D0FF739111BF@oracle.com> @ 2022-07-22 20:22 ` Steven Rostedt 2022-07-25 15:49 ` Arnaldo Carvalho de Melo 0 siblings, 1 reply; 3+ messages in thread From: Steven Rostedt @ 2022-07-22 20:22 UTC (permalink / raw) To: Chuck Lever III Cc: Trond Myklebust, Anna Schumaker, Linux NFS Mailing List, LKML, Arnaldo Carvalho de Melo, Ingo Molnar, Jiri Olsa, Namhyung Kim, linux-perf-users [ Added the user space perf folks ] On Fri, 22 Jul 2022 18:45:30 +0000 Chuck Lever III <chuck.lever@oracle.com> wrote: > >> +TRACE_EVENT(xs_data_ready, > >> + TP_PROTO( > >> + const struct rpc_xprt *xprt > >> + ), > >> + > >> + TP_ARGS(xprt), > >> + > >> + TP_STRUCT__entry( > >> + __sockaddr(addr, xprt->addrlen) > >> + ), > >> + > >> + TP_fast_assign( > >> + __assign_sockaddr(addr, &xprt->addr, xprt->addrlen); > >> + ), > >> + > >> + TP_printk("peer=%pISpc", __get_sockaddr(addr)) > > > > NACK. Please resolve and store the string up front instead of storing > > the sockaddr. Most versions of perf can't resolve those kernel-specific > > %p printks and just end up barfing on them. > > Interesting. We added get_sockaddr() to avoid this issue in > trace-cmd. Sounds like perf needs to be fixed up too, or > maybe this is another case of having an old libtraceevent? > > Meanwhile, I can revert this back to the old way of handling > presentation addresses. > Hmm, I thought that perf now uses the external libtraceevent. Perhaps it hasn't been updated to the latest release that has the ability to parse this. Maybe just install git://git.kernel.org/pub/scm/libs/libtrace/libtraceevent.git ? -- Steve ^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH 3/4] SUNRPC: Replace dprintk() call site in xs_data_ready 2022-07-22 20:22 ` [PATCH 3/4] SUNRPC: Replace dprintk() call site in xs_data_ready Steven Rostedt @ 2022-07-25 15:49 ` Arnaldo Carvalho de Melo 2022-07-25 16:06 ` Steven Rostedt 0 siblings, 1 reply; 3+ messages in thread From: Arnaldo Carvalho de Melo @ 2022-07-25 15:49 UTC (permalink / raw) To: Steven Rostedt Cc: Chuck Lever III, Trond Myklebust, Anna Schumaker, Linux NFS Mailing List, LKML, Ingo Molnar, Jiri Olsa, Namhyung Kim, linux-perf-users Em Fri, Jul 22, 2022 at 04:22:12PM -0400, Steven Rostedt escreveu: > [ Added the user space perf folks ] > > On Fri, 22 Jul 2022 18:45:30 +0000 > Chuck Lever III <chuck.lever@oracle.com> wrote: > > > >> +TRACE_EVENT(xs_data_ready, > > >> + TP_PROTO( > > >> + const struct rpc_xprt *xprt > > >> + ), > > >> + > > >> + TP_ARGS(xprt), > > >> + > > >> + TP_STRUCT__entry( > > >> + __sockaddr(addr, xprt->addrlen) > > >> + ), > > >> + > > >> + TP_fast_assign( > > >> + __assign_sockaddr(addr, &xprt->addr, xprt->addrlen); > > >> + ), > > >> + > > >> + TP_printk("peer=%pISpc", __get_sockaddr(addr)) > > > > > > NACK. Please resolve and store the string up front instead of storing > > > the sockaddr. Most versions of perf can't resolve those kernel-specific > > > %p printks and just end up barfing on them. > > > > Interesting. We added get_sockaddr() to avoid this issue in > > trace-cmd. Sounds like perf needs to be fixed up too, or > > maybe this is another case of having an old libtraceevent? > > > > Meanwhile, I can revert this back to the old way of handling > > presentation addresses. > > > > Hmm, I thought that perf now uses the external libtraceevent. > > Perhaps it hasn't been updated to the latest release that has the ability > to parse this. > > Maybe just install > > git://git.kernel.org/pub/scm/libs/libtrace/libtraceevent.git To use it one has to use: make -C tools/perf LIBTRACEEVENT_DYNAMIC=1 Then we get it linked with libtraceevent-devel: $ ldd ~/bin/perf | grep traceevent libtraceevent.so.1 => /lib64/libtraceevent.so.1 (0x00007faa50f93000) $ Perhaps it'd be better to check if libtracevent-devel is installed and use it, falling back to tools/lib/traceevent/ and then adding a warning that the in-tree codebase is being used? - Arnaldo ^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH 3/4] SUNRPC: Replace dprintk() call site in xs_data_ready 2022-07-25 15:49 ` Arnaldo Carvalho de Melo @ 2022-07-25 16:06 ` Steven Rostedt 0 siblings, 0 replies; 3+ messages in thread From: Steven Rostedt @ 2022-07-25 16:06 UTC (permalink / raw) To: Arnaldo Carvalho de Melo Cc: Chuck Lever III, Trond Myklebust, Anna Schumaker, Linux NFS Mailing List, LKML, Ingo Molnar, Jiri Olsa, Namhyung Kim, linux-perf-users On Mon, 25 Jul 2022 12:49:20 -0300 Arnaldo Carvalho de Melo <acme@kernel.org> wrote: > Perhaps it'd be better to check if libtracevent-devel is installed and > use it, falling back to tools/lib/traceevent/ and then adding a warning > that the in-tree codebase is being used? Yeah, this is the way trace-cmd went. For a few releases, it would just warn that it couldn't find the system libraries, and then fall back to the internals, and then it finally just removed the internals and failed with a message stating where to get the necessary libraries. -- Steve ^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2022-07-25 16:07 UTC | newest] Thread overview: 3+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- [not found] <165851065336.361126.17865870911497306083.stgit@morisot.1015granger.net> [not found] ` <165851074247.361126.17205394769981595871.stgit@morisot.1015granger.net> [not found] ` <66371b9db4210fe853e98a8ec68b0f780ba886af.camel@hammerspace.com> [not found] ` <9FDA46D8-4D6E-49B0-A583-D0FF739111BF@oracle.com> 2022-07-22 20:22 ` [PATCH 3/4] SUNRPC: Replace dprintk() call site in xs_data_ready Steven Rostedt 2022-07-25 15:49 ` Arnaldo Carvalho de Melo 2022-07-25 16:06 ` Steven Rostedt
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).