DPDK patches and discussions
 help / color / mirror / Atom feed
From: "Kinsella, Ray" <mdr@ashroe.eu>
To: Jerin Jacob <jerinjacobk@gmail.com>,
	Pavan Nikhilesh <pbhagavatula@marvell.com>
Cc: Jerin Jacob <jerinj@marvell.com>,
	"Jayatheerthan, Jay" <jay.jayatheerthan@intel.com>,
	Erik Gabriel Carrillo <erik.g.carrillo@intel.com>,
	"Gujjar, Abhinandan S" <abhinandan.gujjar@intel.com>,
	"McDaniel, Timothy" <timothy.mcdaniel@intel.com>,
	Hemant Agrawal <hemant.agrawal@nxp.com>,
	"Van Haaren, Harry" <harry.van.haaren@intel.com>,
	Mattias Rönnblom <mattias.ronnblom@ericsson.com>,
	Liang Ma <liang.j.ma@intel.com>,
	Neil Horman <nhorman@tuxdriver.com>, dpdk-dev <dev@dpdk.org>,
	Thomas Monjalon <thomas@monjalon.net>,
	David Marchand <david.marchand@redhat.com>
Subject: Re: [dpdk-dev] [PATCH 7/7] eventdev: fix ABI breakage due to event vector
Date: Mon, 15 Mar 2021 10:01:57 +0000
Message-ID: <f13ba285-5aa2-4f68-868b-5ca7d540f4e1@ashroe.eu> (raw)
In-Reply-To: <CALBAE1PDvPAvZkGqy-WRMohnpPjrAe0nS45=dz8=xh+716tQKA@mail.gmail.com>



