Subject: Re: fcntl changes once again.
To: Jason Thorpe <thorpej@nas.nasa.gov>
From: Charles M. Hannum <root@ihack.net>
List: tech-kern
Date: 07/13/1999 15:37:51
So, an example you gave of the usage of ALT_IO is to bypass the
decompression in a compressing FS layer. E.g., if you're using
layered FSes to do something like:
FFS --> GZIP-FS --> user
B A
normally you would read and write decompressed data at point A, but
setting ALT_IO might allow you to read and write the *compressed* data
at point B. For the sake of discussion, I will call this feature
`bypassing the layer'.
Presumably an encrypting FS could do the same thing.
Now, consider stacking both of these together, as in:
FFS --> 3DES-FS --> GZIP-FS --> user
C B A
Again, if I do nothing, I would read and write uncompressed,
unencrypted data at point A, and everything would be happy.
But what if I want to read and write unencrypted. compressed data at
point B (bypassing the compression layer), or encrypted, compressed
data at point C (bypassing both layers)? ALT_IO is not generic enough
to do this; it permits me to bypass one or all layers -- whichever
behaviour is hard-coded into the kernel -- but not selectively bypass
one or both as I see the need to.
If this feature is not safe to use with multiple layers, then I don't
see how it can properly be called a feature at all.
Furthermore, using a single flag to do radically different things in
different stacked FSes seems inherently and seriously wrong.