Show a cover letter.

GET /api/covers/810312/?format=api
HTTP 200 OK
Allow: GET, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

{
    "id": 810312,
    "url": "http://patchwork.ozlabs.org/api/covers/810312/?format=api",
    "web_url": "http://patchwork.ozlabs.org/project/netdev/cover/20170905223551.27925-1-ppenkov@google.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": "<20170905223551.27925-1-ppenkov@google.com>",
    "list_archive_url": null,
    "date": "2017-09-05T22:35:49",
    "name": "[net-next,RFC,0/2] Improve code coverage of syzkaller",
    "submitter": {
        "id": 72299,
        "url": "http://patchwork.ozlabs.org/api/people/72299/?format=api",
        "name": "Petar Penkov",
        "email": "ppenkov@google.com"
    },
    "mbox": "http://patchwork.ozlabs.org/project/netdev/cover/20170905223551.27925-1-ppenkov@google.com/mbox/",
    "series": [
        {
            "id": 1659,
            "url": "http://patchwork.ozlabs.org/api/series/1659/?format=api",
            "web_url": "http://patchwork.ozlabs.org/project/netdev/list/?series=1659",
            "date": "2017-09-05T22:35:50",
            "name": "Improve code coverage of syzkaller",
            "version": 1,
            "mbox": "http://patchwork.ozlabs.org/series/1659/mbox/"
        }
    ],
    "comments": "http://patchwork.ozlabs.org/api/covers/810312/comments/",
    "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=google.com header.i=@google.com\n\theader.b=\"HYeYkZgF\"; dkim-atps=neutral"
        ],
        "Received": [
            "from vger.kernel.org (vger.kernel.org [209.132.180.67])\n\tby ozlabs.org (Postfix) with ESMTP id 3xn1qC5wb4z9sP3\n\tfor <patchwork-incoming@ozlabs.org>;\n\tWed,  6 Sep 2017 08:39:19 +1000 (AEST)",
            "(majordomo@vger.kernel.org) by vger.kernel.org via listexpand\n\tid S1753890AbdIEWgK (ORCPT <rfc822;patchwork-incoming@ozlabs.org>);\n\tTue, 5 Sep 2017 18:36:10 -0400",
            "from mail-pg0-f43.google.com ([74.125.83.43]:38243 \"EHLO\n\tmail-pg0-f43.google.com\" rhost-flags-OK-OK-OK-OK) by vger.kernel.org\n\twith ESMTP id S1752670AbdIEWgJ (ORCPT\n\t<rfc822;netdev@vger.kernel.org>); Tue, 5 Sep 2017 18:36:09 -0400",
            "by mail-pg0-f43.google.com with SMTP id v66so11801406pgb.5\n\tfor <netdev@vger.kernel.org>; Tue, 05 Sep 2017 15:36:09 -0700 (PDT)",
            "from localhost ([2620:15c:2cb:1:183d:cea1:ba48:3c2f])\n\tby smtp.gmail.com with ESMTPSA id f5sm20593pga.30.2017.09.05.15.36.07\n\t(version=TLS1_2 cipher=AES128-SHA bits=128/128);\n\tTue, 05 Sep 2017 15:36:07 -0700 (PDT)"
        ],
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=google.com; s=20161025;\n\th=from:to:cc:subject:date:message-id;\n\tbh=x/S0w4rrqrMQGcTgoysx3vYnh9QIwpG3MI2j0xqsGrU=;\n\tb=HYeYkZgFOdg4ThRYFgelprHrM/EEYAMzRufIJbQDqXyHY7uNWGELlUjXKGPnJkEM4Z\n\tHQ6Bolk1W3OcdiVxCcJJhFdhrFTHqaN+MJbwNbtsscPXbgBXzr3vl06Q7Qsuqu7SjqLV\n\teIINQ1bUvKj2HGDEKy3zRN3b00OkQuBFEOThqLKqWesRhrfVD0CoTEFkKPTzaPhLGEnm\n\tNVN8ARHBjQFsS+my35B8oHwN2/hZkFdJJK/tZgjNWVUrVScu3E0g9gtVKsP2cSF8x5eT\n\tM4j8XblKLjo5+FV5jvKX2yxqgWawQyKgihjRF2rYQ2dtWfmc7OEOavkSdwv4XdURu7vW\n\twzSg==",
        "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;\n\tbh=x/S0w4rrqrMQGcTgoysx3vYnh9QIwpG3MI2j0xqsGrU=;\n\tb=Uztt7+Y6o6zp1BZpuPpYCP39sFKz8a7n+l14WWCH0zRf4dj9e9uRVpJyVttri5VdJY\n\tCqj4P0P0Qbz1Kg8Nnx+p4MJXvjogA1WpKrtC6iDz0ECY4c7YlNufJ/xPQ863okyKbDc0\n\tWvsLllUD2hEiIejtCdk4VR14mmhZFUQAUl2UXXOOW/onaRpsCvNh1rqMtQDnXW7pWMEF\n\tyWVSt/vburRHLN4wE093gAZkTstiB3bI7de0vwrh5iYKTZLhpeSt2z0kyBSWtQDZCbW9\n\t/nJZuN627fYWD3XzETLW1Z5+6TkFGOrBTDM+WHCfhWSxR8wutIfYQtnv+jORmHh396dM\n\tRrNw==",
        "X-Gm-Message-State": "AHPjjUgXPi0PQtpWseKk/zGksl6AW1pADaBUahI4gwvL7TigYwa4ibwg\n\tcBWX5VZtvQbQljFUxW+H9jSs",
        "X-Google-Smtp-Source": "ADKCNb4ue6VJQPOoBbuX9J+Jy34QWkZgboZXG55XhKz6F6E0/IWlyQPwKkI/yXbKzyAW29JIYErCMw==",
        "X-Received": "by 10.98.21.20 with SMTP id 20mr5340780pfv.326.1504650968500;\n\tTue, 05 Sep 2017 15:36:08 -0700 (PDT)",
        "From": "Petar Penkov <ppenkov@google.com>",
        "To": "netdev@vger.kernel.org",
        "Cc": "Petar Penkov <ppenkov@google.com>",
        "Subject": "[PATCH net-next RFC 0/2] Improve code coverage of syzkaller",
        "Date": "Tue,  5 Sep 2017 15:35:49 -0700",
        "Message-Id": "<20170905223551.27925-1-ppenkov@google.com>",
        "X-Mailer": "git-send-email 2.14.1.581.gf28d330327-goog",
        "Sender": "netdev-owner@vger.kernel.org",
        "Precedence": "bulk",
        "List-ID": "<netdev.vger.kernel.org>",
        "X-Mailing-List": "netdev@vger.kernel.org"
    },
    "content": "This patch series is intended to improve code coverage of syzkaller on\nthe early receive path, specifically including flow dissector, GRO,\nand GRO with frags parts of the networking stack. Syzkaller exercises\nthe stack through the TUN driver and this is therefore where changes\nreside. Current coverage through netif_receive_skb() is limited as it\ndoes not touch on any of the aforementioned code paths. Furthermore,\nfor full coverage, it is necessary to have more flexibility over the\nlinear and non-linear data of the skbs.\n\nThe following patches address this by providing the user(syzkaller)\nwith the ability to send via napi_gro_receive() and napi_gro_frags().\nAdditionally, syzkaller can specify how many fragments there are and\nhow much data per fragment there is. This is done by exploiting the\nconvenient structure of iovecs. Finally, this patch series adds\nsupport for exercising the flow dissector during fuzzing.\n\nThe code path including napi_gro_receive() can be enabled via the\nCONFIG_TUN_NAPI compile-time flag, and can be used by users other than\nsyzkaller. The remainder of the  changes in this patch series give the\nuser significantly more control over packets entering the kernel. To\navoid potential security vulnerabilities, hide the ability to send\ncustom skbs and the flow dissector code paths behind a run-time flag\nIFF_NAPI_FRAGS that is advertised and accepted only if CONFIG_TUN_NAPI\nis enabled.\n\nThe patch series will be followed with changes to packetdrill, where\nthese additions to the TUN driver are exercised and demonstrated.\nThis will give the ability to write regression tests for specific\nparts of the early networking stack.\n\nPatch 1/ Add NAPI struct per receive queue, enable NAPI, and use\n\t napi_gro_receive() \nPatch 2/ Use NAPI skb and napi_gro_frags(), exercise flow dissector,\n\t and allow custom skbs.\nPetar Penkov (2):\n  tun: enable NAPI for TUN/TAP driver\n  tun: enable napi_gro_frags() for TUN/TAP driver\n\n drivers/net/Kconfig         |   8 ++\n drivers/net/tun.c           | 251 +++++++++++++++++++++++++++++++++++++++++---\n include/uapi/linux/if_tun.h |   1 +\n 3 files changed, 246 insertions(+), 14 deletions(-)"
}