提交 a72f0dbf 编写于 作者: J Jan Glauber 提交者: Herbert Xu

crypto: s390 - Respect STFL bit

Bevore issuing any s390 crypto operation check whether the
CPACF facility is enabled in the facility list. That way a
virtualization layer can prevent usage of the CPACF facility
regardless of the availability of the crypto instructions.
Signed-off-by: NJan Glauber <jang@linux.vnet.ibm.com>
Signed-off-by: NHerbert Xu <herbert@gondor.apana.org.au>
上级 3952f17e
...@@ -296,6 +296,10 @@ static inline int crypt_s390_func_available(int func) ...@@ -296,6 +296,10 @@ static inline int crypt_s390_func_available(int func)
unsigned char status[16]; unsigned char status[16];
int ret; int ret;
/* check if CPACF facility (bit 17) is available */
if (!(stfl() & 1ULL << (31 - 17)))
return 0;
switch (func & CRYPT_S390_OP_MASK) { switch (func & CRYPT_S390_OP_MASK) {
case CRYPT_S390_KM: case CRYPT_S390_KM:
ret = crypt_s390_km(KM_QUERY, &status, NULL, NULL, 0); ret = crypt_s390_km(KM_QUERY, &status, NULL, NULL, 0);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册