mfi(4) users and foreign configs

If you have a mfi(4) device – in other words, a LSI MegaRAID SAS driver – you can now see/import/clear/etc. foreign configurations, thanks to this commit from Sascha Wildner, tested by Francois Tigeot, and originally from FreeBSD.

For the confused, ‘foreign’ means any disk hooked to a RAID controller that isn’t part of a configuration the RAID device already knows about.  A replacement disk, or more worryingly, a good disk gone bad/unrecognizable.  (I’ve had both.)

Do you have a wpi(4) or iwi(4) device?

If you have an ath(4), wpi(4) or iwi(4) wireless network link, and you’re running DragonFly-master, please update.  Sepherosa Ziehau has pushed Johannes Hoffman’s wlan_serialize branch, which means bringing up wlan0 is a bit easier – and less crashy.

It needs to be tested for wpi(4) and iwi(4), however, so if you have success or failure with those devices, please say so in reply.

(new post category starting now: “Please test”)

Network fairness changes and what they mean

Sepherosa Ziehau makes commits almost daily to DragonFly’s network infrastructure, but I have a hard time quantifying it into Digest posts in part because it’s often very technical.  His most recent commits come with an explanation, however.  He has done plenty of work to improve overall transmission speeds in DragonFly, and now he’s working on ‘fairness’.  Fair, in this case, means ensuring that packet transmitting and receiving happen without either one monopolizing the connection.  In real world terms, this translates to much more constant speeds.  His recent commit details what he’s doing and some numbers to prove it.

Remember I said he’s improved speeds?  Note that in his example, he’s reaching stable peaks of 981 Mbps.  This is on a line that I assume theoretically maxes out at 1000.

IFQ packet staging mechanism added

I’m not sure what IFQ stands for, but Sepherosa Ziehau’s added it.  It appears to be based on an idea from Luigi Rizzo called ‘netmap‘.  In this case, network packets are grouped together before being placed onto the network interface’s hardware queue.  That means better packet per second performance without a corresponding increase in CPU usage, as Sepherosa Ziehau’s report lists, along with needed sysctls.

IP Forwarding Performance

Sepherosa Ziehau has been making a lot of commits to increase packet-per-second rates without increasing CPU usage.  He’s published a sort of progress report/benchmark to show current performance levels.  It sounds like he’s expecting even better performance in the future, though I’m not sure how much more he could push out of it, since the bulk performance appears to be close to the rated capacity of the copper…