Re: [RFC PATCH 6/7] net: ixgbe: add minimal parser details for ixgbe
From: John Fastabend <john.fastabend@gmail.com>
Date: 2016-02-02 16:47:01
On 16-02-02 08:27 AM, Or Gerlitz wrote:
On Mon, Feb 1, 2016 at 3:52 AM, John Fastabend [off-list ref] wrote:quoted
This adds an ixgbe data structure that is used to determine what headers:fields can be matched and in what order they are supported. For hardware devices this can be a bit tricky because typically only pre-programmed (firmware, ucode, rtl) parse graphs will be supported and we don't yet have an interface to change these from the OS. So its sort of a you get whatever your friendly vendor provides affair at the moment. In the future we can add the get routines and set routines to update this data structure. One interesting thing to note here is the data structure here identifies ethernet, ip, and tcp fields without having to hardcode them as enumerations or use other identifiers.Maybe for the current state this patch (or the most of it) can be made generic and provided in a way that multiple HW drivers can use it?
If you want the structs we can put them in a helper lib but the main code is two for loops to catch the keys and an if block to catch the nexthdr code mixed with a bunch of code to program the specific device. Its just not that helpful to other drivers. .John