> > > Add a command line option "--enable-sdap" to enable Service Data
> > > Adaptation Protocol.
> > >
> > > example command:
> > > ./dpdk-test-crypto-perf -c 0xc  --log-level=8 -- --devtype
> > > crypto_dpaa2_sec --optype pdcp --cipher-algo aes-ctr --cipher-op
> > > encrypt --auth-algo zuc-eia3 --auth-op generate --auth-key-sz 16
> > > --ptest throughput --total-ops 100000 --burst-sz 64 --buffer-sz
> > > 64,390,1512  --pool-sz 4096 --silent --pdcp-sn-sz 12 --pdcp-domain
> > > control --enable-sdap
> > >
> > > Signed-off-by: Gagandeep Singh <g.si...@nxp.com>
> > > ---
> > >  app/test-crypto-perf/cperf_ops.c             |  1 +
> > >  app/test-crypto-perf/cperf_options.h         |  2 ++
> > >  app/test-crypto-perf/cperf_options_parsing.c | 12 ++++++++++++
> > >  doc/guides/tools/cryptoperf.rst              |  4 ++++
> > >  4 files changed, 19 insertions(+)
> > >
> > > diff --git a/app/test-crypto-perf/cperf_ops.c
> > > b/app/test-crypto-perf/cperf_ops.c
> > > index cbefce8d6c..4295656a0b 100644
> > > --- a/app/test-crypto-perf/cperf_ops.c
> > > +++ b/app/test-crypto-perf/cperf_ops.c
> > > @@ -861,6 +861,7 @@ cperf_create_session(struct rte_mempool
> *sess_mp,
> > >                           .hfn = options->pdcp_ses_hfn_en ?
> > >                                   PDCP_DEFAULT_HFN : 0,
> > >                           .hfn_threshold = 0x70C0A,
> > > +                         .sdap_enabled = options->pdcp_sdap,
> > >                           .hfn_ovrd = !(options->pdcp_ses_hfn_en),
> > >                   } },
> > >                   .crypto_xform = &cipher_xform
> > > diff --git a/app/test-crypto-perf/cperf_options.h b/app/test-crypto-
> > > perf/cperf_options.h index 09caefde22..613d6d31e2 100644
> > > --- a/app/test-crypto-perf/cperf_options.h
> > > +++ b/app/test-crypto-perf/cperf_options.h
> > > @@ -14,6 +14,7 @@
> > >  #define CPERF_PTEST_TYPE ("ptest")
> > >  #define CPERF_MODEX_LEN          ("modex-len")
> > >  #define CPERF_SILENT             ("silent")
> > > +#define CPERF_ENABLE_SDAP        ("enable-sdap")
> > >
> > >  #define CPERF_POOL_SIZE          ("pool-sz")
> > >  #define CPERF_TOTAL_OPS          ("total-ops")
> > > @@ -129,6 +130,7 @@ struct cperf_options {  #ifdef RTE_LIB_SECURITY
> > >   uint16_t pdcp_sn_sz;
> > >   uint16_t pdcp_ses_hfn_en;
> > > + uint16_t pdcp_sdap;
> > >   enum rte_security_pdcp_domain pdcp_domain;
> > >   uint16_t docsis_hdr_sz;
> > >  #endif
> > > diff --git a/app/test-crypto-perf/cperf_options_parsing.c
> > > b/app/test-crypto- perf/cperf_options_parsing.c index
> > > 09c98121c8..28680347f1 100644
> > > --- a/app/test-crypto-perf/cperf_options_parsing.c
> > > +++ b/app/test-crypto-perf/cperf_options_parsing.c
> > > @@ -64,6 +64,7 @@ usage(char *progname)
> > >           " --pdcp-sn-sz N: set PDCP SN size N <5/7/12/15/18>\n"
> > >           " --pdcp-domain DOMAIN: set PDCP domain <control/user>\n"
> > >           " --pdcp-ses-hfn-en: enable session based fixed HFN\n"
> > > +         " --enable-sdap: enable sdap\n"
> > >           " --docsis-hdr-sz: set DOCSIS header size\n"
> > >  #endif
> > >           " -h: prints this help\n",
> > > @@ -548,6 +549,15 @@ parse_silent(struct cperf_options *opts,
> > >   return 0;
> > >  }
> > >
> > > +static int
> > > +parse_enable_sdap(struct cperf_options *opts,
> > > +         const char *arg __rte_unused)
> > > +{
> > > + opts->pdcp_sdap = 1;
> > > +
> > > + return 0;
> > > +}
> >
> > You should also set a default value of this flag.
> 
> Default functionality is disable SDAP. Application is defining the cperf 
> options
> with all values 0s in its main(): "struct cperf_options opts = {0};". Is n't 
> it
> sufficient?
It would be good to initialize that with other options. It will help in 
debugging and
Improve code readability.
Please add it in cperf_options_default() as it is done for other PDCP options.


Reply via email to