Currently the s390 implementaion of cpufeature is limited to elf_hwcap bits. Using these to automatically load modules also exposes this cpufeature to userspace which, sometimes is not intended. Therefore, rework the s390-cpufeature implementation to allow for various cpu feature indications, which is not only limited to hwcap bits. Add a new type to allow facilities to be a cpufeature without using hwcap bits that expose this feature to userspace. Load uvdevice when facility 158 is present. since v1: * add r-bs from Claudio * worked in comments Heiko Carstens (2): s390/cpufeature: rework to allow more than only hwcap bits s390/cpufeature: allow for facility bits Steffen Eiden (1): s390/uvdevice: autoload module based on CPU facility arch/s390/crypto/aes_s390.c | 2 +- arch/s390/crypto/chacha-glue.c | 2 +- arch/s390/crypto/crc32-vx.c | 2 +- arch/s390/crypto/des_s390.c | 2 +- arch/s390/crypto/ghash_s390.c | 2 +- arch/s390/crypto/prng.c | 2 +- arch/s390/crypto/sha1_s390.c | 2 +- arch/s390/crypto/sha256_s390.c | 2 +- arch/s390/crypto/sha3_256_s390.c | 2 +- arch/s390/crypto/sha3_512_s390.c | 2 +- arch/s390/crypto/sha512_s390.c | 2 +- arch/s390/include/asm/cpufeature.h | 23 ++++++--------- arch/s390/kernel/Makefile | 2 +- arch/s390/kernel/cpufeature.c | 46 ++++++++++++++++++++++++++++++ arch/s390/kernel/processor.c | 10 ------- drivers/char/hw_random/s390-trng.c | 2 +- drivers/s390/char/uvdevice.c | 5 ++-- drivers/s390/crypto/pkey_api.c | 2 +- 18 files changed, 70 insertions(+), 42 deletions(-) create mode 100644 arch/s390/kernel/cpufeature.c -- 2.35.3