[OmniOS-discuss] Status of VAAI

Dan McDonald danmcd at omniti.com
Wed Aug 6 03:02:17 UTC 2014


Okay.  I'm home (from vacation), and I can answer this a bit more thoroughly.  (Why do you guys pile on while I'm on vacation?!?  :)  )

The best course of action here is to upstream the VAAI bits from illumos-nexenta into illumos-gate.  This would involve:

1.) Scoping out ALL of the VAAI changes in illumos-nexenta - making sure you aren't missing any corner-cases and bugfixes.  (Trust me, I helped with the initial VAAI work, there are bugfixes you need!)

2.) Moving said changes into illumos-gate (illumos-omnios would suffice for this, as we don't diverge from upstream in this department), and making sure they build both as modules, and as a full-world-build nightly.

3.) Testing the hell out of it.  Nexenta tested it, and STILL needed months/years to iron out everything.

4.) Sending it up for review and RTI.

I think I could do #1-2 myself without much effort, but I have OmniTI customers and paying OmniOS customers to serve first. A new-to-illumos person would have two learning curves to climb. It's not untenable, but it's much harder.  Ideally, Nexenta would be working on upstreaming this themselves (as Delphix has with their numerous ZFS changes).  You may wish to ask on illumos community mailing lists about that.

#3 is the hard part.  I knew very little about iSCSI, COMSTAR, and storage in general when I was showed the initial work on VAAI.  After upstreaming UNMAP and WRITE_SAME, Nexenta got a little hamstrung on the other two primitives.  Still, during all of that, TESTING was needed, and sometimes internal testing didn't catch everything. Those of you clamoring for VAAI should be offering to test (like Floris did).  If you can WRITE TESTS for the usr/src/test directory, that would be good (even if they're scripts for other platforms like Linux).  If you have a good hard-and-heavy environment, documenting it, and placing the new code in place would also be good.

#4 is not that tough, especially if whomever did #1-#2 clearly documents what he/she did, and works with (or is) a seasoned illumos developer.

I hope I haven't come across as too harsh.  I think getting this upstreamed is useful and important.  I just wanted to spell out what all needs to happen.

Dan



More information about the OmniOS-discuss mailing list