There is not really a difference between 2.6 and 3 or 4, except for the ongoing development. The 3.0 kernel was introduced because Linus had the idea that 2.6.40 was just not a good idea. But the difference between 2.6.38 and 2.6.39 is not smaller than the step from 2.6.39 to 3.0.
Back to your question. The development of the kernel is contained in a series of patches, which contain the difference between the old and the new source. Theoretically you can get from a 2.6.0 kernel to 4.3 by just applying all patches in between.
In that Wiki page you can read that Timtim applied the patches and got to 184.108.40.206, and then it became incompatible. To go further the specific Oxnas code had to be patched to be compatible with a newer kernel.
Your approach is a bit different, by creating the patch which converts a vanilla 220.127.116.11 to an Oxnas variant. I think you can apply that patch to 18.104.22.168, and it will still work, but for newer versions the patch becomes unusable, and has to be patched, because interfaces are changed, or something like that.
Of course theoretically you can get a recent kernel working on an Oxnas, but a lot of work has to be done. Steffen Sledz
has given up. If you really want this, I think you'd better study the difference between the OX810 and it's successor, the PLX7820 (which can be found in the HMNHD CE). For the PLX7820 a recent kernel is available. Patches can be found in the OpenWRT git. I think it's easier to adapt these than to adapt your patch to a new kernel.