Fix detection of IBM Power8 machines (ISA 2.07)
An IBM POWER7 system with Power ISA 2.06 tried to execute zfs_sha256_power8() - which should only be run on ISA 2.07 machines. The detection is implemented via the zfs_isa207_available() call, but this check was not used. This pull request will fix this. Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov> Reviewed-by: Richard Yao <richard.yao@alumni.stonybrook.edu> Signed-off-by: Tino Reichardt <milky-zfs@mcmilk.de> Signed-off-by: Low-power <msl0000023508@gmail.com> Closes #14576
This commit is contained in:
parent
28bf26acb6
commit
84a1c48c86
|
@ -151,9 +151,9 @@ const sha256_ops_t sha256_armv8_impl = {
|
|||
};
|
||||
|
||||
#elif defined(__PPC64__)
|
||||
static boolean_t sha256_have_vsx(void)
|
||||
static boolean_t sha256_have_isa207(void)
|
||||
{
|
||||
return (kfpu_allowed() && zfs_vsx_available());
|
||||
return (kfpu_allowed() && zfs_isa207_available());
|
||||
}
|
||||
|
||||
TF(zfs_sha256_ppc, tf_sha256_ppc);
|
||||
|
@ -165,7 +165,7 @@ const sha256_ops_t sha256_ppc_impl = {
|
|||
|
||||
TF(zfs_sha256_power8, tf_sha256_power8);
|
||||
const sha256_ops_t sha256_power8_impl = {
|
||||
.is_supported = sha256_have_vsx,
|
||||
.is_supported = sha256_have_isa207,
|
||||
.transform = tf_sha256_power8,
|
||||
.name = "power8"
|
||||
};
|
||||
|
|
|
@ -136,14 +136,14 @@ const sha512_ops_t sha512_ppc_impl = {
|
|||
.name = "ppc"
|
||||
};
|
||||
|
||||
static boolean_t sha512_have_vsx(void)
|
||||
static boolean_t sha512_have_isa207(void)
|
||||
{
|
||||
return (kfpu_allowed() && zfs_vsx_available());
|
||||
return (kfpu_allowed() && zfs_isa207_available());
|
||||
}
|
||||
|
||||
TF(zfs_sha512_power8, tf_sha512_power8);
|
||||
const sha512_ops_t sha512_power8_impl = {
|
||||
.is_supported = sha512_have_vsx,
|
||||
.is_supported = sha512_have_isa207,
|
||||
.transform = tf_sha512_power8,
|
||||
.name = "power8"
|
||||
};
|
||||
|
|
Loading…
Reference in New Issue