From: David Miller <davem@davemloft.net>
To: bzolnier@gmail.com
Cc: linux-ide@vger.kernel.org, linux-kernel@vger.kernel.org,
petkovbb@gmail.com, htejun@gmail.com
Subject: Re: [patch 2/6] ide: fix ide_kill_rq() for special ide-{floppy,tape} driver requests
Date: Tue, 23 Jun 2009 23:49:29 -0700 (PDT) [thread overview]
Message-ID: <20090623.234929.32348223.davem@davemloft.net> (raw)
In-Reply-To: <200906232326.06830.bzolnier@gmail.com>
From: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Date: Tue, 23 Jun 2009 23:26:06 +0200
> @@ -152,7 +152,7 @@ void ide_kill_rq(ide_drive_t *drive, str
>
> if ((media == ide_floppy || media == ide_tape) && drv_req) {
> rq->errors = 0;
> - ide_complete_rq(drive, 0, blk_rq_bytes(rq));
> + ide_complete_rq(drive, -EIO, blk_rq_bytes(rq));
> } else {
> if (media == ide_tape)
> rq->errors = IDE_DRV_ERROR_GENERAL;
I've done some research and this logic of returning "0" appears to be
intentional.
It keeps the block layer from printing the "I/O error" kernel log
message during completion of the request.
IDE tape as one example, seems to have it's own system of passing
errors back up to the special command completion, via rq->errors
and IDE_DRV_ERROR_GENERAL.
See idetape_queue_rw_tail() and ide_tape_callback() for example.
IDE floppy has similar pieces of logic, and possibly similar desires
wrt. emission of the block layer I/O error log message during
special requests.
When something sticks out like an eyesore (as this -EIO thing does)
and seems to make no sense at all, there often is some obscure
reason.
next prev parent reply other threads:[~2009-06-24 6:49 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-06-23 21:26 Bartlomiej Zolnierkiewicz
2009-06-23 23:16 ` David Miller
2009-06-24 0:49 ` Bartlomiej Zolnierkiewicz
2009-06-24 7:08 ` Borislav Petkov
2009-06-24 6:49 ` David Miller [this message]
2009-06-24 10:09 ` Bartlomiej Zolnierkiewicz
2009-06-24 10:39 ` David Miller
2009-06-24 17:44 ` Borislav Petkov
2009-06-25 10:09 ` David Miller
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=20090623.234929.32348223.davem@davemloft.net \
--to=davem@davemloft.net \
--cc=bzolnier@gmail.com \
--cc=htejun@gmail.com \
--cc=linux-ide@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=petkovbb@gmail.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Powered by JetHome