Re: [PATCH] libata: rewrite SCSI host scheme to be one per ATA host

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, 2009-04-23 at 10:59 -0700, Grant Grundler wrote:
> > As to benefits, the phrase "more natural" means the code naturally aligns
> > with existing object topologies (ata_host becomes analagous to Scsi_Host),
> > which always has a long list of technical benefits.
> >
> > - we get to remove all the ugly hacks currently in place that assume
> > ata_port is _the_ first class object.
> > - we get to remove all the workarounds where SCSI assumes it manipulates all
> > devices on a controller (not true in current libata)
> > - SCSI (soon block) host-wide busy, block etc functionality now works as
> > expected
> > - it makes the libata conversion from SCSI to block layer easier
> > - it makes integration with SAS+SATA devices such as mvsas or ipr easier
> > - the list goes on; that is just off the top of my head, before my morning
> > Mountain Dew
> 
> Your initial list is good. In particular the issue around "SCSI Host-wide busy"
> working as expected. Of all the things listed, this is the only one that *I* can
> clearly identify as a user visible functional change.
> 
> I'm not familiar with the the "workarounds where SCSI assumes it manipulates
> all devices on a controller" issue. The few SATA controllers I've looked at can
> deal with each port independently - e.g.  discovery and phy reset. Anyway, this
> seems to be closely tied with "SCSI Host-wide Busy".
> 
> One reason I was thinking of NOT list above: "wide port" in SAS 2.0 controllers.
> aka "port aggregation". E.g. http://www.pmc-sierra.com/products/details/pm8005/
> 
> To change port aggregation on the fly requires the SCSI host controller to be
> manageable object. This should be a change in transport and not a change
> in devices available....and there are some other problems with implementing
> this but this is the main one I initially see.

This isn't really a correct assessment.  Wide ports are a SAS only
problem.  So sas has phys and ports ... and it's the port (essentially a
virtual object) that communicates in the link diagram.

A wide port has two or more phys in it.  You can see the handling of
this in libsas and the sas transport class today, but it's all handled
in a fashion completely invisible to the SCSI mid layer ... it's an
inessential abstraction, if you will.

James


--
To unsubscribe from this list: send the line "unsubscribe linux-ide" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Filesystems]     [Linux SCSI]     [Linux RAID]     [Git]     [Kernel Newbies]     [Linux Newbie]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Samba]     [Device Mapper]

  Powered by Linux