Re: [dpdk-dev] [RFC v4] regexdev: introduce regexdev subsystem
From: Jerin Jacob <hidden>
Date: 2020-02-27 14:55:58
On Thu, Feb 27, 2020 at 8:11 PM Ori Kam [off-list ref] wrote:
From: Jerin Jacob <redacted> Even though there are some vendors which offer Regex HW offload, due to lack of standard API, It is diffcult for DPDK consumer to use them in a portable way. This _RFC_ attempts to standardize the RegEx/DPI offload APIs for DPDK. This RFC crafted based on SW Regex API frameworks such as libpcre and hyperscan and a few of the RegEx HW IPs which I am aware of. RegEx pattern matching applications: * Next Generation Firewalls (NGFW) * Deep Packet and Flow Inspection (DPI) * Intrusion Prevention Systems (IPS) * DDoS Mitigation * Network Monitoring * Data Loss Prevention (DLP) * Smart NICs * Grammar based content processing * URL, spam and adware filtering * Advanced auditing and policing of user/application security policies * Financial data mining - parsing of streamed financial feeds * Application recognition. * Dmemory introspection. * Natural Language Processing (NLP) * Sentiment Analysis. * Big data databse acceleration. * Computational storage. Request to review from HW and SW RegEx vendors and RegEx application users to have portable DPDK API for RegEx. The API schematics are based cryptodev, eventdev and ethdev existing device API. Signed-off-by: Jerin Jacob <redacted> Signed-off-by: Pavan Nikhilesh <redacted> Signed-off-by: Ori Kam <redacted> --- V4: * Replace iova with mbuf. * Small ML comments. V3: * Change subject title. V2: * Address ML comments.
+/** Struct to hold scatter gather elements in ops. */
+struct rte_regex_iov {
+ RTE_STD_C11
+ union {
+ uint64_t u64;
+ /**< Allow 8-byte reserved on 32-bit system */
+ void *buf_addr;
+ /**< Virtual address of the pattern to be matched. */
+ };
+ rte_iova_t buf_iova;
+ /**< IOVA address of the pattern to be matched. */
+ uint16_t buf_size; /**< The buf size. */
+};rte_regex_iov structure is stale . Please remove it.