[DTrace-devel] DTrace-ized 5.7.6 pushed to github

Nick Alcock nick.alcock at oracle.com
Thu Jun 25 17:13:38 PDT 2020


Tests passed on x86-64 and AArch64 with https://github.com/oracle/dtrace-utils
(master branch).

Pushed to <https://github.com/oracle/dtrace-linux-kernel> as a branch
with v1 in the name.

This push is of DTrace v1, with a specialized kernel module.


Changes since 5.7 are all waitfd-related: a new pollable proc that needs
a fixed_event adding to it, and new diagnostics that (incorrectly) warn
that unistd.h is leaking CONFIG_DTRACE to userspace. Oh well, I guess
everyone will get __NR_waitfd even if they have it compiled out from now
on. (That's what other syscalls do anyway.)

 1:  8ca65629affb =  1:  02cbf45ae1c9 ctf: generate CTF information for the kernel
 2:  ed32a65cc400 =  2:  726b33c201a7 kallsyms: introduce new /proc/kallmodsyms including builtin modules too
 3:  680d360bc21a !  3:  fdb4b83ae5de waitfd: new syscall implementing waitpid() over fds
    @@ fs/io_uring.c: static void __io_queue_proc(struct io_poll_iocb *poll, struct io_
      
      static void io_async_queue_proc(struct file *file, struct wait_queue_head *head,
     -			       struct poll_table_struct *p)
    -+			       struct poll_table_struct *p,
    -+			       unsigned long fixed_event)
    ++				struct poll_table_struct *p,
    ++				unsigned long fixed_event)
      {
      	struct io_poll_table *pt = container_of(p, struct io_poll_table, pt);
      
    @@ include/linux/syscalls.h: long ksys_old_shmctl(int shmid, int cmd, struct shmid_
      #endif
     
      ## include/uapi/asm-generic/unistd.h ##
    -@@ include/uapi/asm-generic/unistd.h: __SYSCALL(__NR_pidfd_getfd, sys_pidfd_getfd)
    - #undef __NR_syscalls
    - #define __NR_syscalls 439
    +@@ include/uapi/asm-generic/unistd.h: __SYSCALL(__NR_openat2, sys_openat2)
    + #define __NR_pidfd_getfd 438
    + __SYSCALL(__NR_pidfd_getfd, sys_pidfd_getfd)
      
    -+#ifdef CONFIG_DTRACE
     +#define __NR_waitfd 473
     +__SYSCALL(__NR_waitfd, sys_waitfd)
     +
    -+#undef __NR_syscalls
    + #undef __NR_syscalls
    +-#define __NR_syscalls 439
     +#define __NR_syscalls 474
    -+#endif
    -+
    + 
      /*
       * 32 bit systems traditionally used different
    -  * syscalls for off_t and loff_t arguments, while
     
      ## init/Kconfig ##
     @@ init/Kconfig: config EPOLL
 4:  8954eec92287 =  4:  95355e599de8 dtrace: core and x86
 5:  54886d73404f =  5:  27d0341e561a dtrace: modular components and x86 support
 6:  bc17d123f46a =  6:  40d17fc1255f dtrace: systrace provider core components
 7:  6bc0c9703163 =  7:  a8bc8d69aea4 dtrace: systrace provider
 8:  9cba1fe4023d =  8:  eb9c2b35d389 dtrace: sdt provider core components
 9:  87babf804acd =  9:  fd21d1c8d3bb dtrace: sdt provider for x86
10:  396631436184 = 10:  2eb6ca182649 dtrace: profile provider and test probe core components
11:  79f2aa32b4fd = 11:  d09d1fd63e95 dtrace: profile and tick providers built on cyclics
12:  5c3b6eb3be27 = 12:  f405f48e9d04 dtrace: USDT and pid provider core and x86 components
13:  ce49200c458a = 13:  9a2b5b341826 dtrace: USDT and pid providers
14:  2e9c6ed2e640 = 14:  759a6fc0967f dtrace: function boundary tracing (FBT) core and x86 components
15:  5c25d8403521 = 15:  b95e7012d291 dtrace: fbt provider, modular components
16:  32cafea3dcfc = 16:  0048b703db7b dtrace, arm: arm64 port
17:  549276ea98ab = 17:  e10d8485c80c dtrace: add SDT probes
18:  4800f5460cf5 = 18:  fe4e9bdd6325 dtrace: add rcu_irq_exit and rcu_nmi_exit_common to FBT blacklist
19:  e2b412691379 = 19:  d22ca7999ce6 dtrace: add sample script for building DTrace on Fedora
20:  55f507c4c80c = 20:  3fe011061a35 locking: publicize mutex_owner and mutex_owned again




More information about the DTrace-devel mailing list