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. -- Brett Lymn -- Sent from my NetBSD device. "We are were wolves", "You mean werewolves?", "No we were wolves, now we are something else entirely", "Oh"
