Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/1.2/patches/834102/?format=api
{ "id": 834102, "url": "http://patchwork.ozlabs.org/api/1.2/patches/834102/?format=api", "web_url": "http://patchwork.ozlabs.org/project/netdev/patch/20171103205630.1083-7-jakub.kicinski@netronome.com/", "project": { "id": 7, "url": "http://patchwork.ozlabs.org/api/1.2/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": "<20171103205630.1083-7-jakub.kicinski@netronome.com>", "list_archive_url": null, "date": "2017-11-03T20:56:21", "name": "[net-next,v2,06/15] cls_bpf: allow attaching programs loaded for specific device", "commit_ref": null, "pull_url": null, "state": "accepted", "archived": true, "hash": "a6ba3d1e3a41f994900d77dfce5d3372cbb15bf6", "submitter": { "id": 67484, "url": "http://patchwork.ozlabs.org/api/1.2/people/67484/?format=api", "name": "Jakub Kicinski", "email": "jakub.kicinski@netronome.com" }, "delegate": { "id": 34, "url": "http://patchwork.ozlabs.org/api/1.2/users/34/?format=api", "username": "davem", "first_name": "David", "last_name": "Miller", "email": "davem@davemloft.net" }, "mbox": "http://patchwork.ozlabs.org/project/netdev/patch/20171103205630.1083-7-jakub.kicinski@netronome.com/mbox/", "series": [ { "id": 11839, "url": "http://patchwork.ozlabs.org/api/1.2/series/11839/?format=api", "web_url": "http://patchwork.ozlabs.org/project/netdev/list/?series=11839", "date": "2017-11-03T20:56:15", "name": "bpf: add offload as a first class citizen", "version": 2, "mbox": "http://patchwork.ozlabs.org/series/11839/mbox/" } ], "comments": "http://patchwork.ozlabs.org/api/patches/834102/comments/", "check": "pending", "checks": "http://patchwork.ozlabs.org/api/patches/834102/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 (2048-bit key;\n\tunprotected) header.d=netronome-com.20150623.gappssmtp.com\n\theader.i=@netronome-com.20150623.gappssmtp.com\n\theader.b=\"mC4SCFYY\"; dkim-atps=neutral" ], "Received": [ "from vger.kernel.org (vger.kernel.org [209.132.180.67])\n\tby ozlabs.org (Postfix) with ESMTP id 3yTDmq4jsjz9s7p\n\tfor <patchwork-incoming@ozlabs.org>;\n\tSat, 4 Nov 2017 07:57:47 +1100 (AEDT)", "(majordomo@vger.kernel.org) by vger.kernel.org via listexpand\n\tid S1755995AbdKCU5k (ORCPT <rfc822;patchwork-incoming@ozlabs.org>);\n\tFri, 3 Nov 2017 16:57:40 -0400", "from mail-pg0-f65.google.com ([74.125.83.65]:43896 \"EHLO\n\tmail-pg0-f65.google.com\" rhost-flags-OK-OK-OK-OK) by vger.kernel.org\n\twith ESMTP id S1752554AbdKCU4u (ORCPT\n\t<rfc822;netdev@vger.kernel.org>); Fri, 3 Nov 2017 16:56:50 -0400", "by mail-pg0-f65.google.com with SMTP id s75so3462539pgs.0\n\tfor <netdev@vger.kernel.org>; Fri, 03 Nov 2017 13:56:50 -0700 (PDT)", "from jkicinski-Precision-T1700.netronome.com ([75.53.12.129])\n\tby smtp.gmail.com with ESMTPSA id\n\to10sm9989029pgq.69.2017.11.03.13.56.49\n\t(version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128);\n\tFri, 03 Nov 2017 13:56:49 -0700 (PDT)" ], "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=netronome-com.20150623.gappssmtp.com; s=20150623;\n\th=from:to:cc:subject:date:message-id:in-reply-to:references;\n\tbh=BsnK+R3oWPh/RJZMgK0j4PniZh7CtzlxlbPDVfXSWEg=;\n\tb=mC4SCFYYl0Cpjh06bDCRYYNL6TBT9A0/9cJoR6OvVsBl97EXjINgzVxet5DLrrFSxW\n\tNB0Gqr0Ub+W/aKFR//qnAS9FoAeyjYTJw6IF/onr3irTVpcFHkXWqbsYJqiobXS35cVn\n\t7lVR9aAt4bUF4Y5Sf4wgifYIVL6/IQgDycrgfqSiHhleMBX8rKNanyEcSAg8Sw6XLiyp\n\t7C+j85KusFcmk3kJRrfHOe7vsaZ5soUgFLNhspuk/pz4qCL9CDygkFYWnpu7wsfHg81O\n\tGddJBiLYqs7IdeZ7lhTAHmpcxW6i5N4BVoPKbBpS6YjSyXRBNEy1JfclThKSGnIbFo0a\n\taqhw==", "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=BsnK+R3oWPh/RJZMgK0j4PniZh7CtzlxlbPDVfXSWEg=;\n\tb=cnrXZC67+tED5UH7uY8CxLEH0WpKXXthGYZ8mUIEmywEhYs9RBt9QMzsGnL073f7Z0\n\thkMM9b60Fv4EE9HA5OL4dD8OVjBy59+YM9PoK5HBZQajRK/rjM7UnXJ4zilA5KV14fQK\n\tihHeYR7R6Do8nG0y5QiiOzf9tESvh++TbJcyEaMWHqrSgynJrXQ36ZsmYM3wAUefTrdd\n\tm9KiPc+woaXxMAkN5j7MVVrVurJtJpXl+lyh0KwiDFgKyFnFvKrHKO6oRhD5hVK4R9jJ\n\tDdRBNnlsTTsZLvgBjKzQ9PUoKSQeQ4QQ9CS1yKqohXnUQtiP42KWDcKyQ8JWpY3jtrBL\n\ta+Xw==", "X-Gm-Message-State": "AMCzsaVK8jJK0ZLl4zBdSbfQa/RpjZUdOoO/vPzpD2cSYg4TWDLKNLDm\n\tIgC5i/emLvKl4I7BSrYiWl0Fr9ey", "X-Google-Smtp-Source": "ABhQp+QBNT0ib6JhrmrOoD2CskxdO5VxP+OWuzHoRGRSrROUwfUl5OZ1ohX33z/9lxLfocJilaN8aA==", "X-Received": "by 10.99.115.7 with SMTP id o7mr8601792pgc.410.1509742610113;\n\tFri, 03 Nov 2017 13:56:50 -0700 (PDT)", "From": "Jakub Kicinski <jakub.kicinski@netronome.com>", "To": "netdev@vger.kernel.org", "Cc": "oss-drivers@netronome.com, alexei.starovoitov@gmail.com,\n\tdaniel@iogearbox.net, Jakub Kicinski <jakub.kicinski@netronome.com>", "Subject": "[PATCH net-next v2 06/15] cls_bpf: allow attaching programs loaded\n\tfor specific device", "Date": "Fri, 3 Nov 2017 13:56:21 -0700", "Message-Id": "<20171103205630.1083-7-jakub.kicinski@netronome.com>", "X-Mailer": "git-send-email 2.14.1", "In-Reply-To": "<20171103205630.1083-1-jakub.kicinski@netronome.com>", "References": "<20171103205630.1083-1-jakub.kicinski@netronome.com>", "Sender": "netdev-owner@vger.kernel.org", "Precedence": "bulk", "List-ID": "<netdev.vger.kernel.org>", "X-Mailing-List": "netdev@vger.kernel.org" }, "content": "If TC program is loaded with skip_sw flag, we should allow\nthe device-specific programs to be accepted.\n\nSigned-off-by: Jakub Kicinski <jakub.kicinski@netronome.com>\nReviewed-by: Simon Horman <simon.horman@netronome.com>\nReviewed-by: Quentin Monnet <quentin.monnet@netronome.com>\n---\n kernel/bpf/syscall.c | 1 +\n net/sched/cls_bpf.c | 10 +++++++---\n 2 files changed, 8 insertions(+), 3 deletions(-)", "diff": "diff --git a/kernel/bpf/syscall.c b/kernel/bpf/syscall.c\nindex 68f9123acd39..416d70cdfc76 100644\n--- a/kernel/bpf/syscall.c\n+++ b/kernel/bpf/syscall.c\n@@ -1115,6 +1115,7 @@ struct bpf_prog *bpf_prog_get_type_dev(u32 ufd, enum bpf_prog_type type,\n \t\ttrace_bpf_prog_get_type(prog);\n \treturn prog;\n }\n+EXPORT_SYMBOL_GPL(bpf_prog_get_type_dev);\n \n /* last field in 'union bpf_attr' used by this command */\n #define\tBPF_PROG_LOAD_LAST_FIELD prog_target_ifindex\ndiff --git a/net/sched/cls_bpf.c b/net/sched/cls_bpf.c\nindex bc3edde1b9d7..dc9bd9a0070b 100644\n--- a/net/sched/cls_bpf.c\n+++ b/net/sched/cls_bpf.c\n@@ -374,7 +374,7 @@ static int cls_bpf_prog_from_ops(struct nlattr **tb, struct cls_bpf_prog *prog)\n }\n \n static int cls_bpf_prog_from_efd(struct nlattr **tb, struct cls_bpf_prog *prog,\n-\t\t\t\t const struct tcf_proto *tp)\n+\t\t\t\t u32 gen_flags, const struct tcf_proto *tp)\n {\n \tstruct bpf_prog *fp;\n \tchar *name = NULL;\n@@ -382,7 +382,11 @@ static int cls_bpf_prog_from_efd(struct nlattr **tb, struct cls_bpf_prog *prog,\n \n \tbpf_fd = nla_get_u32(tb[TCA_BPF_FD]);\n \n-\tfp = bpf_prog_get_type(bpf_fd, BPF_PROG_TYPE_SCHED_CLS);\n+\tif (gen_flags & TCA_CLS_FLAGS_SKIP_SW)\n+\t\tfp = bpf_prog_get_type_dev(bpf_fd, BPF_PROG_TYPE_SCHED_CLS,\n+\t\t\t\t\t qdisc_dev(tp->q));\n+\telse\n+\t\tfp = bpf_prog_get_type(bpf_fd, BPF_PROG_TYPE_SCHED_CLS);\n \tif (IS_ERR(fp))\n \t\treturn PTR_ERR(fp);\n \n@@ -440,7 +444,7 @@ static int cls_bpf_set_parms(struct net *net, struct tcf_proto *tp,\n \tprog->gen_flags = gen_flags;\n \n \tret = is_bpf ? cls_bpf_prog_from_ops(tb, prog) :\n-\t\t cls_bpf_prog_from_efd(tb, prog, tp);\n+\t\t cls_bpf_prog_from_efd(tb, prog, gen_flags, tp);\n \tif (ret < 0)\n \t\treturn ret;\n \n", "prefixes": [ "net-next", "v2", "06/15" ] }