From f91fc4629e95f861ddc520225c815167d117e22e Mon Sep 17 00:00:00 2001 From: Konstantin Ananyev Date: Fri, 14 May 2021 11:57:09 +0000 Subject: Revert "l4p/tcp: introduce tle_tcp_stream_rx_bulk() API" This reverts commit a33ac5f5b04058c1cc10ac9e0c1a4f2d0f24f80b. Reason for revert: wrong branch Change-Id: I11c11f9ffd3415bcb9dc867dc93abb41f999cbed Signed-off-by: Konstantin Ananyev --- lib/libtle_l4p/tcp_rxtx.c | 71 ----------------------------------------------- lib/libtle_l4p/tle_tcp.h | 34 ----------------------- 2 files changed, 105 deletions(-) diff --git a/lib/libtle_l4p/tcp_rxtx.c b/lib/libtle_l4p/tcp_rxtx.c index 4f43557..0e8a39f 100644 --- a/lib/libtle_l4p/tcp_rxtx.c +++ b/lib/libtle_l4p/tcp_rxtx.c @@ -71,23 +71,6 @@ rx_obtain_listen_stream(const struct tle_dev *dev, const union pkt_info *pi, return s; } -static inline struct tle_tcp_stream * -rx_acquire_stream(struct tle_stream *ts) -{ - struct tle_tcp_stream *s; - - s = TCP_STREAM(ts); - if (tcp_stream_acquire(s) < 0) - return NULL; - - else if (s->tcb.state == TCP_ST_CLOSED) { - tcp_stream_release(s); - return NULL; - } - - return s; -} - static inline struct tle_tcp_stream * rx_obtain_stream(const struct tle_dev *dev, struct stbl *st, const union pkt_info *pi, uint32_t type) @@ -1975,60 +1958,6 @@ tle_tcp_rx_bulk(struct tle_dev *dev, struct rte_mbuf *pkt[], return num - k; } -uint16_t -tle_tcp_stream_rx_bulk(struct tle_stream *ts, struct rte_mbuf *pkt[], - struct rte_mbuf *rp[], int32_t rc[], uint16_t num) -{ - struct tle_ctx *ctx; - struct tle_tcp_stream *s; - uint32_t i, j, k, n, t, tms; - union pkt_info pi[num]; - union seg_info si[num]; - - ctx = ts->ctx; - tms = tcp_get_tms(ctx->cycles_ms_shift); - - s = rx_acquire_stream(ts); - if (s == NULL) { - for (i = 0; i != num; i++) { - rc[i] = ENOENT; - rp[i] = pkt[i]; - } - return 0; - } - - /* extract packet info and check the L3/L4 csums */ - for (i = 0; i != num; i++) { - get_pkt_info(pkt[i], &pi[i], &si[i]); - pi[i].csf = check_pkt_csum(pkt[i], pi[i].csf, pi[i].tf.type, - IPPROTO_TCP); - } - - k = 0; - for (i = 0; i != num; i += j) { - - t = pi[i].tf.type; - j = 1; - - /*basic checks for incoming packet */ - if (t != ts->type || pi[i].csf != 0 || - rx_check_stream(s, pi + i) != 0) { - rc[k] = EINVAL; - rp[k] = pkt[i]; - k++; - continue; - } - - j = pkt_info_bulk_eq(pi + i, num - i); - n = rx_stream(s, tms, pi + i, si + i, pkt + i, - rp + k, rc + k, j); - k += j - n; - } - - tcp_stream_release(s); - return num - k; -} - uint16_t tle_tcp_stream_accept(struct tle_stream *ts, struct tle_stream *rs[], uint32_t num) diff --git a/lib/libtle_l4p/tle_tcp.h b/lib/libtle_l4p/tle_tcp.h index 9947041..3155dfa 100644 --- a/lib/libtle_l4p/tle_tcp.h +++ b/lib/libtle_l4p/tle_tcp.h @@ -414,40 +414,6 @@ ssize_t tle_tcp_stream_writev(struct tle_stream *ts, struct rte_mempool *mp, uint16_t tle_tcp_rx_bulk(struct tle_dev *dev, struct rte_mbuf *pkt[], struct rte_mbuf *rp[], int32_t rc[], uint16_t num); - -/** - * Take input mbufs and put them for processing to given TCP streams. - * expects that for each input packet: - * - l2_len, l3_len, l4_len are setup correctly - * - (packet_type & (RTE_PTYPE_L3_IPV4 | RTE_PTYPE_L3_IPV6)) != 0, - * - (packet_type & RTE_PTYPE_L4_TCP) != 0, - * During delivery L3/L4 checksums will be verified - * (either relies on HW offload or in SW). - * May cause some extra packets to be queued for TX. - * This function is not multi-thread safe. - * @param ts - * TCP stream given packets belong to. - * Note that it is caller repsonsibility to make sure that input packets - * belong to given stream. - * @param pkt - * The burst of input packets that need to be processed. - * @param rp - * The array that will contain pointers of unprocessed packets at return. - * Should contain at least *num* elements. - * @param rc - * The array that will contain error code for corresponding rp[] entry: - * - ENOENT - invalid stream. - * - ENOBUFS - receive buffer of the destination stream is full. - * - EINVAL - invalid input packet encountered. - * Should contain at least *num* elements. - * @param num - * Number of elements in the *pkt* input array. - * @return - * number of packets delivered to the TCP stream. - */ -uint16_t tle_tcp_stream_rx_bulk(struct tle_stream *ts, struct rte_mbuf *pkt[], - struct rte_mbuf *rp[], int32_t rc[], uint16_t num); - /** * Fill *pkt* with pointers to the packets that have to be transmitted * over given TCP device. -- cgit 1.2.3-korg