On Wed, Feb 27, 2008 at 10:58:12AM -0800, prasad wrote:
> According to the DTrace guide, tracemem's description is:
> 
> void tracemem(address, size_t nbytes)
> 
> The tracemem() action takes a D expression as its first argument,
> address, and a constant as its second argument, nbytes. tracemem()
> copies the memory from the address specified by addr into the
> directed buffer for the length specified by nbytes.  
> 
> I am getting "tracemem( ) argument #2 must be a non-zero positive integral 
> constant expression" when I do:
> 
> tracemem(copyin(self->bufp,self->size),self->size);
> 
> Is it possible to do the above in other ways?

Unfortunately not. Each record must be of a fixed a predetermined size so
you can't trace a variable amount of data in the way that you'd like.

Adam

-- 
Adam Leventhal, Fishworks                        http://blogs.sun.com/ahl
_______________________________________________
dtrace-discuss mailing list
[email protected]

Reply via email to