Darren J Moffat wrote:
> For an encrypted dataset it is possible that by the time we arrive in 
> zio_write() [ zio_write_encrypt() ] that when we lookup which key is 
> needed to encrypted this data that key isn't available to us.
> 
> Is there some value of zio->io_error I can set that will not result in a 
> panic ? but will put the write in to some state where we can try again 
> later - I guess not just this write but maybe the whole transaction group ?
> 
No, we have no ability to do this.  With George's fix for 6565042, we
will introduce the ability to "hang" the pool on an IO failure... this
may give you what you want.

> I can, and I think I have, fixed the mount time case by returning false 
> from zfs_is_mountable() if the dataset is encrypted and the key needed 
> isn't present.  However the key could go away - without us knowing so in 
> some cases (not really for the pure software case but it can happen with 
> hardware token keys).
> 

Reply via email to