> >> - I'm a bit confused by why you have the if clause on 91 at all. If I'm > >> reading it correctly, if we run across the active BE, we end up > >> ignoring the fact that we were asked to create an object based on > >> "root". Is that correct? Why is that right? > > > > hmm. your right. if root = '/' then be_mountpoint = "legacy" so I needed to > > check be_active for the '/' case. However if we run across '/' before the > > intended target of the -R argument the this is wrong. Good catch! > > This is hardcoding some scarily broken zfs behavior. Please provide a > comment explaining that be_mountpoint will be "legacy" when the be in > question is the active BE mounted at /. I hope that the ZFS folks correct > this. If they aren't going to, it's probably worthwhile having your code > go figure out what the real mountpoints are.
There's a blog about ZFS root and legacy mount here: http://blogs.sun.com/lalt/entry/zfs_roots_legacy_mount_or This explains some of the tradeoffs for why the code is the way it is today. I'm not sure it'll always be possible to find the mountpoint for a legacy mount, but checking in vfstab would be a start. -j _______________________________________________ pkg-discuss mailing list [email protected] http://mail.opensolaris.org/mailman/listinfo/pkg-discuss
