From: Hendrik Brueckner <brueckner@linux.ibm.com>
To: Steffen Eiden <seiden@linux.ibm.com>
Cc: Heiko Carstens <hca@linux.ibm.com>,
Alexander Gordeev <agordeev@linux.ibm.com>,
Christian Borntraeger <borntraeger@linux.ibm.com>,
Janosch Frank <frankja@linux.ibm.com>,
Claudio Imbrenda <imbrenda@linux.ibm.com>,
Vasily Gorbik <gor@linux.ibm.com>,
linux-s390@vger.kernel.org, linux-kernel@vger.kernel.org,
linux-mm@kvack.org, nrb@linux.ibm.com
Subject: Re: [PATCH v2 1/3] s390/cpufeature: rework to allow more than only hwcap bits
Date: Fri, 15 Jul 2022 09:59:49 +0200 [thread overview]
Message-ID: <YtEedTrWv3Wc+cZQ@linux.ibm.com> (raw)
In-Reply-To: <20220713125644.16121-2-seiden@linux.ibm.com>
On Wed, Jul 13, 2022 at 02:56:42PM +0200, Steffen Eiden wrote:
> From: Heiko Carstens <hca@linux.ibm.com>
>
> Rework cpufeature implementation to allow for various cpu feature
> indications, which is not only limited to hwcap bits. This is achieved
> by adding a sequential list of cpu feature numbers, where each of them
> is mapped to an entry which indicates what this number is about.
>
> Each entry contains a type member, which indicates what feature
> name space to look into (e.g. hwcap, or cpu facility). If wanted this
> allows also to automatically load modules only in e.g. z/VM
> configurations.
>
> Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
> Signed-off-by: Steffen Eiden <seiden@linux.ibm.com>
> ---
> 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 +-
Regarding facility bits for cpu features: Initially, I used
MSA hwcap to cover all ciphers among all hw generations. With facility bit
checks, it makes more sense to fine-tune and load based on respective
MSA level or CPACF functions that is required for ciphers/hashes.
E.g. like
> diff --git a/arch/s390/crypto/sha512_s390.c b/arch/s390/crypto/sha512_s390.c
> index 43ce4956df73..04f11c407763 100644
> --- a/arch/s390/crypto/sha512_s390.c
> +++ b/arch/s390/crypto/sha512_s390.c
> @@ -142,7 +142,7 @@ static void __exit fini(void)
> crypto_unregister_shash(&sha384_alg);
> }
>
> -module_cpu_feature_match(MSA, init);
> +module_cpu_feature_match(S390_CPU_FEATURE_MSA, init);
> module_exit(fini);
which becomes automatically loaded if (any) MSA is available and then
performs this check:
cpacf_query_func(CPACF_KIMD, CPACF_KIMD_SHA_512
which in the worst case would fail.
This might be a very useful follow-up patch to remove those mod init checks
into the cpu feature.
Other than that,
Reviewed-by: Hendrik Brueckner <brueckner@linux.ibm.com>
next prev parent reply other threads:[~2022-07-15 8:00 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-07-13 12:56 [PATCH v2 0/3] s390/cpufeature: rework to allow different types of cpufeatures Steffen Eiden
2022-07-13 12:56 ` [PATCH v2 1/3] s390/cpufeature: rework to allow more than only hwcap bits Steffen Eiden
2022-07-13 13:50 ` Claudio Imbrenda
2022-07-15 7:59 ` Hendrik Brueckner [this message]
2022-07-15 9:32 ` Heiko Carstens
2022-07-13 12:56 ` [PATCH v2 2/3] s390/cpufeature: allow for facility bits Steffen Eiden
2022-07-13 12:56 ` [PATCH v2 3/3] s390/uvdevice: autoload module based on CPU facility Steffen Eiden
2022-07-14 10:53 ` [PATCH v2 0/3] s390/cpufeature: rework to allow different types of cpufeatures Heiko Carstens
2022-07-15 7:49 ` Hendrik Brueckner
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=YtEedTrWv3Wc+cZQ@linux.ibm.com \
--to=brueckner@linux.ibm.com \
--cc=agordeev@linux.ibm.com \
--cc=borntraeger@linux.ibm.com \
--cc=frankja@linux.ibm.com \
--cc=gor@linux.ibm.com \
--cc=hca@linux.ibm.com \
--cc=imbrenda@linux.ibm.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=linux-s390@vger.kernel.org \
--cc=nrb@linux.ibm.com \
--cc=seiden@linux.ibm.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.