get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 1024548,
    "url": "http://patchwork.ozlabs.org/api/patches/1024548/?format=api",
    "web_url": "http://patchwork.ozlabs.org/project/intel-wired-lan/patch/154747257030.250168.12931902291381446144.stgit@buzz/",
    "project": {
        "id": 46,
        "url": "http://patchwork.ozlabs.org/api/projects/46/?format=api",
        "name": "Intel Wired Ethernet development",
        "link_name": "intel-wired-lan",
        "list_id": "intel-wired-lan.osuosl.org",
        "list_email": "intel-wired-lan@osuosl.org",
        "web_url": "",
        "scm_url": "",
        "webscm_url": "",
        "list_archive_url": "",
        "list_archive_url_format": "",
        "commit_url_format": ""
    },
    "msgid": "<154747257030.250168.12931902291381446144.stgit@buzz>",
    "list_archive_url": null,
    "date": "2019-01-14T13:29:30",
    "name": "e1000e: fix cyclic resets at link up with active tx",
    "commit_ref": null,
    "pull_url": null,
    "state": "accepted",
    "archived": false,
    "hash": "72079379bfa0082bdcd589ca18de75af003ad370",
    "submitter": {
        "id": 65606,
        "url": "http://patchwork.ozlabs.org/api/people/65606/?format=api",
        "name": "Konstantin Khlebnikov",
        "email": "khlebnikov@yandex-team.ru"
    },
    "delegate": {
        "id": 68,
        "url": "http://patchwork.ozlabs.org/api/users/68/?format=api",
        "username": "jtkirshe",
        "first_name": "Jeff",
        "last_name": "Kirsher",
        "email": "jeffrey.t.kirsher@intel.com"
    },
    "mbox": "http://patchwork.ozlabs.org/project/intel-wired-lan/patch/154747257030.250168.12931902291381446144.stgit@buzz/mbox/",
    "series": [
        {
            "id": 85992,
            "url": "http://patchwork.ozlabs.org/api/series/85992/?format=api",
            "web_url": "http://patchwork.ozlabs.org/project/intel-wired-lan/list/?series=85992",
            "date": "2019-01-14T13:29:30",
            "name": "e1000e: fix cyclic resets at link up with active tx",
            "version": 1,
            "mbox": "http://patchwork.ozlabs.org/series/85992/mbox/"
        }
    ],
    "comments": "http://patchwork.ozlabs.org/api/patches/1024548/comments/",
    "check": "pending",
    "checks": "http://patchwork.ozlabs.org/api/patches/1024548/checks/",
    "tags": {},
    "related": [],
    "headers": {
        "Return-Path": "<intel-wired-lan-bounces@osuosl.org>",
        "X-Original-To": [
            "incoming@patchwork.ozlabs.org",
            "intel-wired-lan@lists.osuosl.org"
        ],
        "Delivered-To": [
            "patchwork-incoming@bilbo.ozlabs.org",
            "intel-wired-lan@lists.osuosl.org"
        ],
        "Authentication-Results": [
            "ozlabs.org;\n\tspf=pass (mailfrom) smtp.mailfrom=osuosl.org\n\t(client-ip=140.211.166.137; helo=fraxinus.osuosl.org;\n\tenvelope-from=intel-wired-lan-bounces@osuosl.org;\n\treceiver=<UNKNOWN>)",
            "ozlabs.org; dmarc=fail (p=none dis=none)\n\theader.from=yandex-team.ru",
            "ozlabs.org;\n\tdkim=fail reason=\"signature verification failed\" (1024-bit key;\n\tunprotected) header.d=yandex-team.ru header.i=@yandex-team.ru\n\theader.b=\"yWfdocym\"; dkim-atps=neutral",
            "mxbackcorp1g.mail.yandex.net;\n\tdkim=pass header.i=@yandex-team.ru"
        ],
        "Received": [
            "from fraxinus.osuosl.org (smtp4.osuosl.org [140.211.166.137])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256\n\tbits)) (No client certificate requested)\n\tby ozlabs.org (Postfix) with ESMTPS id 43dZGL6b5qz9s3q\n\tfor <incoming@patchwork.ozlabs.org>;\n\tTue, 15 Jan 2019 00:35:05 +1100 (AEDT)",
            "from localhost (localhost [127.0.0.1])\n\tby fraxinus.osuosl.org (Postfix) with ESMTP id 56E2184F73;\n\tMon, 14 Jan 2019 13:35:03 +0000 (UTC)",
            "from fraxinus.osuosl.org ([127.0.0.1])\n\tby localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024)\n\twith ESMTP id vKz7qH5gxfxd; Mon, 14 Jan 2019 13:35:02 +0000 (UTC)",
            "from ash.osuosl.org (ash.osuosl.org [140.211.166.34])\n\tby fraxinus.osuosl.org (Postfix) with ESMTP id 08F1884E74;\n\tMon, 14 Jan 2019 13:35:02 +0000 (UTC)",
            "from hemlock.osuosl.org (smtp2.osuosl.org [140.211.166.133])\n\tby ash.osuosl.org (Postfix) with ESMTP id 6E6491BF29A\n\tfor <intel-wired-lan@lists.osuosl.org>;\n\tMon, 14 Jan 2019 13:35:01 +0000 (UTC)",
            "from localhost (localhost [127.0.0.1])\n\tby hemlock.osuosl.org (Postfix) with ESMTP id 6924B854E7\n\tfor <intel-wired-lan@lists.osuosl.org>;\n\tMon, 14 Jan 2019 13:35:01 +0000 (UTC)",
            "from hemlock.osuosl.org ([127.0.0.1])\n\tby localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024)\n\twith ESMTP id Pm6KhIIVyQvw for <intel-wired-lan@lists.osuosl.org>;\n\tMon, 14 Jan 2019 13:34:58 +0000 (UTC)",
            "from forwardcorp1g.cmail.yandex.net (forwardcorp1g.cmail.yandex.net\n\t[87.250.241.190])\n\tby hemlock.osuosl.org (Postfix) with ESMTPS id 3039C8546F\n\tfor <intel-wired-lan@lists.osuosl.org>;\n\tMon, 14 Jan 2019 13:34:58 +0000 (UTC)",
            "from mxbackcorp1g.mail.yandex.net (mxbackcorp1g.mail.yandex.net\n\t[IPv6:2a02:6b8:0:1402::301])\n\tby forwardcorp1g.cmail.yandex.net (Yandex) with ESMTP id 8D88421747; \n\tMon, 14 Jan 2019 16:29:33 +0300 (MSK)",
            "from smtpcorp1j.mail.yandex.net (smtpcorp1j.mail.yandex.net\n\t[2a02:6b8:0:1619::137])\n\tby mxbackcorp1g.mail.yandex.net (nwsmtp/Yandex) with ESMTP id\n\tJxqI17tisr-TXRu19oa; Mon, 14 Jan 2019 16:29:33 +0300",
            "from dynamic-red.dhcp.yndx.net (dynamic-red.dhcp.yndx.net\n\t[2a02:6b8:0:40c:ddac:7ad6:150c:c9b3])\n\tby smtpcorp1j.mail.yandex.net (nwsmtp/Yandex) with ESMTPSA id\n\txhEqFlmGfv-TXhiGHsP; Mon, 14 Jan 2019 16:29:33 +0300\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128\n\tbits)) (Client certificate not present)"
        ],
        "X-Virus-Scanned": [
            "amavisd-new at osuosl.org",
            "amavisd-new at osuosl.org"
        ],
        "X-Greylist": "delayed 00:05:20 by SQLgrey-1.7.6",
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=yandex-team.ru;\n\ts=default; \n\tt=1547472573; bh=al6g5gqxBiHQ2kuARC6LcE3oO3x9nXYk4BzV7QhwKvc=;\n\th=Subject:From:To:Cc:Date:Message-ID;\n\tb=yWfdocymMNEZ0tpxyHXXVtg0WaZ5zdYSNTcgAHgA2pG+sijTuhc9CaxrUAd2LJORz\n\tKqZFP16tm1Lv3D64SAhvIGeeEgvuJp5FXCq59+FWaCs14Lgs0+oOB+IYpMfBHtnac6\n\tzoVrCKyEQWmHwXIYLPqACv8EjI8N43MrQGnXbl/I=",
        "From": "Konstantin Khlebnikov <khlebnikov@yandex-team.ru>",
        "To": "netdev@vger.kernel.org, intel-wired-lan@lists.osuosl.org,\n\tJeff Kirsher <jeffrey.t.kirsher@intel.com>",
        "Date": "Mon, 14 Jan 2019 16:29:30 +0300",
        "Message-ID": "<154747257030.250168.12931902291381446144.stgit@buzz>",
        "User-Agent": "StGit/0.17.1-dirty",
        "MIME-Version": "1.0",
        "Subject": "[Intel-wired-lan] [PATCH] e1000e: fix cyclic resets at link up with\n\tactive tx",
        "X-BeenThere": "intel-wired-lan@osuosl.org",
        "X-Mailman-Version": "2.1.29",
        "Precedence": "list",
        "List-Id": "Intel Wired Ethernet Linux Kernel Driver Development\n\t<intel-wired-lan.osuosl.org>",
        "List-Unsubscribe": "<https://lists.osuosl.org/mailman/options/intel-wired-lan>, \n\t<mailto:intel-wired-lan-request@osuosl.org?subject=unsubscribe>",
        "List-Archive": "<http://lists.osuosl.org/pipermail/intel-wired-lan/>",
        "List-Post": "<mailto:intel-wired-lan@osuosl.org>",
        "List-Help": "<mailto:intel-wired-lan-request@osuosl.org?subject=help>",
        "List-Subscribe": "<https://lists.osuosl.org/mailman/listinfo/intel-wired-lan>, \n\t<mailto:intel-wired-lan-request@osuosl.org?subject=subscribe>",
        "Cc": "linux-kernel@vger.kernel.org, \"David S. Miller\" <davem@davemloft.net>",
        "Content-Type": "text/plain; charset=\"us-ascii\"",
        "Content-Transfer-Encoding": "7bit",
        "Errors-To": "intel-wired-lan-bounces@osuosl.org",
        "Sender": "\"Intel-wired-lan\" <intel-wired-lan-bounces@osuosl.org>"
    },
    "content": "I'm seeing series of e1000e resets (sometimes endless) at system boot\nif something generates tx traffic at this time. In my case this is\nnetconsole who sends message \"e1000e 0000:02:00.0: Some CPU C-states\nhave been disabled in order to enable jumbo frames\" from e1000e itself.\nAs result e1000_watchdog_task sees used tx buffer while carrier is off\nand start this reset cycle again.\n\n[   17.794359] e1000e: eth1 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None\n[   17.794714] IPv6: ADDRCONF(NETDEV_CHANGE): eth1: link becomes ready\n[   22.936455] e1000e 0000:02:00.0 eth1: changing MTU from 1500 to 9000\n[   23.033336] e1000e 0000:02:00.0: Some CPU C-states have been disabled in order to enable jumbo frames\n[   26.102364] e1000e: eth1 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None\n[   27.174495] 8021q: 802.1Q VLAN Support v1.8\n[   27.174513] 8021q: adding VLAN 0 to HW filter on device eth1\n[   30.671724] cgroup: cgroup: disabling cgroup2 socket matching due to net_prio or net_cls activation\n[   30.898564] netpoll: netconsole: local port 6666\n[   30.898566] netpoll: netconsole: local IPv6 address 2a02:6b8:0:80b:beae:c5ff:fe28:23f8\n[   30.898567] netpoll: netconsole: interface 'eth1'\n[   30.898568] netpoll: netconsole: remote port 6666\n[   30.898568] netpoll: netconsole: remote IPv6 address 2a02:6b8:b000:605c:e61d:2dff:fe03:3790\n[   30.898569] netpoll: netconsole: remote ethernet address b0:a8:6e:f4:ff:c0\n[   30.917747] console [netcon0] enabled\n[   30.917749] netconsole: network logging started\n[   31.453353] e1000e 0000:02:00.0: Some CPU C-states have been disabled in order to enable jumbo frames\n[   34.185730] e1000e 0000:02:00.0: Some CPU C-states have been disabled in order to enable jumbo frames\n[   34.321840] e1000e 0000:02:00.0: Some CPU C-states have been disabled in order to enable jumbo frames\n[   34.465822] e1000e 0000:02:00.0: Some CPU C-states have been disabled in order to enable jumbo frames\n[   34.597423] e1000e 0000:02:00.0: Some CPU C-states have been disabled in order to enable jumbo frames\n[   34.745417] e1000e 0000:02:00.0: Some CPU C-states have been disabled in order to enable jumbo frames\n[   34.877356] e1000e 0000:02:00.0: Some CPU C-states have been disabled in order to enable jumbo frames\n[   35.005441] e1000e 0000:02:00.0: Some CPU C-states have been disabled in order to enable jumbo frames\n[   35.157376] e1000e 0000:02:00.0: Some CPU C-states have been disabled in order to enable jumbo frames\n[   35.289362] e1000e 0000:02:00.0: Some CPU C-states have been disabled in order to enable jumbo frames\n[   35.417441] e1000e 0000:02:00.0: Some CPU C-states have been disabled in order to enable jumbo frames\n[   37.790342] e1000e: eth1 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None\n\nThis patch flushes tx buffers only once when carrier is off\nrather than at each watchdog iteration.\n\nSigned-off-by: Konstantin Khlebnikov <khlebnikov@yandex-team.ru>\n---\n drivers/net/ethernet/intel/e1000e/netdev.c |   15 ++++++---------\n 1 file changed, 6 insertions(+), 9 deletions(-)",
    "diff": "diff --git a/drivers/net/ethernet/intel/e1000e/netdev.c b/drivers/net/ethernet/intel/e1000e/netdev.c\nindex 189f231075c2..d10083beec83 100644\n--- a/drivers/net/ethernet/intel/e1000e/netdev.c\n+++ b/drivers/net/ethernet/intel/e1000e/netdev.c\n@@ -5309,8 +5309,13 @@ static void e1000_watchdog_task(struct work_struct *work)\n \t\t\t/* 8000ES2LAN requires a Rx packet buffer work-around\n \t\t\t * on link down event; reset the controller to flush\n \t\t\t * the Rx packet buffer.\n+\t\t\t *\n+\t\t\t * If the link is lost the controller stops DMA, but\n+\t\t\t * if there is queued Tx work it cannot be done.  So\n+\t\t\t * reset the controller to flush the Tx packet buffers.\n \t\t\t */\n-\t\t\tif (adapter->flags & FLAG_RX_NEEDS_RESTART)\n+\t\t\tif ((adapter->flags & FLAG_RX_NEEDS_RESTART) ||\n+\t\t\t    e1000_desc_unused(tx_ring) + 1 < tx_ring->count)\n \t\t\t\tadapter->flags |= FLAG_RESTART_NOW;\n \t\t\telse\n \t\t\t\tpm_schedule_suspend(netdev->dev.parent,\n@@ -5333,14 +5338,6 @@ static void e1000_watchdog_task(struct work_struct *work)\n \tadapter->gotc_old = adapter->stats.gotc;\n \tspin_unlock(&adapter->stats64_lock);\n \n-\t/* If the link is lost the controller stops DMA, but\n-\t * if there is queued Tx work it cannot be done.  So\n-\t * reset the controller to flush the Tx packet buffers.\n-\t */\n-\tif (!netif_carrier_ok(netdev) &&\n-\t    (e1000_desc_unused(tx_ring) + 1 < tx_ring->count))\n-\t\tadapter->flags |= FLAG_RESTART_NOW;\n-\n \t/* If reset is necessary, do it outside of interrupt context. */\n \tif (adapter->flags & FLAG_RESTART_NOW) {\n \t\tschedule_work(&adapter->reset_task);\n",
    "prefixes": []
}