event/octeontx2: fix sub event type
authorPavan Nikhilesh <pbhagavatula@marvell.com>
Mon, 29 Jun 2020 01:33:27 +0000 (07:03 +0530)
committerJerin Jacob <jerinj@marvell.com>
Tue, 30 Jun 2020 05:41:26 +0000 (07:41 +0200)
In OCTEONTX2 event device we use sub_event_type to store the ethernet
port identifier when we receive work from OCTEONTX2 ethernet device.
This violates the event device spec as sub_event_type should be 0 in
the initial receive stage.
Set sub_event_type to 0 after copying the port id.

Fixes: 0fe4accd8ec8 ("event/octeontx2: add Rx adapter fastpath ops")
Cc: stable@dpdk.org
Signed-off-by: Pavan Nikhilesh <pbhagavatula@marvell.com>
drivers/event/octeontx2/otx2_worker_dual.h

index c88420e..60aa14c 100644 (file)
@@ -65,8 +65,11 @@ otx2_ssogws_dual_get_work(struct otx2_ssogws_state *ws,
 
        if (event.sched_type != SSO_TT_EMPTY &&
            event.event_type == RTE_EVENT_TYPE_ETHDEV) {
-               otx2_wqe_to_mbuf(get_work1, mbuf, event.sub_event_type,
-                                (uint32_t) event.get_work0, flags, lookup_mem);
+               uint8_t port = event.sub_event_type;
+
+               event.sub_event_type = 0;
+               otx2_wqe_to_mbuf(get_work1, mbuf, port,
+                                event.flow_id, flags, lookup_mem);
                /* Extracting tstamp, if PTP enabled. CGX will prepend the
                 * timestamp at starting of packet data and it can be derieved
                 * from WQE 9 dword which corresponds to SG iova.