I explored this a bit and found that the ldi_ioctl in my layered driver does 
fail, but fails because of an "iappropriate ioctl for device " error, which the 
underlying ramdisk driver's ioctl returns. So doesn't seem like that's an issue 
at all (since I know the storage pool creation is successful when I give the 
ramdisk directly as the target device).

However, as I mentioned, even though reads and writes are getting invoked on 
the ramdisk, through my layered driver, the storage pool creation still fails.

Surprisingly, the layered driver's routines show no sign of error - as in the 
layered device gets closed successfully when the pool creation command returns.

It is unclear to be what would be a good way to go about debugging this, since 
I'm not familiar with dtrace- i shall try and familiarize myself with dtrace, 
but even then, it seems like there are a large number of functions returning 
non-zero values, and confusing to me where to look for the error.

Any pointers would be most welcome!!

Thanks,
Swetha.
 
 
This message posted from opensolaris.org
_______________________________________________
zfs-discuss mailing list
zfs-discuss@opensolaris.org
http://mail.opensolaris.org/mailman/listinfo/zfs-discuss

Reply via email to