This fixes:
./arch/x86/include/asm/uaccess.h:33:9: error: dereferencing pointer to incomplete type
current->thread.addr_limit = fs;
I have not tested this against older versions of the kernel, but it seems safe to include traps.h as it has an include guard.