On Thu, Jun 10, 2021 at 12:13:22PM +0200, Michael van Elst wrote:
On Thu, Jun 10, 2021 at 12:02:19PM +0200, Michael van Elst wrote:
If you don't like the fake errno, the function needs to return
two values, the error value and a boolean to finish the
unqueued request. Cleaner, but more changes.
E.g. (not even compile-tested):
I don't think that is quite right. At line 1204 error is set to EIO, even with your changes
b_error will still get set to EIO when EOM_PENDING is true. Previously b_error was only set
b_error would be set to EIO in previous versions this would only happen if there was no
ST_EOM_PENDING flag set. I did a much smaller change in ststart inside
the if at line 1290 I added a check to only set b_error to the value of error unless error
==EIO and st->flags contains ST_EOM_PENDING. This change made dump perform as expected and
prompt for a new tape.