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
