> On Feb 26, 2019, at 11:14 AM, Garrett D'Amore <[email protected]> wrote: > > The unmount prior to sharing is actually interesting… while it isn’t > particularly cross-platform, its very analogous to the problems we had with > dynamic reconfiguration, where we wanted to vacate I/O from an adapter prior > to removal. We generalized this into the notion of vacation a “resource”, > and there is a software subsystem called “RCM” (reconfiguration coordination > manager or somesuch) that supports this. We could (for illumos) extend that > framework. > > Ultimately I really do believe that its difficult to come up with a > cross-platform solution here; and I’m not super thrilled with trying to > invent one. For example, the very notion of being able to fork a program to > run at unmount time may be challenging in some environments. For example, on > Windows (yes there is a Windows ZFS port), this might mean different things. > Even under POSIX systems, under what UID should the program be run? Could > this conceivably be used to create a privilege escalation vector? Etc. How > do you handle failures that occur if the program runs? The whole thing, > which at first blush seems simple, quickly turns into a morass I think.
well, there is a lua interpreter already there… perhaps the [un]sharers can just be channel programs? > I think the best solution is to punt. Those of us that are NAS vendors > already know how to manage this cleanly anyway. +1 — richard ------------------------------------------ openzfs: openzfs-developer Permalink: https://openzfs.topicbox.com/groups/developer/T6b50d98b3cf62715-M280972a177e31062ff156aa0 Delivery options: https://openzfs.topicbox.com/groups/developer/subscription
