Thread (74 messages) 74 messages, 3 authors, 2018-04-12

Re: [PATCH 08/10] event/octeontx: add option to use fpavf as chunk pool

From: Carrillo, Erik G <hidden>
Date: 2018-02-23 20:17:10

Hi Pavan,
-----Original Message-----
From: Pavan Nikhilesh [mailto:pbhagavatula@caviumnetworks.com]
Sent: Friday, February 16, 2018 3:37 PM
To: jerin.jacob@caviumnetworks.com;
santosh.shukla@caviumnetworks.com; Carrillo, Erik G
[off-list ref]
Cc: dev@dpdk.org; Pavan Nikhilesh <redacted>
Subject: [dpdk-dev] [PATCH 08/10] event/octeontx: add option to use fpavf
as chunk pool

Add compile-time configurable option to force TIMvf to use Octeontx FPAvf
pool manager as its chunk pool.
When FPAvf is used as pool manager the TIMvf automatically frees the
chunks to FPAvf through gpool-id.

Signed-off-by: Pavan Nikhilesh <redacted>
---
<...snipped...>
quoted hunk ↗ jump to hunk
@@ -241,7 +243,16 @@ timvf_add_entry_brst(struct timvf_ring *timr, const
uint16_t rel_bkt,
 				bkt->first_chunk = (uint64_t) chunk;
 			}
 		} else {
+#ifndef RTE_PMD_OCTEONTX_TIMVF_USE_FPAVF
 			chunk = timr_clr_bkt(timr, bkt);
+#else
+			if (unlikely(rte_mempool_get(timr-
quoted
meta.chunk_pool,
+							(void **)&chunk))) {
+				timr_bkt_set_rem(bkt, 0);
+				tim[index]->state =
RTE_EVENT_TIMER_ERROR;
+				return -ENOMEM;
You return a negative errno value here, but in this case the caller was expecting the number that succeeded.

Regards,
Gabriel
+			}
+#endif
 			bkt->first_chunk = (uint64_t) chunk;
 		}
 		*(uint64_t *)(chunk + nb_chunk_slots) = 0; @@ -355,7
+366,18 @@ timvf_add_entry_sp(struct timvf_ring *timr, const uint32_t
<...snipped...>
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help