[illumos-Developer] iSCSI UNMAP with DKIOCFREE
Dan McDonald
danmcd at nexenta.com
Mon Feb 21 18:21:55 PST 2011
On Mon, Feb 21, 2011 at 06:09:40PM -0800, George Wilson wrote:
> Dan,
Good timing, and thankfully none of my last-second mods (just posted) were on
the zvol.c side...
> zvol.c:
>
> - need error checking for the range [df_start, df_start + df_length)
> - ensure that df_start + df_length <= zv_volsize
Will do!
> - ensure that df_start >= 0
I thought that data type was unsigned...
everywhere(~)[0]% grep diskaddr_t /usr/include/sys/types.h
typedef u_longlong_t diskaddr_t;
everywhere(~)[0]%
Is a >= 0 check still valid? Should I do some unsigned equivalent thereof
(<= LLONG_MAX)?
> - need to call zfs_range_lock() for the range specified by df (need
> unlock too)
Makes sense and will do.
> - I think we also need to log this operation to the zil so that it
> can be replayed on reboot (I'm digging into dmu_free_long_range() to
> see if it tracks the deletion)
Please report back with these results, and an answer to my LLONG_MAX-ish
question?
Thank you!
Dan
More information about the Developer
mailing list