public inbox for linux-scsi@vger.kernel.org
 help / color / mirror / Atom feed
From: Mike Christie <michaelc@cs.wisc.edu>
To: Boaz Harrosh <bharrosh@panasas.com>
Cc: linux-scsi@vger.kernel.org,
	James Bottomley <James.Bottomley@SteelEye.com>,
	Jens Axboe <jens.axboe@oracle.com>,
	Benny Halevy <bhalevy@panasas.com>
Subject: Re: Possible bug in scsi_lib.c:scsi_req_map_sg()
Date: Mon, 27 Nov 2006 13:27:27 -0600	[thread overview]
Message-ID: <456B3C1F.4050907@cs.wisc.edu> (raw)
In-Reply-To: <456B38E9.6060209@cs.wisc.edu>

Mike Christie wrote:
> Boaz Harrosh wrote:
>> Playing with some tests which I admit are not 100% orthodox I have
>> stumbled upon a bug that raises a serious question:
>>
>> In the call to scsi_execute_async() in the use_sg case, must the
>> scatterlist* (pointed to by buffer) map a buffer that's contiguous in
>> virtual memory or is it allowed to map disjoint segments of memory?
> 
> I thought they were continguous. I think James has said before that they
> can be disjoint. When we converted sg it did not look like sg or st
> supported disjoint. The main non dio path used a buffer from
> get_free_pages so I thought that would always be contiguous. The dio
> path then always set the first sg offset, but the rest it set to zero.

And the len is set to page size for the middle entries too.

But for the non DIO st path we can end up with some middle sg entires
that are not a full page so that code in scsi_execute_async is broken
for that.

  reply	other threads:[~2006-11-27 19:27 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-11-27 17:44 Possible bug in scsi_lib.c:scsi_req_map_sg() Boaz Harrosh
2006-11-27 19:13 ` Mike Christie
2006-11-27 19:27   ` Mike Christie [this message]
2006-11-27 21:52     ` Kai Makisara
2006-11-28 18:57     ` Jens Axboe
2006-11-29  9:30       ` Benny Halevy
2007-03-02 16:45         ` Dachepalli, Sudhir
2007-03-02 21:19           ` Mike Christie
2007-03-02 21:59             ` Mike Christie
2007-03-02 23:45               ` Dachepalli, Sudhir
2007-03-04  0:04                 ` Mike Christie
2007-03-04  7:36                   ` Dachepalli, Sudhir
2007-03-04 14:31                     ` James Bottomley
2007-03-04 15:43                       ` Mike Christie
2007-03-04 15:57                         ` James Bottomley
2007-03-04 16:21                           ` Mike Christie
2007-03-04 16:51                             ` James Bottomley
2007-03-04 17:04                               ` Mike Christie
2007-03-04 17:07                                 ` Mike Christie
2007-03-04 18:00                                   ` Dachepalli, Sudhir
2007-03-04 18:14                                     ` James Bottomley
2007-03-04 19:06                                       ` Dachepalli, Sudhir
2007-03-05 13:00                                         ` Christoph Hellwig
2007-03-05 13:02               ` Christoph Hellwig
2006-11-27 23:33   ` James Bottomley
2006-11-28 15:44   ` Boaz Harrosh
2006-11-28 17:30     ` Mike Christie

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=456B3C1F.4050907@cs.wisc.edu \
    --to=michaelc@cs.wisc.edu \
    --cc=James.Bottomley@SteelEye.com \
    --cc=bhalevy@panasas.com \
    --cc=bharrosh@panasas.com \
    --cc=jens.axboe@oracle.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox