[lkml]   [2017]   [Sep]   [18]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectChange of set_fs() in uaccess.h breaks this header being self contained for x86 (4.14-rc1)

there is a change in Linus' mainline kernel
that changes the set_fs() macro into an inline function.

This breaks the build of an out of kernel driver I maintain with this

./arch/x86/include/asm/uaccess.h: In function ‘set_fs’:
./arch/x86/include/asm/uaccess.h:31:9: error: dereferencing pointer to
incomplete type

set_fs() is referencing the "current" pointer which is of type "struct
task_struct" declared in include/linux/sched.h.

Before the change set_fs() was a macro. Because I don't use it it was of
no concern for me. But now the compiler needs to compile the inline
function set_fs() and fails.

Should I add the needed <linux/sched.h> myself in my code or will that
be changed / fixed in the <asm/uaccess.h> header by including the
missing header.

Thanks for any advice.

Best regards,
Stefan Mätje

 \ /
  Last update: 2017-09-18 20:48    [W:0.033 / U:12.048 seconds]
©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site