[dpdk-dev] [PATCH v2 1/4] lib: introduce IF Proxy library
Stephen Hemminger
stephen at networkplumber.org
Thu Jul 2 02:34:26 CEST 2020
I had great hopes for this library, because such code exists in
almost every real world application. But the current version falls
short.
So what this library does is turn a message based protocol (netlink)
into a set of callbacks. Not sure if that is all that useful processing
messages is often easier.
It would be more useful if the library took the netlink and maintained
a set of tables (interfaces, neighbours, routes) using DPDK infrastructure
and did it as efficiently as possible with RCU.
On a real world router with 1M routes, the processing of netlink can be
a significant chore. It has to be done efficiently. Probably needs to use
rte_ctrl_thread() and not overload the interrupt thread.
Also, please don't reinvent netlink parsing. Use a standard library
like libmnl.
Please use doxygen format for API documentation
> +/* This function should be called by the implementation whenever it notices
> + * change in the network configuration. The arguments are:
> + * - ev : pointer to filled event data structure (all fields are expected to be
> + * filled, with the exception of 'port_id' for all proxy/port related
> + * events: this function clones the event notification for each bound port
> + * and fills 'port_id' appropriately).
> + * - px : proxy node when given event is proxy/port related, otherwise pass NULL
> + */
> +void ifpx_notify_event(struct rte_ifpx_event *ev, struct ifpx_proxy_node *px);
> +
More information about the dev
mailing list