get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 129248,
    "url": "http://patchwork.dpdk.org/api/patches/129248/?format=api",
    "web_url": "http://patchwork.dpdk.org/project/dpdk/patch/20230704104645.19800-5-igozlan@nvidia.com/",
    "project": {
        "id": 1,
        "url": "http://patchwork.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": "<20230704104645.19800-5-igozlan@nvidia.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/20230704104645.19800-5-igozlan@nvidia.com",
    "date": "2023-07-04T10:46:45",
    "name": "[v1,5/5] net/mlx5/hws: support default miss action on FDB",
    "commit_ref": null,
    "pull_url": null,
    "state": "superseded",
    "archived": true,
    "hash": "e9dd28fc19bd9672151bb5a892c9276939621055",
    "submitter": {
        "id": 3118,
        "url": "http://patchwork.dpdk.org/api/people/3118/?format=api",
        "name": "Itamar Gozlan",
        "email": "igozlan@nvidia.com"
    },
    "delegate": {
        "id": 3268,
        "url": "http://patchwork.dpdk.org/api/users/3268/?format=api",
        "username": "rasland",
        "first_name": "Raslan",
        "last_name": "Darawsheh",
        "email": "rasland@nvidia.com"
    },
    "mbox": "http://patchwork.dpdk.org/project/dpdk/patch/20230704104645.19800-5-igozlan@nvidia.com/mbox/",
    "series": [
        {
            "id": 28806,
            "url": "http://patchwork.dpdk.org/api/series/28806/?format=api",
            "web_url": "http://patchwork.dpdk.org/project/dpdk/list/?series=28806",
            "date": "2023-07-04T10:46:41",
            "name": "[v1,1/5] net/mlx5/hws: remove uneeded new line for DR_LOG",
            "version": 1,
            "mbox": "http://patchwork.dpdk.org/series/28806/mbox/"
        }
    ],
    "comments": "http://patchwork.dpdk.org/api/patches/129248/comments/",
    "check": "success",
    "checks": "http://patchwork.dpdk.org/api/patches/129248/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 EE41742DD1;\n\tTue,  4 Jul 2023 12:48:42 +0200 (CEST)",
            "from mails.dpdk.org (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id EE0F142D2C;\n\tTue,  4 Jul 2023 12:48:40 +0200 (CEST)",
            "from NAM11-BN8-obe.outbound.protection.outlook.com\n (mail-bn8nam11on2041.outbound.protection.outlook.com [40.107.236.41])\n by mails.dpdk.org (Postfix) with ESMTP id 6DD5242BC9\n for <dev@dpdk.org>; Tue,  4 Jul 2023 12:48:39 +0200 (CEST)",
            "from DM6PR03CA0062.namprd03.prod.outlook.com (2603:10b6:5:100::39)\n by PH8PR12MB6987.namprd12.prod.outlook.com (2603:10b6:510:1be::10) with\n Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.24; Tue, 4 Jul\n 2023 10:48:37 +0000",
            "from DM6NAM11FT049.eop-nam11.prod.protection.outlook.com\n (2603:10b6:5:100:cafe::9c) by DM6PR03CA0062.outlook.office365.com\n (2603:10b6:5:100::39) with Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6565.18 via Frontend\n Transport; Tue, 4 Jul 2023 10:48:37 +0000",
            "from mail.nvidia.com (216.228.117.160) by\n DM6NAM11FT049.mail.protection.outlook.com (10.13.172.188) with Microsoft SMTP\n Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id\n 15.20.6521.43 via Frontend Transport; Tue, 4 Jul 2023 10:48:37 +0000",
            "from rnnvmail203.nvidia.com (10.129.68.9) by mail.nvidia.com\n (10.129.200.66) with Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.986.5; Tue, 4 Jul 2023\n 03:48:29 -0700",
            "from rnnvmail203.nvidia.com (10.129.68.9) by rnnvmail203.nvidia.com\n (10.129.68.9) with Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.986.37; Tue, 4 Jul 2023\n 03:48:28 -0700",
            "from nvidia.com (10.127.8.12) by mail.nvidia.com (10.129.68.9) with\n Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.986.37 via Frontend\n Transport; Tue, 4 Jul 2023 03:48:26 -0700"
        ],
        "ARC-Seal": "i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;\n b=Z2F4RcwDhbVqpNK2jZWy/99dtsdgPrfkcdyaVt3PB7MYoBWO7pYDjIZyLPVV3FZ+0cNvZWthPBWyv2lbOt8N2HWOL7gXhayTkuz6fbtPggBJ4p4BVFBAle5pak0Lzvx/YRLiaITPO4yJlQuTpnNErh58W69qbmZIcpUqq7Ha8lALJ0I1CqtQF4nh20zuUp6uDd/Cq0Wn31sajOSN0LqoLklNr130io1nCfBUluAeeX+Ur6DyDHg/kfumLFf8AzzAh6crkrZq7+5lBYwXpxoTFnKWk9at58rFWarKWBZ23kyP/U4d21xyCYEry6C1isH0ZCKkgWluKqxCMSGmhmVgMQ==",
        "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=+VoFDzi8ASKM6OvldCv5dyKY3OEw7zHyhhYx6lchfJ0=;\n b=Rvgw8duX42indk7EQFlGGKt2i5hMrQkiwAoO6E/mXXTX97u3Ydm18ZiWP5NDDnNH++ivJ/AsMRfHQ4DPTNAgk6u9OwO0QG4GlfT+i0KblJOCTTL9jwCKyJfAYMC0G9iS6DjkBspptA21DRX7igzCHph9PY4F1SgySzCCz6VqQRpWn0OBFvXMMF5rcpz+L2Qk+jnBBwiQ+UUDOPyCdKGrZzvdYytdicySqtiwQBmanixfXWIy6faCWzcobuAvFemhyzHErJe9jqO+9iYu824t4ZvqCRjYAlyJVKRotxZUyii/HSw267Y8qAaaqFdE/ou/4W+Z7/xqYyTKpL1sXkl40g==",
        "ARC-Authentication-Results": "i=1; mx.microsoft.com 1; spf=pass (sender ip is\n 216.228.117.160) smtp.rcpttodomain=monjalon.net smtp.mailfrom=nvidia.com;\n dmarc=pass (p=reject sp=reject pct=100) action=none header.from=nvidia.com;\n dkim=none (message not signed); arc=none",
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com;\n s=selector2;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;\n bh=+VoFDzi8ASKM6OvldCv5dyKY3OEw7zHyhhYx6lchfJ0=;\n b=m47gJGQke/EvhARrNVGC09Y8V+FMAOZMoaXgE0rzI2GZxTtiM0VjwMhgG5MJburxw2+YuVqZqhxm1Hg54D1svSEdwCMPhj2vwmF9ksjz7MDOiJzXKG2biIktMTVQU+UfU1qIGton4o2VApmbw+p9SJnjYZjBvFabIR54SfePaIQ+bPBE/gLxT8QUbKhr2d9L0caZC+rBFWs+o9ZI4pV3ORVQzgOr+kHFhiKcvFLTxNCC+8QhyGSzgCf2gV2L10V2cZ3gXZrGNU079F95MGCDCdZ2BfF9vAQiEI5mI1ynPDxXGvFXniq4qG5Xdddaiqx7m2ZOIsUk9EpE3KzikjJj1w==",
        "X-MS-Exchange-Authentication-Results": "spf=pass (sender IP is 216.228.117.160)\n smtp.mailfrom=nvidia.com;\n dkim=none (message not signed)\n header.d=none;dmarc=pass action=none header.from=nvidia.com;",
        "Received-SPF": "Pass (protection.outlook.com: domain of nvidia.com designates\n 216.228.117.160 as permitted sender) receiver=protection.outlook.com;\n client-ip=216.228.117.160; helo=mail.nvidia.com; pr=C",
        "From": "Itamar Gozlan <igozlan@nvidia.com>",
        "To": "<valex@nvidia.com>, <viacheslavo@nvidia.com>, <matan@nvidia.com>,\n <thomas@monjalon.net>, <suanmingm@nvidia.com>, Ori Kam <orika@nvidia.com>",
        "CC": "<dev@dpdk.org>",
        "Subject": "[v1 5/5] net/mlx5/hws: support default miss action on FDB",
        "Date": "Tue, 4 Jul 2023 13:46:45 +0300",
        "Message-ID": "<20230704104645.19800-5-igozlan@nvidia.com>",
        "X-Mailer": "git-send-email 2.18.1",
        "In-Reply-To": "<20230704104645.19800-1-igozlan@nvidia.com>",
        "References": "<20230702045758.23244-4-igozlan@nvidia.com>\n <20230704104645.19800-1-igozlan@nvidia.com>",
        "MIME-Version": "1.0",
        "Content-Type": "text/plain",
        "X-NV-OnPremToCloud": "ExternallySecured",
        "X-EOPAttributedMessage": "0",
        "X-MS-PublicTrafficType": "Email",
        "X-MS-TrafficTypeDiagnostic": "DM6NAM11FT049:EE_|PH8PR12MB6987:EE_",
        "X-MS-Office365-Filtering-Correlation-Id": "c21e3ea9-f0ec-4bfb-4068-08db7c7c38e9",
        "X-LD-Processed": "43083d15-7273-40c1-b7db-39efd9ccc17a,ExtAddr",
        "X-MS-Exchange-SenderADCheck": "1",
        "X-MS-Exchange-AntiSpam-Relay": "0",
        "X-Microsoft-Antispam": "BCL:0;",
        "X-Microsoft-Antispam-Message-Info": "\n HUSnYknsyCUqcwXudGJODqdUd6MTlxN7sMBP889W2lLEFNZMxCpJUUKLZxL7GqMYjYIRjD34pN0sCn7a3lXMOazJMPZzHUSA/QeRaKrbkJ9alBx249JevBKy5h6bNTfwvwRCl12f5zSM3hXiE5Onf6Wg50uhj3GA5zfDGdAWFcJf2GnHrnZYlgxlujHN1D7HRnKsFjX+wfKu/RJum+qAW5lTDl6ahxc5UCQI2nyQcNWimk0bq6gKvPRTxXOYFjGCPVMP0CBf8NdfoYS80kJDyv18vH9tZb7N9qGxUk1BOi/TFmzCxYoR/XhWycXoTtY3+dVGs1NSlRdgNHpe6k4XIPCG16yX0M4yPO06x8dX8Pmf0ZDHYmNXTsaNr6fxr9Qk0ISpjV5LyDYlXQ5RJqQ/DeljndbkGyjom3gCgUFsUDLI2eq0VGPtSJh/r4ezMtl4Q3kGlhLmJzGm88Vn48+DUAQE0agq14o1WYJP1P1H09e/1d/IgD6o8JrYyxlG/3hhvWR9IGj5malSSvdNXZBt2pz5PlMEXH3jh/zCM5gRKbHDSuZXqSE6hzqY/gHY1wQ4ZzGfB8hX4n1MiZk5Ar+w1Dgjw99VSUjZfmj0uyJZ4hXj7GcNcdeAQGCKzGJcw17mo9OyFmfSXHK0conW95hUpoGCYyTFbiMEMCOl7NYmrc2uJyqmmmkxu2yz1piv92rBpwJsN2MERuVb4geTwBgOaM5cNNl3T94lSFq1UD6LjHJ4OApC5qym/JY+xIfV9YFC",
        "X-Forefront-Antispam-Report": "CIP:216.228.117.160; CTRY:US; LANG:en; SCL:1;\n SRV:;\n IPV:NLI; SFV:NSPM; H:mail.nvidia.com; PTR:dc6edge1.nvidia.com; CAT:NONE;\n SFS:(13230028)(4636009)(376002)(346002)(136003)(39860400002)(396003)(451199021)(40470700004)(46966006)(36840700001)(26005)(478600001)(1076003)(82740400003)(6666004)(86362001)(6286002)(2616005)(186003)(36860700001)(6636002)(4326008)(70586007)(356005)(336012)(7636003)(110136005)(83380400001)(426003)(7696005)(70206006)(316002)(47076005)(8676002)(8936002)(40460700003)(41300700001)(2906002)(40480700001)(55016003)(5660300002)(82310400005)(36756003);\n DIR:OUT; SFP:1101;",
        "X-OriginatorOrg": "Nvidia.com",
        "X-MS-Exchange-CrossTenant-OriginalArrivalTime": "04 Jul 2023 10:48:37.4250 (UTC)",
        "X-MS-Exchange-CrossTenant-Network-Message-Id": "\n c21e3ea9-f0ec-4bfb-4068-08db7c7c38e9",
        "X-MS-Exchange-CrossTenant-Id": "43083d15-7273-40c1-b7db-39efd9ccc17a",
        "X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp": "\n TenantId=43083d15-7273-40c1-b7db-39efd9ccc17a; Ip=[216.228.117.160];\n Helo=[mail.nvidia.com]",
        "X-MS-Exchange-CrossTenant-AuthSource": "\n DM6NAM11FT049.eop-nam11.prod.protection.outlook.com",
        "X-MS-Exchange-CrossTenant-AuthAs": "Anonymous",
        "X-MS-Exchange-CrossTenant-FromEntityHeader": "HybridOnPrem",
        "X-MS-Exchange-Transport-CrossTenantHeadersStamped": "PH8PR12MB6987",
        "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: Alex Vesker <valex@nvidia.com>\n\nAdd the support for default miss on HWS FDB, this implementation\nwas missing until now. Default miss can be used for more efficient\nmiss flow instead of going to an empty matcher or some defecated\nempty table.\n\nSigned-off-by: Alex Vesker <valex@nvidia.com>\nAcked-by: Matan Azrad <matan@nvidia.com>\n---\n drivers/net/mlx5/hws/mlx5dr_action.c | 27 ++++++++++++++++++++-------\n drivers/net/mlx5/hws/mlx5dr_table.c  |  6 +-----\n 2 files changed, 21 insertions(+), 12 deletions(-)",
    "diff": "diff --git a/drivers/net/mlx5/hws/mlx5dr_action.c b/drivers/net/mlx5/hws/mlx5dr_action.c\nindex 74f4e60863..920099ba5b 100644\n--- a/drivers/net/mlx5/hws/mlx5dr_action.c\n+++ b/drivers/net/mlx5/hws/mlx5dr_action.c\n@@ -322,10 +322,12 @@ int mlx5dr_action_root_build_attr(struct mlx5dr_rule_action rule_actions[],\n \treturn 0;\n }\n \n-static bool mlx5dr_action_fixup_stc_attr(struct mlx5dr_cmd_stc_modify_attr *stc_attr,\n-\t\t\t\t\t struct mlx5dr_cmd_stc_modify_attr *fixup_stc_attr,\n-\t\t\t\t\t enum mlx5dr_table_type table_type,\n-\t\t\t\t\t bool is_mirror)\n+static bool\n+mlx5dr_action_fixup_stc_attr(struct mlx5dr_context *ctx,\n+\t\t\t     struct mlx5dr_cmd_stc_modify_attr *stc_attr,\n+\t\t\t     struct mlx5dr_cmd_stc_modify_attr *fixup_stc_attr,\n+\t\t\t     enum mlx5dr_table_type table_type,\n+\t\t\t     bool is_mirror)\n {\n \tstruct mlx5dr_devx_obj *devx_obj;\n \tbool use_fixup = false;\n@@ -348,6 +350,17 @@ static bool mlx5dr_action_fixup_stc_attr(struct mlx5dr_cmd_stc_modify_attr *stc_\n \t\tuse_fixup = true;\n \t\tbreak;\n \n+\tcase MLX5_IFC_STC_ACTION_TYPE_ALLOW:\n+\t\tif (fw_tbl_type == FS_FT_FDB_TX || fw_tbl_type == FS_FT_FDB_RX) {\n+\t\t\tfixup_stc_attr->action_type = MLX5_IFC_STC_ACTION_TYPE_JUMP_TO_VPORT;\n+\t\t\tfixup_stc_attr->action_offset = stc_attr->action_offset;\n+\t\t\tfixup_stc_attr->stc_offset = stc_attr->stc_offset;\n+\t\t\tfixup_stc_attr->vport.esw_owner_vhca_id = ctx->caps->vhca_id;\n+\t\t\tfixup_stc_attr->vport.vport_num = ctx->caps->eswitch_manager_vport_number;\n+\t\t\tuse_fixup = true;\n+\t\t}\n+\t\tbreak;\n+\n \tcase MLX5_IFC_STC_ACTION_TYPE_JUMP_TO_VPORT:\n \t\tif (stc_attr->vport.vport_num != WIRE_PORT)\n \t\t\tbreak;\n@@ -397,7 +410,7 @@ int mlx5dr_action_alloc_single_stc(struct mlx5dr_context *ctx,\n \tdevx_obj_0 = mlx5dr_pool_chunk_get_base_devx_obj(stc_pool, stc);\n \n \t/* According to table/action limitation change the stc_attr */\n-\tuse_fixup = mlx5dr_action_fixup_stc_attr(stc_attr, &fixup_stc_attr, table_type, false);\n+\tuse_fixup = mlx5dr_action_fixup_stc_attr(ctx, stc_attr, &fixup_stc_attr, table_type, false);\n \tret = mlx5dr_cmd_stc_modify(devx_obj_0, use_fixup ? &fixup_stc_attr : stc_attr);\n \tif (ret) {\n \t\tDR_LOG(ERR, \"Failed to modify STC action_type %d tbl_type %d\",\n@@ -411,7 +424,8 @@ int mlx5dr_action_alloc_single_stc(struct mlx5dr_context *ctx,\n \n \t\tdevx_obj_1 = mlx5dr_pool_chunk_get_base_devx_obj_mirror(stc_pool, stc);\n \n-\t\tuse_fixup = mlx5dr_action_fixup_stc_attr(stc_attr, &fixup_stc_attr,\n+\t\tuse_fixup = mlx5dr_action_fixup_stc_attr(ctx, stc_attr,\n+\t\t\t\t\t\t\t &fixup_stc_attr,\n \t\t\t\t\t\t\t table_type, true);\n \t\tret = mlx5dr_cmd_stc_modify(devx_obj_1, use_fixup ? &fixup_stc_attr : stc_attr);\n \t\tif (ret) {\n@@ -491,7 +505,6 @@ static void mlx5dr_action_fill_stc_attr(struct mlx5dr_action *action,\n \tcase MLX5DR_ACTION_TYP_MISS:\n \t\tattr->action_type = MLX5_IFC_STC_ACTION_TYPE_ALLOW;\n \t\tattr->action_offset = MLX5DR_ACTION_OFFSET_HIT;\n-\t\t/* TODO Need to support default miss for FDB */\n \t\tbreak;\n \tcase MLX5DR_ACTION_TYP_CTR:\n \t\tattr->id = obj->id;\ndiff --git a/drivers/net/mlx5/hws/mlx5dr_table.c b/drivers/net/mlx5/hws/mlx5dr_table.c\nindex c18ee7c552..f91f04d924 100644\n--- a/drivers/net/mlx5/hws/mlx5dr_table.c\n+++ b/drivers/net/mlx5/hws/mlx5dr_table.c\n@@ -24,7 +24,6 @@ mlx5dr_table_up_default_fdb_miss_tbl(struct mlx5dr_table *tbl)\n \tstruct mlx5dr_cmd_forward_tbl *default_miss;\n \tstruct mlx5dr_context *ctx = tbl->ctx;\n \tuint8_t tbl_type = tbl->type;\n-\tuint32_t vport;\n \n \tif (tbl->type != MLX5DR_TABLE_TYPE_FDB)\n \t\treturn 0;\n@@ -38,12 +37,9 @@ mlx5dr_table_up_default_fdb_miss_tbl(struct mlx5dr_table *tbl)\n \tft_attr.level = tbl->ctx->caps->fdb_ft.max_level; /* The last level */\n \tft_attr.rtc_valid = false;\n \n-\tassert(ctx->caps->eswitch_manager);\n-\tvport = ctx->caps->eswitch_manager_vport_number;\n-\n \tfte_attr.action_flags = MLX5_FLOW_CONTEXT_ACTION_FWD_DEST;\n \tfte_attr.destination_type = MLX5_FLOW_DESTINATION_TYPE_VPORT;\n-\tfte_attr.destination_id = vport;\n+\tfte_attr.destination_id = ctx->caps->eswitch_manager_vport_number;\n \n \tdefault_miss = mlx5dr_cmd_forward_tbl_create(mlx5dr_context_get_local_ibv(ctx),\n \t\t\t\t\t\t     &ft_attr, &fte_attr);\n",
    "prefixes": [
        "v1",
        "5/5"
    ]
}