I think that we should try to isolate libzfs_core API and ABI as much as
possible from ZFS implementation details.
In this respect it seems that there is no good reason to use dmu_objset_type_t
with lzc_create().  Given that currently we can create only two types of
datasets, a filesystem or a ZVOL, then a simple boolean parameter would be
sufficient, but for clarity and extensibility we could use a locally defined
enumeration like it was done for lzc_send_flags.
And it seems that libzfs_core.h has to include sys/fs/zfs.h only because of
dmu_objset_type_t.

What do you think?

Finally, if we go for the change then it would present a challenge of its own,
because the stable lzc API would have to be modified.  What would be the best
way to do that?  Or does this concern alone kill the whole proposal?

Thanks!

-- 
Andriy Gapon

_______________________________________________
developer mailing list
[email protected]
http://lists.open-zfs.org/mailman/listinfo/developer

Reply via email to