Out of tree module build errors since v4.20-rc1

From: Liam R. Howlett
Date: Wed Nov 21 2018 - 15:57:21 EST



My out of tree driver build is now reporting issues with the jump table:

./include/linux/jump_label.h: In function âjump_entry_codeâ:
./include/linux/jump_label.h:153:14: error: dereferencing pointer to incomplete type âconst struct jump_entryâ
return entry->code;
^~
./include/linux/jump_label.h: In function âjump_entry_set_initâ:
./include/linux/jump_label.h:180:7: error: dereferencing pointer to incomplete type âstruct jump_entryâ
entry->key |= 2;
^~
./include/linux/jump_label.h: At top level:
./include/linux/jump_label.h:212:26: error: array type has incomplete element type âstruct jump_entryâ
extern struct jump_entry __start___jump_table[];
^~~~~~~~~~~~~~~~~~~~
./include/linux/jump_label.h:213:26: error: array type has incomplete element type âstruct jump_entryâ
extern struct jump_entry __stop___jump_table[];
^~~~~~~~~~~~~~~~~~~


This happens in v4.20-rc3 as well, so I bisected between v4.19 to
v4.20-rc1 which resulted in the following commit:

b34006c4258c9c86597b6b7123d6a9a3513d6cd7 is the first bad commit
commit b34006c4258c9c86597b6b7123d6a9a3513d6cd7
Author: Ard Biesheuvel <ard.biesheuvel@xxxxxxxxxx>
Date: Tue Sep 18 23:51:41 2018 -0700

x86/jump_table: Use relative references




Initially I assumed this was my own fault, but my module does not have
these issues when using v4.19. Is there anything I should try/change in
my module makefile, includes, etc to support this relative reference
code?



Thank you,
Liam