I'm currently trying to implement my own VDSO. I have seen this tutorial which explains how to do this.
However, this tutorial is made for Linux 2.6.x and I would like to use it on Linux 4.8.x. But the architectural structure of vdso changed a lot since this version (e.g. vextern.h has been suppressed) and I don't know how to adapt it to get it working.
Do you know how I could adapt this tutorial for a recent kernel or where I can find enough resources about vdso to implement my own?
Also, do you know whether I can simply recreate the behavior of an arbitrary syscall as a VDSO? I know it is a very bad idea from a security perspective (and the performance gain is negligible)