Hi Adam,
I was wrong in stating that only probes from "ld.so.1" are seen...
"dtrace -l -n pid[i]nnnn[/i]:::entry" gives me this:
ID PROVIDER MODULE FUNCTION NAME
45042 pid[i]nnnn[/i] ld.so.1 avl_walk
entry
45043 pid[i]nnnn[/i] ld.so.1 _cerror64
entry
...
45501 pid[i]nnnn[/i] ld.so.1 __systemcall6
entry
45502 pid[i]nnnn[/i] ld.so.1 _cerror
entry
45994 pid[i]nnnn[/i] LM1`ld.so.1 avl_walk
entry
45995 pid[i]nnnn[/i] LM1`ld.so.1 _cerror64
entry
...
46453 pid[i]nnnn[/i] LM1`ld.so.1 __systemcall6
entry
46454 pid[i]nnnn[/i] LM1`ld.so.1 _cerror
entry
46455 pid[i]nnnn[/i] libsocket.so.1 bindresvport
entry
46456 pid[i]nnnn[/i] libsocket.so.1 _nss_initf_bootparams
entry
...
46592 pid[i]nnnn[/i] libsocket.so.1 __xnet_sendto
entry
46593 pid[i]nnnn[/i] libsocket.so.1 __xnet_getsockopt
entry
46594 pid[i]nnnn[/i] libnsl.so.1 thr_get_storage
entry
46595 pid[i]nnnn[/i] libnsl.so.1 sig_mutex_lock
entry
...
48455 pid[i]nnnn[/i] libnsl.so.1 setmodulus_192_0
entry
48456 pid[i]nnnn[/i] libnsl.so.1 __gen_common_dhkeys_g
entry
48457 pid[i]nnnn[/i] librt.so.1 close
entry
48458 pid[i]nnnn[/i] librt.so.1 fork
entry
...
48544 pid[i]nnnn[/i] librt.so.1 sigtimedwait
entry
48545 pid[i]nnnn[/i] librt.so.1 sigqueue
entry
48546 pid[i]nnnn[/i] libpam.so.1 pam_trace_iname
entry
48547 pid[i]nnnn[/i] libpam.so.1 pam_settrace
entry
...
48587 pid[i]nnnn[/i] libpam.so.1 __pam_display_msg
entry
48588 pid[i]nnnn[/i] libpam.so.1 __pam_get_authtok
entry
48589 pid[i]nnnn[/i] libl.so.1 allprint
entry
48590 pid[i]nnnn[/i] libl.so.1 sprint
entry
...
48600 pid[i]nnnn[/i] libl.so.1 yyreject_e
entry
48601 pid[i]nnnn[/i] libl.so.1 yyless_e
entry
48602 pid[i]nnnn[/i] libdb2.so.1 sqlaprep
entry
48603 pid[i]nnnn[/i] libdb2.so.1
__1cUsqlaprep_parm_errors6FpnKsqlagi_inp_hpch_h_ entry
...
58214 pid[i]nnnn[/i] libdb2.so.1 __ex_deregister_at_exit
entry
58215 pid[i]nnnn[/i] libdb2.so.1 __cplus_fini_at_exit
entry
58216 pid[i]nnnn[/i] libcobrts.so.2 I_DYNLNKLOADER
entry
58217 pid[i]nnnn[/i] libcobrts.so.2 ld_dynlnk_ph_load
entry
...
60485 pid[i]nnnn[/i] libcobrts.so.2 freepath
entry
60486 pid[i]nnnn[/i] libcobrts.so.2 name_resolve
entry
60487 pid[i]nnnn[/i] libcobcrtn.so.2 _cv2p2b
entry
60488 pid[i]nnnn[/i] libcobcrtn.so.2 _cv3p2b
entry
...
61713 pid[i]nnnn[/i] libcobcrtn.so.2 CBL_FN_FRACTION0PART
entry
61714 pid[i]nnnn[/i] libcobcrtn.so.2 CBL_FN_SQRT
entry
61715 pid[i]nnnn[/i] libcobmisc.so.2 MFaslmf_getlic
entry
61716 pid[i]nnnn[/i] libcobmisc.so.2 aslmjmp
entry
...
61845 pid[i]nnnn[/i] libcobmisc.so.2 asodm_init_nls
entry
61846 pid[i]nnnn[/i] libcobmisc.so.2 asodm_nls_get
entry
61847 pid[i]nnnn[/i] libc.so.1 .stret1
entry
61848 pid[i]nnnn[/i] libc.so.1 .stret2
entry
...
64356 pid[i]nnnn[/i] libc.so.1 statvfs64
entry
64357 pid[i]nnnn[/i] libc.so.1 mmap64
entry
64358 pid[i]nnnn[/i] libaio.so.1 _aio_forkinit
entry
64359 pid[i]nnnn[/i] libaio.so.1 __uaio_init
entry
...
64431 pid[i]nnnn[/i] libaio.so.1 _aio_alloc_worker
entry
64432 pid[i]nnnn[/i] libaio.so.1 _aio_free_worker
entry
64433 pid[i]nnnn[/i] libmd5.so.1 MD5Init
entry
64434 pid[i]nnnn[/i] libmd5.so.1 MD5Update
entry
64435 pid[i]nnnn[/i] libmd5.so.1 MD5Final
entry
64436 pid[i]nnnn[/i] libmd5.so.1 md5_calc
entry
64437 pid[i]nnnn[/i] libmd5.so.1 MD5Transform
entry
64438 pid[i]nnnn[/i] libmd5.so.1 Encode
entry
64439 pid[i]nnnn[/i] libcmd.so.1 free_thr_data
entry
64440 pid[i]nnnn[/i] libcmd.so.1 deflt_init
entry
...
64458 pid[i]nnnn[/i] libcmd.so.1 sumepi
entry
64459 pid[i]nnnn[/i] libcmd.so.1 sumout
entry
64460 pid[i]nnnn[/i] libCrun.so.1 __1cH__CimplGxstackIget_prev6M_p1_
entry
64461 pid[i]nnnn[/i] libCrun.so.1
__1cH__CimplMget_cur_xptr6F_rpn0AGxstack__ entry
...
64618 pid[i]nnnn[/i] libCrun.so.1 __ex_deregister_at_exit
entry
64619 pid[i]nnnn[/i] libCrun.so.1 __cplus_fini_at_exit
entry
64620 pid[i]nnnn[/i] libdb2install.so.1
__1cbDsqloConstructFullPathFromLink6Fkpkc2kIkpc_v_ entry
64621 pid[i]nnnn[/i] libdb2install.so.1 sqloSetDB2InstallLogFacility
entry
64622 pid[i]nnnn[/i] libdb2install.so.1 sqloSetDB2InstallLogLevel
entry
64623 pid[i]nnnn[/i] libdb2install.so.1 sqloInstallPath
entry
64624 pid[i]nnnn[/i] libdb2install.so.1 sqleGetLevelInfo
entry
64625 pid[i]nnnn[/i] libdb2install.so.1 __ex_deregister_at_exit
entry
64626 pid[i]nnnn[/i] libdb2install.so.1 __cplus_fini_at_exit
entry
64627 pid[i]nnnn[/i] libdb2g11n.so.1
__1cRsqlnlsUnicodeConv6FIIpvppCLpnLsqlnlscvcbx_pb_i_ entry
64628 pid[i]nnnn[/i] libdb2g11n.so.1
__1cbDsqlnlsProcessSavedUnicodeChar6FkIpCpnLsqlnlscvcbx_1pb44_i_ entry
...
64787 pid[i]nnnn[/i] libdb2g11n.so.1 __ex_deregister_at_exit
entry
64788 pid[i]nnnn[/i] libdb2g11n.so.1 __cplus_fini_at_exit
entry
64789 pid[i]nnnn[/i] libdb2locale.so.1 __1cUlocaleCmpNoModifiers6Fpkc1_i_
entry
64790 pid[i]nnnn[/i] libdb2locale.so.1 __1cRsqloFindLocMapRow6Fpkc_pnElmap__
entry
...
64811 pid[i]nnnn[/i] libdb2locale.so.1 __ex_deregister_at_exit
entry
64812 pid[i]nnnn[/i] libdb2locale.so.1 __cplus_fini_at_exit
entry
64813 pid[i]nnnn[/i] libdb2osse.so.1 ecfErrorGetNumCodes
entry
64814 pid[i]nnnn[/i] libdb2osse.so.1 ecfGetNumProducts
entry
...
65355 pid[i]nnnn[/i] libdb2osse.so.1 __ex_deregister_at_exit
entry
65356 pid[i]nnnn[/i] libdb2osse.so.1 __cplus_fini_at_exit
entry
65357 pid[i]nnnn[/i] libdb2genreg.so.1 __1cKGenRegBase2t5B6M_v_
entry
65358 pid[i]nnnn[/i] libdb2genreg.so.1 __1cKGenRegBase2T5B6M_v_
entry
...
65488 pid[i]nnnn[/i] libdb2genreg.so.1 __ex_deregister_at_exit
entry
65489 pid[i]nnnn[/i] libdb2genreg.so.1 __cplus_fini_at_exit
entry
65490 pid[i]nnnn[/i] libdb2trcapi.so.1 __1cNchkCrashPoint6FHLH_b_
entry
65491 pid[i]nnnn[/i] libdb2trcapi.so.1 __1cKtraceCrash6FHLHpLLppv_v_
entry
...
65562 pid[i]nnnn[/i] libdb2trcapi.so.1 __ex_deregister_at_exit
entry
65563 pid[i]nnnn[/i] libdb2trcapi.so.1 __cplus_fini_at_exit
entry
65564 pid[i]nnnn[/i] libdb2dascmn.so.1 peekNLString
entry
65565 pid[i]nnnn[/i] libdb2dascmn.so.1 readNLString
entry
...
65729 pid[i]nnnn[/i] libdb2dascmn.so.1 __ex_deregister_at_exit
entry
65730 pid[i]nnnn[/i] libdb2dascmn.so.1 __cplus_fini_at_exit
entry
65731 pid[i]nnnn[/i] libm.so.1 default_errno_func
entry
65732 pid[i]nnnn[/i] libm.so.1 __libm_errno
entry
...
65789 pid[i]nnnn[/i] libm.so.1 __libm__rem_pio2m
entry
65790 pid[i]nnnn[/i] libm.so.1 __libm__k_tan
entry
65791 pid[i]nnnn[/i] libresolv.so.2 daemon
entry
65792 pid[i]nnnn[/i] libresolv.so.2 strsep
entry
...
66388 pid[i]nnnn[/i] libresolv.so.2 res_mkupdrec
entry
66389 pid[i]nnnn[/i] libresolv.so.2 res_freeupdrec
entry
66390 pid[i]nnnn[/i] libcobscreen.so.2 mF_addch
entry
66391 pid[i]nnnn[/i] libcobscreen.so.2 addtobuf
entry
...
66479 pid[i]nnnn[/i] libcobscreen.so.2 pop
entry
66480 pid[i]nnnn[/i] libcobscreen.so.2 jumpto
entry
66481 pid[i]nnnn[/i] libm.so.1 __acosf
entry
66482 pid[i]nnnn[/i] libm.so.1 __asinf
entry
...
66523 pid[i]nnnn[/i] libm.so.1 __tanl
entry
66524 pid[i]nnnn[/i] libm.so.1 __tanhl
entry
66525 pid[i]nnnn[/i] libkstat.so.1 kstat_zalloc
entry
66526 pid[i]nnnn[/i] libkstat.so.1 kstat_chain_free
entry
...
66532 pid[i]nnnn[/i] libkstat.so.1 kstat_lookup
entry
66533 pid[i]nnnn[/i] libkstat.so.1 kstat_data_lookup
entry
66534 pid[i]nnnn[/i] libkvm.so.1 fail
entry
66535 pid[i]nnnn[/i] libkvm.so.1 kvm_open
entry
...
66555 pid[i]nnnn[/i] libkvm.so.1 kvm_getcmd32
entry
66556 pid[i]nnnn[/i] libkvm.so.1 kvm_getcmd
entry
66557 pid[i]nnnn[/i] libdb2osse_db2.so.1 sqloPdbCommFncInit
entry
66558 pid[i]nnnn[/i] libdb2osse_db2.so.1 sqloPdbCommFncTerm
entry
...
66617 pid[i]nnnn[/i] libdb2osse_db2.so.1 __ex_deregister_at_exit
entry
66618 pid[i]nnnn[/i] libdb2osse_db2.so.1 __cplus_fini_at_exit
entry
66619 pid[i]nnnn[/i] libelf.so.1 _elf32_entsz
entry
66620 pid[i]nnnn[/i] libelf.so.1 elf32_fsize
entry
...
66860 pid[i]nnnn[/i] libelf.so.1 nlist
entry
66861 pid[i]nnnn[/i] libelf.so.1 _elf_findop
entry
66862 pid[i]nnnn[/i] libc_psr.so.1 memmove
entry
66863 pid[i]nnnn[/i] libc_psr.so.1 memcpy
entry
...
66869 pid[i]nnnn[/i] libc_psr.so.1 __urem64
entry
66870 pid[i]nnnn[/i] libc_psr.so.1 __rem64
entry
66871 pid[i]nnnn[/i] IBMOSauthclient.so
__1cbAosplugin_validate_password6Fpkcl1ll1lLppv_i_ entry
66872 pid[i]nnnn[/i] IBMOSauthclient.so
__1cZosplugin_validatePassword6Fpkcl1ll1l1l1lLppvppcpl_i_ entry
...
66881 pid[i]nnnn[/i] IBMOSauthclient.so __ex_deregister_at_exit
entry
66882 pid[i]nnnn[/i] IBMOSauthclient.so __cplus_fini_at_exit
entry
66883 pid[i]nnnn[/i] libmd5_psr.so.1 MD5Init
entry
66884 pid[i]nnnn[/i] libmd5_psr.so.1 MD5Update
entry
66885 pid[i]nnnn[/i] libmd5_psr.so.1 MD5Final
entry
66886 pid[i]nnnn[/i] libmd5_psr.so.1 md5_calc
entry
66887 pid[i]nnnn[/i] libmd5_psr.so.1 MD5Transform
entry
66888 pid[i]nnnn[/i] libmd5_psr.so.1 Encode
entry
66889 pid[i]nnnn[/i] libscf.so.1 scf_setup_error
entry
66890 pid[i]nnnn[/i] libscf.so.1 scf_set_error
entry
...
67170 pid[i]nnnn[/i] libscf.so.1 valid_encoded_value
entry
67171 pid[i]nnnn[/i] libscf.so.1 scf_validate_encoded_value
entry
67172 pid[i]nnnn[/i] libdoor.so.1 _door_init
entry
67173 pid[i]nnnn[/i] libdoor.so.1 door_unref_func
entry
...
67184 pid[i]nnnn[/i] libdoor.so.1 door_create_func
entry
67185 pid[i]nnnn[/i] libdoor.so.1 door_create_server
entry
67186 pid[i]nnnn[/i] libuutil.so.1 avl_walk
entry
67187 pid[i]nnnn[/i] libuutil.so.1 avl_first
entry
...
67292 pid[i]nnnn[/i] libuutil.so.1 uu_strtoint
entry
67293 pid[i]nnnn[/i] libuutil.so.1 uu_strtouint
entry
67294 pid[i]nnnn[/i] libmp.so.2 mp_gcd
entry
67295 pid[i]nnnn[/i] libmp.so.2 mp_invert
entry
...
67329 pid[i]nnnn[/i] libmp.so.2 mp_mtox
entry
67330 pid[i]nnnn[/i] libmp.so.2 mp_mfree
entry
67331 pid[i]nnnn[/i] libicclib.so METAC_CRYPTO_set_mem_ex_functions
entry
67332 pid[i]nnnn[/i] libicclib.so METAC_CRYPTO_get_mem_ex_functions
entry
...
67490 pid[i]nnnn[/i] libicclib.so METAC_fips_dss_prng_ctx_free
entry
67491 pid[i]nnnn[/i] libicclib.so METAC_fips_dss_prng_add_seed
entry
67492 pid[i]nnnn[/i] libcrypto.so.0.9.7 C97C_CRYPTO_get_new_lockid
entry
67493 pid[i]nnnn[/i] libcrypto.so.0.9.7 C97C_CRYPTO_num_locks
entry
...
69819 pid[i]nnnn[/i] libcrypto.so.0.9.7 C97C_KRB5_AUTHENT_new
entry
69820 pid[i]nnnn[/i] libcrypto.so.0.9.7 C97C_KRB5_AUTHENT_free
entry
Obviously there's more than only "ld.so.1".
Unfortunately "dtrace -l -n pid[i]nnnn[/i]:a.out::entry" gives me this:
dtrace: failed to match pid[i]nnnn[/i]:stub.exe::entry: No probe matches
description
while "nm stub.exe | fgrep FUNC" gives me this:
[95] | 139988| 0|FUNC |GLOB |0 |UNDEF |_exit
[135] | 74256| 56|FUNC |GLOB |0 |11 |_fini
[108] | 140288| 0|FUNC |WEAK |0 |UNDEF |_get_exit_frame_monitor
[130] | 74200| 56|FUNC |GLOB |0 |10 |_init
[154] | 140264| 0|FUNC |GLOB |0 |UNDEF |_mFexeload
[117] | 140276| 0|FUNC |GLOB |0 |UNDEF |_mFexeunload
[119] | 69064| 288|FUNC |GLOB |0 |9 |_start
[146] | 69368| 804|FUNC |GLOB |0 |9 |action
[137] | 70192| 348|FUNC |GLOB |0 |9 |action2
[139] | 70560| 2360|FUNC |GLOB |0 |9 |action3
[109] | 139964| 0|FUNC |GLOB |0 |UNDEF |atexit
[106] | 140120| 0|FUNC |GLOB |0 |UNDEF |atoi
[136] | 140012| 0|FUNC |GLOB |0 |UNDEF |bdog_changemystate
[113] | 140156| 0|FUNC |GLOB |0 |UNDEF |bdog_changemystate2
[110] | 140240| 0|FUNC |GLOB |0 |UNDEF |bdog_close
[158] | 140180| 0|FUNC |GLOB |0 |UNDEF |bdog_onlywithparent
[156] | 140168| 0|FUNC |GLOB |0 |UNDEF |bdog_open
[131] | 72936| 204|FUNC |GLOB |0 |9 |berta
[115] | 140084| 0|FUNC |GLOB |0 |UNDEF |close
[148] | 140228| 0|FUNC |GLOB |0 |UNDEF |cyCloseMPX
[124] | 140216| 0|FUNC |GLOB |0 |UNDEF |cyLoopMPX
[127] | 140204| 0|FUNC |GLOB |0 |UNDEF |cyOpenStubMPX
[134] | 139976| 0|FUNC |GLOB |0 |UNDEF |exit
[121] | 140000| 0|FUNC |GLOB |0 |UNDEF |getenv
[152] | 73160| 444|FUNC |GLOB |0 |9 |hugo
[141] | 73624| 576|FUNC |GLOB |0 |9 |main
[140] | 140144| 0|FUNC |GLOB |0 |UNDEF |memcmp
[129] | 140096| 0|FUNC |GLOB |0 |UNDEF |memcpy
[93] | 140108| 0|FUNC |GLOB |0 |UNDEF |memset
[122] | 140036| 0|FUNC |GLOB |0 |UNDEF |mepkid_call
[112] | 140192| 0|FUNC |GLOB |0 |UNDEF |mepkid_init
[138] | 140252| 0|FUNC |GLOB |0 |UNDEF |puts
[89] | 140072| 0|FUNC |GLOB |0 |UNDEF |recv
[116] | 140060| 0|FUNC |GLOB |0 |UNDEF |send
[114] | 140048| 0|FUNC |GLOB |0 |UNDEF |setjmp
[128] | 140132| 0|FUNC |GLOB |0 |UNDEF |sprintf
[153] | 140024| 0|FUNC |GLOB |0 |UNDEF |strcmp
>From this I conclude that the needed symbols aren't stripped from our
>module(s).
So I expect DTrace to "see" at least functions "main", "action", etc.
When I do similar checks with a hello-world program in the global zone only
everything behaves as expected.
"mdb -p [i]nnnn[/i]" followed by "::objects" gives me this:
> ::objects
BASE LIMIT SIZE NAME
10000 14000 4000 [i]path-to-our-modules[/i]/stub.exe
ff3b0000 ff3de000 2e000 /lib/ld.so.1
ff380000 ff386000 6000 [i]path-to-our-modules[/i]/syk006.so
ff360000 ff366000 6000 [i]path-to-our-modules[/i]/kidinit.so
ff330000 ff340000 10000 [i]path-to-our-modules[/i]/kidlib.so
ff300000 ff306000 6000 [i]path-to-our-modules[/i]/ezasoket.so
ff2e0000 ff2e2000 2000 [i]path-to-our-modules[/i]/syhtsp.so
ff2b0000 ff2be000 e000 [i]path-to-our-modules[/i]/blib.so
ff290000 ff294000 4000 [i]path-to-our-modules[/i]/sykcon.so
ff3a0000 ff3a2000 2000 /lib/libdl.so.1
ff250000 ff25c000 c000 /lib/libsocket.so.1
ff180000 ff212000 92000 /lib/libnsl.so.1
ff160000 ff166000 6000 /lib/librt.so.1
ff140000 ff148000 8000 /lib/libpam.so.1
ff120000 ff122000 2000 /usr/lib/libl.so.1
ff288000 ff28c000 4000 /lib/libthread.so.1
ff278000 ff27c000 4000 /lib/libpthread.so.1
fd400000 fd800000 400000 /opt/IBM/db2/V9.1/lib32/libdb2.so.1
ff000000 ff092000 92000 /opt/microfocus/cobol/lib/libcobrts.so.2
ff0c0000 ff104000 44000 /opt/microfocus/cobol/lib/libcobcrtn.so.2
fefb0000 fefd4000 24000 /opt/microfocus/cobol/lib/libcobmisc.so.2
fd300000 fd3d8000 d8000 /lib/libc.so.1
fef80000 fef88000 8000 /lib/libaio.so.1
fef60000 fef62000 2000 /lib/libmd5.so.1
fd2e0000 fd2e4000 4000 /lib/libcmd.so.1
fd2a0000 fd2ac000 c000 /usr/lib/libCrun.so.1
fd280000 fd284000 4000 /opt/IBM/db2/V9.1/lib32/libdb2install.so.1
fcc00000 fcc6e000 6e000 /opt/IBM/db2/V9.1/lib32/libdb2g11n.so.1
fd250000 fd266000 16000 /opt/IBM/db2/V9.1/lib32/libdb2locale.so.1
fc900000 fcb46000 246000 /opt/IBM/db2/V9.1/lib32/libdb2osse.so.1
fcbb0000 fcbe4000 34000 /opt/IBM/db2/V9.1/lib32/libdb2genreg.so.1
fc8e0000 fc8e8000 8000 /opt/IBM/db2/V9.1/lib32/libdb2trcapi.so.1
fc8b0000 fc8ca000 1a000 /opt/IBM/db2/V9.1/lib32/libdb2dascmn.so.1
...
So mdb sees not only the "standard"-libraries, but also our modules, which
DTrace seems to refuse
Any suggestions are welcome.
Thx,
Thomas
--
This message posted from opensolaris.org
_______________________________________________
dtrace-discuss mailing list
[email protected]