> 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

Reply via email to