s390/pkey: Load pkey kernel module automatically
authorIngo Franzki <ifranzki@linux.ibm.com>
Wed, 17 Oct 2018 15:24:43 +0000 (17:24 +0200)
committerMartin Schwidefsky <schwidefsky@de.ibm.com>
Fri, 19 Oct 2018 06:18:18 +0000 (08:18 +0200)
With the recent enhancements of the pkey kernel module,
the pkey kernel module should be loaded automatically
during system startup, if MSA is available.

When used for swap device encryption with random protected
keys, pkey must be loaded before /etc/crypttab is processed,
otherwise the sysfs attributes to read the key from are
not available.

Signed-off-by: Ingo Franzki <ifranzki@linux.ibm.com>
Reviewed-by: Hendrik Brueckner <brueckner@linux.ibm.com>
Reviewed-by: Harald Freudenberger <freude@linux.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
drivers/s390/crypto/pkey_api.c

index 683ff72ae9777bf4bf7ca526a42c8bec80ea19eb..86a8799475e90ba2c29cd4e5a058c4c56e0fe607 100644 (file)
@@ -17,6 +17,7 @@
 #include <linux/kallsyms.h>
 #include <linux/debugfs.h>
 #include <linux/random.h>
+#include <linux/cpufeature.h>
 #include <asm/zcrypt.h>
 #include <asm/cpacf.h>
 #include <asm/pkey.h>
@@ -1704,5 +1705,5 @@ static void __exit pkey_exit(void)
        pkey_debug_exit();
 }
 
-module_init(pkey_init);
+module_cpu_feature_match(MSA, pkey_init);
 module_exit(pkey_exit);