List comments

GET /api/covers/44047/comments/
Content-Type: application/json
Vary: Accept

        "id": 85152,
        "web_url": "",
        "msgid": "<>",
        "date": "2018-08-31T11:33:26",
        "subject": "Re: [dpdk-dev] [PATH 0/5] use IOVAs check based on DMA mask",
        "submitter": {
            "id": 270,
            "url": "",
            "name": "Alejandro Lucero",
            "email": ""
        "content": "There is a problem with the patch due to a last-hour change regarding\nMAX_DMA_MASK_BITS. It turns out initial X86_VA_WIDTH definition was to 47\nbits, but it is not enough in some systems leading to IOVA VA not\navailable. Because MAX_DMA_MASK_BITS was just used for a sanity check about\nthe mask length, it is harmless to increment the value to 63 for 64-bits\nsystems, but I was really clumsy doing the change and it does not compile\nnow.\n\nI've already set the patches as not applicable at patchwork and I will send\nanother version fixing that issue.\n\n\n\nOn Thu, Aug 30, 2018 at 5:21 PM, Alejandro Lucero <\> wrote:\n\n> I sent a patchset about this to be applied on 17.11 stable. The memory\n> code has had main changes since that version, so here it is the patchset\n> adjusted to current master repo.\n>\n> This patchset adds, mainly, a check for ensuring IOVAs are within a\n> restricted range due to addressing limitations with some devices. There\n> are two known cases: NFP and IOMMU VT-d emulation.\n>\n> With this check IOVAs out of range are detected and PMDs can abort\n> initialization. For the VT-d case, IOVA VA mode is allowed as long as\n> IOVAs are within the supported range, avoiding to forbid IOVA VA by\n> default.\n>\n> For the addressing limitations known cases, there are just 40(NFP) or\n> 39(VT-d) bits for handling IOVAs. When using IOVA PA, those limitations\n> imply 1TB(NFP) or 512M(VT-d) as upper limits, which is likely enough for\n> most systems. With machines using more memory, the added check will\n> ensure IOVAs within the range.\n>\n> With IOVA VA, and because the way the Linux kernel serves mmap calls\n> in 64 bits systems, 39 or 40 bits are not enough. It is possible to\n> give an address hint with a lower starting address than the default one\n> used by the kernel, and then ensuring the mmap uses that hint or hint plus\n> some offset. With 64 bits systems, the process virtual address space is\n> large enoguh for doing the hugepages mmaping within the supported range\n> when those addressing limitations exist. This patchset also adds a change\n> for using such a hint making the use of IOVA VA a more than likely\n> possibility when there are those addressing limitations.\n>\n> The check is not done by default but just when it is required. This\n> patchset adds the check for NFP initialization and for setting the IOVA\n> mode is an emulated VT-d is detected. Also, because the recent patchset\n> adding dynamic memory allocation, the check is also invoked for ensuring\n> the new memsegs are within the required range.\n>\n> This patchset could be applied to stable 18.05.\n>\n>",
        "headers": {
            "Return-Path": "<>",
            "MIME-Version": "1.0",
            "X-Mailman-Version": "2.1.15",
            "From": "Alejandro Lucero <>",
            "List-Post": "<>",
            "X-BeenThere": "",
            "Content-Type": "text/plain; charset=\"UTF-8\"",
            "References": "<>",
            "X-Original-To": "",
            "X-Google-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n\; s=20161025;\n\th=x-gm-message-state:mime-version:in-reply-to:references:from:date\n\t:message-id:subject:to:cc;\n\tbh=pALKn4tT+DTWS3FguUopB+6BOrxKrJxplNq6kbuWl4Q=;\n\tb=euAV3Afr5Xg2Z7boa/R6b/zzgqUvdeg2hHEBfBMq+9Aa5yOUR7CaFa3BWP2qkUInAC\n\tvIqCrf4k197NhOWqfIfW0EBKwFn1L4YS+jERjl8p0/n3hQ2t9vE8s02WLLnb+WlcLiMg\n\tsm2sNI1iSsx9iLvZYaOogGRYRI0OwYF2Xn/1QtT/wKrSACZh+kfyvteUdy2hN4seZ3eS\n\tFZrKQBKO4EGPRm1rv8gC1fQ7LeymdFFjW4jk/hVDIzIPZRoManBhSpPs0jHskRL3vBPf\n\tnDTUNC7i0zYTZxLzRvFZmdGIszRlELT8rjiyhLgMwSdD/26uNNWpBsfZwf5c8ZV96kT9\n\tb1dw==",
            "Received": [
                "from [] (localhost [])\n\tby (Postfix) with ESMTP id 1749B4F91;\n\tFri, 31 Aug 2018 13:33:28 +0200 (CEST)",
                "from (\n\t[]) by (Postfix) with ESMTP id A25134D27\n\tfor <>; Fri, 31 Aug 2018 13:33:27 +0200 (CEST)",
                "by with SMTP id y20-v6so8813791edq.2\n\tfor <>; Fri, 31 Aug 2018 04:33:27 -0700 (PDT)",
                "by 2002:aa7:c64e:0:0:0:0:0 with HTTP; Fri, 31 Aug 2018 04:33:26\n\t-0700 (PDT)"
            "Subject": "Re: [dpdk-dev] [PATH 0/5] use IOVAs check based on DMA mask",
            "X-Content-Filtered-By": "Mailman/MimeDel 2.1.15",
            "X-Received": "by 2002:a50:8e09:: with SMTP id\n\t9-v6mr17028741edw.101.1535715207194; \n\tFri, 31 Aug 2018 04:33:27 -0700 (PDT)",
            "List-Help": "<>",
            "Message-ID": "<>",
            "Precedence": "list",
            "X-Gm-Message-State": "APzg51C+CXIXvsrGzHG8Pk9hM1DJdcZAZf+hYigcM8hx9uhD+1oQBPwG\n\tXK4moWN8KKI0zjwmBrrfZL9H11xUVcBYYE0EXjLbgHISXRI=",
            "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n\; s=20150623;\n\th=mime-version:in-reply-to:references:from:date:message-id:subject:to\n\t:cc; bh=pALKn4tT+DTWS3FguUopB+6BOrxKrJxplNq6kbuWl4Q=;\n\tb=n5IXeL60GzdjIiAj7/IldObJ6uCieGhecO4m8mf8DzPJDPxMDcWWsf/dfGcwFqNLSi\n\tKxriJFPsLfilUwq1pT/6OZD8Tb15uVpjgfYPHCUSHi25adMN014MOgC7fku2X2QY2ZyK\n\tsb4HlgMZ3IRD0LHc1zZAjA06CWzVzFVAVmyHNU3JkWzMMRJ1v+ReSt+bmQ6Ix9St576G\n\t1jWRHseVNVsW+YZf01VNZZxh8DC9xgVqpm8qYtIcEMjS0gspZyzC6OnefCOKpqChmHYv\n\tXSZeMhH+MpEo5rHIIOohFUdEBlqBVD3hPNqXFe3iLtb+4kxLSvJa7R6xHmXDrq1qFrZP\n\tjBiw==",
            "List-Archive": "<>",
            "Date": "Fri, 31 Aug 2018 13:33:26 +0200",
            "Sender": "\"dev\" <>",
            "Errors-To": "",
            "List-Subscribe": "<>,\n\t<>",
            "X-Google-Smtp-Source": "ANB0VdbzPBmfR4Pqh+i+e4Uf0+8WN6ZgjWJg98WvxeuZ4YGuGvwixOJhseFDdyS0zED86gRRNTOQ0r4GP0DKauwauYQ=",
            "Cc": "dpdk stable <>",
            "List-Id": "DPDK patches and discussions <>",
            "Delivered-To": "",
            "In-Reply-To": "<>",
            "List-Unsubscribe": "<>,\n\t<>",
            "To": "dev <>"