So I've been experimenting with various Highpoint controllers. There are posts every week or 2 involving people with problems with their Highpoint controllers. In the past Highpoint controllers have been a cost effective hardware RAID. I've put together this post to help people that have the controller family below. This post is the result of 5 days of experimenting with several controllers I own. Use the information below at your own risk.
I have personally experimented with the 22xx, 23xx, 35xx and 43xx series adapters. The adapters I used in particular are the 2220, 2320, 3560 and 4320(yes, I used highpoint controllers for many years as servers for home use and small business). As of FreeNAS build 12037 and newer the entire 35xx and 43xx line of controllers should function properly. Prior to build 12037 there are driver issues I corrected via ticket 1704 for some of the 35xx and 43xx series controllers(thanks delphij!). All builds including and after 8.3.0-BETA1 include the fix for the affected controllers.
Keep in mind that FreeNAS performs most effectively when NOT part of a hardware RAID. My comments below will reflect that philosophy. I will also assume that you will be creating zpools that involve mirrors or parity for reliability.
Note: SMART data and serial numbers are NOT currently working with ANY Highpoint controllers. This is a feature that is being actively pursued by myself and William Grzybowski(developer). Serial and SMART may or may not work ever. The Highpoint CLI doesn't work "out of the box" with FreeNAS as well as other issues that
can be resolved, but will be time consuming to implement. It is possible that the 22xx and 23xx will never have support for SMART and serial numbers because they are so old and the development resources needed to make these work are just not worth the effort. I will update this page with more information when I have more solid information. Sorry for not having a firm answer.
Here's a list of limitations and problems with the various families:
22xx & 23xx - These controllers do NOT mount hard drives that are not part of a RAID array as a "Legacy Disk". To be mounted as a "Legacy Disk" they MUST contain a valid partition table with at least one partition. Unfortunately ZFS partitions are NOT identified as valid partitions.
The workaround is to create a partition on the hard drive that is FAT16, FAT32 or NTFS of any size. In my case I created a 100MB partition that is FAT16. If at any time your FAT16 partition table entry is deleted or otherwise corrupted you WILL lose the ability to access your ZFS partition when connected to a Highpoint controller.
Also it should be mentioned that if a disk fails(in my case I tested this by disconnecting the power to a hard drive.. do not do this if you have data on the zpool!!!) you will get the RAID controller audible alarm. FreeNAS will
not acknowledge the failed drive since the disk is not "detached" from the controller in the software sense. Presumably this is because these controllers do not support hot swap on FreeBSD. The only way you will be able to acknowledge that a disk is failed is possibly a local LED(one disk does not have any activity while the rest of the drives do), doing a 'zfs status -v' and noticing that one drive has alot of errors, audible alarm or if you reboot the machine. If you reboot the machine the status of the zpool will change to DEGRADED. Note that the zpool status will
not change until you reboot, but I'd expect that the audible alarm will get your attention rather quickly. It's very loud and quite annoying. The only way I know of to silence the alarm is to shutdown/reboot the server.
Overall, if you have the audible alarm enabled that should provide sufficient warning that a drive has failed. Since hot-swap is not supported you will need to shutdown the server, insert a new hard drive then power up the server and add the new hard drive to the zpool per the FreeNAS manual.
To perform the workaround you will need to connect each hard disk to a standard SATA controller to create the partition table entry. After the entry is created you can then remove the drive and it will function correctly as a "Legacy Disk" on the Highpoint controller.
Note: If you plug in a hard drive that is blank(aka no partition table at all) it will be identified as "New" to the controller. My computer panic'd during bootup anytime a "New" hard drive was attached to my 2220 and 2320. Because of this you MUST connect the hard drive to a different controller(onboard recommended) to setup the partition.
Determine which device your hard drive is assigned to. Use the 'dmesg' command to view the devices. My devices are always ada
X or da
X. For the following example my hard drive was ada1:
At a console, type the following commands. If you have data on the hard drives make sure you backup the data as these commands will erase all data on the hard drives.
# dd if=/dev/zero of=/dev/ada1 bs=512 count=10k
# gpart create -s gpt ada1
# gpart add -t mbr -s 100M ada1
# newfs_msdos /dev/ada1p1
Because these Highpoint controllers do not work out of the box and require this workaround it is not recommended that you use the 22xx or 23xx series controllers in a production environment. Additionally any hard drive that is ever used on this controller in the future(spares/upgrades,etc) will require this modification before installing in the FreeNAS server if attaching the hard disk to the RocketRAID controller to work properly. Do not expect wide support and assistance if you use these controllers. You are on your own and at your own peril by following the instructions above. I will try to help if you post in this thread, but if you value your data I would not recommend you use these old controllers. Nonetheless I'm sure some people will do it anyway, and I'm writing this post to hopefully once and for all answer the questions people have about these 2 controller families.
35xx & 43xx - These controllers will mount all hard drives as a "Legacy Disk" if the RAID mode is changed to Non-RAID adapter mode. This will allow for proper operation of the hard disks with no changes as listed on the 22xx or 23xx series controllers above.
The optimal configuration is to setup the controller in "Non-RAID adapter mode"in the controller's BIOS. After this is done and a reboot performed the hard drives will be picked up as da
X devices.
Also it should be mentioned that if a disk fails(in my case I tested this by disconnecting the power to a hard drive.. do not do this if you have data on the zpool!!!) you will get the RAID controller audible alarm. FreeNAS will
not acknowledge the failed drive since the disk is not "detached" from the controller in the software sense. Presumably this is because these controllers do not support hot swap on FreeBSD. The only way you will be able to acknowledge that a disk is failed is possibly a local LED(one disk does not have any activity while the rest of the drives do), doing a 'zfs status -v' and noticing that one drive has alot of errors, audible alarm or if you reboot the machine. If you reboot the machine the status of the zpool will change to DEGRADED. Note that the zpool status will
not change until you reboot, but I'd expect that the audible alarm will get your attention rather quickly. It's very loud and quite annoying. The only way I know of to silence the alarm is to shutdown/reboot the server.
Edit: It has been brought to my attention that there are ways in which a disk can fail completely and not cause an audible alarm. This means it is possible that a disk can fail and you might never get a warning. So these generations of controllers should be avoided and never used with data that doesn't have thorough backups.
452x - These controllers work fine out of the box with any version after 8.3-RELEASE. I received the controller a little too late to get the changes into 8.3. Any hard drive that is not in a hardware RAID array is a "legacy disk". Everything works fine except SMART and serial numbers in the GUI. These issues are being addressed and hopefully will be supported soon. I will update this posting when I have more information. Edit: It appears that SMART is almost certainly never going to be supported as Highpoint has no way of querying disks on the controller and comparing them to actual devices. So these controllers should be avoided at all costs.
Overall, if you have the audible alarm enabled that should provide sufficient warning that a drive has failed. Since hot-swap is not supported you will need to shutdown the server, insert a new hard drive then power up the server and add the new hard drive to the zpool per the FreeNAS manual.
See ticket
https://support.freenas.org/ticket/1932 for outstanding issues with some RocketRAID controllers.
2720SGL - I don't own one of these, but we've had many users that tried to use these. The sound great on the surface, but they aren't great once you have one. One of our users(JohnKnee) has provided a good discussion on various problems with these. In short, don't buy them...buy an IBM M1015 like we already recommend for everyone. If you already have it and can't return read his post
here and understand that you are about to have potential serious problems.
------
If you have one of these controllers and are having issues or question I will attempt to provide assistance if I can.
Keywords: Highpoint RocketRAID 2210 2220 2224 2240 2300 2302 2304 2310 2312 2314 2314MS 2320 2322 2340 2522 3510 3520 3522 3530 3540 3560 4310 4311 4320 4321 4322 4520 4522