Prioritize security for external emails:
Confirm sender and content safety before clicking links or opening attachments
> -----Original Message----- > From: Pravin Pathak <pravin.pat...@intel.com> > Sent: Friday, May 9, 2025 9:54 AM > To: dev@dpdk.org > Cc: Jerin Jacob <jer...@marvell.com>; mike.ximing.c...@intel.com; > bruce.richard...@intel.com; tho...@monjalon.net; > david.march...@redhat.com; nipun.gu...@amd.com; chen...@nvidia.com; > tirthendu.sar...@intel.com; Pravin Pathak <pravin.pat...@intel.com> > Subject: [EXTERNAL] [PATCH v1 4/7] event/dlb2: support managing history list > resource > > Add support for setting application specified port history Set HL equal to CQ > depth when inflight control is enabled Added command line parameters > 'use_default_hl' (default: 1) and 'alloc_hl_entries' - When 'use_default_hl = 1' * > Per port HL ZjQcmQRYFpfptBannerStart Prioritize security for external emails: > Confirm sender and content safety before clicking links or opening attachments > <https://us-phishalarm- > ewt.proofpoint.com/EWT/v1/CRVmXkqW!tm3Z1f8UAnV69S- > 8OZ3abn2jU1Fw7JxGFGecPxaCk1uQu97fQz1QdXWof_KxtumPzB31X_fWX1Ns4 > HIeAFdHnOYAiGPs37vC1U0$> > Report Suspicious > > ZjQcmQRYFpfptBannerEnd > Add support for setting application specified port history Set HL equal to CQ > depth when inflight control is enabled Added command line parameters > 'use_default_hl' (default: 1) > and 'alloc_hl_entries' > - When 'use_default_hl = 1' > * Per port HL is set to DLB2_FIXED_CQ_HL_SIZE (32) > * Recommended CQ depth by dlb2_eventdev_port_default_conf_get() > is DLB2_FIXED_CQ_HL_SIZE/2 > * command line parameter alloc_hl_entries is ignored > - When 'use_default_hl = 0' > * Per LDB port HL = 2 * CQ depth > * Recommended CQ depth by dlb2_eventdev_port_default_conf_get() > is DLB2_FIXED_CQ_HL_SIZE > * User should calculate needed HL entries based on CQ depths the > application will use and specify it as command line parameter > 'alloc_hl_entries'. This will be used to allocate HL entries. > alloc_hl_entries = (Sum of all LDB ports CQ depths * 2) > * If alloc_hl_entries is not specified, then > Total HL entries for the eventdev = num_ldb_ports * 64 > > Signed-off-by: Pravin Pathak <pravin.pat...@intel.com> > Signed-off-by: Tirthendu Sarkar <tirthendu.sar...@intel.com> > --- > drivers/event/dlb2/dlb2.c | 220 +++++++++++++++++---- > drivers/event/dlb2/dlb2_iface.c | 5 +- > drivers/event/dlb2/dlb2_iface.h | 4 +- > drivers/event/dlb2/dlb2_priv.h | 19 +- > drivers/event/dlb2/dlb2_user.h | 24 +++ > drivers/event/dlb2/pf/base/dlb2_regs.h | 9 + > drivers/event/dlb2/pf/base/dlb2_resource.c | 74 +++++++ > drivers/event/dlb2/pf/base/dlb2_resource.h | 18 ++ > drivers/event/dlb2/pf/dlb2_pf.c | 29 ++- > drivers/event/dlb2/rte_pmd_dlb2.c | 23 +++ > drivers/event/dlb2/rte_pmd_dlb2.h | 40 ++++ > drivers/event/dlb2/version.map | 1 + > 12 files changed, 422 insertions(+), 44 deletions(-) > > diff --git a/drivers/event/dlb2/dlb2.c b/drivers/event/dlb2/dlb2.c index > 24c56a7968..cd843bb9d0 100644 > --- a/drivers/event/dlb2/dlb2.c > +++ b/drivers/event/dlb2/dlb2.c > @@ -727,6 +727,50 @@ set_enable_cq_weight(const char *key __rte_unused, > return 0; > } > > +static int set_hl_override(const char *key __rte_unused, const char *value, > + void *opaque) > +{ > + bool *default_hl = opaque; > + > + if (value == NULL || opaque == NULL) { > + DLB2_LOG_ERR("NULL pointer"); > + return -EINVAL; > + } > + > + if ((*value == 'n') || (*value == 'N') || (*value == '0')) > + *default_hl = false; > + else > + *default_hl = true; > + > + return 0; > +} > + > +static int set_hl_entries(const char *key __rte_unused, const char *value, > + void * > + > + return dlb2_set_port_param(dlb2, port_id, flags, val); } > diff --git a/drivers/event/dlb2/rte_pmd_dlb2.h > b/drivers/event/dlb2/rte_pmd_dlb2.h > index 207ce6a3fd..3f529860ba 100644 > --- a/drivers/event/dlb2/rte_pmd_dlb2.h > +++ b/drivers/event/dlb2/rte_pmd_dlb2.h > @@ -91,6 +91,46 @@ rte_pmd_dlb2_set_token_pop_mode(uint8_t dev_id, > uint8_t port_id, > enum dlb2_token_pop_mode mode); > > +/** Set inflight threshold for flow migration */ #define > +DLB2_FLOW_MIGRATION_THRESHOLD RTE_BIT64(0) > + > +/** Set port history list */ > +#define DLB2_SET_PORT_HL RTE_BIT64(1) > + > +struct dlb2_port_param { > + uint16_t inflight_threshold : 12; > + uint16_t port_hl; > +}; > + > +/*! > + * @warning > + * @b EXPERIMENTAL: this API may change, or be removed, without prior > +notice > + * > + * Configure various port parameters. > + * AUTO_POP. This function must be called before calling > +rte_event_port_setup() > + * for the port, but after calling rte_event_dev_configure(). > + * > + * @param dev_id > + * The identifier of the event device. > + * @param port_id > + * The identifier of the event port. > + * @param flags > + * Bitmask of the parameters being set. > + * @param val > + * Structure coantaining the values of parameters being set. > + * > + * @return > + * - 0: Success > + * - EINVAL: Invalid dev_id, port_id, or mode > + * - EINVAL: The DLB2 is not configured, is already running, or the port is > + * already setup > + */ > +__rte_experimental > +int > +rte_pmd_dlb2_set_port_param(uint8_t dev_id, > + uint8_t port_id, > + uint64_t flags, > + void *val); > #ifdef __cplusplus > } > #endif > diff --git a/drivers/event/dlb2/version.map b/drivers/event/dlb2/version.map > index c37d2302cd..be5a8f6f2b 100644 > --- a/drivers/event/dlb2/version.map > +++ b/drivers/event/dlb2/version.map > @@ -7,4 +7,5 @@ EXPERIMENTAL { > > # added in 20.11 > rte_pmd_dlb2_set_token_pop_mode; > + rte_pmd_dlb2_set_port_param; > }; > -- > 2.25.1