public inbox for systemtap@sourceware.org
 help / color / mirror / Atom feed
* [Bug runtime/30987] New: Addition of strlcopy and strlcat to glibc prevents compilation of dyninst based systemtap instrumentation
@ 2023-10-20 14:42 wcohen at redhat dot com
  2023-10-24 18:15 ` [Bug runtime/30987] " wcohen at redhat dot com
  2023-10-25 16:00 ` wcohen at redhat dot com
  0 siblings, 2 replies; 3+ messages in thread
From: wcohen at redhat dot com @ 2023-10-20 14:42 UTC (permalink / raw)
  To: systemtap

https://sourceware.org/bugzilla/show_bug.cgi?id=30987

            Bug ID: 30987
           Summary: Addition of strlcopy and strlcat to glibc prevents
                    compilation of dyninst based systemtap instrumentation
           Product: systemtap
           Version: unspecified
            Status: NEW
          Severity: normal
          Priority: P2
         Component: runtime
          Assignee: systemtap at sourceware dot org
          Reporter: wcohen at redhat dot com
  Target Milestone: ---

On Fedora rawhide the systemtap "make installcheck" tests building
instrumentation using dyninst fail to compile because glibc has added strlcpy
and strlcat to the /usr/include/string.h file and those declarations conflict
with the static inlined functioned in runtime/dynsint/linux_defs.h.  This is
causing over 400 failures on rawhide for the "make installcheck".  Can
replicate with:

 sudo make installcheck RUNTESTFLAGS="systemtap.base/ret-uprobe-var.exp"


And see following in the output:

FAIL: ret-uprobe-var: TEST 1: @var in return probes should not be stale (4.1+)
(dyninst): stderr: string should be "", but got "In file included from
/home/wcohen/systemtap_write/install/share/systemtap/runtime/dyninst/runtime.h:92,
                 from
/home/wcohen/systemtap_write/install/share/systemtap/runtime/runtime.h:30,
                 from
/tmp/stapDni8D1/stap_e18df6414ee02f320dd0e235e95dc3d9_2203_src.c:21:
/home/wcohen/systemtap_write/install/share/systemtap/runtime/dyninst/linux_defs.h:100:22:
error: static declaration of 'strlcpy' follows non-static declaration
  100 | static inline size_t strlcpy(char *__restrict dest, const char
*__restrict src, size_t size)
      |                      ^~~~~~~
In file included from
/home/wcohen/systemtap_write/install/share/systemtap/runtime/dyninst/runtime.h:22:
/usr/include/string.h:506:15: note: previous declaration of 'strlcpy' with type
'size_t(char * restrict,  const char * restrict,  size_t)' {aka 'long unsigned
int(char * restrict,  const char * restrict,  long unsigned int)'}
  506 | extern size_t strlcpy (char *__restrict __dest,
      |               ^~~~~~~
/home/wcohen/systemtap_write/install/share/systemtap/runtime/dyninst/linux_defs.h:112:22:
error: static declaration of 'strlcat' follows non-static declaration
  112 | static inline size_t strlcat(char *__restrict dest, const char
*__restrict src, size_t count)
      |                      ^~~~~~~
/usr/include/string.h:512:15: note: previous declaration of 'strlcat' with type
'size_t(char * restrict,  const char * restrict,  size_t)' {aka 'long unsigned
int(char * restrict,  const char * restrict,  long unsigned int)'}
  512 | extern size_t strlcat (char *__restrict __dest,
      |               ^~~~~~~
WARNING: gcc exited with status: 1
Pass 4: compilation failed.  [man error::pass4]
"

-- 
You are receiving this mail because:
You are the assignee for the bug.

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

end of thread, other threads:[~2023-10-25 16:00 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-10-20 14:42 [Bug runtime/30987] New: Addition of strlcopy and strlcat to glibc prevents compilation of dyninst based systemtap instrumentation wcohen at redhat dot com
2023-10-24 18:15 ` [Bug runtime/30987] " wcohen at redhat dot com
2023-10-25 16:00 ` wcohen at redhat dot com

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).