From fa19ba06b39db635d58406dc63afe4f8c27915e6 Mon Sep 17 00:00:00 2001 From: Jan Glauber Date: Sat, 12 Jul 2008 15:42:11 +0800 Subject: [PATCH] --- yaml --- r: 99304 b: refs/heads/master c: a72f0dbfd93159acdf2467e5a022b28f763061f6 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/arch/s390/crypto/crypt_s390.h | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index dc3e0740c58e..96146454db2d 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 3952f17ed63434cc2154c3765ff97e1d4adab042 +refs/heads/master: a72f0dbfd93159acdf2467e5a022b28f763061f6 diff --git a/trunk/arch/s390/crypto/crypt_s390.h b/trunk/arch/s390/crypto/crypt_s390.h index 9992f95ef992..0ef9829f2ad6 100644 --- a/trunk/arch/s390/crypto/crypt_s390.h +++ b/trunk/arch/s390/crypto/crypt_s390.h @@ -296,6 +296,10 @@ static inline int crypt_s390_func_available(int func) unsigned char status[16]; int ret; + /* check if CPACF facility (bit 17) is available */ + if (!(stfl() & 1ULL << (31 - 17))) + return 0; + switch (func & CRYPT_S390_OP_MASK) { case CRYPT_S390_KM: ret = crypt_s390_km(KM_QUERY, &status, NULL, NULL, 0);