On 20/08/2019 19:35, Pablo Neira Ayuso wrote: > With one action that says "mangle an IPv6 at offset ip6 daddr field" > the driver has more global view on what is going on, rather than > having four actions to mangle four 32-bit words at some offset. But the action doesn't say that, it still says "mangle four 32-bit words", it's just that they're now contiguous. The driver doesn't know whether that's an IPv6 address or just a bunch of fields that happened to be next to one another. (Besides, the driver can't rely on that 'global view', because if the actions did come from the TC uAPI, they're still going to be single u32 mangles.) > If this patch adds some loops here is because I did not want to make > too smart changes on the drivers. The thing is, the drivers are already looping over TC actions, so they already naturally support multiple pedits. You don't gain any expressiveness by combining them into batches of four, meanwhile you make the API less orthogonal and more laborious to implement. > Please, allow for incremental updates on the flow_offload API to get > it better now. Later we'll have way more drivers it will become harder > to update this. I'm not opposed to making the API better. I just don't believe that this patch series achieves that.