Alrighty, probably my final update.
Workaround for FW 510A's SATA no-connect on power-on issue (and description of the issue)
The only good news: I've found a way to resolve this issue in my setup.
Firstly, I identified the exact problem: when the expander is powered on when already connected to powered-on backplanes and drives, drive detection is messed up.
I have four 8087 cables out of the IBM expander, each going to one Chenbro 4-drive SAS/SATA backplane. Connected to those four backplanes I have a total of 15 x SATA3 drives, all Toshiba DT01ACA200 drives (though the older ones show up as HGST, as Toshiba rebranded them.)
When I power the IBM on with those cables in place and with the backplanes and drives already powered, the controller sees only two drives. Which makes no sense, as one backplane has three drives connected, the others have four. I believe the two it shows are always on a single backplane. Clearly something gets screwy in the IBM's drive detection and it just quits on the job.
So to resolve this, the IBM needs to be powered on before it gets a chance to see the backplanes. Either the cables need to be connected after the IBM powers up (as I was doing manually before) or, better, the IBM needs to be powered on while the backplanes are turned off. As long as the IBM can power up before the backplanes/drives are visible, everything is OK.
My expander is physically sitting in my JBOD case in a PCIe power adapter and was originally powered via 4-pin molex from the JBOD PSU. I've now changed this so that I am instead running a long molex cable out of the back of my server case into the JBOD to power the expander directly from the server.
Now the expander comes on when the server does. I then power the JBOD a few seconds later, and everything works. It does mean that I need to remember that if I power down the server, I must also power down the JBOD so I can stagger its power-on.
Other people using the expander might well already have it powered from the server because they're using a real PCIE slot for power - the way it's designed to be installed. That would achieve the same result. Of course it may well be that this isn't anyway an issue for everyone, as it might be specific to my backplanes or drives.
Another, better option I am considering is to use a second, independent power supply for the PCIe adapter, inside the JBOD case. Just a little 20W sort of thing. That would remove the extra cable between server and JBOD and would also mean that a server power-down wouldn't require a JBOD power down, as I would be able to keep the expander powered independent of the server.
Final failed firmware tests
I've confirmed the following regarding the performance issue found on FW versions 602A and later:
- The problem persists when tested with a different LSI controller
- I had originally tested with a 9207-8e / SAS2308 controller, I then additionally tried with a 9201-8i / SAS2008.
- The problem exists identically on both of my two expanders
- I went ahead and upgraded my original expander to 602A, confirming that it then immediately hit the same performance issue
- So it's surely solely related to the FW version.
Learning: The IBM expander has specific output ports - not any port for any purpose
Finally, I had wondered if there might be any difference using different ports on the expander. But this failed immediately and completely, as it appears not to be possible on the IBM expander to use any port for any purpose.
Specifically, while any port can be used to talk
to the expander - I can use any of the six ports for a connection to the LSI controller - the same is not true for backplanes/disks. The expander only sees disks if they are connected to one of the four ports marked 'backplane'; when they are connected to one of the two 'input' ports, their drives do not show in the LSI BIOS or in the OS.
So as I want to do a 2 input => 4 output setup, this means I have to have the controller connected to the two ports labelled 'input' otherwise I can't use all four output ports.
This surprised me, as when researching the HP expander I had read several times that expanders are "like network switches" in that any port can talk to any other port; there aren't specific "controller/input" ports or "backplane/output" ports, even if the card is physically labelled as such.
That proved correct for the HP but does not appear to be for the IBM. I tested it on two FW versions (602A and 633A) across both of my IBM expanders without success.
Still a great expander!
So that's it. It's been a frustrating couple of days. But I still have an expander capable of turning two LSI ports into four backplane ports achieving 6G with SATA, for only £30. Overall it's still a great improvement over the HP in my setup.
It does have the power-on issue, but the symptoms of that can be almost completely eliminated with some alternate wiring that ensures the expander powers-on before the backplanes and disks. That is assuming others even experience the issue, which may not be a general problem. And won't be a problem at all if you only want to use one cable from controller to expander, in which case you can upgrade to the latest FW.
And indeed, I'd certainly recommend trying the latest FW even if you do want full 2 x 6G performance, as again maybe the issue I have is not general and others might not see it.
Either way, I'd definitely highly recommend the IBM to anyone who needs good performance out of a cheap expander. If you don't need high performance from expander to controller, or if you only plan to use SAS, then the HP is a little cheaper (£25 instead of £30) and has more ports (nine versus six).
But if like me you really want to have 2 x 6G links between expander and controller with SATA disks, the IBM seems in a class of its own at this used price.