* [PATCH] event/dlb2: fix event weight handling in SSE code path
@ 2025-01-21 17:11 Bruce Richardson
2025-02-04 14:48 ` [EXTERNAL] " Jerin Jacob
0 siblings, 1 reply; 2+ messages in thread
From: Bruce Richardson @ 2025-01-21 17:11 UTC (permalink / raw)
To: dev; +Cc: Pravin Pathak, Bruce Richardson, stable
Commit 6e2e98d6775b ("event/dlb2: support independent enqueue") updated
the avx512 code path with support for the event, or "qe" weights.
However, the SSE code path looks to have been missed in the update.
Update the SSE "build_hcws" function to match the changes made to the
AVX-512 version.
Bugzilla ID: 1616
Fixes: 6e2e98d6775b ("event/dlb2: support independent enqueue")
Cc: stable@dpdk.org
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
---
drivers/event/dlb2/dlb2_sse.c | 11 ++++++-----
1 file changed, 6 insertions(+), 5 deletions(-)
diff --git a/drivers/event/dlb2/dlb2_sse.c b/drivers/event/dlb2/dlb2_sse.c
index 248d7519d5..f2e1f9fb7e 100644
--- a/drivers/event/dlb2/dlb2_sse.c
+++ b/drivers/event/dlb2/dlb2_sse.c
@@ -190,11 +190,11 @@ dlb2_event_build_hcws(struct dlb2_port *qm_port,
qe[3].data = ev[3].u64;
/* will only be set for DLB 2.5 + */
- if (qm_port->cq_weight) {
- qe[0].weight = ev[0].impl_opaque & 3;
- qe[1].weight = ev[1].impl_opaque & 3;
- qe[2].weight = ev[2].impl_opaque & 3;
- qe[3].weight = ev[3].impl_opaque & 3;
+ if (qm_port->dlb2->enable_cq_weight) {
+ qe[0].weight = RTE_PMD_DLB2_GET_QE_WEIGHT(&ev[0]);
+ qe[1].weight = RTE_PMD_DLB2_GET_QE_WEIGHT(&ev[1]);
+ qe[2].weight = RTE_PMD_DLB2_GET_QE_WEIGHT(&ev[2]);
+ qe[3].weight = RTE_PMD_DLB2_GET_QE_WEIGHT(&ev[3]);
}
break;
@@ -205,6 +205,7 @@ dlb2_event_build_hcws(struct dlb2_port *qm_port,
qe[i].cmd_byte =
cmd_byte_map[qm_port->is_directed][ev[i].op];
qe[i].sched_type = sched_type[i];
+ qe[i].weight = RTE_PMD_DLB2_GET_QE_WEIGHT(&ev[i]);
qe[i].data = ev[i].u64;
qe[i].qid = queue_id[i];
qe[i].priority = EV_TO_DLB2_PRIO(ev[i].priority);
--
2.43.0
^ permalink raw reply [flat|nested] 2+ messages in thread
* RE: [EXTERNAL] [PATCH] event/dlb2: fix event weight handling in SSE code path
2025-01-21 17:11 [PATCH] event/dlb2: fix event weight handling in SSE code path Bruce Richardson
@ 2025-02-04 14:48 ` Jerin Jacob
0 siblings, 0 replies; 2+ messages in thread
From: Jerin Jacob @ 2025-02-04 14:48 UTC (permalink / raw)
To: Bruce Richardson, dev, Pravin Pathak; +Cc: stable
> -----Original Message-----
> From: Bruce Richardson <bruce.richardson@intel.com>
> Sent: Tuesday, January 21, 2025 10:42 PM
> To: dev@dpdk.org
> Cc: Pravin Pathak <pravin.pathak@intel.com>; Bruce Richardson
> <bruce.richardson@intel.com>; stable@dpdk.org
> Subject: [EXTERNAL] [PATCH] event/dlb2: fix event weight handling in SSE code
> path
>
> Commit 6e2e98d6775b ("event/dlb2: support independent enqueue") updated
> the avx512 code path with support for the event, or "qe" weights. However, the
> SSE code path looks to have been missed in the update. Update the SSE
> "build_hcws" function
> Commit 6e2e98d6775b ("event/dlb2: support independent enqueue") updated
> the avx512 code path with support for the event, or "qe" weights.
> However, the SSE code path looks to have been missed in the update.
> Update the SSE "build_hcws" function to match the changes made to the
> AVX-512 version.
>
> Bugzilla ID: 1616
> Fixes: 6e2e98d6775b ("event/dlb2: support independent enqueue")
> Cc: stable@dpdk.org
@Pravin Pathak Please review and ack to merge for rc1.
>
> Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
> ---
> drivers/event/dlb2/dlb2_sse.c | 11 ++++++-----
> 1 file changed, 6 insertions(+), 5 deletions(-)
>
> diff --git a/drivers/event/dlb2/dlb2_sse.c b/drivers/event/dlb2/dlb2_sse.c index
> 248d7519d5..f2e1f9fb7e 100644
> --- a/drivers/event/dlb2/dlb2_sse.c
> +++ b/drivers/event/dlb2/dlb2_sse.c
> @@ -190,11 +190,11 @@ dlb2_event_build_hcws(struct dlb2_port *qm_port,
> qe[3].data = ev[3].u64;
>
> /* will only be set for DLB 2.5 + */
> - if (qm_port->cq_weight) {
> - qe[0].weight = ev[0].impl_opaque & 3;
> - qe[1].weight = ev[1].impl_opaque & 3;
> - qe[2].weight = ev[2].impl_opaque & 3;
> - qe[3].weight = ev[3].impl_opaque & 3;
> + if (qm_port->dlb2->enable_cq_weight) {
> + qe[0].weight =
> RTE_PMD_DLB2_GET_QE_WEIGHT(&ev[0]);
> + qe[1].weight =
> RTE_PMD_DLB2_GET_QE_WEIGHT(&ev[1]);
> + qe[2].weight =
> RTE_PMD_DLB2_GET_QE_WEIGHT(&ev[2]);
> + qe[3].weight =
> RTE_PMD_DLB2_GET_QE_WEIGHT(&ev[3]);
> }
>
> break;
> @@ -205,6 +205,7 @@ dlb2_event_build_hcws(struct dlb2_port *qm_port,
> qe[i].cmd_byte =
> cmd_byte_map[qm_port-
> >is_directed][ev[i].op];
> qe[i].sched_type = sched_type[i];
> + qe[i].weight =
> RTE_PMD_DLB2_GET_QE_WEIGHT(&ev[i]);
> qe[i].data = ev[i].u64;
> qe[i].qid = queue_id[i];
> qe[i].priority = EV_TO_DLB2_PRIO(ev[i].priority);
> --
> 2.43.0
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2025-02-04 14:49 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-01-21 17:11 [PATCH] event/dlb2: fix event weight handling in SSE code path Bruce Richardson
2025-02-04 14:48 ` [EXTERNAL] " Jerin Jacob
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).