get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

GET /api/patches/41353/?format=api
HTTP 200 OK
Allow: GET, PUT, PATCH, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

{
    "id": 41353,
    "url": "http://patches.dpdk.org/api/patches/41353/?format=api",
    "web_url": "http://patches.dpdk.org/project/dpdk/patch/1529574244-18997-5-git-send-email-hemant.agrawal@nxp.com/",
    "project": {
        "id": 1,
        "url": "http://patches.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": "<1529574244-18997-5-git-send-email-hemant.agrawal@nxp.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/1529574244-18997-5-git-send-email-hemant.agrawal@nxp.com",
    "date": "2018-06-21T09:43:59",
    "name": "[05/10] bus/dpaa: make vdqcr configurable",
    "commit_ref": null,
    "pull_url": null,
    "state": "superseded",
    "archived": true,
    "hash": "cc56c8d7593016c70454dc451ecbd218edd5ff1d",
    "submitter": {
        "id": 477,
        "url": "http://patches.dpdk.org/api/people/477/?format=api",
        "name": "Hemant Agrawal",
        "email": "hemant.agrawal@nxp.com"
    },
    "delegate": {
        "id": 1,
        "url": "http://patches.dpdk.org/api/users/1/?format=api",
        "username": "tmonjalo",
        "first_name": "Thomas",
        "last_name": "Monjalon",
        "email": "thomas@monjalon.net"
    },
    "mbox": "http://patches.dpdk.org/project/dpdk/patch/1529574244-18997-5-git-send-email-hemant.agrawal@nxp.com/mbox/",
    "series": [
        {
            "id": 191,
            "url": "http://patches.dpdk.org/api/series/191/?format=api",
            "web_url": "http://patches.dpdk.org/project/dpdk/list/?series=191",
            "date": "2018-06-21T09:43:55",
            "name": "[01/10] bus/dpaa: fix phandle support for kernel 4.16",
            "version": 1,
            "mbox": "http://patches.dpdk.org/series/191/mbox/"
        }
    ],
    "comments": "http://patches.dpdk.org/api/patches/41353/comments/",
    "check": "success",
    "checks": "http://patches.dpdk.org/api/patches/41353/checks/",
    "tags": {},
    "related": [],
    "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 7BD0C1BDE5;\n\tThu, 21 Jun 2018 11:45:53 +0200 (CEST)",
            "from EUR02-VE1-obe.outbound.protection.outlook.com\n\t(mail-eopbgr20077.outbound.protection.outlook.com [40.107.2.77])\n\tby dpdk.org (Postfix) with ESMTP id E43361BDD7\n\tfor <dev@dpdk.org>; Thu, 21 Jun 2018 11:45:48 +0200 (CEST)",
            "from bf-netperf1.ap.freescale.net (14.142.187.166) by\n\tAM2PR04MB0755.eurprd04.prod.outlook.com (2a01:111:e400:8411::15) with\n\tMicrosoft SMTP Server (version=TLS1_2,\n\tcipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.863.16;\n\tThu, 21 Jun 2018 09:45:45 +0000"
        ],
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1;\n\th=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;\n\tbh=osO80at3KwZiplIAhS0bQYzWNJz+a0hkztBldgU2HIY=;\n\tb=tyD0A4ZwdcZvOkvT1W1xHZ+rC0IAfjlcevmsyJTNigvYJaHxIMwbZREMThDGdRTGLcForKtrSeMC1xWflNV9hu7jwWb8Z0e3RNRceif58dHkrODThEDy2cW3sw19YyYLSZSewdwZrLlbws02WfPf50/OtggQQOVunPtNTvyQjzM=",
        "Authentication-Results": "spf=none (sender IP is )\n\tsmtp.mailfrom=hemant.agrawal@nxp.com; ",
        "From": "Hemant Agrawal <hemant.agrawal@nxp.com>",
        "To": "dev@dpdk.org",
        "Cc": "ferruh.yigit@intel.com,\n\tNipun Gupta <nipun.gupta@nxp.com>",
        "Date": "Thu, 21 Jun 2018 15:13:59 +0530",
        "Message-Id": "<1529574244-18997-5-git-send-email-hemant.agrawal@nxp.com>",
        "X-Mailer": "git-send-email 2.7.4",
        "In-Reply-To": "<1529574244-18997-1-git-send-email-hemant.agrawal@nxp.com>",
        "References": "<1529574244-18997-1-git-send-email-hemant.agrawal@nxp.com>",
        "MIME-Version": "1.0",
        "Content-Type": "text/plain",
        "X-Originating-IP": "[14.142.187.166]",
        "X-ClientProxiedBy": "BM1PR0101CA0035.INDPRD01.PROD.OUTLOOK.COM\n\t(2603:1096:b00:1a::21) To AM2PR04MB0755.eurprd04.prod.outlook.com\n\t(2a01:111:e400:8411::15)",
        "X-MS-PublicTrafficType": "Email",
        "X-MS-Office365-Filtering-Correlation-Id": "ed949c94-641e-4098-c41e-08d5d75bc398",
        "X-MS-Office365-Filtering-HT": "Tenant",
        "X-Microsoft-Antispam": "UriScan:; BCL:0; PCL:0;\n\tRULEID:(7020095)(4652020)(4534165)(7168020)(4627221)(201703031133081)(201702281549075)(5600026)(711020)(48565401081)(2017052603328)(7153060)(7193020);\n\tSRVR:AM2PR04MB0755; ",
        "X-Microsoft-Exchange-Diagnostics": [
            "1; AM2PR04MB0755;\n\t3:vb/h0vIKxpC6a0D8zUiTddtU5XLzqjLRwefXy8TiUkmxw6VWhRxZe9tJhbYxWYnp/TB99yFQqD1yyeDOMdDC51U3RV7cu8oUn5qcuAvcViNHQja59km7PctbS6wzEIjol45jNIq9lHWz6FXcrE/ciJBj3tFgDv37beXlKcWMA3uSDdxZOoqTrxyiWrRS8PXaoe5xBK4u+qqaUiBvFd9Y/e3WiYtnglO2d70Gk9tQmRBALwMJ7AvRDTdrFq1TSl6E;\n\t25:4FaErcAcMKt3XKMPfbco8e4fYwn6pGy/UAZyssprdwD6iHXjmjAwlE+xK/c8v5SGv+daCYAAcCCvH9OrFdo1uoqjgUKd2tRXHS3dldxyQkUg17H4Ahd+stBrbmi7ZTZFW2aWeBoLROnmVTGYWx9YQ+crEWt3/clNvYEbaxwGQ7F6JUnuRBiJEfx9xies8JgYXlNRqzkGc+6V1lPSnjMpCraGaHoiqTTEzyZFS+4Z+IGWLxe+rbN04cBLbtqcRo+pmzCexpHKg9VeUuGxT8H4eResNHJiF7+lYymUcdRsjVIuIknD/dVXdKAvody63YEth+gkBu6i2JXtpu5Wk2iFXQ==;\n\t31:U7NUP99HgqqntSGKqBiEUvq51QqVIo9t0efHM4pW1ONPZM4Z8Ib3po1JgkyJlZ980t50iZf10Zo5f1BLXxvMs8FONNOO876yjrXaVgB48MGTvH8b4cUw75yp+Dizdq7M8eJA4s8pt6/n3xGlm6ToI9LP1eiZUy33mY/fLercauZpNgt2lNWrlK8vFLAnShuAN1dAmFlvQ05LNjLd42tqghDDGO2CQLOgtZ9mJ/t8XJs=",
            "1; AM2PR04MB0755;\n\t20:NY3oachd9cYvg26iWjhR8nUKCJ2AL9wIsaDHj69k+JUb5gOEI8iCvHwm76KocYmCxpuzBlhyq0yWRd+hkWaIwW97ztK7MmfMJNZNg8doVGg2rRnKD2kLpf44EdMZCs0wetFjhlAq8SNAr5XX+VdSMMgmGdWYqCg0w8EMVhUnStzurCU+IyEr2LevELkzT2rhfMdEr5KkRBYORaYmoOHC1Ta5hs30VXruI1o9JOWziTxC7xITfL7yHv5EHsyemWErLcC7GFtTUfJ2qaJM7+pNNXHpZz19N5vl5zqH9Bq0RDBm0NaOLSZctZIFZEEXV9/7bwNa9hnwF9CUPlkclAWJH5nFa57QkCdDCQT/x0wnNu1k1HpiAK5yh1m8h1O7qSygGN23r6zs4pcvTiws2n7sGcnRKInCW2uiKwRfv24/mOwCwviCVVYiS+u6Jf3+UyuBYwHKFS6cEN0Aiy7wcyhTX7qgdOuozYL3JSrv9ltQIQvJ5Yh+0mdfKf3oSg1A6oOV;\n\t4:lXuxOraKFr/9xnGXjZO6yeRRxVYU3JqqF+KxpyLbT+bNfJ657akaIiE/9absBL9rJE/bGVocXUWI/yH9/skeHWO1wMGY2y6b6Ssqc7tCske1h6xDIZ+A+xjpecUb35+DoyVHEcNN2QrDMn8Jr4uR0uZ1tnsj/5moJ2JIquXPfAMKN6+QP3RnF8ZKP0TZvMP/75GQxqZRnUGnvtQOk4fxTfqgRr1u8kuUHEJT6MOTIgYW21Gxspqg3uDCIuzeDJ+QVaVsa9IrDAmzRQi6m1X2nkmU3G0ZJ/jZsBFR0RVRVSqzVLx4HERVKwwXsLZHPEtG",
            "=?us-ascii?Q?1; AM2PR04MB0755;\n\t23:lbOHOBS2oiLlNowlb/Bt12YZaNJURpgIIxVeyuarC?=\n\t/hvj2qcsRuOANHmXuHExHhkTPeEy9EbccT0Qqlg1NWiFqBVKkJcG1r0AA/sHKlwYOAdDrdKGFckr2IqoDr6DODSjfxZCTeT1YAd2BqrZ2fcybCBmY72xEcwmcKvQdLIhr9P8z3utlMAyFR2jfyogL52N2NFVjF/kknYS0IiuSzTAc/Hgtun2ycGbDxiiS1gnh891efFiIOk51lwvAQJXKUlfdL4q6PTlhKhOdcuoQKYO8OikkwkfhEqOfztj8Jco+8AXV4LSzFY/qcKA1zc+VWfltHlbm1AuDRMfNOWPwFdFwbrepPuverAVn96b6uGKKJ+ITQN6/GaN5hU6Ogtve9iJbt97tQCXz5zMcKu1iGuREvvI1rJJNh1oKHK6AGudHKQ7vO8rDce9cifzF0Tp5/fJ8eic/AJOjOq+ngn0SV2xUp25dPM57t2l8MpPm0AHG4iqJqy8Q6ifw5mL+UA6QCFMZJlKvLh8wRA7+WmqYj/Aw0FRRnqmhaNhthLr+5aoC7ve6JoTXoODRqfKmMWQHuCZUC7sl+CpXUFoc9/iyrZt2R9gFoOQqVM6xW3xKZ61JAl1N4VxOyxEwguihy5fITeu/TSiGdP6UYWgnYzBqthe4ZwBtN4NeZ+7OTA5iM+Gl1mDl+qVCEhsw+opMaTUxl3Va0JObe0VE2+I3PEy2YE/XD57dIS2sAR6NdBUNXUSwkEkm0cyyTt2gRA+2KyQT1/4HnJYWo6FAUZnvJihmRB/RWkFBPWyjI9Q+6O8o6jzh7kP1hEaWyEiZTwTKNmghb2s03VIPaWLpOjSgnEO6nSNW14/IC54yzM5FxRjH2p8TwIgR9d8ki4U7Ud40vGxLGHFOuRQxJGnnlM3YQEu+Xv44X8i4NSxhZHwkPcAqYka30l+D6eCPLQLoM8iq9M9AAwH3naruButPK4AU1TTSb9WC8+MpCmc2C8epyi9ozISBksF7d0dVfwimGj1OpUeqWCYs2Tk7PyqlEfZA7WmZa+JyTdQel7M0vsU7JiEJZeqETb3B5PbOVTqj8l52ekIn6Q+AmNRi356LJ2B2BSUC2Trfzk6n4h1LvzN9q7ztDU4UlI6ZhXfinJc4977RCMtIOYYOAdY2wpH+lbDV3f5JUmOSgyqBISqRVW+OVzvOj+gx37bv0iQ48tUIeON232N74yXKYGUl+LVNAeGtpX81IqUX3TrCCHePJpuQwgCeuaRLsp5E6SDc/aaTPWysYS9+WgxGKoVXQTpXZ2H9kpYeSmRs3pOVLTBCaQAYkQ44KK2OkZjnbI2A4AurXqO4iujtQ2",
            "1; AM2PR04MB0755;\n\t6:RA8kyu/toPVztVYxLjwhLFVOPPROwCXrTgWDpHs5QqpyXGhRnOjh+wN5OAS4acIUILtwXY55l5pUZjKb7dkteE9k66C5kh5To2HP0Lbq07sCpIzRFxEEahy1cKgqq8Gh7/AR7p21JRhatS+1103gIjrsvYHe/eCK00fCxFy2jnAOPrYsK4eFdY+yAIv6AzXivM43DtU7KVDi8NuQsVfM0kzzVTydpXOLyEniYwpXaJMT2bfwslhDvGQRRWwmdfTbiYbTLEAkU+wk7/eWorVDSfeqN8t77VQISPZnoyDH0EK4SlhpHbQ154Az/p+wYXV7rXLRGiBDvofPILAnznRdLLHFENpt2KfP0TXCgCGbTXI1e474ClT34QYLdWDH5XsJzZnWFNT3kb6BzlDch7seflyFytAz0kP89U9J0kmmlMqbOpKJdvhEa5G/E+AKC2FJwsSWHbiZQ6064V9AfRfmfQ==;\n\t5:WSXBQ8UFuaoIJK8zQz3uaHm/kSGIwA3BKpeCqV4vVZnJAGvVyrfYeAQC/Iq23bJwcYSYSqRv0rSLEzsoMS8F/wlhao+gcCiVbLaGsroyVylptCsIjC5TzXMCM2LEy0G62EWMcujpVqXzvnP6il8Mel401hetZkGRT3agJcMXByk=;\n\t24:mqmZXm8hcbKny+/uHoleK49CytDiBiNSXOIMNB8bTfJ8YAgG4u0tuTSx1lay12Sel0ssyXjxZzbuyB/a5LmAdQrUb5Dkq7CSJnX0uRif0bw=",
            "1; AM2PR04MB0755;\n\t7:vRR9gUngEoR2tsTpqQPqzjSeayzFaaJsHOagDvk1RRQKchUTXhb5wU+b8eTWn9RCgJ/+CqDpIg0V/4t/0+R82GW9iHPLASoJxVY/wfEQWNI04yAxdMC4ghc1SGcLXCxi46W+kC0xIXVJ2gS1B9/OkynSrhiVuJvesU6NZsdLgNLStt+4R7X2I0pFnNUYT0VJdh6/WGzk3q1rgQAQddRzEPYO8U+HfOk/hl8Qb1oOx2jQIYuURc1rIUIbzzI2uOfA"
        ],
        "X-MS-TrafficTypeDiagnostic": "AM2PR04MB0755:",
        "X-Microsoft-Antispam-PRVS": "<AM2PR04MB07555B154896CE0DB515735789760@AM2PR04MB0755.eurprd04.prod.outlook.com>",
        "X-Exchange-Antispam-Report-Test": "UriScan:(185117386973197);",
        "X-MS-Exchange-SenderADCheck": "1",
        "X-Exchange-Antispam-Report-CFA-Test": "BCL:0; PCL:0;\n\tRULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(3231254)(944501410)(52105095)(10201501046)(93006095)(93001095)(3002001)(6055026)(149027)(150027)(6041310)(20161123564045)(20161123558120)(20161123562045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(6072148)(201708071742011)(7699016);\n\tSRVR:AM2PR04MB0755; BCL:0; PCL:0; RULEID:; SRVR:AM2PR04MB0755; ",
        "X-Forefront-PRVS": "07106EF9B9",
        "X-Forefront-Antispam-Report": "SFV:NSPM;\n\tSFS:(10009020)(396003)(376002)(366004)(39860400002)(346002)(39380400002)(199004)(189003)(50466002)(6116002)(6506007)(55236004)(76176011)(59450400001)(2906002)(6512007)(478600001)(51416003)(48376002)(52116002)(3846002)(2361001)(186003)(26005)(16526019)(956004)(11346002)(97736004)(2351001)(5009440100003)(386003)(446003)(4326008)(8936002)(8676002)(476003)(486006)(7736002)(81156014)(81166006)(305945005)(16586007)(6916009)(6486002)(105586002)(106356001)(2616005)(47776003)(53936002)(36756003)(50226002)(44832011)(86362001)(68736007)(25786009)(5660300001)(316002)(6666003)(66066001)(110426005);\n\tDIR:OUT; SFP:1101; SCL:1; SRVR:AM2PR04MB0755;\n\tH:bf-netperf1.ap.freescale.net; \n\tFPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; MX:1; ",
        "Received-SPF": "None (protection.outlook.com: nxp.com does not designate\n\tpermitted sender hosts)",
        "X-Microsoft-Antispam-Message-Info": "nKmGeSkC74OhJmJBCzCcyR1eq4MehKsRbzEiVrNpUBS74UPpP5xCp1UA0PR3+atogOqmcbVeHM0mEgVVueyGcUWKvyL2LwMfkEBwNAYX7tw94aZhlymrWT/3tzxMUaUd14S8NtaPzSGEw0Jf4W+l/twTXiJNAMPWEvh1JAweoMIp/cP6ZCB2/A2EbyA8zCn/JrBUv9MGyuTdFF29ls0OSlqYXhW/oqDLtTviFF77LGf3uQpSs+pQH8dORbjFZF6FNHnz+Yf13mzrYuWy4w/AOO1Ab8YyWY8zQGM3oKYuX7YzRIpG1ci6FOwl0XCKwvUkdpPYwYZTNz5VSFRtOCag5A==",
        "SpamDiagnosticOutput": "1:99",
        "SpamDiagnosticMetadata": "NSPM",
        "X-OriginatorOrg": "nxp.com",
        "X-MS-Exchange-CrossTenant-OriginalArrivalTime": "21 Jun 2018 09:45:45.7590\n\t(UTC)",
        "X-MS-Exchange-CrossTenant-Network-Message-Id": "ed949c94-641e-4098-c41e-08d5d75bc398",
        "X-MS-Exchange-CrossTenant-FromEntityHeader": "Hosted",
        "X-MS-Exchange-CrossTenant-Id": "686ea1d3-bc2b-4c6f-a92c-d99c5c301635",
        "X-MS-Exchange-Transport-CrossTenantHeadersStamped": "AM2PR04MB0755",
        "Subject": "[dpdk-dev] [PATCH 05/10] bus/dpaa: make vdqcr configurable",
        "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": "From: Nipun Gupta <nipun.gupta@nxp.com>\n\nThis patch add support for configurable vdqcr exact flag.\nThis boost the performance, however this can give\nside effects for some extra packet fetch. Which has been\ntaken care in the patch as well.\n\nSigned-off-by: Nipun Gupta <nipun.gupta@nxp.com>\n---\n drivers/bus/dpaa/base/qbman/qman.c  |  4 ++--\n drivers/bus/dpaa/include/fsl_qman.h |  3 ++-\n drivers/crypto/dpaa_sec/dpaa_sec.c  | 19 ++++++++++++++++---\n drivers/net/dpaa/dpaa_rxtx.c        | 18 +++++++++++++++---\n 4 files changed, 35 insertions(+), 9 deletions(-)",
    "diff": "diff --git a/drivers/bus/dpaa/base/qbman/qman.c b/drivers/bus/dpaa/base/qbman/qman.c\nindex 13c4315..f5fe5ef 100644\n--- a/drivers/bus/dpaa/base/qbman/qman.c\n+++ b/drivers/bus/dpaa/base/qbman/qman.c\n@@ -2002,13 +2002,13 @@ int qman_query_congestion(struct qm_mcr_querycongestion *congestion)\n \treturn 0;\n }\n \n-int qman_set_vdq(struct qman_fq *fq, u16 num)\n+int qman_set_vdq(struct qman_fq *fq, u16 num, uint32_t vdqcr_flags)\n {\n \tstruct qman_portal *p = get_affine_portal();\n \tuint32_t vdqcr;\n \tint ret = -EBUSY;\n \n-\tvdqcr = QM_VDQCR_EXACT;\n+\tvdqcr = vdqcr_flags;\n \tvdqcr |= QM_VDQCR_NUMFRAMES_SET(num);\n \n \tif ((fq->state != qman_fq_state_parked) &&\ndiff --git a/drivers/bus/dpaa/include/fsl_qman.h b/drivers/bus/dpaa/include/fsl_qman.h\nindex e4ad7ae..b18cf03 100644\n--- a/drivers/bus/dpaa/include/fsl_qman.h\n+++ b/drivers/bus/dpaa/include/fsl_qman.h\n@@ -1332,10 +1332,11 @@ unsigned int qman_portal_poll_rx(unsigned int poll_limit,\n  * qman_set_vdq - Issue a volatile dequeue command\n  * @fq: Frame Queue on which the volatile dequeue command is issued\n  * @num: Number of Frames requested for volatile dequeue\n+ * @vdqcr_flags: QM_VDQCR_EXACT flag to for VDQCR command\n  *\n  * This function will issue a volatile dequeue command to the QMAN.\n  */\n-int qman_set_vdq(struct qman_fq *fq, u16 num);\n+int qman_set_vdq(struct qman_fq *fq, u16 num, uint32_t vdqcr_flags);\n \n /**\n  * qman_dequeue - Get the DQRR entry after volatile dequeue command\ndiff --git a/drivers/crypto/dpaa_sec/dpaa_sec.c b/drivers/crypto/dpaa_sec/dpaa_sec.c\nindex 06f7e43..a07869f 100644\n--- a/drivers/crypto/dpaa_sec/dpaa_sec.c\n+++ b/drivers/crypto/dpaa_sec/dpaa_sec.c\n@@ -526,12 +526,25 @@ dpaa_sec_deq(struct dpaa_sec_qp *qp, struct rte_crypto_op **ops, int nb_ops)\n {\n \tstruct qman_fq *fq;\n \tunsigned int pkts = 0;\n-\tint ret;\n+\tint num_rx_bufs, ret;\n \tstruct qm_dqrr_entry *dq;\n+\tuint32_t vdqcr_flags = 0;\n \n \tfq = &qp->outq;\n-\tret = qman_set_vdq(fq, (nb_ops > DPAA_MAX_DEQUEUE_NUM_FRAMES) ?\n-\t\t\t\tDPAA_MAX_DEQUEUE_NUM_FRAMES : nb_ops);\n+\t/*\n+\t * Until request for four buffers, we provide exact number of buffers.\n+\t * Otherwise we do not set the QM_VDQCR_EXACT flag.\n+\t * Not setting QM_VDQCR_EXACT flag can provide two more buffers than\n+\t * requested, so we request two less in this case.\n+\t */\n+\tif (nb_ops < 4) {\n+\t\tvdqcr_flags = QM_VDQCR_EXACT;\n+\t\tnum_rx_bufs = nb_ops;\n+\t} else {\n+\t\tnum_rx_bufs = nb_ops > DPAA_MAX_DEQUEUE_NUM_FRAMES ?\n+\t\t\t(DPAA_MAX_DEQUEUE_NUM_FRAMES - 2) : (nb_ops - 2);\n+\t}\n+\tret = qman_set_vdq(fq, num_rx_bufs, vdqcr_flags);\n \tif (ret)\n \t\treturn 0;\n \ndiff --git a/drivers/net/dpaa/dpaa_rxtx.c b/drivers/net/dpaa/dpaa_rxtx.c\nindex 805bc30..168b77e 100644\n--- a/drivers/net/dpaa/dpaa_rxtx.c\n+++ b/drivers/net/dpaa/dpaa_rxtx.c\n@@ -560,7 +560,8 @@ uint16_t dpaa_eth_queue_rx(void *q,\n \tstruct qman_fq *fq = q;\n \tstruct qm_dqrr_entry *dq;\n \tuint32_t num_rx = 0, ifid = ((struct dpaa_if *)fq->dpaa_intf)->ifid;\n-\tint ret;\n+\tint num_rx_bufs, ret;\n+\tuint32_t vdqcr_flags = 0;\n \n \tif (likely(fq->is_static))\n \t\treturn dpaa_eth_queue_portal_rx(fq, bufs, nb_bufs);\n@@ -573,8 +574,19 @@ uint16_t dpaa_eth_queue_rx(void *q,\n \t\t}\n \t}\n \n-\tret = qman_set_vdq(fq, (nb_bufs > DPAA_MAX_DEQUEUE_NUM_FRAMES) ?\n-\t\t\t\tDPAA_MAX_DEQUEUE_NUM_FRAMES : nb_bufs);\n+\t/* Until request for four buffers, we provide exact number of buffers.\n+\t * Otherwise we do not set the QM_VDQCR_EXACT flag.\n+\t * Not setting QM_VDQCR_EXACT flag can provide two more buffers than\n+\t * requested, so we request two less in this case.\n+\t */\n+\tif (nb_bufs < 4) {\n+\t\tvdqcr_flags = QM_VDQCR_EXACT;\n+\t\tnum_rx_bufs = nb_bufs;\n+\t} else {\n+\t\tnum_rx_bufs = nb_bufs > DPAA_MAX_DEQUEUE_NUM_FRAMES ?\n+\t\t\t(DPAA_MAX_DEQUEUE_NUM_FRAMES - 2) : (nb_bufs - 2);\n+\t}\n+\tret = qman_set_vdq(fq, num_rx_bufs, vdqcr_flags);\n \tif (ret)\n \t\treturn 0;\n \n",
    "prefixes": [
        "05/10"
    ]
}