From: Jeff Garzik <jgarzik@pobox.com>
To: dougg@torque.net, Luben Tuikov <luben_tuikov@adaptec.com>,
Christoph Hellwig <hch@lst.de>,
jejb@steeleye.com
Cc: Matthew Wilcox <matthew@wil.cx>,
andrew.patterson@hp.com, "Moore, Eric Dean" <Eric.Moore@lsil.com>,
linux-scsi@vger.kernel.org,
Linux Kernel <linux-kernel@vger.kernel.org>,
Linus Torvalds <torvalds@osdl.org>
Subject: Re: ioctls, etc. (was Re: [PATCH 1/4] sas: add flag for locally attached PHYs)
Date: Fri, 21 Oct 2005 23:53:51 -0400 [thread overview]
Message-ID: <4359B7CF.5060509@pobox.com> (raw)
In-Reply-To: <4359A9FE.4010503@pobox.com>
Jeff Garzik wrote:
> Douglas Gilbert wrote:
>> However, the block layer is used in the context of a
>> block device (and in some cases a char device).
>> If SAS domain discovery is done from the user space, and
>> the root file system is the far side of a SAS expander,
>> there are no suitable devices, just the SAS initiator
>> (HBA) which currently we cannot address via the block layer.
> Invalid example. All of the methods listed -- request_queue, netlink,
> chrdev, sysfs, ioctl -- will work just fine when the root filesystem is
> on the far side of a SAS expander. These are just methods of
> communication, nothing more.
>
> In your example -- userspace discovery required before root filesystem
> can be found -- a program running from initrd/initramfs would create an
> SMP device node, open it, and then proceed with the discovery and
> configuration process, which in turn creates the device nodes necessary
> to mount the root filesystem.
>
> A request_queue is just a queue. You are in complete control of who are
> the producer(s) of requests, and who are consumer(s).
Since people are having such a tough time grasping the use of
request_queue without an associated block device, here is a concrete
example: drivers/block/sx8.c.
sx8 creates a queue (grep for 'oob_q') specifically for handling
discovery and configuration requests. The only requests sent to this
queue are I2O-ish management commands, never reads or writes. Since
they are management commands, these requests are NEVER associated with a
block device. Further, when sx8 discovery begins, sx8 block devices
(and associated request_queues) simply don't exist.
Although sx8 management is entirely in-kernel, one could easily imagine
how a userland interface (chrdev?) submits userspace commands into this
queue. Further, one can see how a host adapter could register one or
more queues specifically for the transit of SMP commands.
NOTE: THIS IS NOT AN ENDORSEMENT OF REQUEST QUEUES FOR SMP. I merely
wish to clear up misunderstandings about the block layer found in this
thread.
It remains an open question whether the _complexity_ of this approach is
more than is warranted for SMP. But we've departed from that question,
in this sub-thread :)
I merely illustrate that the block layer is being used _today_ for
management commands.
Jeff
next prev parent reply other threads:[~2005-10-22 3:53 UTC|newest]
Thread overview: 85+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-10-20 15:25 [PATCH 1/4] sas: add flag for locally attached PHYs Moore, Eric Dean
2005-10-20 15:55 ` Luben Tuikov
2005-10-20 16:01 ` Christoph Hellwig
2005-10-20 16:51 ` Luben Tuikov
2005-10-20 17:03 ` Christoph Hellwig
2005-10-20 17:22 ` Arjan van de Ven
2005-10-20 20:10 ` Luben Tuikov
2005-10-21 8:16 ` Arjan van de Ven
2005-10-20 20:02 ` Luben Tuikov
2005-10-21 0:01 ` Andrew Patterson
2005-10-21 0:46 ` ioctls, etc. (was Re: [PATCH 1/4] sas: add flag for locally attached PHYs) Jeff Garzik
2005-10-21 5:09 ` Mike Christie
2005-10-21 5:41 ` Douglas Gilbert
2005-10-21 6:19 ` Jeff Garzik
2005-10-21 18:37 ` Luben Tuikov
2005-10-21 17:48 ` Luben Tuikov
2005-10-21 18:04 ` Christoph Hellwig
2005-10-21 18:12 ` Luben Tuikov
2005-10-21 18:20 ` Matthew Wilcox
2005-10-22 2:30 ` Douglas Gilbert
2005-10-22 2:54 ` Jeff Garzik
2005-10-22 3:53 ` Jeff Garzik [this message]
2005-10-22 17:14 ` Luben Tuikov
2005-10-22 17:49 ` Francois Romieu
2005-10-22 16:51 ` Luben Tuikov
2005-10-21 18:18 ` Jeff Garzik
2005-10-21 18:50 ` Luben Tuikov
2005-10-21 18:54 ` Jeff Garzik
2005-10-21 19:13 ` Luben Tuikov
2005-10-21 19:23 ` Jeff Garzik
2005-10-21 22:20 ` Stefan Richter
2005-10-21 19:22 ` Luben Tuikov
2005-10-21 19:39 ` Jeff Garzik
2005-10-21 20:41 ` Luben Tuikov
2005-10-21 21:12 ` Jeff Garzik
2005-10-21 21:24 ` Luben Tuikov
2005-10-21 21:41 ` Jeff Garzik
2005-10-21 22:14 ` Luben Tuikov
2005-10-21 22:43 ` Jeff Garzik
2005-10-22 9:26 ` Stefan Richter
2005-10-22 17:23 ` Luben Tuikov
2005-10-22 10:42 ` Stefan Richter
2005-10-22 10:58 ` Christoph Hellwig
2005-10-22 15:28 ` Sergey Panov
2005-10-22 17:19 ` Christoph Hellwig
2005-10-22 17:38 ` Sergey Panov
2005-10-24 15:18 ` Luben Tuikov
2005-10-22 18:27 ` Alan Cox
2005-10-24 13:51 ` Luben Tuikov
2005-10-24 15:41 ` Alan Cox
2005-10-24 15:14 ` Luben Tuikov
2005-10-24 15:59 ` Regala
2005-10-24 16:03 ` Regala
2005-10-24 16:13 ` Luben Tuikov
2005-10-24 16:04 ` Regala
2005-10-22 17:30 ` Luben Tuikov
2005-10-22 18:19 ` Jeff Garzik
2005-10-22 17:49 ` Stefan Richter
2005-10-24 22:09 ` ioctls, etc. (was Re: [PATCH 1/4] sas: add flag for locally attachedPHYs) David Lang
2005-10-24 23:09 ` Stefan Richter
2005-10-22 11:12 ` David Lang
2005-10-22 17:39 ` Luben Tuikov
2005-10-22 17:41 ` Stefan Richter
2005-10-22 17:51 ` Christoph Hellwig
2005-10-22 18:21 ` Stefan Richter
2005-10-22 18:39 ` Sergey Panov
2005-10-22 13:27 ` ioctls, etc. (was Re: [PATCH 1/4] sas: add flag for locally attached PHYs) Stefan Richter
2005-10-22 16:09 ` Luben Tuikov
2005-10-21 19:41 ` Matthew Wilcox
2005-10-21 19:48 ` Luben Tuikov
2005-10-21 19:54 ` Matthew Wilcox
2005-10-21 20:05 ` Luben Tuikov
2005-10-21 19:46 ` Arjan van de Ven
2005-10-21 19:50 ` Luben Tuikov
2005-10-21 9:06 ` [PATCH 1/4] sas: add flag for locally attached PHYs Arjan van de Ven
2005-10-21 17:05 ` Andrew Patterson
2005-10-21 17:18 ` Arjan van de Ven
2005-10-21 18:57 ` Luben Tuikov
2005-10-21 17:32 ` Luben Tuikov
2005-10-21 1:50 ` Douglas Gilbert
2005-10-21 2:16 ` Jeff Garzik
2005-10-21 3:25 ` Douglas Gilbert
2005-10-21 18:04 ` Luben Tuikov
-- strict thread matches above, loose matches on Subject: below --
2005-10-21 20:31 ioctls, etc. (was Re: [PATCH 1/4] sas: add flag for locally attached PHYs) Salyzyn, Mark
2005-10-21 20:31 ` Salyzyn, Mark
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=4359B7CF.5060509@pobox.com \
--to=jgarzik@pobox.com \
--cc=Eric.Moore@lsil.com \
--cc=andrew.patterson@hp.com \
--cc=dougg@torque.net \
--cc=hch@lst.de \
--cc=jejb@steeleye.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-scsi@vger.kernel.org \
--cc=luben_tuikov@adaptec.com \
--cc=matthew@wil.cx \
--cc=torvalds@osdl.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.