Friday, April 11, 2014

HighPoint RocketRAID 2320 (rr232x) on Ubuntu 12.04

HighPoint was not very forward-thinking when they produced the RocketRAID 2320, and the only available drivers assume that you're running 2.4 <= kernel <= 2.6.  Like, really badly:

$ uname -r
3.2.0-60-generic
$ make
../../../inc/linux/Makefile.def:85: *** Only kernel 2.4/2.6 is supported but you use 2.2.  Stop.

Oof. They also don't compile when you remove that check, because kernel headers and a the prototypes for a handful of system calls have changed. Incredibly, this device is still on sale despite the obvious lack of interest from the manufacturer -- if you're looking for a cheap RAID controller for Linux, look elsewhere!

The latest rr232x driver version (1.10) doesn't appear to be on the HighPoint site, but fortunately there is a mirror here: http://thelinuxexperiment.com/blog/wp-content/uploads/2010/07/rr232x-linux-src-v1.10-090716-0928.tar.gz [blog post].

Untar that, then grab and gunzip this patch: http://cakebox.homeunix.net/wordpress/wp-content/uploads/2013/01/rr232x-linux-src-v1.10.patch.gz [blog post].

Apply the patch:

$ cd rr232x-linux-src-v1.10
$ patch -p1 < /path/to/rr232x-linux-src-v1.10.patch

Then build:

$ cd product/rr232x/linux
$ make
$ sudo make install
$ sudo modprobe rr232x  # load it up!

You should see the device initialization (and any drives enumerated) in dmesg.