From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 32C31A051C; Fri, 26 Jun 2020 13:44:20 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 14DB91BED9; Fri, 26 Jun 2020 13:44:20 +0200 (CEST) Received: from mail-io1-f66.google.com (mail-io1-f66.google.com [209.85.166.66]) by dpdk.org (Postfix) with ESMTP id 96F641BDAC for ; Fri, 26 Jun 2020 13:44:18 +0200 (CEST) Received: by mail-io1-f66.google.com with SMTP id e64so4528505iof.12 for ; Fri, 26 Jun 2020 04:44:18 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=6vJlLSctLoT/pZON6GTfcNrAPDVPA7yoqCjgQjSCziA=; b=PC1J+i6eQ9XpAlZytM3+Bf9v9NmARfpond+Pz79bIOOp+3IowYR0hl4SCvR6Q5d1Di g9KZ37MZlwGFamdZpxu6fVLSf+anzNYB8ebElrKCwCm0yTlLV0B8StmiiNb6o+tk4KK7 L296Ej1+rrvyuddONmvBr7PfcZRl2NxKaTTZdYmcMZis8LAk2EofQ+exWgaT28EhNHNb CX9WARyaYMpeZBgMoa07zbM/x4yuz4neMCVy64uvUR4irESBE9W8jDcCWo1Npvobvy+q pBWLee8S/vkKXG3gElrpt2nqH4HhUECuZcNK0+SRDEIFL9BkM15NALVmhnQjMLG2lfPl Bpow== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=6vJlLSctLoT/pZON6GTfcNrAPDVPA7yoqCjgQjSCziA=; b=X/AjLfe2k/S1sJFNvVSyC/o9FCPFwM3JW9exch6JcLYfzj12O5e9cQK9djDml0qOFk j9MLSMkCDEPSrGff5AZQ9duEMOWSTNb8BZcOvqREu3ms1CbYWr6xaEv18wHmUIUGzvG+ 1AgbES20gJIl6QqDRCKX+2QliHJ/6z/loqG8Bad+91rJ/eqBuWFDJLUBvF2UZZKmxSoX AXASYfPnVwZIOAxDTXR6l82kXIdG1F4epP7CLdPG0jfwFiH6fNBurxV1V1hI3Xi7389m aqGTP6qMMy7P2a0ZKdSDpj8V5ydpRBuEE470mR4dHHg3IUfI/26HN7LvTGF6ZgiX6oEo qHJg== X-Gm-Message-State: AOAM533HqLgtRAVCyghF17bn9TNwUSULXRx5wz8MVjtGr7AMZ2j6HgyY VJRqJFmW90bCKizPH+IGE6FqvnJheftL9SOPQDQ= X-Google-Smtp-Source: ABdhPJyTRkZnfEIQzQPdJi6mpqhBUq9d64uKula7VYB725Q5Q0L+4MWTy+RlxiDqfBF/zb0EsMljhPnlAWQcdlBkNBk= X-Received: by 2002:a5e:880f:: with SMTP id l15mr2910302ioj.94.1593171857799; Fri, 26 Jun 2020 04:44:17 -0700 (PDT) MIME-Version: 1.0 References: <20200620133231.12355-1-andrey.vesnovaty@gmail.com> In-Reply-To: <20200620133231.12355-1-andrey.vesnovaty@gmail.com> From: Jerin Jacob Date: Fri, 26 Jun 2020 17:14:01 +0530 Message-ID: To: Andrey Vesnovaty Cc: Thomas Monjalon , dpdk-dev Content-Type: text/plain; charset="UTF-8" Subject: Re: [dpdk-dev] [RFC v2 0/1] add flow action context API X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" On Sat, Jun 20, 2020 at 7:02 PM Andrey Vesnovaty wrote: > > Hi, and thanks a lot for your RFC v1 comments. > > RFC v2 emphasize the intent for sharing the flow action: > * The term 'action context' was unclear and replaced with > 'shared action'. > * RFC v2 subject became 'add flow shared action API'. > * all proposed APIs renamed according the above. > > The new shared action is an independent entity decoupled from any flow > while any flow can reuse such an action. Please go over the RFC > description, it was almost entirely rewritten. > > @Jerin Jacob: > Thanks again for your comments, it made me admit that v1 description was > incomplete & unclear. I hope v2 will be better at least in terms of > clarity. The public API and its usage is very clear. Thanks for this RFC. I think, RFC v2 still not addressing the concern raised in the http://mails.dpdk.org/archives/dev/2020-June/169296.html. Since MLX hardware has an HW based shared object it is fine to have public API based on that level of abstraction. But at the PMD driver level we need to choose the correct abstraction to support all PMD and support shared object scheme if possible. I purpose to introduce something below or similar int (*action_update) (struct rte_eth_dev *, struct rte_flow *flow, const struct rte_flow_action [], struct rte_flow_error *); in addition to: shared_action_create, shared_action_destroy, shared_action_update, shared_action_query Have generic implementation of above, if action_update callback is not NULL. So that, it can work all PMDs and to avoid the duplication of "complex" shared session management code.