revert r248644 because of the regression for usdt probes
USDT probes are advertised to kernel by initialization code with atrribute((constructor))). It seems that on Solaris the .init-ish code of the main object is executed before RD_PREINIT point is hit. On FreeBSD that is not the case. And because on FreeBSD there is no other well-defined point between RD_PREINIT and main() we have to parse a DTrace script when main is hit, for time being. A footnote: currently we actually post RD_POSTINIT event, but that's a bug because the event is triggered by hitting r_debug_state which happens before any init code is executed. Reported by: markj
This commit is contained in:
parent
7f168e5ddb
commit
5d33cbbf9d
@ -1130,7 +1130,7 @@ alloc:
|
||||
#if defined(sun)
|
||||
dtp->dt_prcmode = DT_PROC_STOP_PREINIT;
|
||||
#else
|
||||
dtp->dt_prcmode = DT_PROC_STOP_POSTINIT;
|
||||
dtp->dt_prcmode = DT_PROC_STOP_MAIN;
|
||||
#endif
|
||||
dtp->dt_linkmode = DT_LINK_KERNEL;
|
||||
dtp->dt_linktype = DT_LTYP_ELF;
|
||||
|
Loading…
x
Reference in New Issue
Block a user