Hi, Searched for similar errors and nothing came up. Anybody know what this is? When using aggregate stddev, and then trying to print it at END, using printa, I get this error: dtrace: processing aborted: Invalid return value from callback avg works fine. Tried on two recent builds of solaris (build 89 and build 94), on two difference sparc systems. Here''s a sample script: #!/usr/sbin/dtrace -Fs profile-1000 { @a["dev" ]= stddev(timestamp); } END { printa("%3s\t%@d\n", @a); } -- This message posted from opensolaris.org
On Thu, Jul 24, 2008 at 2:12 PM, Chris Kiick <chris.kiick at sun.com> wrote:> Hi, > Searched for similar errors and nothing came up. Anybody know what this is? > When using aggregate stddev, and then trying to print it at END, using printa, I get this error: > dtrace: processing aborted: Invalid return value from callbackI''ll look at this when I get a chance (unless someone else gets there first.) Chad
On Thu, Jul 24, 2008 at 12:12:01PM -0700, Chris Kiick wrote:> Hi, > Searched for similar errors and nothing came up. Anybody know what this is? > When using aggregate stddev, and then trying to print it at END, using printa, I get this error: > dtrace: processing aborted: Invalid return value from callback > avg works fine. Tried on two recent builds of solaris (build 89 and build 94), on two difference sparc systems. > Here''s a sample script: >Easier test case: --- cut here --- #!/usr/sbin/dtrace -Fs BEGIN { @ = stddev(100); @ = stddev(200); @ = stddev(300); printa("%@d", @); } --- cut here --- Looks like we''re missing a printf handler for stddev: usr/src/lib/libdtrace/common/dt_printf.c: ... 1213 static int 1214 pfprint_average(dtrace_hdl_t *dtp, FILE *fp, const char *format, 1215 const dt_pfargd_t *pfd, const void *addr, size_t size, uint64_t normal) 1216 { 1217 const uint64_t *data = addr; 1218 1219 if (size != sizeof (uint64_t) * 2) 1220 return (dt_set_errno(dtp, EDT_DMISMATCH)); 1221 1222 return (dt_printf(dtp, fp, format, 1223 data[0] ? data[1] / normal / data[0] : 0)); 1224 } ... 1242 static int 1243 dt_printf_format(dtrace_hdl_t *dtp, FILE *fp, const dt_pfargv_t *pfv, 1244 const dtrace_recdesc_t *recs, uint_t nrecs, const void *buf, 1245 size_t len, const dtrace_aggdata_t **aggsdata, int naggvars) 1246 { ... 1414 switch (rec->dtrd_action) { 1415 case DTRACEAGG_AVG: 1416 func = pfprint_average; 1417 break; ... 1430 default: 1431 func = pfc->pfc_print; 1432 break; 1433 } We need a matching entry for stddev. Cheers, - jonathan
On Fri, Jul 25, 2008 at 2:31 PM, Jonathan Adams <jonathan.adams at sun.com> wrote:> On Thu, Jul 24, 2008 at 12:12:01PM -0700, Chris Kiick wrote: >> Hi, >> Searched for similar errors and nothing came up. Anybody know what this is? >> When using aggregate stddev, and then trying to print it at END, using printa, I get this error: >> dtrace: processing aborted: Invalid return value from callback >> avg works fine. Tried on two recent builds of solaris (build 89 and build 94), on two difference sparc systems. >> Here''s a sample script: >> > > Easier test case: > > --- cut here --- > #!/usr/sbin/dtrace -Fs > > BEGIN > { > @ = stddev(100); > @ = stddev(200); > @ = stddev(300); > > printa("%@d", @); > } > --- cut here --- > > Looks like we''re missing a printf handler for stddev: >[ ... ]> > We need a matching entry for stddev.Yep, I''m already there. Chris, have you filed a bug for this? If not, I can do so. If so, could you give me the number? Thanks, Chad
On Fri, Jul 25, 2008 at 3:08 PM, chris kiick <chris.kiick at sun.com> wrote:> On Fri, Jul 25, 2008 at 03:05:06PM -0500, Chad Mynhier wrote: >> Chris, have you filed a bug for this? If not, I can do so. If so, >> could you give me the number? >> >> Thanks, >> Chad > > Hot off the press: CR6730130: dtrace missing printf handler for stdevIf anyone wants to sponsor this, I can have a webrev up later this weekend (after a clean nightly build, bfu, etc.) Chad
Chad Mynhier wrote:> On Fri, Jul 25, 2008 at 3:08 PM, chris kiick <chris.kiick at sun.com> wrote: >> On Fri, Jul 25, 2008 at 03:05:06PM -0500, Chad Mynhier wrote: >>> Chris, have you filed a bug for this? If not, I can do so. If so, >>> could you give me the number? >>> >>> Thanks, >>> Chad >> Hot off the press: CR6730130: dtrace missing printf handler for stdev > > If anyone wants to sponsor this, I can have a webrev up later this > weekend (after a clean nightly build, bfu, etc.) > > ChadIf no one opposes, I''d like to sponsor Chad on this one. Rafael