get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 814499,
    "url": "http://patchwork.ozlabs.org/api/patches/814499/?format=api",
    "web_url": "http://patchwork.ozlabs.org/project/linuxppc-dev/patch/20170916123418.37807-10-brijesh.singh@amd.com/",
    "project": {
        "id": 2,
        "url": "http://patchwork.ozlabs.org/api/projects/2/?format=api",
        "name": "Linux PPC development",
        "link_name": "linuxppc-dev",
        "list_id": "linuxppc-dev.lists.ozlabs.org",
        "list_email": "linuxppc-dev@lists.ozlabs.org",
        "web_url": "https://github.com/linuxppc/wiki/wiki",
        "scm_url": "https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git",
        "webscm_url": "https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git/",
        "list_archive_url": "https://lore.kernel.org/linuxppc-dev/",
        "list_archive_url_format": "https://lore.kernel.org/linuxppc-dev/{}/",
        "commit_url_format": "https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git/commit/?id={}"
    },
    "msgid": "<20170916123418.37807-10-brijesh.singh@amd.com>",
    "list_archive_url": "https://lore.kernel.org/linuxppc-dev/20170916123418.37807-10-brijesh.singh@amd.com/",
    "date": "2017-09-16T12:34:10",
    "name": "[Part1,v4,09/17] resource: Provide resource struct in resource walk callback",
    "commit_ref": null,
    "pull_url": null,
    "state": "handled-elsewhere",
    "archived": true,
    "hash": "1f56e2d4a0b5f2f140f3bb278030c55bfcdceb98",
    "submitter": {
        "id": 68031,
        "url": "http://patchwork.ozlabs.org/api/people/68031/?format=api",
        "name": "Brijesh Singh",
        "email": "brijesh.singh@amd.com"
    },
    "delegate": null,
    "mbox": "http://patchwork.ozlabs.org/project/linuxppc-dev/patch/20170916123418.37807-10-brijesh.singh@amd.com/mbox/",
    "series": [
        {
            "id": 3436,
            "url": "http://patchwork.ozlabs.org/api/series/3436/?format=api",
            "web_url": "http://patchwork.ozlabs.org/project/linuxppc-dev/list/?series=3436",
            "date": "2017-09-16T12:34:10",
            "name": null,
            "version": 4,
            "mbox": "http://patchwork.ozlabs.org/series/3436/mbox/"
        }
    ],
    "comments": "http://patchwork.ozlabs.org/api/patches/814499/comments/",
    "check": "pending",
    "checks": "http://patchwork.ozlabs.org/api/patches/814499/checks/",
    "tags": {},
    "related": [],
    "headers": {
        "Return-Path": "<linuxppc-dev-bounces+patchwork-incoming=ozlabs.org@lists.ozlabs.org>",
        "X-Original-To": [
            "patchwork-incoming@ozlabs.org",
            "linuxppc-dev@lists.ozlabs.org"
        ],
        "Delivered-To": [
            "patchwork-incoming@ozlabs.org",
            "linuxppc-dev@lists.ozlabs.org"
        ],
        "Received": [
            "from lists.ozlabs.org (lists.ozlabs.org [IPv6:2401:3900:2:1::3])\n\t(using TLSv1.2 with cipher ADH-AES256-GCM-SHA384 (256/256 bits))\n\t(No client certificate requested)\n\tby ozlabs.org (Postfix) with ESMTPS id 3xvWxf0nXsz9sP1\n\tfor <patchwork-incoming@ozlabs.org>;\n\tSat, 16 Sep 2017 22:37:26 +1000 (AEST)",
            "from lists.ozlabs.org (lists.ozlabs.org [IPv6:2401:3900:2:1::3])\n\tby lists.ozlabs.org (Postfix) with ESMTP id 3xvWxd6WcrzDrby\n\tfor <patchwork-incoming@ozlabs.org>;\n\tSat, 16 Sep 2017 22:37:25 +1000 (AEST)",
            "from NAM03-DM3-obe.outbound.protection.outlook.com\n\t(mail-dm3nam03on0060.outbound.protection.outlook.com [104.47.41.60])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits))\n\t(No client certificate requested)\n\tby lists.ozlabs.org (Postfix) with ESMTPS id 3xvWtm1Ns6zDrFp\n\tfor <linuxppc-dev@lists.ozlabs.org>;\n\tSat, 16 Sep 2017 22:34:54 +1000 (AEST)",
            "from ubuntu-010236106000.amd.com (165.204.78.1) by\n\tCY1PR12MB0152.namprd12.prod.outlook.com (10.161.173.22) with\n\tMicrosoft SMTP Server (version=TLS1_2,\n\tcipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id\n\t15.20.56.11; Sat, 16 Sep 2017 12:34:48 +0000"
        ],
        "Authentication-Results": [
            "ozlabs.org; dkim=pass (1024-bit key;\n\tunprotected) header.d=amdcloud.onmicrosoft.com\n\theader.i=@amdcloud.onmicrosoft.com header.b=\"F+0eMcXi\"; \n\tdkim-atps=neutral",
            "lists.ozlabs.org; dkim=pass (1024-bit key;\n\tunprotected) header.d=amdcloud.onmicrosoft.com\n\theader.i=@amdcloud.onmicrosoft.com header.b=\"F+0eMcXi\"; \n\tdkim-atps=neutral",
            "ozlabs.org; spf=pass (helo)\n\tsmtp.helo=nam03-dm3-obe.outbound.protection.outlook.com\n\t(client-ip=104.47.41.60;\n\thelo=nam03-dm3-obe.outbound.protection.outlook.com; \n\tenvelope-from=brijesh.singh@amd.com; receiver=<UNKNOWN>)",
            "lists.ozlabs.org; dkim=pass (1024-bit key;\n\tunprotected) header.d=amdcloud.onmicrosoft.com\n\theader.i=@amdcloud.onmicrosoft.com header.b=\"F+0eMcXi\"; \n\tdkim-atps=neutral",
            "spf=none (sender IP is )\n\tsmtp.mailfrom=brijesh.singh@amd.com; "
        ],
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=amdcloud.onmicrosoft.com; s=selector1-amd-com;\n\th=From:Date:Subject:Message-ID:Content-Type:MIME-Version;\n\tbh=GkZ4ySa+cxFWnEPTvRMrn5eS8b7qiUa85/PBXxV5SJk=;\n\tb=F+0eMcXi65HzcSaU/ohN4dP+xPgMT24OWtGtDrAQSxpbyqCmd/aU0yjptmjS2k8Wkj3islfauK1fxUBQR+IfGlgAmmoqAtQn2Ufy2NQL8GPcEY/YVUP/kE6cCn1Oynb//Pl/P8Eq5njp7wYgNeeYLVk48PmQAlBUrRM0MqBbiEs=",
        "From": "Brijesh Singh <brijesh.singh@amd.com>",
        "To": "linux-kernel@vger.kernel.org,\n\tx86@kernel.org,\n\tkvm@vger.kernel.org",
        "Subject": "[Part1 PATCH v4 09/17] resource: Provide resource struct in resource\n\twalk callback",
        "Date": "Sat, 16 Sep 2017 07:34:10 -0500",
        "Message-Id": "<20170916123418.37807-10-brijesh.singh@amd.com>",
        "X-Mailer": "git-send-email 2.9.5",
        "In-Reply-To": "<20170916123418.37807-1-brijesh.singh@amd.com>",
        "References": "<20170916123418.37807-1-brijesh.singh@amd.com>",
        "MIME-Version": "1.0",
        "Content-Type": "text/plain",
        "X-Originating-IP": "[165.204.78.1]",
        "X-ClientProxiedBy": "DM3PR12CA0051.namprd12.prod.outlook.com (10.161.151.19) To\n\tCY1PR12MB0152.namprd12.prod.outlook.com (10.161.173.22)",
        "X-MS-PublicTrafficType": "Email",
        "X-MS-Office365-Filtering-Correlation-Id": "c5958f6f-be7b-40cd-b8ac-08d4fcff5212",
        "X-MS-Office365-Filtering-HT": "Tenant",
        "X-Microsoft-Antispam": "UriScan:; BCL:0; PCL:0;\n\tRULEID:(300000500095)(300135000095)(300000501095)(300135300095)(22001)(300000502095)(300135100095)(2017030254152)(48565401081)(300000503095)(300135400095)(2017052603199)(201703131423075)(201703031133081)(201702281549075)(300000504095)(300135200095)(300000505095)(300135600095)(300000506095)(300135500095);\n\tSRVR:CY1PR12MB0152; ",
        "X-Microsoft-Exchange-Diagnostics": [
            "1; CY1PR12MB0152;\n\t3:Bco/6OXerITlZ6EA+zKYiwBUHtuJnFBXB27HdOqfQ3e6y5/2LWC9gf7S5GVGbPhDo7dhnPVh8KXai3GRhsKaTnL+o4UUWakIo0Tvk8Vwochl/qL3XtzaCtVzI3O1xhQtUXJiLMawKIQu4a1evdR1hdaCLzw/pf1/GWjrpqjcJfqisiGm6NlZZmE7xTXs15oLTwWlPzBoCSb9BYZzD9lYmO21DvnOh56iLjsaHNpaft+AIBu4z4Q0NU91YWKm47rQ;\n\t25:Zadv7e3x4Ki8q64+CA6/7YxVbDokrx9z/CVPOnLu2wI3a3tI3A/ZAuL5q7hVEt/aYKz+bzjT5rxm0vioiCPDRQrnHOPMQmfkCCvXRrsBztFyTpBQQoR5841ujF4ZLqJLxx1tAjQS307Qs+RDDcVFnPA3lOiXppLnpnfrIMKyrFgsV/aWv5odaCLQy7GahU4pVazIfgocXJhI72UlTReBhbCCErb13qxPun/b/pE1oRmBiiIJk09B/l3d5Z/krSW/ZTDJUG5iPqfRm2qyP0XBhAttOU/FW7A6WKV2CUwrC4dGGozPbv6s48ZVfGYXcuk09HOCBUoVYancMP4J1bdDQQ==;\n\t31:SyJVXB79ysNqqEnxAzWjceRzNXkVN44c0til6PVoEpUpaBqlu5xf2Bf4lIsO2x3wy7/XDBGaWQrlUDeMu37aj9xkzB5rhgCt+h1QlX1JQglULbe9fBJCrhLKGLr8QzaOahceceqLJUUOyv+uWzP0EjwXVg3vBnk4sVvNumgQW7K6e1lF1SPijPHoyLvzQFboHn4qr2moRF9i6Ukxm8NGzZnhaXtOgjjT60siKR+y8A4=",
            "1; CY1PR12MB0152;\n\t20:Di/+JRxF7uVP/1KGOhfyeHvANbxkQBZBURtUK8UaoVNF40PkTbMYrez08Ln2CTRCL8ckmRge4/LgCFdO7OgW8TeRWcIeeiJ5KZlkgFyCpqJFikOIoH3pQ9pk9BNqeQ8EcC1mXtLpA81vPVH9YZyHrPbYA197aQYvJxUUmjZ9JJgbgoEGRQyktWvigTCNV0ZVhEHQ1ijBc6UJ4WVCrKdTbKx0sFGkd260uyMglrH/FJbqA8tXGI49SxMzfBvakNsiv/tqWPoxcrf4LCPDkexWpv1gPpBbb9EoRm1sC7IhqLPZVx5iRLE34sPohrxcphqeUpBRD6SxbFuv6iXTRdp9ZbYc5Y3ApENIvc2+YfWpCMgNSx0fL6VIYZRFKvclOHfB06HMJkNJXtJXIlPANYgkhsrCsWfre7Xmh3gRjSjMsPhPJczrtc8O/ydRWs89w0EbxonHmFpr8DpMFcDQA3A9uknLSItqPWOGW7pHmkyH+l9xMJRB+cRuaVQE5/yBj77A;\n\t4:baGvtk1C5xzMEbjzNd+w7S9TOsc/H4gVGPoHiDjdDG4/JJky6vjsJS70Pr/0DK32VjWFpvpGMarMvCIC3OY+dnhMkEl/nKkP+HJhjuvGOTzwEzMjJQF9bGZIRXNGW+UIkfgfPg35onRVtj3PxxWcwYp8/p6w/pn7mJH/INiQyZkO3PRyH+FIPOXrpvfUOaKeymhVJ6Uz8XV6jpzCYVVne47iTvya+XWRalqOYUVIAvigTYfgqN6h+LFm9CgM8MsHYcFaH6OQN9DLxUhr41WewVVQh4uLU596RSBbyRzKaHwMK4Mc88i6DclGiyclsbETJAjh7r9BAWlkdIHq4IjsKzci297O8pp63V5lv287eYM=",
            "=?us-ascii?Q?1; CY1PR12MB0152;\n\t23:TuQXIoD6Omv+Q8UX5PepGHYU2B3SCulXCgQL6rYWq?=\n\tXmH4I3uqjX4i66He5JoJ1WM6SzCVgBSGf7p1iUgAawrRbAY2FH6VCR77tHFVRmrUZhoeM4NcSGvJ5ugzVijaoFioVbI3WjB2LfsAZo2hGBhXQ4CE9l/Pw9dP3Adk+S0xnCKCGC7S5NABUbo+sHfYvGqJZIjSWpcQUGtcvZGozjFiCBDdyKMt1mSA/Ga6EZCacCRxg4AK1VKoLBG9Hvat5f//omqd2btvVkCM6Kvig9aLSbHVUtG6/zTkTF6jJdoGJ2P93vpiP043CB/RZQy3Tia4wyFU++tdKd4pXRdg6gijE1F6SrNSYRVv0Wv5ITsJeroi/Nkj2dDDDkeQXprYlkrL2P25aD81LfmDIdSiqMHP2soaem80FRq/RhJobgaffLdq4zaILuBCBIK+e/rcRaJM5ib0bDLqITIjzoOM6wU4w2s3Jdwys+gQQ7+8gcGMRURuILZCYZpugqVbSjntnwuQc7E/DmxdygBfCcpY5EdruYK7lBxeM6KBgR7Q4B7WrNdq7VjetG0KW7ZsY/Z5+OT2IrQp+aMWA2lGuVfg4oaYaDQFc2AD/stxTy7P0+SJqEpuyBA8hRkEy/hk4MWXhsuZdN+W7r6isc9dk1JXt8VIW2lVyHLQ0U07ZV8Dir6kDz55CTPygCeOGneNN0Kyj/mpf4W50VcacUTyLB33lj0EF50IBCbUktyq4FkN6qSrjqTgpQRwgy1cquprbDXpsxcdqt4ILLqBqxj6QZE7s/JpF7h8UlTs568z6fa2cxCZeaHLfaiJjJOeHI1f/8KvSpy0b31lMfaY1dh+IxS3p8i4AzIEdUAN44WOIEXjH0FCoBDVk9qYeIM3ar2RwwaAe2Buy6jJQpCvy784GzaZfnSjn2MVqQJbTgfEJ/sUsrrVkFqaFRZ56EBlP+EUcCKEMBk8gWfHI+xG++uWvLSvHIi3DJsrLnuCbashBqjNFmVwCqxQ5oxmhf3FoXZk8vzN8dLYjBH+tL2ktt8Gkr6kBhfRxobl4jGpBMz7fAGDVmZPu5JAnmggTBK92us1GmpHN0ZlJp5WsbM9h4zqRAZlqjZGDe4vgz6MbWKfg9AMa/Z+l6hSmyVGxenVB7yuO7WwuJl",
            "1; CY1PR12MB0152;\n\t6:D3TZy4YswXj++GIpPVHWYhpyAHh3UrUnkJS7fn1JgBGfbVIIznulhIASnLa65tsOBKZaLS50ArmG9ts47COT/SSzu5iACbcHoGVVrYZolXi77upuX/LzV2nH1C2vjLqfDIzm52rdRiq+8pNth4/gUnLPZXVdhHSZk+NYvDkJKye2Mwkt7mSDUymIUfPJNYF4HLtC97W+fLMgJWKeuMpeM/Y8urced6oEjRb7s1polDdN3xBV3GeiAeKQtUghVWKTqwLwacqWQkLL9XU0Z6baVw5swTBHbkRP6zLzCiOM+xe1tzYQva0LTBqqNPdombP48oDbnS04AifapPJ6NC4ShQ==;\n\t5:eLi2Z+X6Js+5WYXpDerAyJi8kOOCWvIidbOzA8NGoTZBDAWKvriZ1ldMpe/EHXAVUcbrR1Bt4QufZZAxi7c5+sE7UN2Fqdad/5pTWlItCWc7VgW81yWYabzfRAoBwI8HZ3ArGqqF9OahtrutNFvXYA==;\n\t24:22e4FkdvfAxYhRJf8qC62akJIl5gpsflghtagMjzvpEB8pUPdlLII0WG//tSPTEf9mFZzdzIznwOix2Oi9xI5wYyAZZycC+3HZxlvgyZ5is=;\n\t7:SeinzgVuNE/ULgIJsbarN+baQfHFKXbXl4tqV/S7sfBdSNY5Gr/XC/6eH+hxskPJbGsLfIXBDeUJ5+zL21apww6YUJLIFG8HggszbZ9TYT237gtpA10azeNK31en0ZCb2KKEmGWRcjssmhMfpfV8I/xGprCOfxxTzfQDMz8P4WTM+PWnsY1umneHmH3bVWGDxuYD7QYBYqgV0fpbhN23J0iKiqDU2PJ+7P7UPnqH2PU=",
            "1; CY1PR12MB0152;\n\t20:wgEggj+z6PyW3In8dZjYdV1RCIalLvjRvdfdsZP0zGBSGFqL0BkBON58GWCxQMIWm5h1uK7HNY9qYzm0vYnVKea8OVFuH1iy5Azc9CBTNruoaQZVZBl5KAZvEd1StL6EsEpIUAldum4C/94PCEY5m7o9mVmFhHNxC5As0Fa6FFdol1b4O2o7MoHfTtrZc8QY1fAwZobDVjClbWn/FHZf3t1dSTQWIDVkXNz31g+serNi3RlF/xLeIidQBBXb8LXV"
        ],
        "X-MS-TrafficTypeDiagnostic": "CY1PR12MB0152:",
        "X-Exchange-Antispam-Report-Test": "UriScan:(9452136761055)(65623756079841)(767451399110); ",
        "X-Microsoft-Antispam-PRVS": "<CY1PR12MB0152B3920FD26FB6DCCDB4A0E56D0@CY1PR12MB0152.namprd12.prod.outlook.com>",
        "X-Exchange-Antispam-Report-CFA-Test": "BCL:0; PCL:0;\n\tRULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(2401047)(8121501046)(5005006)(100000703101)(100105400095)(93006095)(93001095)(3002001)(10201501046)(6055026)(6041248)(20161123564025)(20161123562025)(20161123558100)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123560025)(20161123555025)(6072148)(201708071742011)(100000704101)(100105200095)(100000705101)(100105500095);\n\tSRVR:CY1PR12MB0152; BCL:0; PCL:0;\n\tRULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095);\n\tSRVR:CY1PR12MB0152; ",
        "X-Forefront-PRVS": "0432A04947",
        "X-Forefront-Antispam-Report": "SFV:NSPM;\n\tSFS:(10009020)(6009001)(346002)(376002)(199003)(189002)(6486002)(53416004)(81156014)(7416002)(48376002)(81166006)(50466002)(6666003)(5003940100001)(7736002)(54906002)(316002)(16586007)(8676002)(97736004)(2906002)(305945005)(575784001)(53936002)(5660300001)(86362001)(478600001)(16526017)(1076002)(106356001)(110136004)(3846002)(4326008)(50226002)(68736007)(25786009)(6116002)(33646002)(105586002)(101416001)(50986999)(47776003)(2950100002)(8936002)(66066001)(36756003)(189998001)(76176999);\n\tDIR:OUT; SFP:1101; SCL:1; SRVR:CY1PR12MB0152;\n\tH:ubuntu-010236106000.amd.com; \n\tFPR:; SPF:None; PTR:InfoNoRecords; A:1; MX:1; LANG:en; ",
        "Received-SPF": "None (protection.outlook.com: amd.com does not designate\n\tpermitted sender hosts)",
        "SpamDiagnosticOutput": "1:99",
        "SpamDiagnosticMetadata": "NSPM",
        "X-OriginatorOrg": "amd.com",
        "X-MS-Exchange-CrossTenant-OriginalArrivalTime": "16 Sep 2017 12:34:48.4432\n\t(UTC)",
        "X-MS-Exchange-CrossTenant-FromEntityHeader": "Hosted",
        "X-MS-Exchange-CrossTenant-Id": "3dd8961f-e488-4e60-8e11-a82d994e183d",
        "X-MS-Exchange-Transport-CrossTenantHeadersStamped": "CY1PR12MB0152",
        "X-BeenThere": "linuxppc-dev@lists.ozlabs.org",
        "X-Mailman-Version": "2.1.24",
        "Precedence": "list",
        "List-Id": "Linux on PowerPC Developers Mail List\n\t<linuxppc-dev.lists.ozlabs.org>",
        "List-Unsubscribe": "<https://lists.ozlabs.org/options/linuxppc-dev>,\n\t<mailto:linuxppc-dev-request@lists.ozlabs.org?subject=unsubscribe>",
        "List-Archive": "<http://lists.ozlabs.org/pipermail/linuxppc-dev/>",
        "List-Post": "<mailto:linuxppc-dev@lists.ozlabs.org>",
        "List-Help": "<mailto:linuxppc-dev-request@lists.ozlabs.org?subject=help>",
        "List-Subscribe": "<https://lists.ozlabs.org/listinfo/linuxppc-dev>,\n\t<mailto:linuxppc-dev-request@lists.ozlabs.org?subject=subscribe>",
        "Cc": "Tom Lendacky <thomas.lendacky@amd.com>,\n\tBrijesh Singh <brijesh.singh@amd.com>, Ingo Molnar <mingo@redhat.com>,\n\tAndy Lutomirski <luto@kernel.org>, \"H . Peter Anvin\" <hpa@zytor.com>, \n\tThomas Gleixner <tglx@linutronix.de>, Borislav Petkov <bp@suse.de>,\n\tlinuxppc-dev@lists.ozlabs.org",
        "Errors-To": "linuxppc-dev-bounces+patchwork-incoming=ozlabs.org@lists.ozlabs.org",
        "Sender": "\"Linuxppc-dev\"\n\t<linuxppc-dev-bounces+patchwork-incoming=ozlabs.org@lists.ozlabs.org>"
    },
    "content": "From: Tom Lendacky <thomas.lendacky@amd.com>\n\nIn prep for a new function that will need additional resource information\nduring the resource walk, update the resource walk callback to pass the\nresource structure.  Since the current callback start and end arguments\nare pulled from the resource structure, the callback functions can obtain\nthem from the resource structure directly.\n\nCc: Thomas Gleixner <tglx@linutronix.de>\nCc: Ingo Molnar <mingo@redhat.com>\nCc: \"H. Peter Anvin\" <hpa@zytor.com>\nCc: Borislav Petkov <bp@suse.de>\nCc: linux-kernel@vger.kernel.org\nCc: linuxppc-dev@lists.ozlabs.org\nCc: Benjamin Herrenschmidt <benh@kernel.crashing.org>\nReviewed-by: Kees Cook <keescook@chromium.org>\nReviewed-by: Borislav Petkov <bp@suse.de>\nSigned-off-by: Tom Lendacky <thomas.lendacky@amd.com>\nSigned-off-by: Brijesh Singh <brijesh.singh@amd.com>\n---\n arch/powerpc/kernel/machine_kexec_file_64.c | 12 +++++++++---\n arch/x86/kernel/crash.c                     | 18 +++++++++---------\n arch/x86/kernel/pmem.c                      |  2 +-\n include/linux/ioport.h                      |  4 ++--\n include/linux/kexec.h                       |  2 +-\n kernel/kexec_file.c                         |  5 +++--\n kernel/resource.c                           |  9 +++++----\n 7 files changed, 30 insertions(+), 22 deletions(-)",
    "diff": "diff --git a/arch/powerpc/kernel/machine_kexec_file_64.c b/arch/powerpc/kernel/machine_kexec_file_64.c\nindex 992c0d258e5d..e4395f937d63 100644\n--- a/arch/powerpc/kernel/machine_kexec_file_64.c\n+++ b/arch/powerpc/kernel/machine_kexec_file_64.c\n@@ -91,11 +91,13 @@ int arch_kimage_file_post_load_cleanup(struct kimage *image)\n  * and that value will be returned. If all free regions are visited without\n  * func returning non-zero, then zero will be returned.\n  */\n-int arch_kexec_walk_mem(struct kexec_buf *kbuf, int (*func)(u64, u64, void *))\n+int arch_kexec_walk_mem(struct kexec_buf *kbuf,\n+\t\t\tint (*func)(struct resource *, void *))\n {\n \tint ret = 0;\n \tu64 i;\n \tphys_addr_t mstart, mend;\n+\tstruct resource res = { };\n \n \tif (kbuf->top_down) {\n \t\tfor_each_free_mem_range_reverse(i, NUMA_NO_NODE, 0,\n@@ -105,7 +107,9 @@ int arch_kexec_walk_mem(struct kexec_buf *kbuf, int (*func)(u64, u64, void *))\n \t\t\t * range while in kexec, end points to the last byte\n \t\t\t * in the range.\n \t\t\t */\n-\t\t\tret = func(mstart, mend - 1, kbuf);\n+\t\t\tres.start = mstart;\n+\t\t\tres.end = mend - 1;\n+\t\t\tret = func(&res, kbuf);\n \t\t\tif (ret)\n \t\t\t\tbreak;\n \t\t}\n@@ -117,7 +121,9 @@ int arch_kexec_walk_mem(struct kexec_buf *kbuf, int (*func)(u64, u64, void *))\n \t\t\t * range while in kexec, end points to the last byte\n \t\t\t * in the range.\n \t\t\t */\n-\t\t\tret = func(mstart, mend - 1, kbuf);\n+\t\t\tres.start = mstart;\n+\t\t\tres.end = mend - 1;\n+\t\t\tret = func(&res, kbuf);\n \t\t\tif (ret)\n \t\t\t\tbreak;\n \t\t}\ndiff --git a/arch/x86/kernel/crash.c b/arch/x86/kernel/crash.c\nindex 44404e2307bb..815008c9ca18 100644\n--- a/arch/x86/kernel/crash.c\n+++ b/arch/x86/kernel/crash.c\n@@ -209,7 +209,7 @@ void native_machine_crash_shutdown(struct pt_regs *regs)\n }\n \n #ifdef CONFIG_KEXEC_FILE\n-static int get_nr_ram_ranges_callback(u64 start, u64 end, void *arg)\n+static int get_nr_ram_ranges_callback(struct resource *res, void *arg)\n {\n \tunsigned int *nr_ranges = arg;\n \n@@ -342,7 +342,7 @@ static int elf_header_exclude_ranges(struct crash_elf_data *ced,\n \treturn ret;\n }\n \n-static int prepare_elf64_ram_headers_callback(u64 start, u64 end, void *arg)\n+static int prepare_elf64_ram_headers_callback(struct resource *res, void *arg)\n {\n \tstruct crash_elf_data *ced = arg;\n \tElf64_Ehdr *ehdr;\n@@ -355,7 +355,7 @@ static int prepare_elf64_ram_headers_callback(u64 start, u64 end, void *arg)\n \tehdr = ced->ehdr;\n \n \t/* Exclude unwanted mem ranges */\n-\tret = elf_header_exclude_ranges(ced, start, end);\n+\tret = elf_header_exclude_ranges(ced, res->start, res->end);\n \tif (ret)\n \t\treturn ret;\n \n@@ -518,14 +518,14 @@ static int add_e820_entry(struct boot_params *params, struct e820_entry *entry)\n \treturn 0;\n }\n \n-static int memmap_entry_callback(u64 start, u64 end, void *arg)\n+static int memmap_entry_callback(struct resource *res, void *arg)\n {\n \tstruct crash_memmap_data *cmd = arg;\n \tstruct boot_params *params = cmd->params;\n \tstruct e820_entry ei;\n \n-\tei.addr = start;\n-\tei.size = end - start + 1;\n+\tei.addr = res->start;\n+\tei.size = res->end - res->start + 1;\n \tei.type = cmd->type;\n \tadd_e820_entry(params, &ei);\n \n@@ -619,12 +619,12 @@ int crash_setup_memmap_entries(struct kimage *image, struct boot_params *params)\n \treturn ret;\n }\n \n-static int determine_backup_region(u64 start, u64 end, void *arg)\n+static int determine_backup_region(struct resource *res, void *arg)\n {\n \tstruct kimage *image = arg;\n \n-\timage->arch.backup_src_start = start;\n-\timage->arch.backup_src_sz = end - start + 1;\n+\timage->arch.backup_src_start = res->start;\n+\timage->arch.backup_src_sz = res->end - res->start + 1;\n \n \t/* Expecting only one range for backup region */\n \treturn 1;\ndiff --git a/arch/x86/kernel/pmem.c b/arch/x86/kernel/pmem.c\nindex 0c5315d322c8..297bb71f10c5 100644\n--- a/arch/x86/kernel/pmem.c\n+++ b/arch/x86/kernel/pmem.c\n@@ -6,7 +6,7 @@\n #include <linux/init.h>\n #include <linux/ioport.h>\n \n-static int found(u64 start, u64 end, void *data)\n+static int found(struct resource *res, void *data)\n {\n \treturn 1;\n }\ndiff --git a/include/linux/ioport.h b/include/linux/ioport.h\nindex f5cf32e80041..617d8a2aac67 100644\n--- a/include/linux/ioport.h\n+++ b/include/linux/ioport.h\n@@ -271,10 +271,10 @@ walk_system_ram_range(unsigned long start_pfn, unsigned long nr_pages,\n \t\tvoid *arg, int (*func)(unsigned long, unsigned long, void *));\n extern int\n walk_system_ram_res(u64 start, u64 end, void *arg,\n-\t\t    int (*func)(u64, u64, void *));\n+\t\t    int (*func)(struct resource *, void *));\n extern int\n walk_iomem_res_desc(unsigned long desc, unsigned long flags, u64 start, u64 end,\n-\t\t    void *arg, int (*func)(u64, u64, void *));\n+\t\t    void *arg, int (*func)(struct resource *, void *));\n \n /* True if any part of r1 overlaps r2 */\n static inline bool resource_overlaps(struct resource *r1, struct resource *r2)\ndiff --git a/include/linux/kexec.h b/include/linux/kexec.h\nindex 2b7590f5483a..d672f955100a 100644\n--- a/include/linux/kexec.h\n+++ b/include/linux/kexec.h\n@@ -159,7 +159,7 @@ struct kexec_buf {\n };\n \n int __weak arch_kexec_walk_mem(struct kexec_buf *kbuf,\n-\t\t\t       int (*func)(u64, u64, void *));\n+\t\t\t       int (*func)(struct resource *, void *));\n extern int kexec_add_buffer(struct kexec_buf *kbuf);\n int kexec_locate_mem_hole(struct kexec_buf *kbuf);\n #endif /* CONFIG_KEXEC_FILE */\ndiff --git a/kernel/kexec_file.c b/kernel/kexec_file.c\nindex 9f48f4412297..e5bcd94c1efb 100644\n--- a/kernel/kexec_file.c\n+++ b/kernel/kexec_file.c\n@@ -406,9 +406,10 @@ static int locate_mem_hole_bottom_up(unsigned long start, unsigned long end,\n \treturn 1;\n }\n \n-static int locate_mem_hole_callback(u64 start, u64 end, void *arg)\n+static int locate_mem_hole_callback(struct resource *res, void *arg)\n {\n \tstruct kexec_buf *kbuf = (struct kexec_buf *)arg;\n+\tu64 start = res->start, end = res->end;\n \tunsigned long sz = end - start + 1;\n \n \t/* Returning 0 will take to next memory range */\n@@ -437,7 +438,7 @@ static int locate_mem_hole_callback(u64 start, u64 end, void *arg)\n  * func returning non-zero, then zero will be returned.\n  */\n int __weak arch_kexec_walk_mem(struct kexec_buf *kbuf,\n-\t\t\t       int (*func)(u64, u64, void *))\n+\t\t\t       int (*func)(struct resource *, void *))\n {\n \tif (kbuf->image->type == KEXEC_TYPE_CRASH)\n \t\treturn walk_iomem_res_desc(crashk_res.desc,\ndiff --git a/kernel/resource.c b/kernel/resource.c\nindex 7323c1b636cd..8430042fa77b 100644\n--- a/kernel/resource.c\n+++ b/kernel/resource.c\n@@ -402,14 +402,15 @@ static int find_next_iomem_res(struct resource *res, unsigned long desc,\n \n static int __walk_iomem_res_desc(struct resource *res, unsigned long desc,\n \t\t\t\t bool first_level_children_only,\n-\t\t\t\t void *arg, int (*func)(u64, u64, void *))\n+\t\t\t\t void *arg,\n+\t\t\t\t int (*func)(struct resource *, void *))\n {\n \tu64 orig_end = res->end;\n \tint ret = -1;\n \n \twhile ((res->start < res->end) &&\n \t       !find_next_iomem_res(res, desc, first_level_children_only)) {\n-\t\tret = (*func)(res->start, res->end, arg);\n+\t\tret = (*func)(res, arg);\n \t\tif (ret)\n \t\t\tbreak;\n \n@@ -435,7 +436,7 @@ static int __walk_iomem_res_desc(struct resource *res, unsigned long desc,\n  * <linux/ioport.h> and set it in 'desc' of a target resource entry.\n  */\n int walk_iomem_res_desc(unsigned long desc, unsigned long flags, u64 start,\n-\t\tu64 end, void *arg, int (*func)(u64, u64, void *))\n+\t\tu64 end, void *arg, int (*func)(struct resource *, void *))\n {\n \tstruct resource res;\n \n@@ -454,7 +455,7 @@ int walk_iomem_res_desc(unsigned long desc, unsigned long flags, u64 start,\n  * ranges.\n  */\n int walk_system_ram_res(u64 start, u64 end, void *arg,\n-\t\t\t\tint (*func)(u64, u64, void *))\n+\t\t\t\tint (*func)(struct resource *, void *))\n {\n \tstruct resource res;\n \n",
    "prefixes": [
        "Part1",
        "v4",
        "09/17"
    ]
}