I just submitted patch which cleans vlib_frame_t allocation code and adds support for aux data.
https://gerrit.fd.io/r/c/vpp/+/34798 Example use case is when node passes array of sw_if_index to next node, so next node doesn’t need to do expensive parsing of buffer metadata. It is as simple as: typedef struct { u32 sw_if_index; u32 foo; } my_frame_aux_data_t; VLIB_REGISTER_NODE (my_node) = { .vector_size = sizeof (u32), .aux_size = sizeof (my_frame_aux_data_t), }; And the inside the node function: my_frame_aux_data_t *ad = vlib_frame_aux_args (frame); Sending node can pass parameters with: vlib_next_frame_t *nf; vlib_frame_t *f; nf = vlib_node_runtime_get_next_frame (vm, node, next_index); f = vlib_get_frame (vm, nf->frame); aux = vlib_frame_aux_args (f); Please let me know if any feedback... — Damjan
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#20663): https://lists.fd.io/g/vpp-dev/message/20663 Mute This Topic: https://lists.fd.io/mt/87924883/21656 Group Owner: vpp-dev+ow...@lists.fd.io Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-