All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jeff Garzik <jgarzik@pobox.com>
To: James Bottomley <James.Bottomley@steeleye.com>
Cc: Alan Stern <stern@rowland.harvard.edu>,
	SCSI development list <linux-scsi@vger.kernel.org>
Subject: Re: Status of patch as168 (sysfs readonly max_sectors attribute)
Date: Thu, 15 Jan 2004 13:58:10 -0500	[thread overview]
Message-ID: <4006E2C2.10901@pobox.com> (raw)
In-Reply-To: <1074190688.1867.143.camel@mulgrave>

James Bottomley wrote:
> On Thu, 2004-01-15 at 13:03, Alan Stern wrote:
> 
>>Does that mean you don't want to apply it and it should be done privately 
>>within usb-storage?  Or has it already been applied without me realizing?
> 
> 
> Sorry, I meant to comment on this.
> 
> The thing I really don't like is the fact that max_sectors is a block
> attribute but it's being exported from SCSI, I didn't catch this until I
> saw the patch.  This means it's should properly be exported at the block
> level, not at the SCSI level.


And I'm glad you commented on this :)

Yeah, I want to kill scsi's max_sectors and dma_boundary both.  All SCSI 
does is pass them straight to blk_queue_max_sectors() and 
blk_queue_segment_boundary() from scsi_alloc_queue() anyway.

But it seems to me that the block layer already exports everything needed.

IMO: esteemed and wise SCSI maintainers should pick a point 
(->slave_config?) where the low-level SCSI driver is allowed to tweak a 
queue's settings in a race-free way (i.e. before any requests are 
allowed to be sent to that queue).

Once that is done, elimination of max_sectors and dma_boundary is a 
three-step process:
1) create a helper function scsi_config_queue() or somesuch.  This is 
the default for low-level drivers without a slave_config.
2) make a bombing run through the low-level drivers, removing 
max_sectors and dma_boundary from their template
3) simultaneously to #2, make a similar bombing run, adding or updating 
the slave_config for each driver

Long term I want to bring low-level {scsi | ide | whatever} drivers much 
closer to the block layer, and the above is actually one of the steps I 
wanted to do anyway.

	Jeff




  reply	other threads:[~2004-01-15 18:58 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-01-15 18:03 Status of patch as168 (sysfs readonly max_sectors attribute) Alan Stern
2004-01-15 18:18 ` James Bottomley
2004-01-15 18:58   ` Jeff Garzik [this message]
2004-01-15 19:30     ` Alan Stern
2004-01-15 19:42       ` James Bottomley

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=4006E2C2.10901@pobox.com \
    --to=jgarzik@pobox.com \
    --cc=James.Bottomley@steeleye.com \
    --cc=linux-scsi@vger.kernel.org \
    --cc=stern@rowland.harvard.edu \
    /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.