On Mon, May 14, 2007 at 11:55:28AM -0500, Swetha Krishnan wrote:
> Thanks Eric and Manoj.
> 
> Here's what ldi_get_size() returns:
> bash-3.00# dtrace -n 'fbt::ldi_get_size:return{trace(arg1);}' -c 'zpool 
> create adsl-pool /dev/layerzfsminor1' dtrace: description 
> 'fbt::ldi_get_size:return' matched 1 probe
> cannot create 'adsl-pool': invalid argument for this pool operation
> dtrace: pid 2582 has exited
> CPU     ID                    FUNCTION:NAME
>   0  20927              ldi_get_size:return        4294967295
> 
> 
> This is strange because I looked at the code for ldi_get_size() and the 
> only possible return values in the code are DDI_SUCCESS (0) and 
> DDI_FAILURE(-1).
> 
> Looks like what I'm looking at either isn't the return value, or some 
> bad address is being reached. Any hints?

That is actually -1 (2^32 - 1).  The default type for 'argN' in DTrace
is unsigned.  If you do 'trace((int)arg1)', you'll see -1.

- Eric

--
Eric Schrock, Solaris Kernel Development       http://blogs.sun.com/eschrock
_______________________________________________
zfs-discuss mailing list
zfs-discuss@opensolaris.org
http://mail.opensolaris.org/mailman/listinfo/zfs-discuss

Reply via email to