get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

GET /api/patches/136581/?format=api
HTTP 200 OK
Allow: GET, PUT, PATCH, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

{
    "id": 136581,
    "url": "http://patches.dpdk.org/api/patches/136581/?format=api",
    "web_url": "http://patches.dpdk.org/project/dpdk/patch/20240210104214.1248772-2-chaoyong.he@corigine.com/",
    "project": {
        "id": 1,
        "url": "http://patches.dpdk.org/api/projects/1/?format=api",
        "name": "DPDK",
        "link_name": "dpdk",
        "list_id": "dev.dpdk.org",
        "list_email": "dev@dpdk.org",
        "web_url": "http://core.dpdk.org",
        "scm_url": "git://dpdk.org/dpdk",
        "webscm_url": "http://git.dpdk.org/dpdk",
        "list_archive_url": "https://inbox.dpdk.org/dev",
        "list_archive_url_format": "https://inbox.dpdk.org/dev/{}",
        "commit_url_format": ""
    },
    "msgid": "<20240210104214.1248772-2-chaoyong.he@corigine.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/20240210104214.1248772-2-chaoyong.he@corigine.com",
    "date": "2024-02-10T10:42:10",
    "name": "[1/4] net/nfp: support MARK flow action",
    "commit_ref": null,
    "pull_url": null,
    "state": "superseded",
    "archived": true,
    "hash": "ae9cf3f7b932a1873644c71a78c75bf26b9464e6",
    "submitter": {
        "id": 2554,
        "url": "http://patches.dpdk.org/api/people/2554/?format=api",
        "name": "Chaoyong He",
        "email": "chaoyong.he@corigine.com"
    },
    "delegate": {
        "id": 319,
        "url": "http://patches.dpdk.org/api/users/319/?format=api",
        "username": "fyigit",
        "first_name": "Ferruh",
        "last_name": "Yigit",
        "email": "ferruh.yigit@amd.com"
    },
    "mbox": "http://patches.dpdk.org/project/dpdk/patch/20240210104214.1248772-2-chaoyong.he@corigine.com/mbox/",
    "series": [
        {
            "id": 31068,
            "url": "http://patches.dpdk.org/api/series/31068/?format=api",
            "web_url": "http://patches.dpdk.org/project/dpdk/list/?series=31068",
            "date": "2024-02-10T10:42:09",
            "name": "add support of partial offload",
            "version": 1,
            "mbox": "http://patches.dpdk.org/series/31068/mbox/"
        }
    ],
    "comments": "http://patches.dpdk.org/api/patches/136581/comments/",
    "check": "warning",
    "checks": "http://patches.dpdk.org/api/patches/136581/checks/",
    "tags": {},
    "related": [],
    "headers": {
        "Return-Path": "<dev-bounces@dpdk.org>",
        "X-Original-To": "patchwork@inbox.dpdk.org",
        "Delivered-To": "patchwork@inbox.dpdk.org",
        "Received": [
            "from mails.dpdk.org (mails.dpdk.org [217.70.189.124])\n\tby inbox.dpdk.org (Postfix) with ESMTP id 465B343AE5;\n\tSat, 10 Feb 2024 11:42:47 +0100 (CET)",
            "from mails.dpdk.org (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id 1478D4067D;\n\tSat, 10 Feb 2024 11:42:42 +0100 (CET)",
            "from NAM11-DM6-obe.outbound.protection.outlook.com\n (mail-dm6nam11on2132.outbound.protection.outlook.com [40.107.223.132])\n by mails.dpdk.org (Postfix) with ESMTP id 669A4402CF\n for <dev@dpdk.org>; Sat, 10 Feb 2024 11:42:39 +0100 (CET)",
            "from SJ0PR13MB5545.namprd13.prod.outlook.com (2603:10b6:a03:424::5)\n by PH0PR13MB5421.namprd13.prod.outlook.com (2603:10b6:510:142::6)\n with Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7270.24; Sat, 10 Feb\n 2024 10:42:37 +0000",
            "from SJ0PR13MB5545.namprd13.prod.outlook.com\n ([fe80::8e02:f738:570a:f8aa]) by SJ0PR13MB5545.namprd13.prod.outlook.com\n ([fe80::8e02:f738:570a:f8aa%7]) with mapi id 15.20.7270.031; Sat, 10 Feb 2024\n 10:42:37 +0000"
        ],
        "ARC-Seal": "i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;\n b=matUP0pCZtCrMb0R49XklZ2+BDMnDclPKE5H4kJgLeZZ7PXTdFj3g0rP3yRafIOSFE9sNyQHou/Vsq/htDkze/49/qrKx2rSk/duj5wVKR3roc8Gowqi+oUHzkdEmSDkxTbqmdNlZ6fpIpy5nLZjzIP1VUe4EbHYBffw0uXYdEi0VqheOYksYUQyCt5eaMBCA9APRO7rKUOzF6c0J9Gp1gueW37XovgciQRhVD/ofPLGjx0Aorhsq7Ll3wFUqThtB/5R3fCJ/OWexOZmPreB7/lA8GHiWgrkNWiKShTi5YvMLc4ezg0/VFXvwnnlZHwgOpV2sM75SKPQLuXe85Ze/g==",
        "ARC-Message-Signature": "i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;\n s=arcselector9901;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;\n bh=CQeGHIcrbP2ieQIO6bdSRZGeh6ARucnAv+H4ZaI04Bs=;\n b=Ctdp1OT8hh5Jo/jzLKaDeGs+1mNL/J++HdY7YRuWuuk/3X8+0XhczYzoNChrRONr9iK/BzhI23Y8Jql7k4H/8HpPH0loRZRjhK08ivdvs9A2iMxyAWsqpK1UfoycnOTsiozxgEeNBQhwSOuvXVAc5182V/VJxGUpi1KznZFP8KojTOZ0eQdV5ujFf80+RxCDrRp4u6l9jow9xsVRrspLydfB+gOaKQEqfjNUB5WvkrdF/M1k4cqp061nP7n/vQSYvT32TSnqhbp+yxaUsyEeJI3NAJXh/sNFJBFq9DWj3TzLZBIkheWGrmceVsXwb/DETn8h5+ZeXSeUqRc50y/SYQ==",
        "ARC-Authentication-Results": "i=1; mx.microsoft.com 1; spf=pass\n smtp.mailfrom=corigine.com; dmarc=pass action=none header.from=corigine.com;\n dkim=pass header.d=corigine.com; arc=none",
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=corigine.onmicrosoft.com; s=selector2-corigine-onmicrosoft-com;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;\n bh=CQeGHIcrbP2ieQIO6bdSRZGeh6ARucnAv+H4ZaI04Bs=;\n b=BuhN7GNbZIjS0BsSxZ4Ct9lqhpUI4xGinDXyAj76tXJjXmLh8rglygKbqX6O4daCMnGS+KdEg5ZG27Iq+8LJAogo6bVs+o8Y9RKTprOQ1O5SiLE42Qa6wGtlVKpUwHtqaWsWCryJUVCN8Nk1A/V+kgcr21kUIyGxaXKFjLA8B14=",
        "Authentication-Results": "dkim=none (message not signed)\n header.d=none;dmarc=none action=none header.from=corigine.com;",
        "From": "Chaoyong He <chaoyong.he@corigine.com>",
        "To": "dev@dpdk.org",
        "Cc": "oss-drivers@corigine.com, Long Wu <long.wu@corigine.com>,\n Chaoyong He <chaoyong.he@corigine.com>,\n Peng Zhang <peng.zhang@corigine.com>",
        "Subject": "[PATCH 1/4] net/nfp: support MARK flow action",
        "Date": "Sat, 10 Feb 2024 18:42:10 +0800",
        "Message-Id": "<20240210104214.1248772-2-chaoyong.he@corigine.com>",
        "X-Mailer": "git-send-email 2.39.1",
        "In-Reply-To": "<20240210104214.1248772-1-chaoyong.he@corigine.com>",
        "References": "<20240210104214.1248772-1-chaoyong.he@corigine.com>",
        "Content-Transfer-Encoding": "8bit",
        "Content-Type": "text/plain",
        "X-ClientProxiedBy": "SG2PR02CA0129.apcprd02.prod.outlook.com\n (2603:1096:4:188::19) To SJ0PR13MB5545.namprd13.prod.outlook.com\n (2603:10b6:a03:424::5)",
        "MIME-Version": "1.0",
        "X-MS-PublicTrafficType": "Email",
        "X-MS-TrafficTypeDiagnostic": "SJ0PR13MB5545:EE_|PH0PR13MB5421:EE_",
        "X-MS-Office365-Filtering-Correlation-Id": "63aaecc9-3c47-4ead-026b-08dc2a24ff87",
        "X-MS-Exchange-SenderADCheck": "1",
        "X-MS-Exchange-AntiSpam-Relay": "0",
        "X-Microsoft-Antispam": "BCL:0;",
        "X-Microsoft-Antispam-Message-Info": "\n PLtMcS7VX4xQ2EGzymIwJ14krDZp5PQGeFtOYtclyig294sqd6ZE1gWo9libAknud/LnmHgzUaft8ND8mOrrCpmDsVYc+yI63TAomfudMS3uqYAT8zL8k9B5OaxxAl4XWQtLzgPjktnw+VoOdO3o4+mv6aJzbzwr9CrU54iLT3f68LekKagrGQcfVZ5KIB/uyoqjVyfA/Oo4df0hXPV/BE6m/fei4EX2FQLljAbk5dNxKmy1Xs7NqA55TK1LPk/j6ECGIdyJ/AMmFKawiU/PvF+Ekt9l8u9Ty99zOzDXo9FqjAuIAZxjgoa2KCua+MxQS/msX4snowqInb5RXuV5r5XePrYqnbhCURjbEofI3cRtXVvqT7Z0UX/y1E17uGORHDBZBfM3FVRxVVe8fhhx0UqmdrJ4C7/iM6EoAVJsb1FdEel4XroeE6dr7JXK8FwxY61walV/QyesrJ1OWBHFu5VNm2LeOsuOwHrf61Qd+ekQInU0jpZsfCcCTEf+39JoejbFi1p75C/r1Zhh6V049kH2nq3tk5eA9hPNz9I9efkBN+TlAW2t9oa2z1/gGur57kV1e4W+5kgmeftnrh8iA75xPGJ4vjCtxOrGIOsCVjl1TSVT1kOElYRalMM2hdae",
        "X-Forefront-Antispam-Report": "CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;\n IPV:NLI; SFV:NSPM; H:SJ0PR13MB5545.namprd13.prod.outlook.com; PTR:; CAT:NONE;\n SFS:(13230031)(346002)(366004)(39830400003)(396003)(136003)(376002)(230922051799003)(1800799012)(451199024)(64100799003)(186009)(38100700002)(66556008)(6666004)(52116002)(478600001)(316002)(86362001)(6512007)(6486002)(5660300002)(6506007)(4326008)(66946007)(44832011)(66476007)(2906002)(6916009)(2616005)(8676002)(1076003)(107886003)(83380400001)(26005)(41300700001)(54906003)(8936002)(36756003)(38350700005);\n DIR:OUT; SFP:1102;",
        "X-MS-Exchange-AntiSpam-MessageData-ChunkCount": "1",
        "X-MS-Exchange-AntiSpam-MessageData-0": "\n zAPA/B94SQJIERDdE09z3Vx7iVJiFWNGGZiHpPl4ct4DuMRoCqAxhonjELA7XTZ4i+zK6ysRbQZ7tv0ySkeV/RIjWnUQJsOeTTPuVyra29DChRTH0sdK94X2eH8/SE/ePoNch5s1lo40dBue11FrZ6uhtg/w9HnLFVCHS7REU325VFcavypU1nDh5ZjLU9OHbMNt31pPj6cmqrP6xp4WET4tfXiM1ZKDcrj2kkzUJWrZtF8yMI4PMl9NnfyDXQIOJuLa7up0B/dsf+vWXeJcrQ+nEaRbIJqUsIVOmHsbGBDZiMyvs1SQhwW2WMt0os0GbbuMZPd0yjs5v+DUwxGT5qM1JeIazDDG++7MHBdXYkBQifI2LGFHPA6L5tbjnTmS6oJN7amneGM1HIGVUuiu1Ylh0HGSbVb75zjmYLet/cV8p+YX4QfOJstfsCQIWXVjpSVnt3nD9PXYECDmXbaH1s0tmv/iMSNGyW1JoEw+eNXkrp8E6cNYQDgIFU+XY6pyhGCD2XDSxmen0Hn6P1CJRb4jeHZdpAlkoZFCfNQr1KyIaFMUDR5PthCFswxDRFCdEqVna2tJNiWY1Fi14zaX6crzRkbtywLd2HzDIA+AvGNJnEK3D8hV/UxcniidHct0MeM4j+RdjxL4RQaf/ANHOGLg6t1NCeCRXEuWvh3XUHDPjfxsB+DmbE39WEOpdpUEqujWYjMAzpMrZvpZS0BqQaIVdICHAypZ4L2m2o10lsoPx5oUBIQ52rXTzU+Gih7RvMyXKAVWyCwbu6bbcggjf++VppmTS/KVl+sAlz/HS0RHY6HmELSYSs9h1f4Hmv6oDMgBXX9GafV/LtcuqqG+qzBDIUM1s74exxfETVzZpkeugyjSfuFXUIXlUqD643qudHY6OChqJL/DfSNs5GpEXaQoEFaFyDPbGa/1FfJCVKAHBioAW32XoLHyv+BMTrI6AFOVa8S5MHHtf926vVz8G9SlWizX6w0GSH2QOU4c+930/5B/wxSu6NKDKySvAMxHzeXc/dXZe2lL/zWdhvju37WrlxUb23hZcaNWgiP1/ZoDWhgnIFA6Wp2FlOJzIfw60lo0QFGqibQecIurm7OAfb344F8x7GsskA3z4a2LntTUJWImPJyrSqEtzcIJ+gx3rd+/mMdX+JUvmx4EvLargvR8BKI9EZSotxNu6MILLK/M8XRqyG5RD+T3qGn2STXEQiqqfUUoMPbydn5PZGleUgXacNyyX2SL8CVAkAgV+PHs1Shq+RSNxnLG1XafTUIzL/MNexT2aT1trpxmrw8RRC8tYBHX1VIl25z3ThboxAj5aP5u11+GurolyNLyN5jyWyqWnRCs6CXt8A5t7/xUXheQTS56voGsORxPU7hecnlj+v6Q6BlHgliekr63X4KPqBZpbbrqPdRKnnCbWL2OCjyKFfaPDezqEVWwOPswsagH5axNQN7uxlaFnzRIC+O2qlXcrLUqWvn1ygKNFeVvbaZpK9mSY0KdjoOARAx8/HYoyuBL4/4n4KUu+fw+IGNHNOGpldxP6wgnFPEUGyd3hAxM66m1HlzdjzBXdivNGcJoLevvQh4beyMFym95ISm1YB3c60N1QC4RNi56bdeHpA==",
        "X-OriginatorOrg": "corigine.com",
        "X-MS-Exchange-CrossTenant-Network-Message-Id": "\n 63aaecc9-3c47-4ead-026b-08dc2a24ff87",
        "X-MS-Exchange-CrossTenant-AuthSource": "SJ0PR13MB5545.namprd13.prod.outlook.com",
        "X-MS-Exchange-CrossTenant-AuthAs": "Internal",
        "X-MS-Exchange-CrossTenant-OriginalArrivalTime": "10 Feb 2024 10:42:37.6703 (UTC)",
        "X-MS-Exchange-CrossTenant-FromEntityHeader": "Hosted",
        "X-MS-Exchange-CrossTenant-Id": "fe128f2c-073b-4c20-818e-7246a585940c",
        "X-MS-Exchange-CrossTenant-MailboxType": "HOSTED",
        "X-MS-Exchange-CrossTenant-UserPrincipalName": "\n NQ0Or9OdFPQeHJx/ymDe3hENrW3Q5pJdtgLhYKI0+bsRM4KMerOxcgcHgI31EXbMwpb839NKfgJNDvZ3XxgoOIFA6qDr+BkCAzCiZGeDvqw=",
        "X-MS-Exchange-Transport-CrossTenantHeadersStamped": "PH0PR13MB5421",
        "X-BeenThere": "dev@dpdk.org",
        "X-Mailman-Version": "2.1.29",
        "Precedence": "list",
        "List-Id": "DPDK patches and discussions <dev.dpdk.org>",
        "List-Unsubscribe": "<https://mails.dpdk.org/options/dev>,\n <mailto:dev-request@dpdk.org?subject=unsubscribe>",
        "List-Archive": "<http://mails.dpdk.org/archives/dev/>",
        "List-Post": "<mailto:dev@dpdk.org>",
        "List-Help": "<mailto:dev-request@dpdk.org?subject=help>",
        "List-Subscribe": "<https://mails.dpdk.org/listinfo/dev>,\n <mailto:dev-request@dpdk.org?subject=subscribe>",
        "Errors-To": "dev-bounces@dpdk.org"
    },
    "content": "From: Long Wu <long.wu@corigine.com>\n\nAdd the corresponding logics to support the offload of MARK action.\n\nSigned-off-by: Long Wu <long.wu@corigine.com>\nReviewed-by: Chaoyong He <chaoyong.he@corigine.com>\nReviewed-by: Peng Zhang <peng.zhang@corigine.com>\n---\n drivers/net/nfp/flower/nfp_flower_cmsg.h | 16 ++++++++++++++\n drivers/net/nfp/flower/nfp_flower_flow.c | 27 ++++++++++++++++++++++++\n 2 files changed, 43 insertions(+)",
    "diff": "diff --git a/drivers/net/nfp/flower/nfp_flower_cmsg.h b/drivers/net/nfp/flower/nfp_flower_cmsg.h\nindex 8fb55f44a2..c94ea706bb 100644\n--- a/drivers/net/nfp/flower/nfp_flower_cmsg.h\n+++ b/drivers/net/nfp/flower/nfp_flower_cmsg.h\n@@ -959,6 +959,22 @@ struct nfp_fl_act_meter {\n \trte_be32_t profile_id;\n };\n \n+/*\n+ * Mark\n+ *    3                   2                   1\n+ *  1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0\n+ * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+\n+ * | res |  opcode |  res  | len_lw|            reserved           |\n+ * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+\n+ * |                         Mark                                  |\n+ * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+\n+ */\n+struct nfp_fl_act_mark {\n+\tstruct nfp_fl_act_head head;\n+\trte_be16_t reserved;\n+\trte_be32_t mark;\n+};\n+\n int nfp_flower_cmsg_mac_repr(struct nfp_app_fw_flower *app_fw_flower);\n int nfp_flower_cmsg_repr_reify(struct nfp_app_fw_flower *app_fw_flower,\n \t\tstruct nfp_flower_representor *repr);\ndiff --git a/drivers/net/nfp/flower/nfp_flower_flow.c b/drivers/net/nfp/flower/nfp_flower_flow.c\nindex e26be30d18..8667f8e901 100644\n--- a/drivers/net/nfp/flower/nfp_flower_flow.c\n+++ b/drivers/net/nfp/flower/nfp_flower_flow.c\n@@ -83,6 +83,7 @@\n #define NFP_FL_ACTION_OPCODE_METER              24\n #define NFP_FL_ACTION_OPCODE_CT_NAT_EXT         25\n #define NFP_FL_ACTION_OPCODE_PUSH_GENEVE        26\n+#define NFP_FL_ACTION_OPCODE_SET_MARK           27\n #define NFP_FL_ACTION_OPCODE_NUM                32\n \n #define NFP_FL_OUT_FLAGS_LAST            RTE_BIT32(15)\n@@ -1138,6 +1139,10 @@ nfp_flow_key_layers_calculate_actions(const struct rte_flow_action actions[],\n \t\tcase RTE_FLOW_ACTION_TYPE_CONNTRACK:\n \t\t\tPMD_DRV_LOG(DEBUG, \"RTE_FLOW_ACTION_TYPE_CONNTRACK detected\");\n \t\t\tbreak;\n+\t\tcase RTE_FLOW_ACTION_TYPE_MARK:\n+\t\t\tkey_ls->act_size += sizeof(struct nfp_fl_act_mark);\n+\t\t\tPMD_DRV_LOG(DEBUG, \"RTE_FLOW_ACTION_TYPE_MARK detected\");\n+\t\t\tbreak;\n \t\tdefault:\n \t\t\tPMD_DRV_LOG(ERR, \"Action type %d not supported.\", action->type);\n \t\t\treturn -ENOTSUP;\n@@ -3487,6 +3492,23 @@ nfp_flow_action_meter(struct nfp_flower_representor *representor,\n \treturn 0;\n }\n \n+static void\n+nfp_flow_action_mark(char *act_data,\n+\t\tconst struct rte_flow_action *action)\n+{\n+\tstruct nfp_fl_act_mark *fl_mark;\n+\tconst struct rte_flow_action_mark *mark;\n+\tsize_t act_size = sizeof(struct nfp_fl_act_mark);\n+\n+\tmark = action->conf;\n+\n+\tfl_mark = (struct nfp_fl_act_mark *)act_data;\n+\tfl_mark->head.jump_id = NFP_FL_ACTION_OPCODE_SET_MARK;\n+\tfl_mark->head.len_lw  = act_size >> NFP_FL_LW_SIZ;\n+\tfl_mark->reserved     = 0;\n+\tfl_mark->mark         = rte_cpu_to_be_32(mark->id);\n+}\n+\n static uint32_t\n nfp_flow_count_output(const struct rte_flow_action actions[])\n {\n@@ -3734,6 +3756,11 @@ nfp_flow_compile_action(struct nfp_flower_representor *representor,\n \t\tcase RTE_FLOW_ACTION_TYPE_CONNTRACK:\n \t\t\tPMD_DRV_LOG(DEBUG, \"Process RTE_FLOW_ACTION_TYPE_CONNTRACK\");\n \t\t\tbreak;\n+\t\tcase RTE_FLOW_ACTION_TYPE_MARK:\n+\t\t\tPMD_DRV_LOG(DEBUG, \"Process RTE_FLOW_ACTION_TYPE_MARK\");\n+\t\t\tnfp_flow_action_mark(position, action);\n+\t\t\tposition += sizeof(struct nfp_fl_act_mark);\n+\t\t\tbreak;\n \t\tdefault:\n \t\t\tPMD_DRV_LOG(ERR, \"Unsupported action type: %d\", action->type);\n \t\t\treturn -ENOTSUP;\n",
    "prefixes": [
        "1/4"
    ]
}