OSDN Git Service

genksyms: Teach parser about 128-bit built-in types
authorWill Deacon <will.deacon@arm.com>
Tue, 18 Jun 2019 13:10:48 +0000 (14:10 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 31 Jul 2019 05:27:02 +0000 (07:27 +0200)
commite3e2bb12c8a72bcbaf486c023a02566027224adf
treec5d5a7cdbf521d69208b790911d9fd3575642123
parent27f2335e1440128eb53ea2dacfc9e685cfa587aa
genksyms: Teach parser about 128-bit built-in types

[ Upstream commit a222061b85234d8a44486a46bd4df7e2cda52385 ]

__uint128_t crops up in a few files that export symbols to modules, so
teach genksyms about it and the other GCC built-in 128-bit integer types
so that we don't end up skipping the CRC generation for some symbols due
to the parser failing to spot them:

  | WARNING: EXPORT symbol "kernel_neon_begin" [vmlinux] version
  |          generation failed, symbol will not be versioned.
  | ld: arch/arm64/kernel/fpsimd.o: relocation R_AARCH64_ABS32 against
  |     `__crc_kernel_neon_begin' can not be used when making a shared
  |     object
  | ld: arch/arm64/kernel/fpsimd.o:(.data+0x0): dangerous relocation:
  |     unsupported relocation

Reported-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
scripts/genksyms/keywords.c
scripts/genksyms/parse.y