* Kirill A. Shutemov <kirill@xxxxxxxxxxxxx> wrote: > On Tue, Apr 11, 2017 at 09:02:03AM +0200, Ingo Molnar wrote: > > I realize that you had difficulties converting this to C, but it's not going to > > get any easier in the future either, with one more paging mode/level added! > > > > If you are stuck on where it breaks I'd suggest doing it gradually: first add a > > trivial .c, build and link it in and call it separately. Then once that works, > > move functionality from asm to C step by step and test it at every step. > > I've described the specific issue with converting this code to C in cover > letter: how to make compiler to generate 32-bit code for a specific > function or translation unit, without breaking linking afterwards (-m32 > break it). Have you tried putting it into a separate .c file, and building it 32-bit? I think arch/x86/entry/vdso/Makefile contains an example of how to build 32-bit code even on 64-bit kernels. Thanks, Ingo