We are trying to observe the data that is being written via aiowrite with this:

pid$$1::aiowrite:entry
{
    self->desc = arg0; /* file descriptor */
    self->bufp = arg1; /* buffer pointer */
    self->size = arg2; /* size, in bytes  */
}

pid$$1::aiowrite:return
/self->size > 0/
{
    printf("%Y: ", walltimestamp);

    this->text = *(char *)copyin(self->bufp,self->size);
    
    printf("%s(PID:%d) called %s with fd=%d, size= %d, and \nbuf=\"%s\"\n\n", 
execname, pid, probefunc, self->desc, self->size, stringof(this->text));

            this->text  = 0;
            self->desc  = 0;
            self->bufp  = 0;
            self->size  = 0;
}

but I am getting invalid address (0x0) in action #1 at DIF offset 28 errors.

What am I doing wrong?

Thanks in advance,
-- prasad


--
This message posted from opensolaris.org
_______________________________________________
dtrace-discuss mailing list
[email protected]

Reply via email to