discussed in this RFD
There should be a space after the first "void".
This will break if fbt::m_length:entry is enabled. I think you also need to have NOFAULT set when walking the mbuf chain.
"offset" is unsigned.
dest == mstate->dtms_scratch_ptr here. Ditto below, so I'm confused by the subtraction here.
Why do the OS-specific subr indices need to be non-overlapping? Seems like every OS could just start at 100 or so for their own subroutines. And then we can use the same definition of VALID_SUBR() on every OS.
Maybe prefix this with "DIF_" too to make its purpose easier to guess?