Messages in this thread |  | | Date | Wed, 21 Nov 2001 23:58:25 +0200 (EET) | From | Kai Makisara <> | Subject | Re: st.c SCSI Tape ioctl() bug |
| |
On Sun, 18 Nov 2001, Jeff V. Merkey wrote:
> > > Kai/Linux, > > The ioctl() function to enable/disable code 15 comrpession has > some problems. I have a fix to the code, but it does not > always seem to work properly, so I think you should do this > review. > > If you call the ioctl() tape command from kernel space to > enable and disable **DEFAULT** compression (not MTCOMPRESSION > ioctl, the MT_ST_DEF_COMPRESSION code path) there is a case > where the default_compression/compression_changed flags > can horribly out of sync. > > Please take a look at this code. We have gotten around it > by simply calling MTCOMPRESSION everytime we need to use it, > however, but the other path seems busted, and it would be > nice for it to work properly. > The default compression is meant to be set only at system startup/module loading. If the user wants to change the compression at any other time, using MTCOMPRESSION is the correct way.
However, I agree that setting the default compression at any other time should also give the expected result. Currently, the compression default will be enforced when a new tape is inserted. It might be better to change the compression immediately after the default has been changed if the drive is ready. This should also synchronize the compression_changed flag. I will think about this a little more and then make the changes.
Kai
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
|  |