All of lore.kernel.org
 help / color / mirror / Atom feed
From: Christoph Hellwig <hch@lst.de>
To: Boaz Harrosh <bharrosh@panasas.com>
Cc: linux-scsi@vger.kernel.org, axboe@kernel.dk
Subject: struct request members, etc..
Date: Tue, 2 Jan 2007 13:05:31 +0100	[thread overview]
Message-ID: <20070102120531.GB7032@lst.de> (raw)
In-Reply-To: <457EBAE3.6090609@panasas.com>

This gets a little offtopic for the original issue, so let's cut the Cc
list and change the subject.

On Tue, Dec 12, 2006 at 04:21:23PM +0200, Boaz Harrosh wrote:
> I'm afraid this might not be enough because of code in drivers/ide/ide-cd.c. It does IO off of request->data.

Only for FS requests, but we do BLOCK_PC requests here.

> [background]
> pkt_generic_packet and ton of other places mainly cd(s), floppy(s), and
> other ide code paths, are using what I call BLACK requests. They put some
> data on request->buffer or request->data stick it in the Q and than advance
> on them later down the ladder. Remove of "buffer" and "data" from
> struct request will reveal all these places. At one time I had plans to do
> just that. But 1/2 way through I gave up, it is too risky, too much
> Hardware that I don't have, that needs checking.

Removing this old code would definitly be worthwile, but I understand
that you don't want to get too deeply into the mess of floppy.c and the
old ide code :)

> below patch combined with your patch might get a bit closer for this code
> path.  At struct request I have changed the name of "data" member to
> "user_data". than changed the code paths that used "data" as IO to use
> request->buffer instead. This is just as bad but is a more common practice.
> 
> I suspect there is a problem with what I did in scsi_lib.c Christoph please
> check me out with the new BUG_ON.

They look good to me.

> Mainly what you need from below is only the code in ide-cd.c.
> (And there are 3-4 places that do exactly like pkt_generic_packet, though
> I'm not sure they end up through SCSI.

Do you have a list of those places at hand?  We should try to fix them
up, especially if it's as trivial as the pkt code.


  parent reply	other threads:[~2007-01-02 12:05 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <200612112159.kBBLxmep005850@fire-2.osdl.org>
2006-12-11 22:10 ` [Bugme-new] [Bug 7667] New: BUG at drivers/scsi/scsi_lib.c:1118 caused by "pktsetup dvd /dev/sr0" Andrew Morton
2006-12-11 22:36   ` James Bottomley
2006-12-12 10:38   ` Christoph Hellwig
2006-12-12 13:26     ` Christoph Hellwig
2006-12-12 14:21       ` Boaz Harrosh
2006-12-12 22:37         ` Laurent Riffard
2006-12-13  8:06           ` Boaz Harrosh
2006-12-28 22:28           ` Laurent Riffard
2007-01-02 12:05         ` Christoph Hellwig [this message]
2007-01-02 12:34           ` struct request members, etc Jens Axboe
2007-01-02 12:39             ` Christoph Hellwig
2007-01-02 12:44               ` Jens Axboe
2007-01-02 11:59       ` [Bugme-new] [Bug 7667] New: BUG at drivers/scsi/scsi_lib.c:1118 caused by "pktsetup dvd /dev/sr0" Christoph Hellwig
2007-01-02 14:00         ` Peter Osterlund

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=20070102120531.GB7032@lst.de \
    --to=hch@lst.de \
    --cc=axboe@kernel.dk \
    --cc=bharrosh@panasas.com \
    --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 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.