Torsten Duwe 36b0c3
From 4b61d2bd346de12bb62668ae0dc2f332643067a3 Mon Sep 17 00:00:00 2001
Torsten Duwe 36b0c3
From: Wojciech Ziemba <wojciech.ziemba@intel.com>
Torsten Duwe 36b0c3
Date: Thu, 7 Apr 2022 17:54:47 +0100
Torsten Duwe 36b0c3
Subject: [PATCH] crypto: qat - add check for invalid PFVF protocol version 0
Torsten Duwe 36b0c3
Git-commit: 4b61d2bd346de12bb62668ae0dc2f332643067a3
Torsten Duwe 36b0c3
Patch-mainline: v5.19-rc1
Torsten Duwe 36b0c3
References: jsc#PED-1073
Torsten Duwe 36b0c3
Torsten Duwe 36b0c3
PFVF protocol version 0 is not a valid version, but PF drivers
Torsten Duwe 36b0c3
currently would report any such version from VFs as compatible.
Torsten Duwe 36b0c3
This patch adds an extra check for the invalid PFVF protocol
Torsten Duwe 36b0c3
version 0.
Torsten Duwe 36b0c3
Torsten Duwe 36b0c3
Signed-off-by: Wojciech Ziemba <wojciech.ziemba@intel.com>
Torsten Duwe 36b0c3
Signed-off-by: Marco Chiappero <marco.chiappero@intel.com>
Torsten Duwe 36b0c3
Reviewed-by: Marco Chiappero <marco.chiappero@intel.com>
Torsten Duwe 36b0c3
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Torsten Duwe 36b0c3
Signed-off-by: Torsten Duwe <duwe@suse.de>
Torsten Duwe 36b0c3
Torsten Duwe 36b0c3
---
Torsten Duwe 36b0c3
 drivers/crypto/qat/qat_common/adf_pfvf_pf_proto.c | 4 +++-
Torsten Duwe 36b0c3
 1 file changed, 3 insertions(+), 1 deletion(-)
Torsten Duwe 36b0c3
Torsten Duwe 36b0c3
diff --git a/drivers/crypto/qat/qat_common/adf_pfvf_pf_proto.c b/drivers/crypto/qat/qat_common/adf_pfvf_pf_proto.c
Torsten Duwe 36b0c3
index 588352de1ef0e..c059b98836aaa 100644
Torsten Duwe 36b0c3
--- a/drivers/crypto/qat/qat_common/adf_pfvf_pf_proto.c
Torsten Duwe 36b0c3
+++ b/drivers/crypto/qat/qat_common/adf_pfvf_pf_proto.c
Torsten Duwe 36b0c3
@@ -242,7 +242,9 @@ static int adf_handle_vf2pf_msg(struct adf_accel_dev *accel_dev, u8 vf_nr,
Torsten Duwe 36b0c3
 			"VersionRequest received from VF%d (vers %d) to PF (vers %d)\n",
Torsten Duwe 36b0c3
 			vf_nr, vf_compat_ver, ADF_PFVF_COMPAT_THIS_VERSION);
Torsten Duwe 36b0c3
 
Torsten Duwe 36b0c3
-		if (vf_compat_ver <= ADF_PFVF_COMPAT_THIS_VERSION)
Torsten Duwe 36b0c3
+		if (vf_compat_ver == 0)
Torsten Duwe 36b0c3
+			compat = ADF_PF2VF_VF_INCOMPATIBLE;
Torsten Duwe 36b0c3
+		else if (vf_compat_ver <= ADF_PFVF_COMPAT_THIS_VERSION)
Torsten Duwe 36b0c3
 			compat = ADF_PF2VF_VF_COMPATIBLE;
Torsten Duwe 36b0c3
 		else
Torsten Duwe 36b0c3
 			compat = ADF_PF2VF_VF_COMPAT_UNKNOWN;
Torsten Duwe 36b0c3
-- 
Torsten Duwe 36b0c3
2.35.3
Torsten Duwe 36b0c3