On Thu, Apr 27, 2023 at 12:24 PM Pavan Nikhilesh Bhagavatula <pbhagavat...@marvell.com> wrote: > > > > > -----Original Message----- > > From: Shijith Thotton <sthot...@marvell.com> > > Sent: Thursday, April 27, 2023 11:58 AM > > To: Jerin Jacob Kollanukkaran <jer...@marvell.com> > > Cc: Shijith Thotton <sthot...@marvell.com>; dev@dpdk.org; Pavan > > Nikhilesh Bhagavatula <pbhagavat...@marvell.com>; sta...@dpdk.org > > Subject: [PATCH v1] event/cnxk: fix setting event attributes in empty get > > work > > > > Even when no events are dequeued, it is important to update event > > attributes as they provide valuable information for checking the work > > slot state and other attributes. > > > > Fixes: c0a9774f030d ("event/cnxk: move post-processing to separate > > function") > > > > Signed-off-by: Shijith Thotton <sthot...@marvell.com> > > Acked-by: Pavan Nikhilesh <pbhagavat...@marvell.com>
Applied to dpdk-next-net-eventdev/for-main. Thanks > > > --- > > drivers/event/cnxk/cn10k_worker.h | 3 +++ > > drivers/event/cnxk/cn9k_worker.h | 6 ++++-- > > 2 files changed, 7 insertions(+), 2 deletions(-) > > > > diff --git a/drivers/event/cnxk/cn10k_worker.h > > b/drivers/event/cnxk/cn10k_worker.h > > index 06c71c6092..beae2be903 100644 > > --- a/drivers/event/cnxk/cn10k_worker.h > > +++ b/drivers/event/cnxk/cn10k_worker.h > > @@ -282,6 +282,9 @@ cn10k_sso_hws_get_work_empty(struct > > cn10k_sso_hws *ws, struct rte_event *ev, > > ws->gw_rdata = gw.u64[0]; > > if (gw.u64[1]) > > cn10k_sso_hws_post_process(ws, gw.u64, flags); > > + else > > + gw.u64[0] = (gw.u64[0] & (0x3ull << 32)) << 6 | > > + (gw.u64[0] & (0x3FFull << 36)) << 4 | (gw.u64[0] & > > 0xffffffff); > > > > ev->event = gw.u64[0]; > > ev->u64 = gw.u64[1]; > > diff --git a/drivers/event/cnxk/cn9k_worker.h > > b/drivers/event/cnxk/cn9k_worker.h > > index 1ce4b044e8..47eea70b5f 100644 > > --- a/drivers/event/cnxk/cn9k_worker.h > > +++ b/drivers/event/cnxk/cn9k_worker.h > > @@ -353,8 +353,10 @@ cn9k_sso_hws_get_work_empty(uint64_t base, > > struct rte_event *ev, > > #endif > > > > if (gw.u64[1]) > > - cn9k_sso_hws_post_process(gw.u64, mbuf, flags, > > lookup_mem, > > - tstamp); > > + cn9k_sso_hws_post_process(gw.u64, mbuf, flags, > > lookup_mem, tstamp); > > + else > > + gw.u64[0] = (gw.u64[0] & (0x3ull << 32)) << 6 | > > + (gw.u64[0] & (0x3FFull << 36)) << 4 | (gw.u64[0] & > > 0xffffffff); > > > > ev->event = gw.u64[0]; > > ev->u64 = gw.u64[1]; > > -- > > 2.25.1 >