From: Kai Makisara <Kai.Makisara@kolumbus.fi>
To: Arne Wiebalck <arne.wiebalck@cern.ch>
Cc: linux-scsi@vger.kernel.org
Subject: Re: SG_IO problem on tape devices
Date: Tue, 3 Jun 2008 19:52:47 +0300 (EEST) [thread overview]
Message-ID: <alpine.LSU.1.10.0806031937410.7948@kai.makisara.local> (raw)
In-Reply-To: <1212479982.5079.58.camel@pcitfio23.cern.ch>
On Tue, 3 Jun 2008, Arne Wiebalck wrote:
> Hi all,
>
> I got a problem using the SG_IO ioctl with our tape drives.
> In order to examine errors on our drives in more detail, I
> would like to make the sense bytes available to the
> application using the REQUEST_SENSE command.
>
> However, there's a discrepancy between the kernel output in
> /var/log/messages and what I see using SG_IO within my
> application: while the kernel sees
>
> kernel: st0: Error with sense data: scsi1 : destination target 0, lun 0
> kernel: command = Space 01 00 0d d5 00
> kernel: Info fld=0x1, Current st0: sense key Medium Error
> kernel: Additional sense: Read retries exhausted
> kernel: Raw sense data:0xf0 0x00 0x03 0x00 0x00 0x00 0x01 0x12 0x00 0x00
> 0x00 0x00 0x11 0x01 0x00 0x00 0x00 0x00 0x37 0xf7 0x10 0x01 0x00 0x00
> 0xf7 0x37
>
> (which is realistic) the ioctl reports something like
>
> 70 00 00 00 00 00 00 12 00 00 00 00 00 00 00 00
> 00 00 00 00 00 00 00 00 10 02
>
> (since the first bit is not set, the sense bytes are not even valid,
> as far as I understand).
>
> So, could it be that the sense bytes are already cleared when I request
> them? They cleared/set by the next SCSI cmd, I assume? But shouldn't
> they be valid even then?
>
Yes, the standard says that the sense data after CHECK CONDITION shall be
preserved until it is transferred and cleared after that. This means that,
in this case, the st driver only sees the sense data. The subsequent
REQUEST SENSE commands receive the NO SENSE key, which is what you get.
The st driver should return more error information that fits into struct
mtget. The problem is what should be there? I don't have a clear idea what
kind of definition would be general enough for the future but not too
complicated. User input here is needed.
One of the ideas I have had has been to provide the sense data from the
latest command that provided it. This would be easy to implement and could
use a sysfs file. (But should this be a general SCSI feature and not a st
feature?)
--
Kai
next prev parent reply other threads:[~2008-06-03 16:52 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-06-03 7:59 SG_IO problem on tape devices Arne Wiebalck
2008-06-03 16:52 ` Kai Makisara [this message]
2008-06-03 17:37 ` Boaz Harrosh
2008-06-03 20:15 ` James Bottomley
2008-06-04 2:06 ` Douglas Gilbert
2008-06-04 16:46 ` AW: " Arne Wiebalck
2008-06-30 8:43 ` Arne Wiebalck
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=alpine.LSU.1.10.0806031937410.7948@kai.makisara.local \
--to=kai.makisara@kolumbus.fi \
--cc=arne.wiebalck@cern.ch \
--cc=linux-scsi@vger.kernel.org \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox