get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 896857,
    "url": "http://patchwork.ozlabs.org/api/patches/896857/?format=api",
    "web_url": "http://patchwork.ozlabs.org/project/intel-wired-lan/patch/20180410174959.18757-8-vinicius.gomes@intel.com/",
    "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": "<20180410174959.18757-8-vinicius.gomes@intel.com>",
    "list_archive_url": null,
    "date": "2018-04-10T17:49:56",
    "name": "[next-queue,v7,07/10] igb: Enable nfc filters to specify MAC addresses",
    "commit_ref": null,
    "pull_url": null,
    "state": "accepted",
    "archived": false,
    "hash": "98fa88c0d71d234adcc1c3cf70518f1e7631ad5d",
    "submitter": {
        "id": 72272,
        "url": "http://patchwork.ozlabs.org/api/people/72272/?format=api",
        "name": "Vinicius Costa Gomes",
        "email": "vinicius.gomes@intel.com"
    },
    "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/20180410174959.18757-8-vinicius.gomes@intel.com/mbox/",
    "series": [
        {
            "id": 38278,
            "url": "http://patchwork.ozlabs.org/api/series/38278/?format=api",
            "web_url": "http://patchwork.ozlabs.org/project/intel-wired-lan/list/?series=38278",
            "date": "2018-04-10T17:49:50",
            "name": "igb: offloading of receive filters",
            "version": 7,
            "mbox": "http://patchwork.ozlabs.org/series/38278/mbox/"
        }
    ],
    "comments": "http://patchwork.ozlabs.org/api/patches/896857/comments/",
    "check": "pending",
    "checks": "http://patchwork.ozlabs.org/api/patches/896857/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.138; helo=whitealder.osuosl.org;\n\tenvelope-from=intel-wired-lan-bounces@osuosl.org;\n\treceiver=<UNKNOWN>)",
            "ozlabs.org;\n\tdmarc=none (p=none dis=none) header.from=intel.com"
        ],
        "Received": [
            "from whitealder.osuosl.org (smtp1.osuosl.org [140.211.166.138])\n\t(using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits))\n\t(No client certificate requested)\n\tby ozlabs.org (Postfix) with ESMTPS id 40LF7s5Rhlz9s29\n\tfor <incoming@patchwork.ozlabs.org>;\n\tWed, 11 Apr 2018 03:50:33 +1000 (AEST)",
            "from localhost (localhost [127.0.0.1])\n\tby whitealder.osuosl.org (Postfix) with ESMTP id 5B81586735;\n\tTue, 10 Apr 2018 17:50:32 +0000 (UTC)",
            "from whitealder.osuosl.org ([127.0.0.1])\n\tby localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024)\n\twith ESMTP id Ll2QcVH5PAs3; Tue, 10 Apr 2018 17:50:30 +0000 (UTC)",
            "from ash.osuosl.org (ash.osuosl.org [140.211.166.34])\n\tby whitealder.osuosl.org (Postfix) with ESMTP id BB49A86767;\n\tTue, 10 Apr 2018 17:50:30 +0000 (UTC)",
            "from fraxinus.osuosl.org (smtp4.osuosl.org [140.211.166.137])\n\tby ash.osuosl.org (Postfix) with ESMTP id 1D8B61C11AD\n\tfor <intel-wired-lan@lists.osuosl.org>;\n\tTue, 10 Apr 2018 17:50:28 +0000 (UTC)",
            "from localhost (localhost [127.0.0.1])\n\tby fraxinus.osuosl.org (Postfix) with ESMTP id 1A7108511F\n\tfor <intel-wired-lan@lists.osuosl.org>;\n\tTue, 10 Apr 2018 17:50:28 +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 Az682j3l5xqm for <intel-wired-lan@lists.osuosl.org>;\n\tTue, 10 Apr 2018 17:50:27 +0000 (UTC)",
            "from mga03.intel.com (mga03.intel.com [134.134.136.65])\n\tby fraxinus.osuosl.org (Postfix) with ESMTPS id 8E41484FCA\n\tfor <intel-wired-lan@lists.osuosl.org>;\n\tTue, 10 Apr 2018 17:50:27 +0000 (UTC)",
            "from orsmga005.jf.intel.com ([10.7.209.41])\n\tby orsmga103.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384;\n\t10 Apr 2018 10:50:27 -0700",
            "from kjnewhou-mobl1.amr.corp.intel.com (HELO localhost.localdomain)\n\t([10.254.183.149])\n\tby orsmga005.jf.intel.com with ESMTP; 10 Apr 2018 10:50:26 -0700"
        ],
        "X-Virus-Scanned": [
            "amavisd-new at osuosl.org",
            "amavisd-new at osuosl.org"
        ],
        "X-Greylist": "domain auto-whitelisted by SQLgrey-1.7.6",
        "X-Amp-Result": "SKIPPED(no attachment in message)",
        "X-Amp-File-Uploaded": "False",
        "X-ExtLoop1": "1",
        "X-IronPort-AV": "E=Sophos;i=\"5.48,433,1517904000\"; d=\"scan'208\";a=\"215551517\"",
        "From": "Vinicius Costa Gomes <vinicius.gomes@intel.com>",
        "To": "intel-wired-lan@lists.osuosl.org",
        "Date": "Tue, 10 Apr 2018 10:49:56 -0700",
        "Message-Id": "<20180410174959.18757-8-vinicius.gomes@intel.com>",
        "X-Mailer": "git-send-email 2.17.0",
        "In-Reply-To": "<20180410174959.18757-1-vinicius.gomes@intel.com>",
        "References": "<20180410174959.18757-1-vinicius.gomes@intel.com>",
        "Subject": "[Intel-wired-lan] [next-queue PATCH v7 07/10] igb: Enable nfc\n\tfilters to specify MAC addresses",
        "X-BeenThere": "intel-wired-lan@osuosl.org",
        "X-Mailman-Version": "2.1.24",
        "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": "netdev@vger.kernel.org, jesus.sanchez-palencia@intel.com",
        "MIME-Version": "1.0",
        "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": "This allows igb_add_filter()/igb_erase_filter() to work on filters\nthat include MAC addresses (both source and destination).\n\nFor now, this only exposes the functionality, the next commit glues\nethtool into this. Later in this series, these APIs are used to allow\noffloading of cls_flower filters.\n\nSigned-off-by: Vinicius Costa Gomes <vinicius.gomes@intel.com>\n---\n drivers/net/ethernet/intel/igb/igb.h         |  4 +++\n drivers/net/ethernet/intel/igb/igb_ethtool.c | 28 ++++++++++++++++++++\n 2 files changed, 32 insertions(+)",
    "diff": "diff --git a/drivers/net/ethernet/intel/igb/igb.h b/drivers/net/ethernet/intel/igb/igb.h\nindex f48ba090fd6a..b9b965921e9f 100644\n--- a/drivers/net/ethernet/intel/igb/igb.h\n+++ b/drivers/net/ethernet/intel/igb/igb.h\n@@ -442,6 +442,8 @@ struct hwmon_buff {\n enum igb_filter_match_flags {\n \tIGB_FILTER_FLAG_ETHER_TYPE = 0x1,\n \tIGB_FILTER_FLAG_VLAN_TCI   = 0x2,\n+\tIGB_FILTER_FLAG_SRC_MAC_ADDR   = 0x4,\n+\tIGB_FILTER_FLAG_DST_MAC_ADDR   = 0x8,\n };\n \n #define IGB_MAX_RXNFC_FILTERS 16\n@@ -456,6 +458,8 @@ struct igb_nfc_input {\n \tu8 match_flags;\n \t__be16 etype;\n \t__be16 vlan_tci;\n+\tu8 src_addr[ETH_ALEN];\n+\tu8 dst_addr[ETH_ALEN];\n };\n \n struct igb_nfc_filter {\ndiff --git a/drivers/net/ethernet/intel/igb/igb_ethtool.c b/drivers/net/ethernet/intel/igb/igb_ethtool.c\nindex 5975d432836f..31b2960a7869 100644\n--- a/drivers/net/ethernet/intel/igb/igb_ethtool.c\n+++ b/drivers/net/ethernet/intel/igb/igb_ethtool.c\n@@ -2776,6 +2776,25 @@ int igb_add_filter(struct igb_adapter *adapter, struct igb_nfc_filter *input)\n \t\t\treturn err;\n \t}\n \n+\tif (input->filter.match_flags & IGB_FILTER_FLAG_DST_MAC_ADDR) {\n+\t\terr = igb_add_mac_steering_filter(adapter,\n+\t\t\t\t\t\t  input->filter.dst_addr,\n+\t\t\t\t\t\t  input->action, 0);\n+\t\terr = min_t(int, err, 0);\n+\t\tif (err)\n+\t\t\treturn err;\n+\t}\n+\n+\tif (input->filter.match_flags & IGB_FILTER_FLAG_SRC_MAC_ADDR) {\n+\t\terr = igb_add_mac_steering_filter(adapter,\n+\t\t\t\t\t\t  input->filter.src_addr,\n+\t\t\t\t\t\t  input->action,\n+\t\t\t\t\t\t  IGB_MAC_STATE_SRC_ADDR);\n+\t\terr = min_t(int, err, 0);\n+\t\tif (err)\n+\t\t\treturn err;\n+\t}\n+\n \tif (input->filter.match_flags & IGB_FILTER_FLAG_VLAN_TCI)\n \t\terr = igb_rxnfc_write_vlan_prio_filter(adapter, input);\n \n@@ -2824,6 +2843,15 @@ int igb_erase_filter(struct igb_adapter *adapter, struct igb_nfc_filter *input)\n \t\tigb_clear_vlan_prio_filter(adapter,\n \t\t\t\t\t   ntohs(input->filter.vlan_tci));\n \n+\tif (input->filter.match_flags & IGB_FILTER_FLAG_SRC_MAC_ADDR)\n+\t\tigb_del_mac_steering_filter(adapter, input->filter.src_addr,\n+\t\t\t\t\t    input->action,\n+\t\t\t\t\t    IGB_MAC_STATE_SRC_ADDR);\n+\n+\tif (input->filter.match_flags & IGB_FILTER_FLAG_DST_MAC_ADDR)\n+\t\tigb_del_mac_steering_filter(adapter, input->filter.dst_addr,\n+\t\t\t\t\t    input->action, 0);\n+\n \treturn 0;\n }\n \n",
    "prefixes": [
        "next-queue",
        "v7",
        "07/10"
    ]
}