Maximum buffer size for read from magtape?

Steve Wall wall at ucbvax.ARPA
Sat Sep 29 06:59:25 AEST 1984


Yesterday I was trying to read a mag tape with a *very* large
block size (I think it was ~80k, but I'm not sure..). I don't
know why we received this tape with such a huge block size, but
that's not what concerns me.

Anyway, I tried to read the thing with the following command:

	dd if=/dev/rmt12 of=foobar conv=ascii bs=64k

and I received the following system error on the read:

	/dev/rmt12: No such device or address	(errno=6, ENXIO)

When I changed the dd to:

	dd if=/dev/rmt12 of=foobar conv=ascii bs=63k   NOTE: 63k rather than 64k

I no longer got the error message. I'm not extremely knowledgeable about
the UNIX I/O system, but this seems rather strange. Is the problem
in the I/O system itself, or does it have to do with the device I was
talking to (Kennedy 9300 drive, using tm(4) driver)? Is there a
maximum buffer size in the I/O system that I was overflowing? The
64k limit suggests something held over from the PDP version of UNIX
(We're running 4.2BSD on a 750). I have a feeling it's in the controller
or driver, since I don't have trouble reading such large chunks off
of a disk.

Anyway, I'm fairly confused and would appreciate any help from a wizard
or two. I was unable to extract all of the data from the tape because the
first (very large) block was truncated.

Thanks for the help,

Steve Wall
..!ucbvax!wall



More information about the Comp.unix.wizards mailing list