* [PATCH] crypto: keembay - Add missing check after sg_nents_for_len()
@ 2025-07-16 12:20 Thomas Fourier
2025-07-16 12:25 ` Murphy, Declan
2025-07-27 12:37 ` Herbert Xu
0 siblings, 2 replies; 3+ messages in thread
From: Thomas Fourier @ 2025-07-16 12:20 UTC (permalink / raw)
Cc: Thomas Fourier, Daniele Alessandrelli, Declan Murphy, Herbert Xu,
David S. Miller, Mark Gross, linux-crypto, linux-kernel
sg_nents_for_len() returns an int which is negative in case of error.
Fixes: 472b04444cd3 ("crypto: keembay - Add Keem Bay OCS HCU driver")
Signed-off-by: Thomas Fourier <fourier.thomas@gmail.com>
---
drivers/crypto/intel/keembay/keembay-ocs-hcu-core.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/drivers/crypto/intel/keembay/keembay-ocs-hcu-core.c b/drivers/crypto/intel/keembay/keembay-ocs-hcu-core.c
index 8f9e21ced0fe..c75fd7c68fd7 100644
--- a/drivers/crypto/intel/keembay/keembay-ocs-hcu-core.c
+++ b/drivers/crypto/intel/keembay/keembay-ocs-hcu-core.c
@@ -232,7 +232,7 @@ static int kmb_ocs_dma_prepare(struct ahash_request *req)
struct device *dev = rctx->hcu_dev->dev;
unsigned int remainder = 0;
unsigned int total;
- size_t nents;
+ int nents;
size_t count;
int rc;
int i;
@@ -253,6 +253,9 @@ static int kmb_ocs_dma_prepare(struct ahash_request *req)
/* Determine the number of scatter gather list entries to process. */
nents = sg_nents_for_len(req->src, rctx->sg_data_total - remainder);
+ if (nents < 0)
+ return -nents;
+
/* If there are entries to process, map them. */
if (nents) {
rctx->sg_dma_nents = dma_map_sg(dev, req->src, nents,
--
2.43.0
^ permalink raw reply related [flat|nested] 3+ messages in thread
* RE: [PATCH] crypto: keembay - Add missing check after sg_nents_for_len()
2025-07-16 12:20 [PATCH] crypto: keembay - Add missing check after sg_nents_for_len() Thomas Fourier
@ 2025-07-16 12:25 ` Murphy, Declan
2025-07-27 12:37 ` Herbert Xu
1 sibling, 0 replies; 3+ messages in thread
From: Murphy, Declan @ 2025-07-16 12:25 UTC (permalink / raw)
To: Thomas Fourier
Cc: Alessandrelli, Daniele, Herbert Xu, David S. Miller, Mark Gross,
linux-crypto@vger.kernel.org, linux-kernel@vger.kernel.org
Looks Good To Me.
Thank you for the fix,
Declan
-----Original Message-----
From: Thomas Fourier <fourier.thomas@gmail.com>
Sent: Wednesday, July 16, 2025 1:20 PM
Cc: Thomas Fourier <fourier.thomas@gmail.com>; Alessandrelli, Daniele <daniele.alessandrelli@intel.com>; Murphy, Declan <declan.murphy@intel.com>; Herbert Xu <herbert@gondor.apana.org.au>; David S. Miller <davem@davemloft.net>; Mark Gross <mgross@linux.intel.com>; linux-crypto@vger.kernel.org; linux-kernel@vger.kernel.org
Subject: [PATCH] crypto: keembay - Add missing check after sg_nents_for_len()
sg_nents_for_len() returns an int which is negative in case of error.
Fixes: 472b04444cd3 ("crypto: keembay - Add Keem Bay OCS HCU driver")
Signed-off-by: Thomas Fourier <fourier.thomas@gmail.com>
---
drivers/crypto/intel/keembay/keembay-ocs-hcu-core.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/drivers/crypto/intel/keembay/keembay-ocs-hcu-core.c b/drivers/crypto/intel/keembay/keembay-ocs-hcu-core.c
index 8f9e21ced0fe..c75fd7c68fd7 100644
--- a/drivers/crypto/intel/keembay/keembay-ocs-hcu-core.c
+++ b/drivers/crypto/intel/keembay/keembay-ocs-hcu-core.c
@@ -232,7 +232,7 @@ static int kmb_ocs_dma_prepare(struct ahash_request *req)
struct device *dev = rctx->hcu_dev->dev;
unsigned int remainder = 0;
unsigned int total;
- size_t nents;
+ int nents;
size_t count;
int rc;
int i;
@@ -253,6 +253,9 @@ static int kmb_ocs_dma_prepare(struct ahash_request *req)
/* Determine the number of scatter gather list entries to process. */
nents = sg_nents_for_len(req->src, rctx->sg_data_total - remainder);
+ if (nents < 0)
+ return -nents;
+
/* If there are entries to process, map them. */
if (nents) {
rctx->sg_dma_nents = dma_map_sg(dev, req->src, nents,
--
2.43.0
--------------------------------------------------------------
Intel Research and Development Ireland Limited
Registered in Ireland
Registered Office: Collinstown Industrial Park, Leixlip, County Kildare
Registered Number: 308263
This e-mail and any attachments may contain confidential material for the sole
use of the intended recipient(s). Any review or distribution by others is
strictly prohibited. If you are not the intended recipient, please contact the
sender and delete all copies.
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH] crypto: keembay - Add missing check after sg_nents_for_len()
2025-07-16 12:20 [PATCH] crypto: keembay - Add missing check after sg_nents_for_len() Thomas Fourier
2025-07-16 12:25 ` Murphy, Declan
@ 2025-07-27 12:37 ` Herbert Xu
1 sibling, 0 replies; 3+ messages in thread
From: Herbert Xu @ 2025-07-27 12:37 UTC (permalink / raw)
To: Thomas Fourier
Cc: Daniele Alessandrelli, Declan Murphy, David S. Miller, Mark Gross,
linux-crypto, linux-kernel
On Wed, Jul 16, 2025 at 02:20:19PM +0200, Thomas Fourier wrote:
> sg_nents_for_len() returns an int which is negative in case of error.
>
> Fixes: 472b04444cd3 ("crypto: keembay - Add Keem Bay OCS HCU driver")
> Signed-off-by: Thomas Fourier <fourier.thomas@gmail.com>
> ---
> drivers/crypto/intel/keembay/keembay-ocs-hcu-core.c | 5 ++++-
> 1 file changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/crypto/intel/keembay/keembay-ocs-hcu-core.c b/drivers/crypto/intel/keembay/keembay-ocs-hcu-core.c
> index 8f9e21ced0fe..c75fd7c68fd7 100644
> --- a/drivers/crypto/intel/keembay/keembay-ocs-hcu-core.c
> +++ b/drivers/crypto/intel/keembay/keembay-ocs-hcu-core.c
> @@ -232,7 +232,7 @@ static int kmb_ocs_dma_prepare(struct ahash_request *req)
> struct device *dev = rctx->hcu_dev->dev;
> unsigned int remainder = 0;
> unsigned int total;
> - size_t nents;
> + int nents;
> size_t count;
> int rc;
> int i;
> @@ -253,6 +253,9 @@ static int kmb_ocs_dma_prepare(struct ahash_request *req)
> /* Determine the number of scatter gather list entries to process. */
> nents = sg_nents_for_len(req->src, rctx->sg_data_total - remainder);
>
> + if (nents < 0)
> + return -nents;
> +
Why are you return -nents as the error? That makes no sense.
Cheers,
--
Email: Herbert Xu <herbert@gondor.apana.org.au>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2025-07-27 12:57 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-07-16 12:20 [PATCH] crypto: keembay - Add missing check after sg_nents_for_len() Thomas Fourier
2025-07-16 12:25 ` Murphy, Declan
2025-07-27 12:37 ` Herbert Xu
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).