All of lore.kernel.org
 help / color / mirror / Atom feed
From: Floydsmith@aol.com
To: mikpe@csd.uu.se, zaitcev@redhat.com
Cc: linux-kernel@vger.kernel.org, linux-tape@vger.kernel.org,
	Floydsmith@aol.com, floyd.smith@lmco.com
Subject: Re3: idetape broke in 2.4.x-2.4.9-ac5 (write OK but not read)
Date: Wed, 5 Sep 2001 04:18:17 EDT	[thread overview]
Message-ID: <32.1a68e8e6.28c739c9@aol.com> (raw)

>>> - block size: The 2.4 ide-tape driver only works reliably if you
>>>   write data with the correct block size. If you don't write full
>>>   blocks the last block of data may not be readable.
>>
>>I fixed that some time ago, it's in current -ac
>>if not in Linus's tree.

>Sorry, but that's not correct. I just ran a test, and the bug is
>still there in 2.4.9-ac7. Maybe you're thinking of some other bug?

>ide-tape tells me it uses a 14*26KB buffer for my Seagate STT8000A.
>If I dd a 39KB (1.5 "buffer units") file with bs=1k to /dev/ht0 it tells
>me it wrote 39 blocks. If I then rewind and dd with bs=1k from /dev/ht0
>it only reads 26 blocks. The same happens in 2.2 + Hedrick's IDE patch.

>2.2 vanilla reads 56 blocks, of which the first 39 are identical to
>what I initially wrote. The last 13 contain junk but that's not a big
>problem since I back up with tar which writes its own EOF mark.
>./Mikael
>-

The output is:
ide-tape: ht0: I/O error, pc =  8, key =  5, asc = 2c, ascq =  0
for reads only.
As noted earlier, this problem occurs in 2.4.x (only) even with a very small 
test file (just the 5 character "test"). Upon sprinkling some "printk" 
statements arround in ide-tape.c I found that what happens with this error 
(under 2.4.x) is:
    if (tape->failed_pc != NULL && tape->pc->c[0] == 
IDETAPE_REQUEST_SENSE_CMD) {
        return idetape_issue_packet_command (drive, tape->failed_pc);
    }
invokes idetape_issue_packet_command (...) three times in idetape_do_request 
(...) which causes an abort in idetape_issue_packet_command (...) when 
pc->retries reaches 4.
I don't get ANY retries with the same test case under 2.2.x.

Is there any way I can find out what the error return value asc = 2c 
represents? For example, is there a URL to a "standard" for such values?

Floyd,

             reply	other threads:[~2001-09-05  8:19 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2001-09-05  8:18 Floydsmith [this message]
2001-09-06  0:09 ` Re3: idetape broke in 2.4.x-2.4.9-ac5 (write OK but not read) Willem Riede

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=32.1a68e8e6.28c739c9@aol.com \
    --to=floydsmith@aol.com \
    --cc=floyd.smith@lmco.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-tape@vger.kernel.org \
    --cc=mikpe@csd.uu.se \
    --cc=zaitcev@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.