public inbox for systemtap@sourceware.org
 help / color / mirror / Atom feed
* patches for turning tapsets wrt kernel configuration available
@ 2018-08-02 18:08 Victor Kamensky
  2018-08-02 18:21 ` David Smith
  0 siblings, 1 reply; 2+ messages in thread
From: Victor Kamensky @ 2018-08-02 18:08 UTC (permalink / raw)
  To: systemtap; +Cc: David Smith

Hi Guys,

Question, do you guys open to accepting patches that would turn available
tapset wrt available kernel configuration.

Here is an example of a problem that I've run into on some of our
machines. Probe 'probe nd_syscall.*' failed as follows:

semantic error: while resolving probe point: identifier 'kprobe' at 
/nobackup/kamensky/20180731/binos/linkfarm/sysroot-x86_64_cge7/usr/share/systemtap/tapset/linux/sysc_mq_open.stp:80:30
         source: probe __nd_syscall.mq_open = 
kprobe.function("sys_mq_open")

it turns out my kernel does not enable CONFIG_POSIX_MQUEUE so sys_mq_open
function does not exist in kernel. Fix is obvious: to add proper
'%( CONFIG_POSIX_MQUEUE == "[ym]" %?' in tapset/linux/sysc_mq_open.stp.
But I wonder whether you guys would accept changes like this. Just wanted
to check before I spend time on making clean patch. I suspect there are
more issues like this, which may not be visible on regular distros like
RedHat and Fedora where system running big fully configured kernel.

Thanks,
Victor

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

* Re: patches for turning tapsets wrt kernel configuration available
  2018-08-02 18:08 patches for turning tapsets wrt kernel configuration available Victor Kamensky
@ 2018-08-02 18:21 ` David Smith
  0 siblings, 0 replies; 2+ messages in thread
From: David Smith @ 2018-08-02 18:21 UTC (permalink / raw)
  To: Victor Kamensky; +Cc: systemtap

We'd be fine with taking patches like that - except using
CONFIG_POSIX_MQUEUE is probably the wrong way to go. Instead, make
that probe optional. From looking at sysc_mq_open.stp, I see that:

====
probe syscall.mq_open = dw_syscall.mq_open !, nd_syscall.mq_open ? {}
probe dw_syscall.mq_open = __syscall.mq_open,
                        kernel.function("compat_sys_mq_open").call ?
probe __syscall.mq_open = kernel.function("sys_mq_open").call
probe nd_syscall.mq_open = __nd_syscall.mq_open,
                           __nd_syscall.compat_mq_open ?
probe __nd_syscall.mq_open = kprobe.function("sys_mq_open")
====

To tell you the truth, I thought optional-ness was more 'sticky' than
it appears to be. But, anyway the fix should be adding '?' to the
first items in the dw_syscall.mq_open and nd_syscall.mq_open aliases.

On Thu, Aug 2, 2018 at 1:08 PM Victor Kamensky <kamensky@cisco.com> wrote:
>
> Hi Guys,
>
> Question, do you guys open to accepting patches that would turn available
> tapset wrt available kernel configuration.
>
> Here is an example of a problem that I've run into on some of our
> machines. Probe 'probe nd_syscall.*' failed as follows:
>
> semantic error: while resolving probe point: identifier 'kprobe' at
> /nobackup/kamensky/20180731/binos/linkfarm/sysroot-x86_64_cge7/usr/share/systemtap/tapset/linux/sysc_mq_open.stp:80:30
>          source: probe __nd_syscall.mq_open =
> kprobe.function("sys_mq_open")
>
> it turns out my kernel does not enable CONFIG_POSIX_MQUEUE so sys_mq_open
> function does not exist in kernel. Fix is obvious: to add proper
> '%( CONFIG_POSIX_MQUEUE == "[ym]" %?' in tapset/linux/sysc_mq_open.stp.
> But I wonder whether you guys would accept changes like this. Just wanted
> to check before I spend time on making clean patch. I suspect there are
> more issues like this, which may not be visible on regular distros like
> RedHat and Fedora where system running big fully configured kernel.
>
> Thanks,
> Victor
>


-- 
David Smith
Associate Manager
Red Hat

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

end of thread, other threads:[~2018-08-02 18:21 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-08-02 18:08 patches for turning tapsets wrt kernel configuration available Victor Kamensky
2018-08-02 18:21 ` David Smith

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 read-only IMAP folder(s) and NNTP newsgroup(s).