Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/patches/806678/?format=api
{ "id": 806678, "url": "http://patchwork.ozlabs.org/api/patches/806678/?format=api", "web_url": "http://patchwork.ozlabs.org/project/netdev/patch/1503942035-24924-4-git-send-email-michael.chan@broadcom.com/", "project": { "id": 7, "url": "http://patchwork.ozlabs.org/api/projects/7/?format=api", "name": "Linux network development", "link_name": "netdev", "list_id": "netdev.vger.kernel.org", "list_email": "netdev@vger.kernel.org", "web_url": null, "scm_url": null, "webscm_url": null, "list_archive_url": "", "list_archive_url_format": "", "commit_url_format": "" }, "msgid": "<1503942035-24924-4-git-send-email-michael.chan@broadcom.com>", "list_archive_url": null, "date": "2017-08-28T17:40:27", "name": "[net-next,03/11] bnxt_en: assign CPU affinity hints to bnxt_en IRQs", "commit_ref": null, "pull_url": null, "state": "accepted", "archived": true, "hash": "d48f13fcf34af2c73b570ba7e82fb760b40818c0", "submitter": { "id": 68365, "url": "http://patchwork.ozlabs.org/api/people/68365/?format=api", "name": "Michael Chan", "email": "michael.chan@broadcom.com" }, "delegate": { "id": 34, "url": "http://patchwork.ozlabs.org/api/users/34/?format=api", "username": "davem", "first_name": "David", "last_name": "Miller", "email": "davem@davemloft.net" }, "mbox": "http://patchwork.ozlabs.org/project/netdev/patch/1503942035-24924-4-git-send-email-michael.chan@broadcom.com/mbox/", "series": [ { "id": 225, "url": "http://patchwork.ozlabs.org/api/series/225/?format=api", "web_url": "http://patchwork.ozlabs.org/project/netdev/list/?series=225", "date": "2017-08-28T17:40:24", "name": "bnxt_en: Updates.", "version": 1, "mbox": "http://patchwork.ozlabs.org/series/225/mbox/" } ], "comments": "http://patchwork.ozlabs.org/api/patches/806678/comments/", "check": "pending", "checks": "http://patchwork.ozlabs.org/api/patches/806678/checks/", "tags": {}, "related": [], "headers": { "Return-Path": "<netdev-owner@vger.kernel.org>", "X-Original-To": "patchwork-incoming@ozlabs.org", "Delivered-To": "patchwork-incoming@ozlabs.org", "Authentication-Results": [ "ozlabs.org;\n\tspf=none (mailfrom) smtp.mailfrom=vger.kernel.org\n\t(client-ip=209.132.180.67; helo=vger.kernel.org;\n\tenvelope-from=netdev-owner@vger.kernel.org;\n\treceiver=<UNKNOWN>)", "ozlabs.org; dkim=pass (1024-bit key;\n\tunprotected) header.d=broadcom.com header.i=@broadcom.com\n\theader.b=\"AiCd9HdO\"; dkim-atps=neutral" ], "Received": [ "from vger.kernel.org (vger.kernel.org [209.132.180.67])\n\tby ozlabs.org (Postfix) with ESMTP id 3xgzZg2zvjz9sP5\n\tfor <patchwork-incoming@ozlabs.org>;\n\tTue, 29 Aug 2017 03:40:59 +1000 (AEST)", "(majordomo@vger.kernel.org) by vger.kernel.org via listexpand\n\tid S1751464AbdH1Rk4 (ORCPT <rfc822;patchwork-incoming@ozlabs.org>);\n\tMon, 28 Aug 2017 13:40:56 -0400", "from mail-qt0-f178.google.com ([209.85.216.178]:33350 \"EHLO\n\tmail-qt0-f178.google.com\" rhost-flags-OK-OK-OK-OK) by vger.kernel.org\n\twith ESMTP id S1751304AbdH1Rkx (ORCPT\n\t<rfc822;netdev@vger.kernel.org>); Mon, 28 Aug 2017 13:40:53 -0400", "by mail-qt0-f178.google.com with SMTP id e2so5348213qta.0\n\tfor <netdev@vger.kernel.org>; Mon, 28 Aug 2017 10:40:52 -0700 (PDT)", "from localhost.dhcp.broadcom.net ([192.19.255.250])\n\tby smtp.gmail.com with ESMTPSA id\n\t20sm592006qtu.52.2017.08.28.10.40.50\n\t(version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);\n\tMon, 28 Aug 2017 10:40:51 -0700 (PDT)" ], "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=broadcom.com; s=google;\n\th=from:to:cc:subject:date:message-id:in-reply-to:references;\n\tbh=f+YlBSvaJBHh6y1XcuQIvDX1BIT8deST7HmzvP3vrTg=;\n\tb=AiCd9HdORpqdbsfO7gheakHMTO0T01UJO68Durfu2EDaYCmWBBI37tfx73qoFZaqOw\n\tp2wjyWJCvfih9uavGpozAGa//MzZ+MQxqvxzhWDJq+4AkrWXUIkAZWCQSfVJuX+Njo2I\n\t9wSV5HZqJRJWFJrsqfVi8rA6ansL7qF3SnjNw=", "X-Google-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20161025;\n\th=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to\n\t:references;\n\tbh=f+YlBSvaJBHh6y1XcuQIvDX1BIT8deST7HmzvP3vrTg=;\n\tb=T4MJ1c5xAdcXvq50cwHJXszgFHbhjAsWhhBqQ2G1MdNxcBFmeVhyKlIBnCBVWbrMSZ\n\tzIIPFegNT6pZePpzS2KIoAqc30Xs/I5yvk8gEqQXxE3BXFzU3//lcZq/RB/IHs2o6cJS\n\tYNo6lnvsbPPZgQynnNnE1m3XYw6drJ/i5deVWb4wjdN0C3EezhzAlg/XbrA6Ih3956VC\n\tdqoek6wgNVgMlRWhVD3NS6LoyS2H7ZcxnTjLQuYnecfpP83E0LaxIbmYPswVqsyUnqkM\n\tLu0K4gyXTeAgrtZH128DezvxNX8XKbLPqFgMIaeWbflJ5zLglqRQkcMMPqAU9E2Ab+Pt\n\tSTGA==", "X-Gm-Message-State": "AHYfb5hDsLLqQ0f8kNf5X7dp7vixL+KmdftjXD8g2DrKxmjBIPc/IU9A\n\tZ75ehjZPt+ETHPu1", "X-Received": "by 10.200.23.37 with SMTP id w34mr2078583qtj.164.1503942051985; \n\tMon, 28 Aug 2017 10:40:51 -0700 (PDT)", "From": "Michael Chan <michael.chan@broadcom.com>", "To": "davem@davemloft.net", "Cc": "netdev@vger.kernel.org,\n\tVasundhara Volam <vasundhara-v.volam@broadcom.com>", "Subject": "[PATCH net-next 03/11] bnxt_en: assign CPU affinity hints to\n\tbnxt_en IRQs", "Date": "Mon, 28 Aug 2017 13:40:27 -0400", "Message-Id": "<1503942035-24924-4-git-send-email-michael.chan@broadcom.com>", "X-Mailer": "git-send-email 1.8.3.1", "In-Reply-To": "<1503942035-24924-1-git-send-email-michael.chan@broadcom.com>", "References": "<1503942035-24924-1-git-send-email-michael.chan@broadcom.com>", "Sender": "netdev-owner@vger.kernel.org", "Precedence": "bulk", "List-ID": "<netdev.vger.kernel.org>", "X-Mailing-List": "netdev@vger.kernel.org" }, "content": "From: Vasundhara Volam <vasundhara-v.volam@broadcom.com>\n\nThis patch provides hints to irqbalance to map bnxt_en device IRQs\nto specific CPU cores. cpumask_local_spread() is used, which first\nmaps IRQs to near NUMA cores; when those cores are exhausted, IRQs\nare mapped to far NUMA cores.\n\nSigned-off-by: Vasundhara Volam <vasundhara-v.volam@broadcom.com>\nSigned-off-by: Michael Chan <michael.chan@broadcom.com>\n---\n drivers/net/ethernet/broadcom/bnxt/bnxt.c | 25 ++++++++++++++++++++++++-\n drivers/net/ethernet/broadcom/bnxt/bnxt.h | 4 +++-\n 2 files changed, 27 insertions(+), 2 deletions(-)", "diff": "diff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt.c b/drivers/net/ethernet/broadcom/bnxt/bnxt.c\nindex 4b0a807..9657bfb 100644\n--- a/drivers/net/ethernet/broadcom/bnxt/bnxt.c\n+++ b/drivers/net/ethernet/broadcom/bnxt/bnxt.c\n@@ -49,6 +49,7 @@\n #include <linux/aer.h>\n #include <linux/bitmap.h>\n #include <linux/cpu_rmap.h>\n+#include <linux/cpumask.h>\n \n #include \"bnxt_hsi.h\"\n #include \"bnxt.h\"\n@@ -5554,8 +5555,15 @@ static void bnxt_free_irq(struct bnxt *bp)\n \n \tfor (i = 0; i < bp->cp_nr_rings; i++) {\n \t\tirq = &bp->irq_tbl[i];\n-\t\tif (irq->requested)\n+\t\tif (irq->requested) {\n+\t\t\tif (irq->have_cpumask) {\n+\t\t\t\tirq_set_affinity_hint(irq->vector, NULL);\n+\t\t\t\tfree_cpumask_var(irq->cpu_mask);\n+\t\t\t\tirq->have_cpumask = 0;\n+\t\t\t}\n \t\t\tfree_irq(irq->vector, bp->bnapi[i]);\n+\t\t}\n+\n \t\tirq->requested = 0;\n \t}\n }\n@@ -5588,6 +5596,21 @@ static int bnxt_request_irq(struct bnxt *bp)\n \t\t\tbreak;\n \n \t\tirq->requested = 1;\n+\n+\t\tif (zalloc_cpumask_var(&irq->cpu_mask, GFP_KERNEL)) {\n+\t\t\tint numa_node = dev_to_node(&bp->pdev->dev);\n+\n+\t\t\tirq->have_cpumask = 1;\n+\t\t\tcpumask_set_cpu(cpumask_local_spread(i, numa_node),\n+\t\t\t\t\tirq->cpu_mask);\n+\t\t\trc = irq_set_affinity_hint(irq->vector, irq->cpu_mask);\n+\t\t\tif (rc) {\n+\t\t\t\tnetdev_warn(bp->dev,\n+\t\t\t\t\t \"Set affinity failed, IRQ = %d\\n\",\n+\t\t\t\t\t irq->vector);\n+\t\t\t\tbreak;\n+\t\t\t}\n+\t\t}\n \t}\n \treturn rc;\n }\ndiff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt.h b/drivers/net/ethernet/broadcom/bnxt/bnxt.h\nindex 568516f..801c0f7 100644\n--- a/drivers/net/ethernet/broadcom/bnxt/bnxt.h\n+++ b/drivers/net/ethernet/broadcom/bnxt/bnxt.h\n@@ -701,8 +701,10 @@ struct bnxt_napi {\n struct bnxt_irq {\n \tirq_handler_t\thandler;\n \tunsigned int\tvector;\n-\tu8\t\trequested;\n+\tu8\t\trequested:1;\n+\tu8\t\thave_cpumask:1;\n \tchar\t\tname[IFNAMSIZ + 2];\n+\tcpumask_var_t\tcpu_mask;\n };\n \n #define HWRM_RING_ALLOC_TX\t0x1\n", "prefixes": [ "net-next", "03/11" ] }