NetBSD-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: port-amd64/53890: st(4) driver for tapes not working o variable block size
The following reply was made to PR port-amd64/53890; it has been noted by GNATS.
From: mlelstv%serpens.de@localhost (Michael van Elst)
To: gnats-bugs%netbsd.org@localhost
Cc:
Subject: Re: port-amd64/53890: st(4) driver for tapes not working o variable block size
Date: Sat, 19 Jan 2019 14:42:42 -0000 (UTC)
pa0gri%amsat.org@localhost ("G J van der Grinten") writes:
>But on the recond read for a block I get an " Invalid argument" and that is
>invalid by itself.
Looks like this is not the tape driver itself. The kernel physio() routine
does a sanity check on the I/O byte offset to be a multiple of DEV_BSIZE
(== 512 bytes) and returns EINVAL if that's false. That's why the
second read or write fails (the first starts at offset 0).
That sanity check doesn't make sense for a tape and might not even be needed
for e.g. a disk, the disk drivers do their own checks.
--
--
Michael van Elst
Internet: mlelstv%serpens.de@localhost
"A potential Snark may lurk in every tree."
Home |
Main Index |
Thread Index |
Old Index