On 08/03/2021 18:44, Jerin Jacob wrote:
> On Sun, Feb 21, 2021 at 3:41 AM <pbhagavatula@marvell.com> wrote:
>>
>> From: Pavan Nikhilesh <pbhagavatula@marvell.com>
>>
>> Fix ABI breakage due to event vector configuration by moving
>> the vector configuration into a new structure and having a separate
>> function for enabling the vector config on a given ethernet device and
>> queue pair.
>> This vector config and function can be merged to queue config in
>> v21.11.
>>
>> Fixes: 44c81670cf0a ("eventdev: introduce event vector Rx capability")
> 
> Hi @Ray Kinsella @Neil Horman @Thomas Monjalon @David Marchand
> 
> Is the ABI breakage contract between release to release. Right? i.e it
> is not between each patch. Right?
> 
> Summary:
> 1)  Ideal way of adding this feature is to add elements in the
> existing structure as mentioned
> in  ("eventdev: introduce event vector Rx capability") in this series.
> 2) Since this breaking ABI, Introducing a new structure to fix this. I
> think, we can remove this
> limitation in 21.11 as that time we can change ABI as required.
> 
> So, Is this patch needs to be squashed to  ("eventdev: introduce event
> vector Rx capability") to avoid
> ABI compatibility between patches? Or Is it OK to break the ABI
> compatibility in a patch in the series
> and later fix it in the same series?(This is for more readability as
> we can revert this patch in 21.11).

You are essentially writing it as you want it to appear in 21.11, 
you then add one patch at the end to fix ABI compability until then.
You then only have one patch to revert in the 21.11 cycle. 

Agree with David, I like the approach. 

+1 from me. 

> 
> 
> 
>>
>> Signed-off-by: Pavan Nikhilesh <pbhagavatula@marvell.com>
>> ---
>>  app/test-eventdev/test_pipeline_common.c      |  16 +-
>>  lib/librte_eventdev/eventdev_pmd.h            |  29 +++
>>  .../rte_event_eth_rx_adapter.c                | 168 ++++++++++++------
>>  .../rte_event_eth_rx_adapter.h                |  27 +++
>>  lib/librte_eventdev/version.map               |   1 +
>>  5 files changed, 184 insertions(+), 57 deletions(-)
>>
>> diff --git a/app/test-eventdev/test_pipeline_common.c b/app/test-eventdev/test_pipeline_common.c
>> index 89f73be86..9aeefdd5f 100644
>> --- a/app/test-eventdev/test_pipeline_common.c
>> +++ b/app/test-eventdev/test_pipeline_common.c
>> @@ -331,6 +331,7 @@ pipeline_event_rx_adapter_setup(struct evt_options *opt, uint8_t stride,
>>         uint16_t prod;
>>         struct rte_mempool *vector_pool = NULL;
>>         struct rte_event_eth_rx_adapter_queue_conf queue_conf;
>> +       struct rte_event_eth_rx_adapter_event_vector_config vec_conf;
>>
>>         memset(&queue_conf, 0,
>>                         sizeof(struct rte_event_eth_rx_adapter_queue_conf));
>> @@ -360,12 +361,8 @@ pipeline_event_rx_adapter_setup(struct evt_options *opt, uint8_t stride,
>>                 }
>>                 if (opt->ena_vector) {
>>                         if (cap & RTE_EVENT_ETH_RX_ADAPTER_CAP_EVENT_VECTOR) {
>> -                               queue_conf.vector_sz = opt->vector_size;
>> -                               queue_conf.vector_timeout_ns =
>> -                                       opt->vector_tmo_nsec;
>>                                 queue_conf.rx_queue_flags |=
>>                                 RTE_EVENT_ETH_RX_ADAPTER_QUEUE_EVENT_VECTOR;
>> -                               queue_conf.vector_mp = vector_pool;
>>                         } else {
>>                                 evt_err("Rx adapter doesn't support event vector");
>>                                 return -EINVAL;
>> @@ -385,6 +382,17 @@ pipeline_event_rx_adapter_setup(struct evt_options *opt, uint8_t stride,
>>                         return ret;
>>                 }
>>
>> +               if (opt->ena_vector) {
>> +                       vec_conf.vector_sz = opt->vector_size;
>> +                       vec_conf.vector_timeout_ns = opt->vector_tmo_nsec;
>> +                       vec_conf.vector_mp = vector_pool;
>> +                       if (rte_event_eth_rx_adapter_queue_event_vector_config(
>> +                                   prod, prod, -1, &vec_conf) < 0) {
>> +                               evt_err("Failed to configure event vectorization for Rx adapter");
>> +                               return -EINVAL;
>> +                       }
>> +               }
>> +
>>                 if (!(cap & RTE_EVENT_ETH_RX_ADAPTER_CAP_INTERNAL_PORT)) {
>>                         uint32_t service_id = -1U;
>>
>> diff --git a/lib/librte_eventdev/eventdev_pmd.h b/lib/librte_eventdev/eventdev_pmd.h
>> index 60bfaebc0..d79dfd612 100644
>> --- a/lib/librte_eventdev/eventdev_pmd.h
>> +++ b/lib/librte_eventdev/eventdev_pmd.h
>> @@ -667,6 +667,32 @@ typedef int (*eventdev_eth_rx_adapter_vector_limits_get_t)(
>>         const struct rte_eventdev *dev, const struct rte_eth_dev *eth_dev,
>>         struct rte_event_eth_rx_adapter_vector_limits *limits);
>>
>> +struct rte_event_eth_rx_adapter_event_vector_config;
>> +/**
>> + * Enable event vector on an given Rx queue of a ethernet devices belonging to
>> + * the Rx adapter.
>> + *
>> + * @param dev
>> + *   Event device pointer
>> + *
>> + * @param eth_dev
>> + *   Ethernet device pointer
>> + *
>> + * @param rx_queue_id
>> + *   The Rx queue identifier
>> + *
>> + * @param config
>> + *   Pointer to the event vector configuration structure.
>> + *
>> + * @return
>> + *   - 0: Success.
>> + *   - <0: Error code returned by the driver function.
>> + */
>> +typedef int (*eventdev_eth_rx_adapter_event_vector_config_t)(
>> +       const struct rte_eventdev *dev, const struct rte_eth_dev *eth_dev,
>> +       int32_t rx_queue_id,
>> +       const struct rte_event_eth_rx_adapter_event_vector_config *config);
>> +
>>  typedef uint32_t rte_event_pmd_selftest_seqn_t;
>>  extern int rte_event_pmd_selftest_seqn_dynfield_offset;
>>
>> @@ -1092,6 +1118,9 @@ struct rte_eventdev_ops {
>>         eventdev_eth_rx_adapter_vector_limits_get_t
>>                 eth_rx_adapter_vector_limits_get;
>>         /**< Get event vector limits for the Rx adapter */
>> +       eventdev_eth_rx_adapter_event_vector_config_t
>> +               eth_rx_adapter_event_vector_config;
>> +       /**< Configure Rx adapter with event vector */
>>
>>         eventdev_timer_adapter_caps_get_t timer_adapter_caps_get;
>>         /**< Get timer adapter capabilities */
>> diff --git a/lib/librte_eventdev/rte_event_eth_rx_adapter.c b/lib/librte_eventdev/rte_event_eth_rx_adapter.c
>> index a1990637f..c71990078 100644
>> --- a/lib/librte_eventdev/rte_event_eth_rx_adapter.c
>> +++ b/lib/librte_eventdev/rte_event_eth_rx_adapter.c
>> @@ -1882,25 +1882,6 @@ rxa_add_queue(struct rte_event_eth_rx_adapter *rx_adapter,
>>         } else
>>                 qi_ev->flow_id = 0;
>>
>> -       if (conf->rx_queue_flags &
>> -           RTE_EVENT_ETH_RX_ADAPTER_QUEUE_EVENT_VECTOR) {
>> -               queue_info->ena_vector = 1;
>> -               qi_ev->event_type = RTE_EVENT_TYPE_ETH_RX_ADAPTER_VECTOR;
>> -               rxa_set_vector_data(queue_info, conf->vector_sz,
>> -                                   conf->vector_timeout_ns, conf->vector_mp,
>> -                                   rx_queue_id, dev_info->dev->data->port_id);
>> -               rx_adapter->ena_vector = 1;
>> -               rx_adapter->vector_tmo_ticks =
>> -                       rx_adapter->vector_tmo_ticks
>> -                               ? RTE_MIN(queue_info->vector_data
>> -                                                 .vector_timeout_ticks,
>> -                                         rx_adapter->vector_tmo_ticks)
>> -                               : queue_info->vector_data.vector_timeout_ticks;
>> -               rx_adapter->vector_tmo_ticks <<= 1;
>> -               TAILQ_INIT(&rx_adapter->vector_list);
>> -               rx_adapter->prev_expiry_ts = 0;
>> -       }
>> -
>>         rxa_update_queue(rx_adapter, dev_info, rx_queue_id, 1);
>>         if (rxa_polled_queue(dev_info, rx_queue_id)) {
>>                 rx_adapter->num_rx_polled += !pollq;
>> @@ -1926,6 +1907,44 @@ rxa_add_queue(struct rte_event_eth_rx_adapter *rx_adapter,
>>         }
>>  }
>>
>> +static void
>> +rxa_sw_event_vector_configure(
>> +       struct rte_event_eth_rx_adapter *rx_adapter, uint16_t eth_dev_id,
>> +       int rx_queue_id,
>> +       const struct rte_event_eth_rx_adapter_event_vector_config *config)
>> +{
>> +       struct eth_device_info *dev_info = &rx_adapter->eth_devices[eth_dev_id];
>> +       struct eth_rx_queue_info *queue_info;
>> +       struct rte_event *qi_ev;
>> +
>> +       if (rx_queue_id == -1) {
>> +               uint16_t nb_rx_queues;
>> +               uint16_t i;
>> +
>> +               nb_rx_queues = dev_info->dev->data->nb_rx_queues;
>> +               for (i = 0; i < nb_rx_queues; i++)
>> +                       rxa_sw_event_vector_configure(rx_adapter, eth_dev_id, i,
>> +                                                     config);
>> +               return;
>> +       }
>> +
>> +       queue_info = &dev_info->rx_queue[rx_queue_id];
>> +       qi_ev = (struct rte_event *)&queue_info->event;
>> +       queue_info->ena_vector = 1;
>> +       qi_ev->event_type = RTE_EVENT_TYPE_ETH_RX_ADAPTER_VECTOR;
>> +       rxa_set_vector_data(queue_info, config->vector_sz,
>> +                           config->vector_timeout_ns, config->vector_mp,
>> +                           rx_queue_id, dev_info->dev->data->port_id);
>> +       rx_adapter->ena_vector = 1;
>> +       rx_adapter->vector_tmo_ticks =
>> +               rx_adapter->vector_tmo_ticks ?
>> +                             RTE_MIN(config->vector_timeout_ns << 1,
>> +                                     rx_adapter->vector_tmo_ticks) :
>> +                             config->vector_timeout_ns << 1;
>> +       rx_adapter->prev_expiry_ts = 0;
>> +       TAILQ_INIT(&rx_adapter->vector_list);
>> +}
>> +
>>  static int rxa_sw_add(struct rte_event_eth_rx_adapter *rx_adapter,
>>                 uint16_t eth_dev_id,
>>                 int rx_queue_id,
>> @@ -2239,7 +2258,6 @@ rte_event_eth_rx_adapter_queue_add(uint8_t id,
>>         struct rte_event_eth_rx_adapter *rx_adapter;
>>         struct rte_eventdev *dev;
>>         struct eth_device_info *dev_info;
>> -       struct rte_event_eth_rx_adapter_vector_limits limits;
>>
>>         RTE_EVENT_ETH_RX_ADAPTER_ID_VALID_OR_ERR_RET(id, -EINVAL);
>>         RTE_ETH_VALID_PORTID_OR_ERR_RET(eth_dev_id, -EINVAL);
>> @@ -2276,39 +2294,6 @@ rte_event_eth_rx_adapter_queue_add(uint8_t id,
>>                 return -EINVAL;
>>         }
>>
>> -       if (queue_conf->rx_queue_flags &
>> -           RTE_EVENT_ETH_RX_ADAPTER_QUEUE_EVENT_VECTOR) {
>> -               ret = rte_event_eth_rx_adapter_vector_limits_get(
>> -                       rx_adapter->eventdev_id, eth_dev_id, &limits);
>> -               if (ret < 0) {
>> -                       RTE_EDEV_LOG_ERR("Failed to get event device vector limits,"
>> -                                        " eth port: %" PRIu16
>> -                                        " adapter id: %" PRIu8,
>> -                                        eth_dev_id, id);
>> -                       return -EINVAL;
>> -               }
>> -               if (queue_conf->vector_sz < limits.min_sz ||
>> -                   queue_conf->vector_sz > limits.max_sz ||
>> -                   queue_conf->vector_timeout_ns < limits.min_timeout_ns ||
>> -                   queue_conf->vector_timeout_ns > limits.max_timeout_ns ||
>> -                   queue_conf->vector_mp == NULL) {
>> -                       RTE_EDEV_LOG_ERR("Invalid event vector configuration,"
>> -                                        " eth port: %" PRIu16
>> -                                        " adapter id: %" PRIu8,
>> -                                        eth_dev_id, id);
>> -                       return -EINVAL;
>> -               }
>> -               if (queue_conf->vector_mp->elt_size <
>> -                   (sizeof(struct rte_event_vector) +
>> -                    (sizeof(uintptr_t) * queue_conf->vector_sz))) {
>> -                       RTE_EDEV_LOG_ERR("Invalid event vector configuration,"
>> -                                        " eth port: %" PRIu16
>> -                                        " adapter id: %" PRIu8,
>> -                                        eth_dev_id, id);
>> -                       return -EINVAL;
>> -               }
>> -       }
>> -
>>         if ((cap & RTE_EVENT_ETH_RX_ADAPTER_CAP_MULTI_EVENTQ) == 0 &&
>>                 (rx_queue_id != -1)) {
>>                 RTE_EDEV_LOG_ERR("Rx queues can only be connected to single "
>> @@ -2502,6 +2487,83 @@ rte_event_eth_rx_adapter_queue_del(uint8_t id, uint16_t eth_dev_id,
>>         return ret;
>>  }
>>
>> +int
>> +rte_event_eth_rx_adapter_queue_event_vector_config(
>> +       uint8_t id, uint16_t eth_dev_id, int32_t rx_queue_id,
>> +       struct rte_event_eth_rx_adapter_event_vector_config *config)
>> +{
>> +       struct rte_event_eth_rx_adapter_vector_limits limits;
>> +       struct rte_event_eth_rx_adapter *rx_adapter;
>> +       struct rte_eventdev *dev;
>> +       uint32_t cap;
>> +       int ret;
>> +
>> +       RTE_EVENT_ETH_RX_ADAPTER_ID_VALID_OR_ERR_RET(id, -EINVAL);
>> +       RTE_ETH_VALID_PORTID_OR_ERR_RET(eth_dev_id, -EINVAL);
>> +
>> +       rx_adapter = rxa_id_to_adapter(id);
>> +       if ((rx_adapter == NULL) || (config == NULL))
>> +               return -EINVAL;
>> +
>> +       dev = &rte_eventdevs[rx_adapter->eventdev_id];
>> +       ret = rte_event_eth_rx_adapter_caps_get(rx_adapter->eventdev_id,
>> +                                               eth_dev_id, &cap);
>> +       if (ret) {
>> +               RTE_EDEV_LOG_ERR("Failed to get adapter caps edev %" PRIu8
>> +                                "eth port %" PRIu16,
>> +                                id, eth_dev_id);
>> +               return ret;
>> +       }
>> +
>> +       if (!(cap & RTE_EVENT_ETH_RX_ADAPTER_CAP_EVENT_VECTOR)) {
>> +               RTE_EDEV_LOG_ERR("Event vectorization is not supported,"
>> +                                " eth port: %" PRIu16 " adapter id: %" PRIu8,
>> +                                eth_dev_id, id);
>> +               return -EINVAL;
>> +       }
>> +
>> +       ret = rte_event_eth_rx_adapter_vector_limits_get(
>> +               rx_adapter->eventdev_id, eth_dev_id, &limits);
>> +       if (ret) {
>> +               RTE_EDEV_LOG_ERR("Failed to get vector limits edev %" PRIu8
>> +                                "eth port %" PRIu16,
>> +                                rx_adapter->eventdev_id, eth_dev_id);
>> +               return ret;
>> +       }
>> +
>> +       if (config->vector_sz < limits.min_sz ||
>> +           config->vector_sz > limits.max_sz ||
>> +           config->vector_timeout_ns < limits.min_timeout_ns ||
>> +           config->vector_timeout_ns > limits.max_timeout_ns ||
>> +           config->vector_mp == NULL) {
>> +               RTE_EDEV_LOG_ERR("Invalid event vector configuration,"
>> +                                " eth port: %" PRIu16 " adapter id: %" PRIu8,
>> +                                eth_dev_id, id);
>> +               return -EINVAL;
>> +       }
>> +       if (config->vector_mp->elt_size <
>> +           (sizeof(struct rte_event_vector) +
>> +            (sizeof(uintptr_t) * config->vector_sz))) {
>> +               RTE_EDEV_LOG_ERR("Invalid event vector configuration,"
>> +                                " eth port: %" PRIu16 " adapter id: %" PRIu8,
>> +                                eth_dev_id, id);
>> +               return -EINVAL;
>> +       }
>> +
>> +       if (cap & RTE_EVENT_ETH_RX_ADAPTER_CAP_INTERNAL_PORT) {
>> +               RTE_FUNC_PTR_OR_ERR_RET(
>> +                       *dev->dev_ops->eth_rx_adapter_event_vector_config,
>> +                       -ENOTSUP);
>> +               ret = dev->dev_ops->eth_rx_adapter_event_vector_config(
>> +                       dev, &rte_eth_devices[eth_dev_id], rx_queue_id, config);
>> +       } else {
>> +               rxa_sw_event_vector_configure(rx_adapter, eth_dev_id,
>> +                                             rx_queue_id, config);
>> +       }
>> +
>> +       return ret;
>> +}
>> +
>>  int
>>  rte_event_eth_rx_adapter_vector_limits_get(
>>         uint8_t dev_id, uint16_t eth_port_id,
>> diff --git a/lib/librte_eventdev/rte_event_eth_rx_adapter.h b/lib/librte_eventdev/rte_event_eth_rx_adapter.h
>> index 4bdb38f08..ceef6d565 100644
>> --- a/lib/librte_eventdev/rte_event_eth_rx_adapter.h
>> +++ b/lib/librte_eventdev/rte_event_eth_rx_adapter.h
>> @@ -171,6 +171,9 @@ struct rte_event_eth_rx_adapter_queue_conf {
>>          * The event adapter sets ev.event_type to RTE_EVENT_TYPE_ETHDEV in the
>>          * enqueued event.
>>          */
>> +};
>> +
>> +struct rte_event_eth_rx_adapter_event_vector_config {
>>         uint16_t vector_sz;
>>         /**<
>>          * Indicates the maximum number for mbufs to combine and form a vector.
>> @@ -418,6 +421,30 @@ int rte_event_eth_rx_adapter_queue_add(uint8_t id,
>>  int rte_event_eth_rx_adapter_queue_del(uint8_t id, uint16_t eth_dev_id,
>>                                        int32_t rx_queue_id);
>>
>> +/**
>> + * Configure event vectorization for a given ethernet device queue, that has
>> + * been added to a event eth Rx adapter.
>> + *
>> + * @param id
>> + *  The identifier of the ethernet Rx event adapter.
>> + *
>> + * @param eth_dev_id
>> + *  The identifier of the ethernet device.
>> + *
>> + * @param rx_queue_id
>> + *  Ethernet device receive queue index.
>> + *  If rx_queue_id is -1, then all Rx queues configured for the ethernet device
>> + *  are configured with event vectorization.
>> + *
>> + * @return
>> + *  - 0: Success, Receive queue configured correctly.
>> + *  - <0: Error code on failure.
>> + */
>> +__rte_experimental
>> +int rte_event_eth_rx_adapter_queue_event_vector_config(
>> +       uint8_t id, uint16_t eth_dev_id, int32_t rx_queue_id,
>> +       struct rte_event_eth_rx_adapter_event_vector_config *config);
>> +
>>  /**
>>   * Start ethernet Rx event adapter
>>   *
>> diff --git a/lib/librte_eventdev/version.map b/lib/librte_eventdev/version.map
>> index 34c1c830e..902df0ae3 100644
>> --- a/lib/librte_eventdev/version.map
>> +++ b/lib/librte_eventdev/version.map
>> @@ -142,6 +142,7 @@ EXPERIMENTAL {
>>         #added in 21.05
>>         rte_event_vector_pool_create;
>>         rte_event_eth_rx_adapter_vector_limits_get;
>> +       rte_event_eth_rx_adapter_queue_event_vector_config;
>>  };
>>
>>  INTERNAL {
>> --
>> 2.17.1
>>

  parent reply	other threads:[~2021-03-15 10:02 UTC|newest]

Thread overview: 144+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-02-20 22:09 [dpdk-dev] [PATCH 0/7] Introduce event vectorization pbhagavatula
2021-02-20 22:09 ` [dpdk-dev] [PATCH 1/7] eventdev: introduce event vector capability pbhagavatula
2021-03-08 16:49   ` Jerin Jacob
2021-02-20 22:09 ` [dpdk-dev] [PATCH 2/7] eventdev: introduce event vector Rx capability pbhagavatula
2021-03-08 17:07   ` Jerin Jacob
2021-02-20 22:09 ` [dpdk-dev] [PATCH 3/7] eventdev: introduce event vector Tx capability pbhagavatula
2021-03-08 17:09   ` Jerin Jacob
2021-02-20 22:09 ` [dpdk-dev] [PATCH 4/7] eventdev: add Rx adapter event vector support pbhagavatula
2021-03-08 17:27   ` Jerin Jacob
2021-03-16 10:41     ` Jayatheerthan, Jay
2021-02-20 22:09 ` [dpdk-dev] [PATCH 5/7] eventdev: add Tx " pbhagavatula
2021-02-20 22:09 ` [dpdk-dev] [PATCH 6/7] app/eventdev: add event vector mode in pipeline test pbhagavatula
2021-02-20 22:09 ` [dpdk-dev] [PATCH 7/7] eventdev: fix ABI breakage due to event vector pbhagavatula
2021-03-08 18:44   ` Jerin Jacob
2021-03-12 14:28     ` David Marchand
2021-03-16  5:54       ` [dpdk-dev] [EXT] " Pavan Nikhilesh Bhagavatula
2021-03-15 10:01     ` Kinsella, Ray [this message]
2021-03-08 16:41 ` [dpdk-dev] [PATCH 0/7] Introduce event vectorization Jerin Jacob
2021-03-16 15:48 ` [dpdk-dev] [PATCH v2 0/8] " pbhagavatula
2021-03-16 15:48   ` [dpdk-dev] [PATCH v2 1/8] eventdev: introduce event vector capability pbhagavatula
2021-03-16 17:48     ` Jerin Jacob
2021-03-16 19:17       ` [dpdk-dev] [EXT] " Pavan Nikhilesh Bhagavatula
2021-03-16 15:48   ` [dpdk-dev] [PATCH v2 2/8] eventdev: introduce event vector Rx capability pbhagavatula
2021-03-16 15:48   ` [dpdk-dev] [PATCH v2 3/8] eventdev: introduce event vector Tx capability pbhagavatula
2021-03-16 15:48   ` [dpdk-dev] [PATCH v2 4/8] eventdev: add Rx adapter event vector support pbhagavatula
2021-03-16 15:48   ` [dpdk-dev] [PATCH v2 5/8] eventdev: add Tx " pbhagavatula
2021-03-16 15:48   ` [dpdk-dev] [PATCH v2 6/8] app/eventdev: add event vector mode in pipeline test pbhagavatula
2021-03-16 15:48   ` [dpdk-dev] [PATCH v2 7/8] doc: announce event Rx adapter config changes pbhagavatula
2021-03-16 15:48   ` [dpdk-dev] [dpdk-dev v21.11] [PATCH v2 8/8] eventdev: simplify Rx adapter event vector config pbhagavatula
2021-03-16 20:01   ` [dpdk-dev] [PATCH v3 0/8] Introduce event vectorization pbhagavatula
2021-03-16 20:01     ` [dpdk-dev] [PATCH v3 1/8] eventdev: introduce event vector capability pbhagavatula
2021-03-18  6:19       ` Jayatheerthan, Jay
2021-03-18  6:23         ` Pavan Nikhilesh Bhagavatula
2021-03-16 20:01     ` [dpdk-dev] [PATCH v3 2/8] eventdev: introduce event vector Rx capability pbhagavatula
2021-03-16 20:01     ` [dpdk-dev] [PATCH v3 3/8] eventdev: introduce event vector Tx capability pbhagavatula
2021-03-16 20:01     ` [dpdk-dev] [PATCH v3 4/8] eventdev: add Rx adapter event vector support pbhagavatula
2021-03-16 20:01     ` [dpdk-dev] [PATCH v3 5/8] eventdev: add Tx " pbhagavatula
2021-03-16 20:01     ` [dpdk-dev] [PATCH v3 6/8] app/eventdev: add event vector mode in pipeline test pbhagavatula
2021-03-16 20:01     ` [dpdk-dev] [PATCH v3 7/8] doc: announce event Rx adapter config changes pbhagavatula
2021-03-16 20:01     ` [dpdk-dev] [dpdk-dev v21.11] [PATCH v3 8/8] eventdev: simplify Rx adapter event vector config pbhagavatula
2021-03-19 20:57     ` [dpdk-dev] [PATCH v4 0/8] Introduce event vectorization pbhagavatula
2021-03-19 20:57       ` [dpdk-dev] [PATCH v4 1/8] eventdev: introduce event vector capability pbhagavatula
2021-03-22  9:06         ` Kinsella, Ray
2021-03-22  9:10           ` [dpdk-dev] [EXT] " Pavan Nikhilesh Bhagavatula
2021-03-23 11:12         ` [dpdk-dev] " Jerin Jacob
2021-03-19 20:57       ` [dpdk-dev] [PATCH v4 2/8] eventdev: introduce event vector Rx capability pbhagavatula
2021-03-22  9:12         ` Kinsella, Ray
2021-03-22 10:07           ` [dpdk-dev] [EXT] " Pavan Nikhilesh Bhagavatula
2021-03-22 11:07             ` Kinsella, Ray
2021-03-23 16:56         ` [dpdk-dev] " Jerin Jacob
2021-03-19 20:57       ` [dpdk-dev] [PATCH v4 3/8] eventdev: introduce event vector Tx capability pbhagavatula
2021-03-19 20:57       ` [dpdk-dev] [PATCH v4 4/8] eventdev: add Rx adapter event vector support pbhagavatula
2021-03-23 18:30         ` Jerin Jacob
2021-03-19 20:57       ` [dpdk-dev] [PATCH v4 5/8] eventdev: add Tx " pbhagavatula
2021-03-19 20:57       ` [dpdk-dev] [PATCH v4 6/8] app/eventdev: add event vector mode in pipeline test pbhagavatula
2021-03-23 18:39         ` Jerin Jacob
2021-03-19 20:57       ` [dpdk-dev] [PATCH v4 7/8] doc: announce event Rx adapter config changes pbhagavatula
2021-03-19 20:57       ` [dpdk-dev] [dpdk-dev v21.11] [PATCH v4 8/8] eventdev: simplify Rx adapter event vector config pbhagavatula
2021-03-23 18:44       ` [dpdk-dev] [PATCH v4 0/8] Introduce event vectorization Jerin Jacob
2021-03-24  5:05       ` [dpdk-dev] [PATCH v5 " pbhagavatula
2021-03-24  5:05         ` [dpdk-dev] [PATCH v5 1/8] eventdev: introduce event vector capability pbhagavatula
2021-03-24  6:48           ` Jayatheerthan, Jay
2021-03-24 18:20             ` Pavan Nikhilesh Bhagavatula
2021-03-24  9:16           ` Kinsella, Ray
2021-03-24  5:05         ` [dpdk-dev] [PATCH v5 2/8] eventdev: introduce event vector Rx capability pbhagavatula
2021-03-24  9:15           ` Kinsella, Ray
2021-03-25  8:15           ` Jayatheerthan, Jay
2021-03-25  9:24             ` Pavan Nikhilesh Bhagavatula
2021-03-25  9:50               ` Jayatheerthan, Jay
2021-03-24  5:05         ` [dpdk-dev] [PATCH v5 3/8] eventdev: introduce event vector Tx capability pbhagavatula
2021-03-25  8:16           ` Jayatheerthan, Jay
2021-03-24  5:05         ` [dpdk-dev] [PATCH v5 4/8] eventdev: add Rx adapter event vector support pbhagavatula
2021-03-25 10:37           ` Jayatheerthan, Jay
2021-03-25 13:14             ` Pavan Nikhilesh Bhagavatula
2021-03-26  6:26               ` Jayatheerthan, Jay
2021-03-26  9:00                 ` Pavan Nikhilesh Bhagavatula
2021-03-24  5:05         ` [dpdk-dev] [PATCH v5 5/8] eventdev: add Tx " pbhagavatula
2021-03-25 11:44           ` Jayatheerthan, Jay
2021-03-24  5:05         ` [dpdk-dev] [PATCH v5 6/8] app/eventdev: add event vector mode in pipeline test pbhagavatula
2021-03-24  5:05         ` [dpdk-dev] [PATCH v5 7/8] doc: announce event Rx adapter config changes pbhagavatula
2021-03-24  9:16           ` Kinsella, Ray
2021-03-24  5:05         ` [dpdk-dev] [dpdk-dev v21.11] [PATCH v5 8/8] eventdev: simplify Rx adapter event vector config pbhagavatula
2021-03-25 12:27           ` Jayatheerthan, Jay
2021-03-25 13:55             ` Pavan Nikhilesh Bhagavatula
2021-03-26  7:09               ` Jayatheerthan, Jay
2021-03-26  9:44                 ` Pavan Nikhilesh Bhagavatula
2021-03-24  5:39         ` [dpdk-dev] [PATCH v5 0/8] Introduce event vectorization Jayatheerthan, Jay
2021-03-24  6:44           ` Pavan Nikhilesh Bhagavatula
2021-03-24  8:10             ` Jayatheerthan, Jay
2021-03-24 19:28         ` [dpdk-dev] [PATCH v6 " pbhagavatula
2021-03-24 19:28           ` [dpdk-dev] [PATCH v6 1/8] eventdev: introduce event vector capability pbhagavatula
2021-03-24 19:28           ` [dpdk-dev] [PATCH v6 2/8] eventdev: introduce event vector Rx capability pbhagavatula
2021-03-24 19:28           ` [dpdk-dev] [PATCH v6 3/8] eventdev: introduce event vector Tx capability pbhagavatula
2021-03-24 19:28           ` [dpdk-dev] [PATCH v6 4/8] eventdev: add Rx adapter event vector support pbhagavatula
2021-03-24 19:28           ` [dpdk-dev] [PATCH v6 5/8] eventdev: add Tx " pbhagavatula
2021-03-24 19:28           ` [dpdk-dev] [PATCH v6 6/8] app/eventdev: add event vector mode in pipeline test pbhagavatula
2021-03-24 19:28           ` [dpdk-dev] [PATCH v6 7/8] doc: announce event Rx adapter config changes pbhagavatula
2021-03-24 19:28           ` [dpdk-dev] [dpdk-dev v21.11] [PATCH v6 8/8] eventdev: simplify Rx adapter event vector config pbhagavatula
2021-03-25 17:10           ` [dpdk-dev] [PATCH v7 0/8] Introduce event vectorization pbhagavatula
2021-03-25 17:10             ` [dpdk-dev] [PATCH v7 1/8] eventdev: introduce event vector capability pbhagavatula
2021-03-25 17:10             ` [dpdk-dev] [PATCH v7 2/8] eventdev: introduce event vector Rx capability pbhagavatula
2021-03-25 17:10             ` [dpdk-dev] [PATCH v7 3/8] eventdev: introduce event vector Tx capability pbhagavatula
2021-03-25 17:10             ` [dpdk-dev] [PATCH v7 4/8] eventdev: add Rx adapter event vector support pbhagavatula
2021-03-25 17:10             ` [dpdk-dev] [PATCH v7 5/8] eventdev: add Tx " pbhagavatula
2021-03-25 17:10             ` [dpdk-dev] [PATCH v7 6/8] app/eventdev: add event vector mode in pipeline test pbhagavatula
2021-03-25 17:10             ` [dpdk-dev] [PATCH v7 7/8] doc: announce event Rx adapter config changes pbhagavatula
2021-03-25 17:10             ` [dpdk-dev] [dpdk-dev v21.11] [PATCH v7 8/8] eventdev: simplify Rx adapter event vector config pbhagavatula
2021-03-26 14:08             ` [dpdk-dev] [PATCH v8 0/8] Introduce event vectorization pbhagavatula
2021-03-26 14:08               ` [dpdk-dev] [PATCH v8 1/8] eventdev: introduce event vector capability pbhagavatula
2021-03-27 12:07                 ` Jayatheerthan, Jay
2021-03-26 14:08               ` [dpdk-dev] [PATCH v8 2/8] eventdev: introduce event vector Rx capability pbhagavatula
2021-03-26 14:08               ` [dpdk-dev] [PATCH v8 3/8] eventdev: introduce event vector Tx capability pbhagavatula
2021-03-26 14:08               ` [dpdk-dev] [PATCH v8 4/8] eventdev: add Rx adapter event vector support pbhagavatula
2021-03-28  8:18                 ` Jerin Jacob
2021-03-29  6:09                   ` Jayatheerthan, Jay
2021-03-26 14:08               ` [dpdk-dev] [PATCH v8 5/8] eventdev: add Tx " pbhagavatula
2021-03-26 14:08               ` [dpdk-dev] [PATCH v8 6/8] app/eventdev: add event vector mode in pipeline test pbhagavatula
2021-03-26 14:08               ` [dpdk-dev] [PATCH v8 7/8] doc: announce event Rx adapter config changes pbhagavatula
2021-03-26 14:43                 ` Jerin Jacob
2021-03-27 12:07                   ` Jayatheerthan, Jay
2021-03-26 14:08               ` [dpdk-dev] [dpdk-dev v21.11] [PATCH v8 8/8] eventdev: simplify Rx adapter event vector config pbhagavatula
2021-03-30  8:22               ` [dpdk-dev] [PATCH v9 0/8] Introduce event vectorization pbhagavatula
2021-03-30  8:22                 ` [dpdk-dev] [PATCH v9 1/8] eventdev: introduce event vector capability pbhagavatula
2021-03-30  8:22                 ` [dpdk-dev] [PATCH v9 2/8] eventdev: introduce event vector Rx capability pbhagavatula
2021-03-30  8:22                 ` [dpdk-dev] [PATCH v9 3/8] eventdev: introduce event vector Tx capability pbhagavatula
2021-03-30  8:22                 ` [dpdk-dev] [PATCH v9 4/8] eventdev: add Rx adapter event vector support pbhagavatula
2021-03-31  6:35                   ` Jayatheerthan, Jay
2021-03-31  6:40                     ` Pavan Nikhilesh Bhagavatula
2021-03-31  6:55                       ` Jayatheerthan, Jay
2021-03-30  8:22                 ` [dpdk-dev] [PATCH v9 5/8] eventdev: add Tx " pbhagavatula
2021-03-30  8:22                 ` [dpdk-dev] [PATCH v9 6/8] app/eventdev: add event vector mode in pipeline test pbhagavatula
2021-03-30  8:22                 ` [dpdk-dev] [PATCH v9 7/8] doc: announce event Rx adapter config changes pbhagavatula
2021-03-30  8:22                 ` [dpdk-dev] [dpdk-dev v21.11] [PATCH v9 8/8] eventdev: simplify Rx adapter event vector config pbhagavatula
2021-03-31  6:55                   ` Jayatheerthan, Jay
2021-03-31  9:29                 ` [dpdk-dev] [PATCH v10 0/8] Introduce event vectorization pbhagavatula
2021-03-31  9:29                   ` [dpdk-dev] [PATCH v10 1/8] eventdev: introduce event vector capability pbhagavatula
2021-03-31  9:29                   ` [dpdk-dev] [PATCH v10 2/8] eventdev: introduce event vector Rx capability pbhagavatula
2021-03-31  9:29                   ` [dpdk-dev] [PATCH v10 3/8] eventdev: introduce event vector Tx capability pbhagavatula
2021-03-31  9:29                   ` [dpdk-dev] [PATCH v10 4/8] eventdev: add Rx adapter event vector support pbhagavatula
2021-03-31  9:29                   ` [dpdk-dev] [PATCH v10 5/8] eventdev: add Tx " pbhagavatula
2021-03-31  9:30                   ` [dpdk-dev] [PATCH v10 6/8] app/eventdev: add event vector mode in pipeline test pbhagavatula
2021-03-31  9:30                   ` [dpdk-dev] [PATCH v10 7/8] doc: announce event Rx adapter config changes pbhagavatula
2021-03-31  9:30                   ` [dpdk-dev] [dpdk-dev v21.11] [PATCH v10 8/8] eventdev: simplify Rx adapter event vector config pbhagavatula
2021-04-03  9:44                   ` [dpdk-dev] [PATCH v10 0/8] Introduce event vectorization Jerin Jacob

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=f13ba285-5aa2-4f68-868b-5ca7d540f4e1@ashroe.eu \
    --to=mdr@ashroe.eu \
    --cc=abhinandan.gujjar@intel.com \
    --cc=david.marchand@redhat.com \
    --cc=dev@dpdk.org \
    --cc=erik.g.carrillo@intel.com \
    --cc=harry.van.haaren@intel.com \
    --cc=hemant.agrawal@nxp.com \
    --cc=jay.jayatheerthan@intel.com \
    --cc=jerinj@marvell.com \
    --cc=jerinjacobk@gmail.com \
    --cc=liang.j.ma@intel.com \
    --cc=mattias.ronnblom@ericsson.com \
    --cc=nhorman@tuxdriver.com \
    --cc=pbhagavatula@marvell.com \
    --cc=thomas@monjalon.net \
    --cc=timothy.mcdaniel@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

DPDK patches and discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror https://inbox.dpdk.org/dev/0 dev/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 dev dev/ https://inbox.dpdk.org/dev \
		dev@dpdk.org
	public-inbox-index dev

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://inbox.dpdk.org/inbox.dpdk.dev


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git