Re: dtrace and kernel modules
On 13/07/2016 1:14 AM, Mark Johnston wrote: On Thu, Jul 07, 2016 at 12:51:52PM +0800, Julian Elischer wrote: I'm specifically interested in the case of kernel modules that instantiate new syscalls. How much support do we have for that? In the one example in our sources of a kld with a syscall (kgssapi.ko) dtrace seems to find regular function entrypoints but not the syscall. root@porridge:/usr/src # dtrace -n ":kgssapi::entry {}" dtrace: description ':kgssapi::entry ' matched 138 probes ^C root@porridge:/usr/src # dtrace -n "syscall:kgssapi::entry {}" dtrace: invalid probe specifier syscall:kgssapi::entry {}: probe description syscall:kgssapi::entry does not match any probes root@porridge:/usr/src # Do we have plans to support dynamic syscall support? I don't know of any plans to add support. It would be fairly straightforward to dynamically create syscall probes using a hook or eventhandler in syscall_register(), but getting argument type info would be more difficult. Right now, argument types are specified by code generated by makesyscalls.sh using the types in syscalls.master. I'm not sure how one might obtain these types for dynamically-registered syscalls. yes that is the tricky part for sure. for now function calls is probably enough because every syscall ends up calling a function somewhere :-) ___ freebsd-current@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/freebsd-current To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"
Re: dtrace and kernel modules
On Thu, Jul 07, 2016 at 12:51:52PM +0800, Julian Elischer wrote: > I'm specifically interested in the case of kernel modules that > instantiate new syscalls. > > How much support do we have for that? In the one example in our > sources of a kld with a syscall (kgssapi.ko) dtrace seems to find > regular function entrypoints but not the syscall. > > > root@porridge:/usr/src # dtrace -n ":kgssapi::entry {}" > dtrace: description ':kgssapi::entry ' matched 138 probes > ^C > > root@porridge:/usr/src # dtrace -n "syscall:kgssapi::entry {}" > dtrace: invalid probe specifier syscall:kgssapi::entry {}: probe > description syscall:kgssapi::entry does not match any probes > root@porridge:/usr/src # > > > Do we have plans to support dynamic syscall support? I don't know of any plans to add support. It would be fairly straightforward to dynamically create syscall probes using a hook or eventhandler in syscall_register(), but getting argument type info would be more difficult. Right now, argument types are specified by code generated by makesyscalls.sh using the types in syscalls.master. I'm not sure how one might obtain these types for dynamically-registered syscalls. ___ freebsd-current@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/freebsd-current To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"
dtrace and kernel modules
I'm specifically interested in the case of kernel modules that instantiate new syscalls. How much support do we have for that? In the one example in our sources of a kld with a syscall (kgssapi.ko) dtrace seems to find regular function entrypoints but not the syscall. root@porridge:/usr/src # dtrace -n ":kgssapi::entry {}" dtrace: description ':kgssapi::entry ' matched 138 probes ^C root@porridge:/usr/src # dtrace -n "syscall:kgssapi::entry {}" dtrace: invalid probe specifier syscall:kgssapi::entry {}: probe description syscall:kgssapi::entry does not match any probes root@porridge:/usr/src # Do we have plans to support dynamic syscall support? ___ freebsd-current@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/freebsd-current To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"