All of lore.kernel.org
 help / color / mirror / Atom feed
From: Mike Christie <mikenc@us.ibm.com>
To: James Bottomley <James.Bottomley@SteelEye.com>
Cc: Mike Christie <michaelc@cs.wisc.edu>,
	Matthew Wilcox <willy@debian.org>, Christoph Hellwig <hch@lst.de>,
	iscsi -devel <linux-iscsi-devel@lists.sourceforge.net>,
	David Wysochanski <davidw@netapp.com>,
	"Surekha.PC" <surekhap@cisco.com>,
	SCSI Mailing List <linux-scsi@vger.kernel.org>
Subject: Re: [linux-iscsi-devel] Re: [PATCH RFC] replace ioctl for sysfs	take 2
Date: Mon, 06 Sep 2004 19:46:17 -0700	[thread overview]
Message-ID: <413D20F9.6000704@us.ibm.com> (raw)
In-Reply-To: <1094512278.1761.63.camel@mulgrave>

James Bottomley wrote:
> On Mon, 2004-09-06 at 18:48, Mike Christie wrote:
> 
>>For bus usage and virtual drivers like this and scsi_debug, would it be 
>>better to just have a single virtual bus for all virtual drivers to 
>>share, or should we instead modify the scsi_bus so that it can handle 
>>ULD and virtual LLD struct device_driver attachments. Today, the 
>>scsi_bus seems to be used for upper layer drivers becuase they are the 
>>only ones needing to attach UL struct device_drivers to scsi devices, 
>>but instead of scsi_debug or iscsi-sfnet implementing its own virtual 
>>bus the scsi_bus could manage a low level virtual driver's scsi_host 
>>parent's devices.
>>
>>Also, with James's patch we have scsi_devices and scsi_targets off the 
>>scsi_bus, does scsi_host's shost_gendev belong there too? What is the 
>>purpose of the scsi_bus?> 
> 
> 
> Using a virtual bus only makes sense when you actually have multiple
> virtual drivers that need to attach.  Thus, we only have one virtual
> scsi bus (scsi_bus_type) and it's only used for the generic device
> embedded in struct scsi_device.  We use it only to attach the various
> ULDs.  The host and target devices just have a null bus.

In that first target patch you sent it had the target dev's bus set to 
scsi_bus_type. That caused my confusion as to what the bus was for. I 
see the new patch with this removed. Nevermind.

> I'm not quite sure what you want to use another bus type for?  It sounds
> like you really want to be using a device class instead.  The difference
> is
> 
> - classes provide (potentially multiple) interfaces to existing devices;
> - busses are used for keeping track of attached devices and matching
> them to their drivers.
> 
> Unless you really have a use for device matching and driver attachment,
> you probably just want to stick with classes.
> 

We just needed something to track the driver's scsi_hosts. It was also 
used becuase we used a struct device_driver to hang setup attributes 
(non iscsi related attrs needed to setup our driver's devices without an 
ioctl) off of like scsi_debug (this is why I asked about a single 
virtual bus for both of us to share).

Since we followed the suggestion to do a host per transport endpoint 
when we rmmod the driver we just need some way to loop over every 
scsi_host and free them up. We had a linked list of scsi_hosts. 
Christoph suggested a class or bus instead of the linked list, and had 
preferred the bus. Now you are suggesting to use a class. It wouldn't be 
ok to go back to the single host would it? In that case we would not 
need a class, bus, or linked list?

  reply	other threads:[~2004-09-07  2:49 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <413557CB.8010008@cs.wisc.edu>
     [not found] ` <20040901162042.GC26753@null.msp.redhat.com>
2004-09-06 14:32   ` [linux-iscsi-devel] Re: [PATCH RFC] replace ioctl for sysfs take 2 Christoph Hellwig
2004-09-06 16:33     ` Matthew Wilcox
2004-09-06 18:15       ` Mike Christie
2004-09-06 18:54         ` Mike Christie
2004-09-06 22:48           ` Mike Christie
2004-09-06 23:11             ` James Bottomley
2004-09-07  2:46               ` Mike Christie [this message]
2004-09-07 15:35                 ` James Bottomley
2004-09-07 19:19                   ` Scott M. Ferris
2004-09-07 20:42                     ` James Bottomley
2004-09-07 21:05                       ` Scott M. Ferris
2004-09-07 21:12                         ` Mike Christie
2004-09-07 21:24                           ` Scott M. Ferris
2004-09-07 21:33                           ` James Bottomley
2004-09-07 21:37                             ` Mike Christie
2004-09-07 22:05                               ` James Bottomley
2004-09-07 22:40                                 ` Mike Christie
2004-09-07 22:57                                   ` Mike Christie
2004-09-08 10:27                                     ` Mike Christie
2004-09-07 23:34                                   ` James Bottomley
2004-09-08  9:19                                     ` Mike Christie
2004-09-08 14:53                                       ` James Bottomley
2004-09-07 21:14                         ` James Bottomley
2004-09-08  2:33                         ` Douglas Gilbert
2004-09-08 14:38                           ` Randy.Dunlap
2004-09-08 18:11                             ` Bryan Henderson
2004-09-09  0:40                             ` Douglas Gilbert
2004-09-09 15:40                               ` AJ Lewis
2004-09-07 15:24         ` AJ Lewis

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=413D20F9.6000704@us.ibm.com \
    --to=mikenc@us.ibm.com \
    --cc=James.Bottomley@SteelEye.com \
    --cc=davidw@netapp.com \
    --cc=hch@lst.de \
    --cc=linux-iscsi-devel@lists.sourceforge.net \
    --cc=linux-scsi@vger.kernel.org \
    --cc=michaelc@cs.wisc.edu \
    --cc=surekhap@cisco.com \
    --cc=willy@debian.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.