Bug 5245 - SCSI tape driver returns i/o error on short block
Summary: SCSI tape driver returns i/o error on short block
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Red Hat Linux
Classification: Retired
Component: kernel
Version: 6.0
Hardware: i386
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Michael K. Johnson
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 1999-09-20 15:01 UTC by hughett
Modified: 2008-05-01 15:37 UTC (History)
3 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 1999-10-06 22:46:25 UTC


Attachments (Terms of Use)

Description hughett 1999-09-20 15:01:37 UTC
The SCSI tape driver returns an i/o error if the block
length is not an exact multiple of 512 bytes.  This causes
problems when attempting to do a tar dump with the z option,
or a remote dump over the network (since a network read
will return only as many bytes as are currently available).

Example:

[hughett@chaplin hughett]$ dd if=/dev/zero of=/dev/nst0 \
bs=511 count=1
dd: /dev/nst0: Input/output error
1+0 records in
0+0 records out
[hughett@chaplin hughett]$ dd if=/dev/zero of=/dev/nst0 \
bs=512 count=1
1+0 records in
1+0 records out

A workaround for this problem is to write a filter that
read bytes until it gets a full block of 512 before writing
them out and that adds enough zero bytes at EOF to make
up a complete block.

Paul Hughett

Comment 1 Cristian Gafton 1999-10-06 22:46:59 UTC
assigned to dledford

Comment 2 Ben LaHaise 2002-06-03 21:46:20 UTC
Does this still happen in 2.4?  Please reopen if so.


Note You need to log in before you can comment on or make changes to this bug.