Subject: Re: CCISS support, anyone?
To: Tonnerre LOMBARD <tonnerre@bsdprojects.net>
From: Jonathan Stone <jonathan@Pescadero.dsg.stanford.edu>
List: tech-kern
Date: 03/15/2006 12:13:58
In message <20060315175159.GJ5574@penrose.thundrix.ch>,
Tonnerre LOMBARD writes:

Hi,

>Salut,
>
>On Wed, Mar 15, 2006 at 12:36:51PM -0500, Thor Lancelot Simon wrote:
>> I don't really see how it's "common" if it's implemented only by one
>> moderately obscure brand of RAID adapter.  The great thing about standards
>> is that there are so many to choose from!
>>
>> I agree that the kernel config file comment should help users see which
>> cards this supports, not just recite some marketing words. :-)
>
>But if the support ever broadens 

Errr, you do realize that here you're implicitly conceding that the
Common in CISS is (as Thor says) not merely maretking words?

You do also realise that CISS is *not* in any way an official
standard?  (e.g., it's nto a T10/T11 document?) That it's clearly
marked as a Compaq-internal "standard" which happens to be
publically available ("open")?


>- which I hope it will - 

Other vendors adopt CISS? Huh? Let's think look at that idea for a moment.

CISS is a Compaq/HP internal standard, implemented by certain
Compaq/HP controllers. Other RAID vendors gain no advantage from
adopting this "common" interface. In fact, there are considerable
*dis*incentives: CISS is poorly specified, allegedly incomplete, not
compatible with any other vendor's existing drivers, installed hw
base, or their customers' installed software (driver) base.  Why would
any sane engineer at Adaptec or LSI or Mylex drop their existing
hardware intefaces, and adopt a Compaq "open standard" instead?

Here, I'll quote some comments from the FreeBSD ciss(4) source code:

 *
 * This driver supports CISS as defined in the document "CISS Command
 * Interface for SCSI-3 Support Open Specification", Version 1.04,
 * Valence Number 1, dated 20001127, produced by Compaq Computer
 * Corporation.  This document appears to be a hastily and somewhat
 * arbitrarlily cut-down version of a larger (and probably even more
 * chaotic and inconsistent) Compaq internal document.  Various
 * details were also gleaned from Compaq's "cciss" driver for Linux.
 *

and:

 * [...]                   In addition, the CISS command set is by no
 * means adequate to support the functionality of a RAID controller,
 * and thus the supported Compaq adapters utilise portions of the
 * control protocol from earlier Compaq adapter families.
 *
 * Note that we only support the "simple" transport layer over PCI.
 * This interface (ab)uses the I2O register set (specifically the post
 * queues) to exchange commands with the adapter.  Other interfaces
 * are available, but we aren't supposed to know about them, and it is
 * dubious whether they would provide major performance improvements
 * except under extreme load.
 *

If those quotes are accurate, I honestly don't undertand why *anyone*
would expect other RAID vendors might acutally adopt CISS.  It make no
technical sense, none at all.


>should we be
>forced to have an infinitely long comment after the driver?
>
>I'd just leave it as-ciss.

Your time is (of course) yours to spend as you see fit. But I expect
the comments will end up being text which helps NetBSD users
understand which cards are supported by ciss(4), and not marketing fluff.