get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 117862,
    "url": "https://patches.dpdk.org/api/patches/117862/?format=api",
    "web_url": "https://patches.dpdk.org/project/dpdk/patch/20221011005032.47584-35-andrew.boyer@amd.com/",
    "project": {
        "id": 1,
        "url": "https://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": "<20221011005032.47584-35-andrew.boyer@amd.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/20221011005032.47584-35-andrew.boyer@amd.com",
    "date": "2022-10-11T00:50:31",
    "name": "[v1,34/35] net/ionic: retry init commands up to five times",
    "commit_ref": null,
    "pull_url": null,
    "state": "superseded",
    "archived": true,
    "hash": "97ff2387ddd44caaa61bac765d4f650d4120d5da",
    "submitter": {
        "id": 2861,
        "url": "https://patches.dpdk.org/api/people/2861/?format=api",
        "name": "Andrew Boyer",
        "email": "Andrew.Boyer@amd.com"
    },
    "delegate": {
        "id": 319,
        "url": "https://patches.dpdk.org/api/users/319/?format=api",
        "username": "fyigit",
        "first_name": "Ferruh",
        "last_name": "Yigit",
        "email": "ferruh.yigit@amd.com"
    },
    "mbox": "https://patches.dpdk.org/project/dpdk/patch/20221011005032.47584-35-andrew.boyer@amd.com/mbox/",
    "series": [
        {
            "id": 25122,
            "url": "https://patches.dpdk.org/api/series/25122/?format=api",
            "web_url": "https://patches.dpdk.org/project/dpdk/list/?series=25122",
            "date": "2022-10-11T00:50:31",
            "name": null,
            "version": 1,
            "mbox": "https://patches.dpdk.org/series/25122/mbox/"
        }
    ],
    "comments": "https://patches.dpdk.org/api/patches/117862/comments/",
    "check": "warning",
    "checks": "https://patches.dpdk.org/api/patches/117862/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 64CF6A0544;\n\tTue, 11 Oct 2022 02:54:52 +0200 (CEST)",
            "from [217.70.189.124] (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id 950BB42BC0;\n\tTue, 11 Oct 2022 02:53:16 +0200 (CEST)",
            "from NAM02-BN1-obe.outbound.protection.outlook.com\n (mail-bn1nam07on2083.outbound.protection.outlook.com [40.107.212.83])\n by mails.dpdk.org (Postfix) with ESMTP id EAD7642BD0\n for <dev@dpdk.org>; Tue, 11 Oct 2022 02:53:14 +0200 (CEST)",
            "from BN9PR03CA0695.namprd03.prod.outlook.com (2603:10b6:408:ef::10)\n by BL1PR12MB5364.namprd12.prod.outlook.com (2603:10b6:208:314::18)\n with Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5676.24; Tue, 11 Oct\n 2022 00:53:12 +0000",
            "from BN8NAM11FT029.eop-nam11.prod.protection.outlook.com\n (2603:10b6:408:ef:cafe::6a) by BN9PR03CA0695.outlook.office365.com\n (2603:10b6:408:ef::10) with Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5709.15 via Frontend\n Transport; Tue, 11 Oct 2022 00:53:12 +0000",
            "from SATLEXMB04.amd.com (165.204.84.17) by\n BN8NAM11FT029.mail.protection.outlook.com (10.13.177.68) with Microsoft SMTP\n Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id\n 15.20.5709.10 via Frontend Transport; Tue, 11 Oct 2022 00:53:12 +0000",
            "from driver-dev1.pensando.io (10.180.168.240) by SATLEXMB04.amd.com\n (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.28; Mon, 10 Oct\n 2022 19:53:11 -0500"
        ],
        "ARC-Seal": "i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;\n b=E4TmdP9J+GSPSbKbpPS18vPhalPyuIekiqGfxaaYO4TY65xsIeGE2vpcKUxCt89uPSJzPF6h0I/wpHYA8OWiDxgFdtcTxc7ZLwyP1aChL1UPyKbVFPuQLq3taUcb+eTEPsP1MvhsDzHGIPdIpjTvgSwvd3DonElTANb0PCHkuoSrEswdobaczB6PFQTBkCAM+xUt1T5vJEhwA4CbcVFaIdz2DyD7pw0PAFHWPfYNEFdCxoRkiyjhvg3udGCKN+SNHo/5hBi7xkhBkHOTVVx19G+3Kc9txVGIrOPMw3yc6BYkUyzrX6H/AXXPcqTxqk49PYeDBAcQiLbyyDexbLLrrA==",
        "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=QynrXYAKqSJX6nAqGkgksxzCmA5AMFNLEBBUYxorZeQ=;\n b=JLBNO/CvvN3kdes0l7hmRmwcfFoNSbIiFqr1AeF16APENIFgMMW4Vm7ZNiuK874yUcBPFKg9DYwx85nuRHWCyg94rDN0XqSJIXQAeAGSvqRC7yGwLgoenrrsv1x4XIc9wjAejiyKswfY+3Hw8UWgWfr8QNuWJa7lT0APF1qbcw3NC87j9Zzvd4fstM2rNWPQhtABUpW/v6wy2Q8nORhVDIxW87Hss/WSCJyXxfTXRuKcojeBTSwBzewtL4F3uaB49tA3hXnsrlu9Kq3PfYSjhfOzqpefRm8rkQAiAt3wVqjYQwAxV0NO4jdqgweML51PK1F89fJEiQ2fgmaF4GW58A==",
        "ARC-Authentication-Results": "i=1; mx.microsoft.com 1; spf=pass (sender ip is\n 165.204.84.17) smtp.rcpttodomain=dpdk.org smtp.mailfrom=amd.com; dmarc=pass\n (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com;\n dkim=none (message not signed); arc=none",
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;\n bh=QynrXYAKqSJX6nAqGkgksxzCmA5AMFNLEBBUYxorZeQ=;\n b=YzKrNY+27jme06045O72za1IbrkCLrEA/nxbwzdmNhAHqlgPGv7neK8IVsFQeq4v9lJMFm+2GEFrwOv3O+90syiSx+L5221i/Bih/ywuoOsZZaQnyadQFSpVr8RjMASPZ95y+kR+W1hWEf6d/aph14dt5np1qvWvR9jp9wwS+kA=",
        "X-MS-Exchange-Authentication-Results": "spf=pass (sender IP is 165.204.84.17)\n smtp.mailfrom=amd.com; dkim=none (message not signed)\n header.d=none;dmarc=pass action=none header.from=amd.com;",
        "Received-SPF": "Pass (protection.outlook.com: domain of amd.com designates\n 165.204.84.17 as permitted sender) receiver=protection.outlook.com;\n client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C",
        "From": "Andrew Boyer <andrew.boyer@amd.com>",
        "To": "<dev@dpdk.org>",
        "CC": "Andrew Boyer <andrew.boyer@amd.com>",
        "Subject": "[PATCH v1 34/35] net/ionic: retry init commands up to five times",
        "Date": "Mon, 10 Oct 2022 17:50:31 -0700",
        "Message-ID": "<20221011005032.47584-35-andrew.boyer@amd.com>",
        "X-Mailer": "git-send-email 2.17.1",
        "In-Reply-To": "<20221007174336.54354-1-andrew.boyer@amd.com>",
        "References": "<20221007174336.54354-1-andrew.boyer@amd.com>",
        "MIME-Version": "1.0",
        "Content-Type": "text/plain",
        "X-Originating-IP": "[10.180.168.240]",
        "X-ClientProxiedBy": "SATLEXMB04.amd.com (10.181.40.145) To SATLEXMB04.amd.com\n (10.181.40.145)",
        "X-EOPAttributedMessage": "0",
        "X-MS-PublicTrafficType": "Email",
        "X-MS-TrafficTypeDiagnostic": "BN8NAM11FT029:EE_|BL1PR12MB5364:EE_",
        "X-MS-Office365-Filtering-Correlation-Id": "efbf0f46-26ce-47d0-97e5-08daab22f942",
        "X-MS-Exchange-SenderADCheck": "1",
        "X-MS-Exchange-AntiSpam-Relay": "0",
        "X-Microsoft-Antispam": "BCL:0;",
        "X-Microsoft-Antispam-Message-Info": "\n /L1kKJ5AdpRPSx5CUq0HMl9AGLPmhfs71a4dLw20C3fKLHKiSbg5Y2JYOIWs1PcW1ge1n61Lib/TpK8w5LHP923on7ClNp0FPHp5R6rmYU7pSMJ4uP1xVCPmrQMYnQpiP51exF5+EUnFgzkyMv8pNCDM2lXGbNNmgLjMAXPKnG4qdZ38nF5VI0Gzx6fGA1ofM94rD50OooZQA07lpnnsr6eJ+K/ui0Hu7vISPw/Jq36aDLsnwbTEuNijKcGLvJyjh7OlBg5MyrLV8y7eBB5MYkBiXx9vNELnveeBKmtd1A4+J46uHB2dzrVVDY0fTWoa8QOlLGhETotXlZguK1RCHywgL7dKHlVud5L6ZG55lsiLSMA1NNAkIfol0FF16xHkU8CD2BPCEFQZPtE7cpExEMV9AtVEij6SVh0nS2ja6mE1BsTf2VmV56Fi6RVPxfA5C677FwTl/HRGrilGehDbI/Gv+Ulp0QPhlBD0azUaGb26mGpk43lR/uYDWFLuPU6UCu954VnnT7N+SpTblmTb5owWsDZRwbH5P69a5nIfLxYx8SvBYZXBXYF62U4z1wSOoQKgh7muwNl7A+l8jVWd7ZM3+TgSPXGkpwkoPfENee2VD0y7AP15UJN6wMCTxFHCFqR6Zz5sARpQmjJmz+zQM7bAhOji73rYv6C2D4eXuxz84i4M6l3Q+GtImG5ytdQ5PgseuZ8PFJDjiUr9rdDI4QRJp7kRGbFqvTZqTJZbCyln8RTrAo37kTvYZTLawhHT+P9Y2qSFObbVARspVivbfRKlD8whGrosIBShTZuxrC5iOVaJ1TXOLTWHpnt2H2pS",
        "X-Forefront-Antispam-Report": "CIP:165.204.84.17; CTRY:US; LANG:en; SCL:1; SRV:;\n IPV:CAL; SFV:NSPM; H:SATLEXMB04.amd.com; PTR:InfoDomainNonexistent; CAT:NONE;\n SFS:(13230022)(4636009)(346002)(396003)(376002)(136003)(39860400002)(451199015)(40470700004)(36840700001)(46966006)(2906002)(426003)(47076005)(16526019)(40460700003)(83380400001)(336012)(186003)(1076003)(356005)(41300700001)(8936002)(82740400003)(36860700001)(26005)(316002)(2616005)(36756003)(5660300002)(40480700001)(44832011)(4326008)(82310400005)(6916009)(8676002)(478600001)(86362001)(81166007)(70586007)(6666004)(70206006)(36900700001);\n DIR:OUT; SFP:1101;",
        "X-OriginatorOrg": "amd.com",
        "X-MS-Exchange-CrossTenant-OriginalArrivalTime": "11 Oct 2022 00:53:12.5006 (UTC)",
        "X-MS-Exchange-CrossTenant-Network-Message-Id": "\n efbf0f46-26ce-47d0-97e5-08daab22f942",
        "X-MS-Exchange-CrossTenant-Id": "3dd8961f-e488-4e60-8e11-a82d994e183d",
        "X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp": "\n TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d; Ip=[165.204.84.17];\n Helo=[SATLEXMB04.amd.com]",
        "X-MS-Exchange-CrossTenant-AuthSource": "\n BN8NAM11FT029.eop-nam11.prod.protection.outlook.com",
        "X-MS-Exchange-CrossTenant-AuthAs": "Anonymous",
        "X-MS-Exchange-CrossTenant-FromEntityHeader": "HybridOnPrem",
        "X-MS-Exchange-Transport-CrossTenantHeadersStamped": "BL1PR12MB5364",
        "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": "In some configurations, the FW may return EAGAIN if it is not able\nto respond to commands immediately. Retry the init commands in this\ncase to prevent errors from reaching the client.\n\nFix up some return-code stuff while here, for clarity.\n\nSigned-off-by: Andrew Boyer <andrew.boyer@amd.com>\n---\n drivers/net/ionic/ionic_dev.h  |  1 +\n drivers/net/ionic/ionic_lif.c  | 14 ++++++++++++++\n drivers/net/ionic/ionic_main.c |  4 ++--\n 3 files changed, 17 insertions(+), 2 deletions(-)",
    "diff": "diff --git a/drivers/net/ionic/ionic_dev.h b/drivers/net/ionic/ionic_dev.h\nindex d696de45e0..4d07d9206e 100644\n--- a/drivers/net/ionic/ionic_dev.h\n+++ b/drivers/net/ionic/ionic_dev.h\n@@ -24,6 +24,7 @@\n \n #define IONIC_DEVCMD_TIMEOUT\t\t5\t/* devcmd_timeout */\n #define IONIC_DEVCMD_CHECK_PERIOD_US\t10\t/* devcmd status chk period */\n+#define IONIC_DEVCMD_RETRY_WAIT_US\t20000\n \n #define IONIC_ALIGN\t\t\t4096\n \ndiff --git a/drivers/net/ionic/ionic_lif.c b/drivers/net/ionic/ionic_lif.c\nindex 0affdd9dc4..bc6de83d56 100644\n--- a/drivers/net/ionic/ionic_lif.c\n+++ b/drivers/net/ionic/ionic_lif.c\n@@ -1423,10 +1423,17 @@ ionic_lif_adminq_init(struct ionic_lif *lif)\n \tstruct ionic_admin_qcq *aqcq = lif->adminqcq;\n \tstruct ionic_queue *q = &aqcq->qcq.q;\n \tstruct ionic_q_init_comp comp;\n+\tuint32_t retries = 5;\n \tint err;\n \n+retry_adminq_init:\n \tionic_dev_cmd_adminq_init(idev, &aqcq->qcq);\n \terr = ionic_dev_cmd_wait_check(idev, IONIC_DEVCMD_TIMEOUT);\n+\tif (err == -EAGAIN && retries > 0) {\n+\t\tretries--;\n+\t\trte_delay_us_block(IONIC_DEVCMD_RETRY_WAIT_US);\n+\t\tgoto retry_adminq_init;\n+\t}\n \tif (err)\n \t\treturn err;\n \n@@ -1713,12 +1720,19 @@ ionic_lif_init(struct ionic_lif *lif)\n {\n \tstruct ionic_dev *idev = &lif->adapter->idev;\n \tstruct ionic_lif_init_comp comp;\n+\tuint32_t retries = 5;\n \tint err;\n \n \tmemset(&lif->stats_base, 0, sizeof(lif->stats_base));\n \n+retry_lif_init:\n \tionic_dev_cmd_lif_init(idev, lif->info_pa);\n \terr = ionic_dev_cmd_wait_check(idev, IONIC_DEVCMD_TIMEOUT);\n+\tif (err == -EAGAIN && retries > 0) {\n+\t\tretries--;\n+\t\trte_delay_us_block(IONIC_DEVCMD_RETRY_WAIT_US);\n+\t\tgoto retry_lif_init;\n+\t}\n \tif (err)\n \t\treturn err;\n \ndiff --git a/drivers/net/ionic/ionic_main.c b/drivers/net/ionic/ionic_main.c\nindex 996af0a51f..3d8157dac3 100644\n--- a/drivers/net/ionic/ionic_main.c\n+++ b/drivers/net/ionic/ionic_main.c\n@@ -313,10 +313,10 @@ ionic_dev_cmd_check_error(struct ionic_dev *idev)\n \tuint8_t status;\n \n \tstatus = ionic_dev_cmd_status(idev);\n-\tif (status == 0)\n+\tif (status == IONIC_RC_SUCCESS)\n \t\treturn 0;\n \n-\treturn -EIO;\n+\treturn (status == IONIC_RC_EAGAIN) ? -EAGAIN : -EIO;\n }\n \n int\n",
    "prefixes": [
        "v1",
        "34/35"
    ]
}