Show a cover letter.

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

{
    "id": 57037,
    "url": "http://patchwork.dpdk.org/api/covers/57037/?format=api",
    "web_url": "http://patchwork.dpdk.org/project/dpdk/cover/cover.1563982007.git.anatoly.burakov@intel.com/",
    "project": {
        "id": 1,
        "url": "http://patchwork.dpdk.org/api/projects/1/?format=api",
        "name": "DPDK",
        "link_name": "dpdk",
        "list_id": "dev.dpdk.org",
        "list_email": "dev@dpdk.org",
        "web_url": "http://core.dpdk.org",
        "scm_url": "git://dpdk.org/dpdk",
        "webscm_url": "http://git.dpdk.org/dpdk",
        "list_archive_url": "https://inbox.dpdk.org/dev",
        "list_archive_url_format": "https://inbox.dpdk.org/dev/{}",
        "commit_url_format": ""
    },
    "msgid": "<cover.1563982007.git.anatoly.burakov@intel.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/cover.1563982007.git.anatoly.burakov@intel.com",
    "date": "2019-07-24T15:34:42",
    "name": "[0/2] Small usability improvements for devbind",
    "submitter": {
        "id": 4,
        "url": "http://patchwork.dpdk.org/api/people/4/?format=api",
        "name": "Anatoly Burakov",
        "email": "anatoly.burakov@intel.com"
    },
    "mbox": "http://patchwork.dpdk.org/project/dpdk/cover/cover.1563982007.git.anatoly.burakov@intel.com/mbox/",
    "series": [
        {
            "id": 5713,
            "url": "http://patchwork.dpdk.org/api/series/5713/?format=api",
            "web_url": "http://patchwork.dpdk.org/project/dpdk/list/?series=5713",
            "date": "2019-07-24T15:34:42",
            "name": "Small usability improvements for devbind",
            "version": 1,
            "mbox": "http://patchwork.dpdk.org/series/5713/mbox/"
        }
    ],
    "comments": "http://patchwork.dpdk.org/api/covers/57037/comments/",
    "headers": {
        "Return-Path": "<dev-bounces@dpdk.org>",
        "X-Original-To": "patchwork@dpdk.org",
        "Delivered-To": "patchwork@dpdk.org",
        "Received": [
            "from [92.243.14.124] (localhost [127.0.0.1])\n\tby dpdk.org (Postfix) with ESMTP id C1A241C219;\n\tWed, 24 Jul 2019 17:34:49 +0200 (CEST)",
            "from mga11.intel.com (mga11.intel.com [192.55.52.93])\n\tby dpdk.org (Postfix) with ESMTP id DD68C1C218\n\tfor <dev@dpdk.org>; Wed, 24 Jul 2019 17:34:47 +0200 (CEST)",
            "from orsmga008.jf.intel.com ([10.7.209.65])\n\tby fmsmga102.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384;\n\t24 Jul 2019 08:34:46 -0700",
            "from silpixa00399498.ir.intel.com (HELO\n\tsilpixa00399498.ger.corp.intel.com) ([10.237.223.125])\n\tby orsmga008.jf.intel.com with ESMTP; 24 Jul 2019 08:34:45 -0700"
        ],
        "X-Amp-Result": "SKIPPED(no attachment in message)",
        "X-Amp-File-Uploaded": "False",
        "X-ExtLoop1": "1",
        "X-IronPort-AV": "E=Sophos;i=\"5.64,303,1559545200\"; d=\"scan'208\";a=\"163880260\"",
        "From": "Anatoly Burakov <anatoly.burakov@intel.com>",
        "To": "dev@dpdk.org",
        "Cc": "john.mcnamara@intel.com,\n\tthomas@monjalon.net",
        "Date": "Wed, 24 Jul 2019 16:34:42 +0100",
        "Message-Id": "<cover.1563982007.git.anatoly.burakov@intel.com>",
        "X-Mailer": "git-send-email 2.17.1",
        "Subject": "[dpdk-dev] [PATCH 0/2] Small usability improvements for devbind",
        "X-BeenThere": "dev@dpdk.org",
        "X-Mailman-Version": "2.1.15",
        "Precedence": "list",
        "List-Id": "DPDK patches and discussions <dev.dpdk.org>",
        "List-Unsubscribe": "<https://mails.dpdk.org/options/dev>,\n\t<mailto:dev-request@dpdk.org?subject=unsubscribe>",
        "List-Archive": "<http://mails.dpdk.org/archives/dev/>",
        "List-Post": "<mailto:dev@dpdk.org>",
        "List-Help": "<mailto:dev-request@dpdk.org?subject=help>",
        "List-Subscribe": "<https://mails.dpdk.org/listinfo/dev>,\n\t<mailto:dev-request@dpdk.org?subject=subscribe>",
        "Errors-To": "dev-bounces@dpdk.org",
        "Sender": "\"dev\" <dev-bounces@dpdk.org>"
    },
    "content": "Over the course of using devbind, i find myself frequently bumping up\nagainst two common errors (with the assumption being that i'm not the\nonly person who hits these errors).\n\nFirst happens when i forget to specify the driver. The error message in\nthis case looks something like the following:\n\nanatoly@xxxx:~$ sudo DPDK/usertools/dpdk-devbind.py -b 08:00.0 08:00.1\nError: bind failed for 0000:08:00.1 - Cannot open /sys/bus/pci/drivers/08:00.0/bind\nError: unbind failed for 0000:08:00.1 - Cannot open /sys/bus/pci/drivers//unbind\n\nThis is confusing to anyone who isn't intimately familiar with how driver binding\nthrough sysfs works. The first patch in this series changes the error message to\ninstead look like the following:\n\nanatoly@xxxx:~$ sudo DPDK/usertools/dpdk-devbind.py -b 08:00.0 08:00.1\nERROR: Driver '08:00.0' does not look like a valid driver. Did you forget to specify the driver to bind devices to?\n\nWe do that by assuming that no one in their right mind will name their PCI driver\nwith something that looks like a PCI address, so we check if the driver string is\nactually a valid device string. If it is, we error out.\n\nThe second error i often come across is forgetting to load the driver. This\nerror looks something like this:\n\nanatoly@xxxx:~$ sudo DPDK/usertools/dpdk-devbind.py -b vfio-pci 08:00.1\nError: bind failed for 0000:08:00.1 - Cannot open /sys/bus/pci/drivers/vfio-pci/bind\n\nThis too isn't very informative. The second patch in this patchset changes this error\nto look like this instead:\n\nanatoly@xxxx:~$ sudo DPDK/usertools/dpdk-devbind.py -b vfio-pci 08:00.1\nERROR: Driver 'vfio-pci' is not loaded.\n\nNice and informative!\n\nAnatoly Burakov (2):\n  usertools/devbind: add error on forgetting to specify driver\n  usertools/devbind: check if module is loaded before binding\n\n usertools/dpdk-devbind.py | 81 ++++++++++++++++++++++++++-------------\n 1 file changed, 55 insertions(+), 26 deletions(-)"
}