version 1.57, 2005/04/20 12:28:43 |
version 1.58, 2005/09/27 04:31:13 |
|
|
<p> |
<p> |
<h3> |
<h3> |
<ul> |
<ul> |
|
<li><a href="#38">3.8: "Hackers of the Lost RAID"</a> |
<li><a href="#37">3.7: "The Wizard of OS"</a> |
<li><a href="#37">3.7: "The Wizard of OS"</a> |
<li><a href="#36">3.6: "Pond-erosa Puff (live)"</a> |
<li><a href="#36">3.6: "Pond-erosa Puff (live)"</a> |
<li><a href="#35">3.5: "CARP License" and "Redundancy must be free"</a> |
<li><a href="#35">3.5: "CARP License" and "Redundancy must be free"</a> |
|
|
<p> |
<p> |
|
|
<hr> |
<hr> |
|
<a name=38></a> |
|
<h2><font color="#00b000"><a href="38.html"> |
|
3.8: "Hackers of the Lost RAID"</a></font></h2> |
|
<table border=0 cellspacing=0 cellpadding=2 width="100%"> |
|
<tr> |
|
<td valign="top" width="33%"> |
|
<a href="orders.html">[Order OpenBSD 3.8 or other items]</a><br> |
|
OpenBSD 3.8 CD2 track 2 is an<br> |
|
uncompressed copy of this song.<br> |
|
<a href="ftp://ftp.openbsd.org/pub/OpenBSD/songs/song38.mp3">MP3 song (4:24 minutes, 8.1MB)</a><br> |
|
<a href="ftp://ftp.openbsd.org/pub/OpenBSD/songs/song38.ogg">OGG song (4:24 minutes, 5.6MB)</a><br> |
|
<a href="ftp://ftp.openbsd.org/pub/OpenBSD/songs/song38b.mp3">MP3 accoustic version (4:22 minutes, 8.0MB)</a><br> |
|
<a href="ftp://ftp.openbsd.org/pub/OpenBSD/songs/song38b.ogg">OGG accoustic version (4:22 minutes, 5.5MB)</a><br> |
|
<br> |
|
<br> |
|
<a href="images/Jones.jpg"><img alt="Jones" src="images/Jones.jpg"></a> |
|
<br> |
|
<br> |
|
<em> |
|
For a multitude of (stupid) reasons, vendors often attempt to lock |
|
out our participation with their customers by refusing to give our |
|
programmers sufficient documentation so that we can properly support |
|
their devices. |
|
<p> |
|
Take Adaptec for instance. Before the 3.7 release we disabled support |
|
for the |
|
<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=aac&sektion=4">aac(4)</a> |
|
Adaptec RAID driver because negotiations with the Adaptec had failed. |
|
They refused to give us documentation. Without documentation, support |
|
for their controller had always been poor. The driver had bugs (which |
|
affected some users more than others) which caused crashes, and of |
|
course there was no RAID management support. Apparently most of these |
|
bugs are apparently because the Adaptec controllers have numerous buggy |
|
firmware issues which require careful workarounds; without documentation |
|
we cannot solve these issues. |
|
<p> |
|
The driver was written by an OpenBSD developer, who cribbed parts |
|
of it from a FreeBSD driver written by an ex-Adaptec employee. But no |
|
public documentation exists, and Adaptec has dozens of cards with |
|
different firmware issues. All of this adds up to a very desperate |
|
development model -- it becomes very hard for the principle of |
|
"quality" to show its head. |
|
<p> |
|
RAID devices have two main qualities that people buy them for: |
|
<br> |
|
<ul> |
|
<li>Redundant |
|
<li>Repair |
|
</ul> |
|
You want a RAID unit to provide you with redundancy, so that if some drives |
|
fail your data is not lost. But once a drive has failed, you require your |
|
array to (automatically, most likely) perform the operations that repair |
|
itself, so that it is functioning perfectly again. |
|
<p> |
|
Some vendors (or like the above Adaptec case, ex-employee) have |
|
sometimes given us some documentation so that we could write drivers, |
|
so that their devices could support Redundancy. But these vendors have |
|
never given us any documentation for performing Repairs. |
|
<p> |
|
Instead these vendors have tried to pass out non-free RAID management |
|
tools. These are typically gigantic Linux binaries, or some crazy thing, that |
|
is supposed to work through a bizzare interface in the device driver, which |
|
we are apparently supposed to write code for without any documentation. |
|
<p> |
|
And since we refuse to accept our users being forced into depending on |
|
vendor binaries, we have reverse engineered the management interface for |
|
the AMI controllers. |
|
<p> |
|
There is no great "intellectual property" in this stuff, it is all |
|
rather simple primitives. This is all that we need to implement |
|
basic RAID management: |
|
<ul> |
|
<li>SCSI transactions on the back-side busses |
|
<li>Discovering which drives are in which volumes |
|
<li>Being able to silence the buzzer |
|
<li>Marking a new drive as a Hot-Spare |
|
</ul> |
|
<p> |
|
The AMI driver needed to support these small primitive operations. |
|
And once we had that, we rely on something else which we know: Almost |
|
all the RAID controllers would need the same primitives. |
|
<p> |
|
Thus armed, we were able to write a generic framework which would later |
|
work on other vendors' RAID cards, that is, once we get documentation |
|
or do some reverse engineering for their products. |
|
<p> |
|
But having been ignored for so long by these vendors, it is not clear when if |
|
ever we will get around to writing that support for Adaptec RAID |
|
controllers now. And Adaptec has gone and bought ICP Vortex, which |
|
may mean we can never get documentation for the |
|
<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=gdt&sektion=4">gdt(4)</a> |
|
controllers. |
|
The "Open Source Friendly liar" IBM owns Mylex, and Mylex has told us we |
|
would not get documentation, either. |
|
3Ware has lied to us and our users so many times they make politicians |
|
look saintly. |
|
<p> |
|
Until other vendors give us documentation, if you want reliable RAID |
|
in OpenBSD, please buy |
|
<a href="http://www.lsilogic.com/products/megaraid/index.html">LSI/AMI</a> |
|
RAID cards. And everything |
|
<a href="http://marc.theaimsgroup.com/?l=openbsd-misc&m=112630095818062&w=2"> |
|
will just work</a>. |
|
<p> |
|
And keep pestering the other vendors. |
|
<br> |
|
</em> |
|
</td><td valign="top" width="3%"> |
|
<br> |
|
</td><td valign=top width="30%"> |
|
<font color="#b00000">Narrator:</font> |
|
Welcome friends to the adventures of Puffiana Jones!<br> |
|
<br> |
|
Brought to you by the good people at OpenBSD!<br> |
|
<br> |
|
Whether braving jungles of wires, oceans of code, or hacking the most |
|
treacherous of crypts, one fish fights for justice. With bravery and |
|
morality like none other, one name rings true. Puffiana Jones, famed |
|
hackologist and adventurer!<br> |
|
<br> |
|
Tracking down valuable artifacts and returning them to the public from |
|
the steely grip of greed. Many a villain has he pummeled, many a vile |
|
vendor has he thwarted, countless thugs, lawyers and kitties abound.<br> |
|
<br> |
|
Join us now in his latest adventure. Hackers of the Lost RAID!<br> |
|
<br> |
|
<br> |
|
<font color="#b00000">Marlus:</font> |
|
Puffy, this mission will be dangerous.<br> |
|
<br> |
|
<font color="#b00000">Puffy:</font> |
|
I'm a careful guy Marlus.<br> |
|
<br> |
|
<br> |
|
<font color="#b00000">Puffy and Salmah:</font> |
|
They're hacking in the wrong place!<br> |
|
<br> |
|
<br> |
|
<font color="#b00000">Beluge:</font> |
|
You will never get the documentation Jones! Ah ha ha ha ha!<br> |
|
<br> |
|
<font color="#b00000">Puffy:</font> |
|
Now you're gettin' nasty.<br> |
|
<br> |
|
<br> |
|
<font color="#b00000">Puffy:</font> |
|
SCSI's, why'd it have to be SCSI's?<br> |
|
<br> |
|
<font color="#b00000">Salmah:</font> |
|
API's, very dangerous. You go first.<br> |
|
<br> |
|
<br> |
|
<font color="#b00000">Narrator:</font> |
|
Through thick and thin our hero persists, until finally, |
|
there before him |
|
lies the answer of the ages. How to get OpenBSD, the world's most |
|
secure operating system, |
|
to communicate with the lost RAID. But alas, he is foiled once again by |
|
the evil Neozis. Again he must chase the truth. Will our hero prevail?<br> |
|
<br> |
|
Triumphant again! Join us next time for the continuing adventures of |
|
Puffiana Jones!<br> |
|
<br> |
|
<br> |
|
</td><td valign=top width="33%"> |
|
<img src="images/38song.gif"><br> |
|
</td></tr></table> |
|
<p> |
|
<em> |
|
CD 2 track 2 is an audio track entitled "Hackers of the Lost RAID". |
|
Music composed by Ty Semaka and Jonathan Lewis. |
|
The Moxam Orchestra programmed and played by Jonathan Lewis. |
|
Vocals and Lyrics by Ty Semaka. Drums by Charlie Bullough. |
|
Recorded, mixed and mastered by Jonathan Lewis of Moxam Studios. |
|
(1-403-233-0350). |
|
<br> |
|
<br> |
|
</em> |
|
|
|
<hr> |
<a name=37></a> |
<a name=37></a> |
<h2><font color="#00b000"><a href="37.html"> |
<h2><font color="#00b000"><a href="37.html"> |
3.7: "Wizard of OS"</a></font></h2> |
3.7: "Wizard of OS"</a></font></h2> |
|
|
<a href="orders.html">[Order OpenBSD 3.7 or other items]</a><br> |
<a href="orders.html">[Order OpenBSD 3.7 or other items]</a><br> |
OpenBSD 3.7 CD2 track 2 is an<br> |
OpenBSD 3.7 CD2 track 2 is an<br> |
uncompressed copy of this song.<br> |
uncompressed copy of this song.<br> |
<a href="ftp://ftp.openbsd.org/pub/OpenBSD/songs/song37.mp3">MP3 version of song (10:08 minutes, 18MB)</a><br> |
<a href="ftp://ftp.openbsd.org/pub/OpenBSD/songs/song37.mp3">MP3 song (10:08 minutes, 18MB)</a><br> |
<a href="ftp://ftp.openbsd.org/pub/OpenBSD/songs/song37.ogg">OGG version of song (10:08 minutes, 13MB)</a><br> |
<a href="ftp://ftp.openbsd.org/pub/OpenBSD/songs/song37.ogg">OGG song (10:08 minutes, 13MB)</a><br> |
<br> |
<br> |
<br> |
<br> |
<a href="images/Wizard.jpg"><img alt="Wizard" src="images/Wizard.jpg"></a> |
<a href="images/Wizard.jpg"><img alt="Wizard" src="images/Wizard.jpg"></a> |
|
|
Jonathan Lewis. Co-Arranged by Ty Semaka & Jonathan Lewis. |
Jonathan Lewis. Co-Arranged by Ty Semaka & Jonathan Lewis. |
Recorded, mixed and mastered by Jonathan Lewis at Moxam Studios |
Recorded, mixed and mastered by Jonathan Lewis at Moxam Studios |
(1-403-233-0350). |
(1-403-233-0350). |
|
|
|
|
<br> |
<br> |
<br> |
<br> |
</em> |
</em> |
|
|
<a href="orders.html">[Order OpenBSD 3.6 or other items]</a><br> |
<a href="orders.html">[Order OpenBSD 3.6 or other items]</a><br> |
OpenBSD 3.6 CD2 track 2 is an<br> |
OpenBSD 3.6 CD2 track 2 is an<br> |
uncompressed copy of this song.<br> |
uncompressed copy of this song.<br> |
<a href="ftp://ftp.openbsd.org/pub/OpenBSD/songs/song36.mp3">MP3 version of song (4:00 minutes, 7.7MB)</a><br> |
<a href="ftp://ftp.openbsd.org/pub/OpenBSD/songs/song36.mp3">MP3 song (4:00 minutes, 7.7MB)</a><br> |
<a href="ftp://ftp.openbsd.org/pub/OpenBSD/songs/song36.ogg">OGG version of song (4:00 minutes, 5.2MB)</a><br> |
<a href="ftp://ftp.openbsd.org/pub/OpenBSD/songs/song36.ogg">OGG song (4:00 minutes, 5.2MB)</a><br> |
<br> |
<br> |
<br> |
<br> |
<a href="images/Ponderosa.jpg"><img alt="CARP" src="images/Ponderosa.jpg"></a> |
<a href="images/Ponderosa.jpg"><img alt="CARP" src="images/Ponderosa.jpg"></a> |
|
|
<a href="orders.html">[Order OpenBSD 3.5 or other items]</a><br> |
<a href="orders.html">[Order OpenBSD 3.5 or other items]</a><br> |
OpenBSD 3.5 CD2 track 2 is an<br> |
OpenBSD 3.5 CD2 track 2 is an<br> |
uncompressed copy of this skit & song.<br> |
uncompressed copy of this skit & song.<br> |
<a href="ftp://ftp.openbsd.org/pub/OpenBSD/songs/song35.mp3">MP3 version of song (5:21 minutes, 9.7MB)</a><br> |
<a href="ftp://ftp.openbsd.org/pub/OpenBSD/songs/song35.mp3">MP3 song (5:21 minutes, 9.7MB)</a><br> |
<a href="ftp://ftp.openbsd.org/pub/OpenBSD/songs/song35.ogg">OGG version of song (5:21 minutes, 6.8MB)</a><br> |
<a href="ftp://ftp.openbsd.org/pub/OpenBSD/songs/song35.ogg">OGG song (5:21 minutes, 6.8MB)</a><br> |
<br> |
<br> |
<br> |
<br> |
<a href="images/Carp.gif"><img alt="CARP" src="images/Carp.gif"></a> |
<a href="images/Carp.gif"><img alt="CARP" src="images/Carp.gif"></a> |
|
|
<a href="orders.html">[Order OpenBSD 3.4 or other items]</a><br> |
<a href="orders.html">[Order OpenBSD 3.4 or other items]</a><br> |
OpenBSD 3.4 CD2 track 2 is an<br> |
OpenBSD 3.4 CD2 track 2 is an<br> |
uncompressed copy of this song.<br> |
uncompressed copy of this song.<br> |
<a href="ftp://ftp.openbsd.org/pub/OpenBSD/songs/song34.mp3">MP3 version of song (3.5 minutes, 7.0MB)</a><br> |
<a href="ftp://ftp.openbsd.org/pub/OpenBSD/songs/song34.mp3">MP3 song (3.5 minutes, 7.0MB)</a><br> |
<a href="ftp://ftp.openbsd.org/pub/OpenBSD/songs/song34.ogg">OGG version of song (3.5 minutes, 5.1MB)</a><br> |
<a href="ftp://ftp.openbsd.org/pub/OpenBSD/songs/song34.ogg">OGG song (3.5 minutes, 5.1MB)</a><br> |
<br> |
<br> |
<br> |
<br> |
<a href="images/Hood.gif"><img alt="Puffy Hood" src="images/Hood.gif"></a> |
<a href="images/Hood.gif"><img alt="Puffy Hood" src="images/Hood.gif"></a> |
|
|
<a href="orders.html">[Order OpenBSD 3.3 or other items]</a><br> |
<a href="orders.html">[Order OpenBSD 3.3 or other items]</a><br> |
OpenBSD 3.3 CD2 track 2 is an<br> |
OpenBSD 3.3 CD2 track 2 is an<br> |
uncompressed copy of this song.<br> |
uncompressed copy of this song.<br> |
<a href="ftp://ftp.openbsd.org/pub/OpenBSD/songs/song33.mp3">MP3 version of song (4 minutes, 7.5MB)</a><br> |
<a href="ftp://ftp.openbsd.org/pub/OpenBSD/songs/song33.mp3">MP3 song (4 minutes, 7.5MB)</a><br> |
<a href="ftp://ftp.openbsd.org/pub/OpenBSD/songs/song33.ogg">OGG version of song (4 minutes, 3.3MB)</a><br> |
<a href="ftp://ftp.openbsd.org/pub/OpenBSD/songs/song33.ogg">OGG song (4 minutes, 3.3MB)</a><br> |
<br> |
<br> |
<br> |
<br> |
<a href="images/Barbarian.gif"><img alt="Puff the Barbarian" src="images/Barbarian.gif"></a> |
<a href="images/Barbarian.gif"><img alt="Puff the Barbarian" src="images/Barbarian.gif"></a> |
|
|
<a href="orders.html">[Order OpenBSD 3.2 or other items]</a><br> |
<a href="orders.html">[Order OpenBSD 3.2 or other items]</a><br> |
OpenBSD 3.2 CD2 track 2 is an<br> |
OpenBSD 3.2 CD2 track 2 is an<br> |
uncompressed copy of this song.<br> |
uncompressed copy of this song.<br> |
<a href="ftp://ftp.openbsd.org/pub/OpenBSD/songs/song32.mp3">MP3 version of song (3 minutes, 2.5MB)</a><br> |
<a href="ftp://ftp.openbsd.org/pub/OpenBSD/songs/song32.mp3">MP3 song (3 minutes, 2.5MB)</a><br> |
<a href="ftp://ftp.openbsd.org/pub/OpenBSD/songs/song32.ogg">OGG version of song (3 minutes, 2.3MB)</a><br> |
<a href="ftp://ftp.openbsd.org/pub/OpenBSD/songs/song32.ogg">OGG song (3 minutes, 2.3MB)</a><br> |
<br> |
<br> |
<br> |
<br> |
<a href="images/MrPond.gif"><img alt="Mr Pond" src="images/MrPond.gif"></a> |
<a href="images/MrPond.gif"><img alt="Mr Pond" src="images/MrPond.gif"></a> |
|
|
<a href="orders.html">[Order OpenBSD 3.1 or other items]</a><br> |
<a href="orders.html">[Order OpenBSD 3.1 or other items]</a><br> |
OpenBSD 3.1 CD2 track 2 is an<br> |
OpenBSD 3.1 CD2 track 2 is an<br> |
uncompressed copy of this song.<br> |
uncompressed copy of this song.<br> |
<a href="ftp://ftp.openbsd.org/pub/OpenBSD/songs/song31.mp3">MP3 version of song (3 minutes, 2.9MB)</a><br> |
<a href="ftp://ftp.openbsd.org/pub/OpenBSD/songs/song31.mp3">MP3 song (3 minutes, 2.9MB)</a><br> |
<a href="ftp://ftp.openbsd.org/pub/OpenBSD/songs/song31.ogg">OGG version of song (3 minutes, 2.3MB)</a><br> |
<a href="ftp://ftp.openbsd.org/pub/OpenBSD/songs/song31.ogg">OGG song (3 minutes, 2.3MB)</a><br> |
<br> |
<br> |
<br> |
<br> |
<a href="images/Systemagic.jpg"><img alt="Systemagic" src="images/Systemagic.jpg"></a> |
<a href="images/Systemagic.jpg"><img alt="Systemagic" src="images/Systemagic.jpg"></a> |
|
|
<a href="orders.html">[Order OpenBSD 3.0 or other items]</a><br> |
<a href="orders.html">[Order OpenBSD 3.0 or other items]</a><br> |
OpenBSD 3.0 CD2 track 2 is an<br> |
OpenBSD 3.0 CD2 track 2 is an<br> |
uncompressed copy of this song.<br> |
uncompressed copy of this song.<br> |
<a href="ftp://ftp.openbsd.org/pub/OpenBSD/songs/song30.mp3">MP3 version of song (3 minutes, 2.9MB)</a><br> |
<a href="ftp://ftp.openbsd.org/pub/OpenBSD/songs/song30.mp3">MP3 song (3 minutes, 2.9MB)</a><br> |
<a href="ftp://ftp.openbsd.org/pub/OpenBSD/songs/song30.ogg">OGG version of song (3 minutes, 2.3MB)</a><br> |
<a href="ftp://ftp.openbsd.org/pub/OpenBSD/songs/song30.ogg">OGG song (3 minutes, 2.3MB)</a><br> |
<br> |
<br> |
<br> |
<br> |
<a href="images/Rock.jpg"><img alt="Rock" src="images/Rock.jpg"></a> |
<a href="images/Rock.jpg"><img alt="Rock" src="images/Rock.jpg"></a> |