public inbox for linux-scsi@vger.kernel.org
 help / color / mirror / Atom feed
From: Mike Anderson <andmike@us.ibm.com>
To: James Bottomley <James.Bottomley@SteelEye.com>
Cc: SCSI Mailing List <linux-scsi@vger.kernel.org>,
	Patrick Mochel <mochel@osdl.org>
Subject: Re: [RFC] scsi host sysfs support again [0/4]
Date: Tue, 6 May 2003 10:23:12 -0700	[thread overview]
Message-ID: <20030506172312.GA1697@beaverton.ibm.com> (raw)
In-Reply-To: <1052238508.1819.42.camel@mulgrave>

James Bottomley [James.Bottomley@SteelEye.com] wrote:
> On Mon, 2003-05-05 at 03:33, Mike Anderson wrote:
> > Example tree:
> > 
> > # tree /sys/class/scsi_host
> > /sys/class/scsi_host
> > |-- host0
> > |   |-- cmd_per_lun
> > |   |-- device -> ../../../devices/pci0/00:09.0/host0
> > |   |-- host_busy
> > |   |-- sg_tablesize
> > |   |-- unchecked_isa_dma
> > |   `-- unique_id
> 
> Could you elaborate a bit more on why the host properties are under the
> class tree, but the scsi_device properties are under the device tree.
> 
> I think this could be my misunderstanding of the class concept:  I
> thought it was going to be a unifying abstraction, e.g. a class for all
> tape devices (be they SCSI, ide or the oddball qic ones) that would
> export a unifying interface that all tapes could use.  Therefore, you
> have a device with a set of intrinsic properties exposed in the device
> tree plus a set of classes whose interfaces it chooses to export.
> 
> I could see us adding a scsi_device class and moving all the device
> properties under there too, I suppose.
> 
> What I think I'm looking for is clarification of what is a "class
> property" vs what is a "device property"
> 

Patrick can probably give a better clarification, but from the a past
driver model document:
"A device class describes a function that a device performs, regardless
of the bus on which a particular device resides"

The old class support was tied to drivers and devices where added to
a class when a driver bound to a device. This would as limited creating
a class scsi_device as the attributes would have existed without a upper
level driver binding to it.

A Scsi_Host seems to meet the previous description. The class container
also reduces the effort in locating Scsi_Host attributes which could be
located anywhere in the bus / legacy tree.

One could create a scsi_device class though it is already unified by the
constraint the only one type of "object" can exist on a "bus/devices"
list. It does make the lookup of attributes asymmetric and a class
"scsi_device" could be created to add uniformity.

Other classes to consider:
	(scsi_tape or tape), (scsi_disk or disk), (scsi_gen).
I believe Greg KH mentioned something to me about why we would select
scsi_tape over tape, but I have forgot the reason.

-andmike
--
Michael Anderson
andmike@us.ibm.com


  reply	other threads:[~2003-05-06 17:08 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-05-05  8:33 [RFC] scsi host sysfs support again [0/4] Mike Anderson
2003-05-05  8:34 ` [RFC] scsi host sysfs support again [1/4] Mike Anderson
2003-05-05  8:35   ` [RFC] scsi host sysfs support again [2/4] Mike Anderson
2003-05-05  8:37     ` [RFC] scsi host sysfs support again [3/4] Mike Anderson
2003-05-05  8:38       ` [RFC] scsi host sysfs support again [4/4] Mike Anderson
2003-05-05  8:38 ` [RFC] scsi host sysfs support again [0/4] Christoph Hellwig
2003-05-05  9:40   ` Douglas Gilbert
2003-05-05 10:00     ` Mike Anderson
2003-05-05  9:48   ` Mike Anderson
2003-05-05 10:17     ` Christoph Hellwig
2003-05-06  1:05       ` Mike Anderson
2003-05-07 15:44         ` Christoph Hellwig
2003-05-07 16:15           ` Mike Anderson
2003-05-07 16:41             ` Christoph Hellwig
2003-05-05 11:46 ` Douglas Gilbert
2003-05-05 21:45   ` Mike Anderson
2003-05-06  1:12     ` Douglas Gilbert
2003-05-06 16:28 ` James Bottomley
2003-05-06 17:23   ` Mike Anderson [this message]
2003-05-07 23:19     ` Willem Riede
2003-05-08  0:09       ` Douglas Gilbert
2003-05-08  1:44       ` Mike Anderson

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=20030506172312.GA1697@beaverton.ibm.com \
    --to=andmike@us.ibm.com \
    --cc=James.Bottomley@SteelEye.com \
    --cc=linux-scsi@vger.kernel.org \
    --cc=mochel@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox