rte_pdcp_group.h(3)
π NAME π
rte_pdcp_group.h β the header page for RTE PDCP grouping support, straight out of the Library Functions Manual. Yes bestie, it's a .h file with its own manpage, and honestly? Iconic behaviour. π
β¨ SYNOPSIS β¨
Pull these three in and you're ready to party:
#include <rte_common.h>
#include <rte_crypto.h>
#include <rte_cryptodev.h>
π«Ά Data Structures
struct rte_pdcp_groupβ the whole squad of structures in this file, and it's just the one, lowkey minimal, we love a focused queen.
π Functions
static struct rte_pdcp_entity * rte_pdcp_en_from_cop (const struct rte_crypto_op *cop)static uint16_t rte_pdcp_pkt_crypto_group (struct rte_crypto_op *cop[], struct rte_mbuf *mb[], struct rte_pdcp_group grp[], uint16_t num)
π DETAILED DESCRIPTION π
Okay so. This file is RTE PDCP grouping support. That's the vibe. That's the whole assignment.
Real talk though β do NOT include this file directly, bestie. The docs say include <rte_pdcp.h> instead. I'm not playing, this is a direct "it is not recommended to include this file directly" from the source. Respect the inclusion chain. π
So what's it actually giving? It provides helper functions to process completed crypto-ops and group related packets by sessions they belong to. That's it, that's the service. Clean, purposeful, no notes.
Definition in file rte_pdcp_group.h. (That's literally where it lives. π)
π FUNCTION DOCUMENTATION π
struct rte_pdcp_entity * rte_pdcp_en_from_cop (const struct rte_crypto_op * cop) [inline], [static]
β οΈ Warning: EXPERIMENTAL: this API may change without prior notice. π So like, use it, love it, but don't build your whole personality on it staying identical. It's in its experimental era.
The job: it takes a crypto-op as an input and extracts the pointer to the related PDCP entity. Input goes in, PDCP entity pointer comes out. Economics. π¦
Parameters
copβ the address of an inputrte_crypto_opstructure.
Returns
- The pointer to the related
rte_pdcp_entitystructure.
Definition at line 50 of file rte_pdcp_group.h.
uint16_t rte_pdcp_pkt_crypto_group (struct rte_crypto_op * cop[], struct rte_mbuf * mb[], struct rte_pdcp_group grp[], uint16_t num) [inline], [static]
β οΈ Warning: EXPERIMENTAL: this API may change without prior notice. Same energy as above, bestie. π«
The job, and she's a busy one: take as input completed crypto ops, extract related mbufs, and group them by the rte_pdcp_entity they belong to. Sorting the friend group into their little subgroups. π
Two very important receipts here:
- Mbuf for which the crypto operation has failed would be flagged using the
RTE_MBUF_F_RX_SEC_OFFLOAD_FAILEDflag inrte_mbuf.ol_flags. So check your flags, that's your "this one didn't make it" indicator. - The crypto_ops would be freed after the grouping. Gone. Poof. Don't go touching them afterwards. π
π Note: note that application must ensure only crypto-ops prepared by lib_pdcp is provided back to
(Yeah. That sentence just... ends right there in the source. We don't make the rules, we just report them faithfully. π)
See also
rte_pdcp_pkt_crypto_group().
Parameters
copβ the address of an array ofnumpointers to the inputrte_crypto_opstructures.mbβ the address of an array ofnumpointers to outputrte_mbufstructures.grpβ the address of an array ofnumto outputrte_pdcp_groupstructures.numβ the maximum number of crypto-ops to process.
Returns
- Number of filled elements in the
grparray. That's your headcount, the number of slots that actually got populated. π
Definition at line 83 of file rte_pdcp_group.h.
πΈ AUTHOR πΈ
Generated automatically by Doxygen for DPDK from the source code. (Not a human author, just a robot doing its little automated thing and honestly, slay. π€β¨)
And that's the whole page, bestie! This gorgeous specimen came to you courtesy of DPDK, sitting pretty at Version 25.11.3, and the page itself is rte_pdcp_group.h(3). Go group those packets, you absolute main character. ππβ¨
π¦ where this page comes from
- ubuntu resolute: dpdk-doc 25.11.3-0ubuntu0.26.04.1 Β· BSD-3-Clause
- ubuntu stonking: dpdk-doc 25.11.3-1 Β· BSD-3-Clause
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms