[dpdk-dev] app/crypto-perf: fix pmd_cyclecount_bench_ops

Message ID 1524733549-3662-1-git-send-email-tomaszx.jozwiak@intel.com (mailing list archive)
State Accepted, archived
Delegated to: Pablo de Lara Guarch
Headers

Checks

Context Check Description
ci/checkpatch success coding style OK
ci/Intel-compilation success Compilation OK

Commit Message

Tomasz Jozwiak April 26, 2018, 9:05 a.m. UTC
  this patch fixes segmentation fault in pmd_cyclecount_bench_ops
function in case when state->opts->nb_descriptors is not
natural multiple of burst size.
To reproduce run: dpdk-test-crypto-perf with params:
  --ptest pmd-cyclecount --pmd-cyclecount-delay-ms 5
  --devtype crypto_qat --optype cipher-then-auth
  --cipher-algo aes-cbc --cipher-op encrypt
  --cipher-key-sz 16 --cipher-iv-sz 16
  --auth-algo sha2-256-hmac
  --auth-op generate --auth-key-sz 64 --digest-sz 32
  --total-ops 10000 --burst-sz 255 --buffer-sz 1024 --silent

Fixes: 96dfeb609be1 ("app/crypto-perf: add new PMD benchmarking mode")
Cc: Anatoly Burakov <anatoly.burakov@intel.com>
Cc: stable@dpdk.org

Signed-off-by: Tomasz Jozwiak <tomaszx.jozwiak@intel.com>
---
 app/test-crypto-perf/cperf_test_pmd_cyclecount.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
  

Comments

De Lara Guarch, Pablo May 9, 2018, 10:10 a.m. UTC | #1
> -----Original Message-----
> From: stable [mailto:stable-bounces@dpdk.org] On Behalf Of Tomasz Jozwiak
> Sent: Thursday, April 26, 2018 10:06 AM
> To: dev@dpdk.org
> Cc: stable@dpdk.org; Burakov, Anatoly <anatoly.burakov@intel.com>; Jozwiak,
> TomaszX <tomaszx.jozwiak@intel.com>
> Subject: [dpdk-stable] [PATCH] app/crypto-perf: fix pmd_cyclecount_bench_ops
> 
> this patch fixes segmentation fault in pmd_cyclecount_bench_ops function in
> case when state->opts->nb_descriptors is not natural multiple of burst size.
> To reproduce run: dpdk-test-crypto-perf with params:
>   --ptest pmd-cyclecount --pmd-cyclecount-delay-ms 5
>   --devtype crypto_qat --optype cipher-then-auth
>   --cipher-algo aes-cbc --cipher-op encrypt
>   --cipher-key-sz 16 --cipher-iv-sz 16
>   --auth-algo sha2-256-hmac
>   --auth-op generate --auth-key-sz 64 --digest-sz 32
>   --total-ops 10000 --burst-sz 255 --buffer-sz 1024 --silent
> 
> Fixes: 96dfeb609be1 ("app/crypto-perf: add new PMD benchmarking mode")
> Cc: Anatoly Burakov <anatoly.burakov@intel.com>
> Cc: stable@dpdk.org
> 
> Signed-off-by: Tomasz Jozwiak <tomaszx.jozwiak@intel.com>

Acked-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
  
De Lara Guarch, Pablo May 9, 2018, 10:18 a.m. UTC | #2
> -----Original Message-----
> From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of De Lara Guarch, Pablo
> Sent: Wednesday, May 9, 2018 11:10 AM
> To: Jozwiak, TomaszX <tomaszx.jozwiak@intel.com>; dev@dpdk.org
> Cc: stable@dpdk.org; Burakov, Anatoly <anatoly.burakov@intel.com>; Jozwiak,
> TomaszX <tomaszx.jozwiak@intel.com>
> Subject: Re: [dpdk-dev] [dpdk-stable] [PATCH] app/crypto-perf: fix
> pmd_cyclecount_bench_ops
> 
> 
> 
> > -----Original Message-----
> > From: stable [mailto:stable-bounces@dpdk.org] On Behalf Of Tomasz
> > Jozwiak
> > Sent: Thursday, April 26, 2018 10:06 AM
> > To: dev@dpdk.org
> > Cc: stable@dpdk.org; Burakov, Anatoly <anatoly.burakov@intel.com>;
> > Jozwiak, TomaszX <tomaszx.jozwiak@intel.com>
> > Subject: [dpdk-stable] [PATCH] app/crypto-perf: fix
> > pmd_cyclecount_bench_ops
> >
> > this patch fixes segmentation fault in pmd_cyclecount_bench_ops
> > function in case when state->opts->nb_descriptors is not natural multiple of
> burst size.
> > To reproduce run: dpdk-test-crypto-perf with params:
> >   --ptest pmd-cyclecount --pmd-cyclecount-delay-ms 5
> >   --devtype crypto_qat --optype cipher-then-auth
> >   --cipher-algo aes-cbc --cipher-op encrypt
> >   --cipher-key-sz 16 --cipher-iv-sz 16
> >   --auth-algo sha2-256-hmac
> >   --auth-op generate --auth-key-sz 64 --digest-sz 32
> >   --total-ops 10000 --burst-sz 255 --buffer-sz 1024 --silent
> >
> > Fixes: 96dfeb609be1 ("app/crypto-perf: add new PMD benchmarking mode")
> > Cc: Anatoly Burakov <anatoly.burakov@intel.com>
> > Cc: stable@dpdk.org
> >
> > Signed-off-by: Tomasz Jozwiak <tomaszx.jozwiak@intel.com>
> 
> Acked-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>

Applied to dpdk-next-crypto.
Thanks,

Pablo
  

Patch

diff --git a/app/test-crypto-perf/cperf_test_pmd_cyclecount.c b/app/test-crypto-perf/cperf_test_pmd_cyclecount.c
index 8f76160..c8d16db 100644
--- a/app/test-crypto-perf/cperf_test_pmd_cyclecount.c
+++ b/app/test-crypto-perf/cperf_test_pmd_cyclecount.c
@@ -145,7 +145,7 @@  pmd_cyclecount_bench_ops(struct pmd_cyclecount_state *state, uint32_t cur_op,
 
 	for (cur_iter_op = 0; cur_iter_op < iter_ops_needed;
 			cur_iter_op += test_burst_size) {
-		uint32_t burst_size = RTE_MIN(state->opts->total_ops - cur_op,
+		uint32_t burst_size = RTE_MIN(iter_ops_needed - cur_iter_op,
 				test_burst_size);
 		struct rte_crypto_op **ops = &state->ctx->ops[cur_iter_op];