[{"id":1755600,"web_url":"http://patchwork.ozlabs.org/comment/1755600/","msgid":"<5440865a-977a-ba27-57a9-49edc8f6cef5@linux.vnet.ibm.com>","date":"2017-08-23T18:54:12","subject":"Re: [PATCH] powerpc/pseries: Don't attempt to acquire drc during\n\tmemory hot add for assigned lmbs","submitter":{"id":17146,"url":"http://patchwork.ozlabs.org/api/people/17146/","name":"Nathan Fontenot","email":"nfont@linux.vnet.ibm.com"},"content":"On 08/23/2017 12:18 PM, John Allen wrote:\n> Check if an LMB is assigned before attempting to call dlpar_acquire_drc in\n> order to avoid any unnecessary rtas calls. This substantially reduces the\n> running time of memory hot add on lpars with large amounts of memory.\n> \n> Signed-off-by: John Allen <jallen@linux.vnet.ibm.com>\n> ---\n> diff --git a/arch/powerpc/platforms/pseries/hotplug-memory.c b/arch/powerpc/platforms/pseries/hotplug-memory.c\n> index ca9b2f4..95cf2ff 100644\n> --- a/arch/powerpc/platforms/pseries/hotplug-memory.c\n> +++ b/arch/powerpc/platforms/pseries/hotplug-memory.c\n> @@ -817,6 +817,9 @@ static int dlpar_memory_add_by_count(u32 lmbs_to_add, struct property *prop)\n>  \t\treturn -EINVAL;\n> \n>  \tfor (i = 0; i < num_lmbs && lmbs_to_add != lmbs_added; i++) {\n> +\t\tif (lmbs[i].flags & DRCONF_MEM_ASSIGNED)\n> +\t\t\tcontinue;\n> +\n\nReviewed-by: Nathan Fontenot <nfont@linux.vnet.ibm.com>\n\n>  \t\trc = dlpar_acquire_drc(lmbs[i].drc_index);\n>  \t\tif (rc)\n>  \t\t\tcontinue;\n>","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 3xcxT73xl6z9s7h\n\tfor <patchwork-incoming@ozlabs.org>;\n\tThu, 24 Aug 2017 04:55:39 +1000 (AEST)","from lists.ozlabs.org (lists.ozlabs.org [IPv6:2401:3900:2:1::3])\n\tby lists.ozlabs.org (Postfix) with ESMTP id 3xcxT72sv3zDrKr\n\tfor <patchwork-incoming@ozlabs.org>;\n\tThu, 24 Aug 2017 04:55:39 +1000 (AEST)","from mx0a-001b2d01.pphosted.com (mx0a-001b2d01.pphosted.com\n\t[148.163.156.1])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256\n\tbits)) (No client certificate requested)\n\tby lists.ozlabs.org (Postfix) with ESMTPS id 3xcxRc4PqMzDqlw\n\tfor <linuxppc-dev@lists.ozlabs.org>;\n\tThu, 24 Aug 2017 04:54:19 +1000 (AEST)","from pps.filterd (m0098399.ppops.net [127.0.0.1])\n\tby mx0a-001b2d01.pphosted.com (8.16.0.21/8.16.0.21) with SMTP id\n\tv7NIs4dG011907\n\tfor <linuxppc-dev@lists.ozlabs.org>; Wed, 23 Aug 2017 14:54:17 -0400","from e35.co.us.ibm.com (e35.co.us.ibm.com [32.97.110.153])\n\tby mx0a-001b2d01.pphosted.com with ESMTP id 2chcm6t4ev-1\n\t(version=TLSv1.2 cipher=AES256-SHA bits=256 verify=NOT)\n\tfor <linuxppc-dev@lists.ozlabs.org>; Wed, 23 Aug 2017 14:54:16 -0400","from localhost\n\tby e35.co.us.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use\n\tOnly! Violators will be prosecuted\n\tfor <linuxppc-dev@lists.ozlabs.org> from <nfont@linux.vnet.ibm.com>; \n\tWed, 23 Aug 2017 12:54:16 -0600","from b03cxnp08025.gho.boulder.ibm.com (9.17.130.17)\n\tby e35.co.us.ibm.com (192.168.1.135) with IBM ESMTP SMTP Gateway:\n\tAuthorized Use Only! Violators will be prosecuted; \n\tWed, 23 Aug 2017 12:54:13 -0600","from b03ledav003.gho.boulder.ibm.com\n\t(b03ledav003.gho.boulder.ibm.com [9.17.130.234])\n\tby b03cxnp08025.gho.boulder.ibm.com (8.14.9/8.14.9/NCO v10.0) with\n\tESMTP id v7NIsD2L65732838; Wed, 23 Aug 2017 11:54:13 -0700","from b03ledav003.gho.boulder.ibm.com (unknown [127.0.0.1])\n\tby IMSVA (Postfix) with ESMTP id 879B16A03B;\n\tWed, 23 Aug 2017 12:54:12 -0600 (MDT)","from [9.41.92.186] (unknown [9.41.92.186])\n\tby b03ledav003.gho.boulder.ibm.com (Postfix) with ESMTP id 50BD16A043;\n\tWed, 23 Aug 2017 12:54:12 -0600 (MDT)"],"Subject":"Re: [PATCH] powerpc/pseries: Don't attempt to acquire drc during\n\tmemory hot add for assigned lmbs","To":"John Allen <jallen@linux.vnet.ibm.com>, linuxppc-dev@lists.ozlabs.org","References":"<fc2ad536-a772-f006-43c4-1ddf6e296ebb@linux.vnet.ibm.com>","From":"Nathan Fontenot <nfont@linux.vnet.ibm.com>","Date":"Wed, 23 Aug 2017 13:54:12 -0500","User-Agent":"Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101\n\tThunderbird/52.2.1","MIME-Version":"1.0","In-Reply-To":"<fc2ad536-a772-f006-43c4-1ddf6e296ebb@linux.vnet.ibm.com>","Content-Type":"text/plain; charset=utf-8","Content-Language":"en-US","Content-Transfer-Encoding":"7bit","X-TM-AS-GCONF":"00","x-cbid":"17082318-0012-0000-0000-000014E6BEB3","X-IBM-SpamModules-Scores":"","X-IBM-SpamModules-Versions":"BY=3.00007598; HX=3.00000241; KW=3.00000007;\n\tPH=3.00000004; SC=3.00000224; SDB=6.00906601; UDB=6.00454414;\n\tIPR=6.00686802; \n\tBA=6.00005550; NDR=6.00000001; ZLA=6.00000005; ZF=6.00000009;\n\tZB=6.00000000; \n\tZP=6.00000000; ZH=6.00000000; ZU=6.00000002; MB=3.00016832;\n\tXFM=3.00000015; UTC=2017-08-23 18:54:14","X-IBM-AV-DETECTION":"SAVI=unused REMOTE=unused XFE=unused","x-cbparentid":"17082318-0013-0000-0000-00004F32D96E","Message-Id":"<5440865a-977a-ba27-57a9-49edc8f6cef5@linux.vnet.ibm.com>","X-Proofpoint-Virus-Version":"vendor=fsecure engine=2.50.10432:, ,\n\tdefinitions=2017-08-23_07:, , signatures=0","X-Proofpoint-Spam-Details":"rule=outbound_notspam policy=outbound score=0\n\tspamscore=0 suspectscore=0\n\tmalwarescore=0 phishscore=0 adultscore=0 bulkscore=0 classifier=spam\n\tadjust=0 reason=mlx scancount=1 engine=8.0.1-1707230000\n\tdefinitions=main-1708230284","X-BeenThere":"linuxppc-dev@lists.ozlabs.org","X-Mailman-Version":"2.1.23","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>","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>"}},{"id":1756203,"web_url":"http://patchwork.ozlabs.org/comment/1756203/","msgid":"<874lsxw90h.fsf@concordia.ellerman.id.au>","date":"2017-08-24T10:33:02","subject":"Re: [PATCH] powerpc/pseries: Don't attempt to acquire drc during\n\tmemory hot add for assigned lmbs","submitter":{"id":46580,"url":"http://patchwork.ozlabs.org/api/people/46580/","name":"Michael Ellerman","email":"mpe@ellerman.id.au"},"content":"John Allen <jallen@linux.vnet.ibm.com> writes:\n\n> Check if an LMB is assigned before attempting to call dlpar_acquire_drc in\n> order to avoid any unnecessary rtas calls. This substantially reduces the\n> running time of memory hot add on lpars with large amounts of memory.\n>\n> Signed-off-by: John Allen <jallen@linux.vnet.ibm.com>\n\nI'll add:\n\n  Fixes: c21f515c7436 (\"powerpc/pseries: Make the acquire/release of the drc for memory a seperate step\")\n\n?\n\nHow bad is the slow down, do we need to backport to stable/distros?\n\ncheers","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 [103.22.144.68])\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 3xdLHt4w1sz9sNd\n\tfor <patchwork-incoming@ozlabs.org>;\n\tThu, 24 Aug 2017 20:34:02 +1000 (AEST)","from lists.ozlabs.org (lists.ozlabs.org [IPv6:2401:3900:2:1::3])\n\tby lists.ozlabs.org (Postfix) with ESMTP id 3xdLHt42HwzDrL6\n\tfor <patchwork-incoming@ozlabs.org>;\n\tThu, 24 Aug 2017 20:34:02 +1000 (AEST)","from ozlabs.org (ozlabs.org [IPv6:2401:3900:2:1::2])\n\t(using TLSv1.2 with cipher ADH-AES256-GCM-SHA384 (256/256 bits))\n\t(No client certificate requested)\n\tby lists.ozlabs.org (Postfix) with ESMTPS id 3xdLGm3c0hzDrJx\n\tfor <linuxppc-dev@lists.ozlabs.org>;\n\tThu, 24 Aug 2017 20:33:04 +1000 (AEST)","from authenticated.ozlabs.org (localhost [127.0.0.1])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128\n\tbits)) (No client certificate requested)\n\tby ozlabs.org (Postfix) with ESMTPSA id 3xdLGm1Bh6z9s9Y;\n\tThu, 24 Aug 2017 20:33:04 +1000 (AEST)"],"From":"Michael Ellerman <mpe@ellerman.id.au>","To":"John Allen <jallen@linux.vnet.ibm.com>, linuxppc-dev@lists.ozlabs.org,\n\tNathan Fontenot <nfont@linux.vnet.ibm.com>","Subject":"Re: [PATCH] powerpc/pseries: Don't attempt to acquire drc during\n\tmemory hot add for assigned lmbs","In-Reply-To":"<fc2ad536-a772-f006-43c4-1ddf6e296ebb@linux.vnet.ibm.com>","References":"<fc2ad536-a772-f006-43c4-1ddf6e296ebb@linux.vnet.ibm.com>","User-Agent":"Notmuch/0.21 (https://notmuchmail.org)","Date":"Thu, 24 Aug 2017 20:33:02 +1000","Message-ID":"<874lsxw90h.fsf@concordia.ellerman.id.au>","MIME-Version":"1.0","Content-Type":"text/plain","X-BeenThere":"linuxppc-dev@lists.ozlabs.org","X-Mailman-Version":"2.1.23","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>","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>"}},{"id":1756457,"web_url":"http://patchwork.ozlabs.org/comment/1756457/","msgid":"<68bf36f4-299c-bbc0-06ea-e8e614812167@linux.vnet.ibm.com>","date":"2017-08-24T14:46:14","subject":"Re: [PATCH] powerpc/pseries: Don't attempt to acquire drc during\n\tmemory hot add for assigned lmbs","submitter":{"id":67553,"url":"http://patchwork.ozlabs.org/api/people/67553/","name":"John Allen","email":"jallen@linux.vnet.ibm.com"},"content":"On 08/24/2017 05:33 AM, Michael Ellerman wrote:\n> John Allen <jallen@linux.vnet.ibm.com> writes:\n> \n>> Check if an LMB is assigned before attempting to call dlpar_acquire_drc in\n>> order to avoid any unnecessary rtas calls. This substantially reduces the\n>> running time of memory hot add on lpars with large amounts of memory.\n>>\n>> Signed-off-by: John Allen <jallen@linux.vnet.ibm.com>\n> \n> I'll add:\n> \n>   Fixes: c21f515c7436 (\"powerpc/pseries: Make the acquire/release of the drc for memory a seperate step\")\n> \n> ?\n\nYes, thanks.\n\n> \n> How bad is the slow down, do we need to backport to stable/distros?\n\nOn an lpar with 16 TB of memory assigned, I observed that adding 1 GB of\nmemory took several minutes without this fix and improved to several\nseconds with this fix. Yep, this will need to be backported. Memory hotplug\nperformance is a hot issue for our team right now and we'll want to have\nsolid performance improvement to give to customers relatively soon.\n\n> \n> cheers\n> \n>","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 3xdRwF3c6Yz9s06\n\tfor <patchwork-incoming@ozlabs.org>;\n\tFri, 25 Aug 2017 00:47:25 +1000 (AEST)","from lists.ozlabs.org (lists.ozlabs.org [IPv6:2401:3900:2:1::3])\n\tby lists.ozlabs.org (Postfix) with ESMTP id 3xdRwF2m4mzDrJ8\n\tfor <patchwork-incoming@ozlabs.org>;\n\tFri, 25 Aug 2017 00:47:25 +1000 (AEST)","from mx0a-001b2d01.pphosted.com (mx0a-001b2d01.pphosted.com\n\t[148.163.156.1])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256\n\tbits)) (No client certificate requested)\n\tby lists.ozlabs.org (Postfix) with ESMTPS id 3xdRv14Fv2zDqms\n\tfor <linuxppc-dev@lists.ozlabs.org>;\n\tFri, 25 Aug 2017 00:46:21 +1000 (AEST)","from pps.filterd (m0098410.ppops.net [127.0.0.1])\n\tby mx0a-001b2d01.pphosted.com (8.16.0.21/8.16.0.21) with SMTP id\n\tv7OEhdeO042746\n\tfor <linuxppc-dev@lists.ozlabs.org>; Thu, 24 Aug 2017 10:46:19 -0400","from e12.ny.us.ibm.com (e12.ny.us.ibm.com [129.33.205.202])\n\tby mx0a-001b2d01.pphosted.com with ESMTP id 2chwu5jtku-1\n\t(version=TLSv1.2 cipher=AES256-SHA bits=256 verify=NOT)\n\tfor <linuxppc-dev@lists.ozlabs.org>; Thu, 24 Aug 2017 10:46:18 -0400","from localhost\n\tby e12.ny.us.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use\n\tOnly! Violators will be prosecuted\n\tfor <linuxppc-dev@lists.ozlabs.org> from <jallen@linux.vnet.ibm.com>; \n\tThu, 24 Aug 2017 10:46:17 -0400","from b01cxnp23033.gho.pok.ibm.com (9.57.198.28)\n\tby e12.ny.us.ibm.com (146.89.104.199) with IBM ESMTP SMTP Gateway:\n\tAuthorized Use Only! Violators will be prosecuted; \n\tThu, 24 Aug 2017 10:46:15 -0400","from b01ledav001.gho.pok.ibm.com (b01ledav001.gho.pok.ibm.com\n\t[9.57.199.106])\n\tby b01cxnp23033.gho.pok.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP\n\tid v7OEkF6s3342690; Thu, 24 Aug 2017 14:46:15 GMT","from b01ledav001.gho.pok.ibm.com (unknown [127.0.0.1])\n\tby IMSVA (Postfix) with ESMTP id CF8B82803D;\n\tThu, 24 Aug 2017 10:46:08 -0400 (EDT)","from [9.41.92.172] (unknown [9.41.92.172])\n\tby b01ledav001.gho.pok.ibm.com (Postfix) with ESMTP id 78AF728041;\n\tThu, 24 Aug 2017 10:46:08 -0400 (EDT)"],"Subject":"Re: [PATCH] powerpc/pseries: Don't attempt to acquire drc during\n\tmemory hot add for assigned lmbs","To":"Michael Ellerman <mpe@ellerman.id.au>, linuxppc-dev@lists.ozlabs.org,\n\tNathan Fontenot <nfont@linux.vnet.ibm.com>","References":"<fc2ad536-a772-f006-43c4-1ddf6e296ebb@linux.vnet.ibm.com>\n\t<874lsxw90h.fsf@concordia.ellerman.id.au>","From":"John Allen <jallen@linux.vnet.ibm.com>","Date":"Thu, 24 Aug 2017 09:46:14 -0500","User-Agent":"Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101\n\tThunderbird/52.2.1","MIME-Version":"1.0","In-Reply-To":"<874lsxw90h.fsf@concordia.ellerman.id.au>","Content-Type":"text/plain; charset=utf-8","Content-Language":"en-US","Content-Transfer-Encoding":"7bit","X-TM-AS-GCONF":"00","x-cbid":"17082414-0048-0000-0000-000001D8CF3C","X-IBM-SpamModules-Scores":"","X-IBM-SpamModules-Versions":"BY=3.00007603; HX=3.00000241; KW=3.00000007;\n\tPH=3.00000004; SC=3.00000225; SDB=6.00906999; UDB=6.00454651;\n\tIPR=6.00687196; \n\tBA=6.00005552; NDR=6.00000001; ZLA=6.00000005; ZF=6.00000009;\n\tZB=6.00000000; \n\tZP=6.00000000; ZH=6.00000000; ZU=6.00000002; MB=3.00016848;\n\tXFM=3.00000015; UTC=2017-08-24 14:46:16","X-IBM-AV-DETECTION":"SAVI=unused REMOTE=unused XFE=unused","x-cbparentid":"17082414-0049-0000-0000-000042566694","Message-Id":"<68bf36f4-299c-bbc0-06ea-e8e614812167@linux.vnet.ibm.com>","X-Proofpoint-Virus-Version":"vendor=fsecure engine=2.50.10432:, ,\n\tdefinitions=2017-08-24_05:, , signatures=0","X-Proofpoint-Spam-Details":"rule=outbound_notspam policy=outbound score=0\n\tspamscore=0 suspectscore=0\n\tmalwarescore=0 phishscore=0 adultscore=0 bulkscore=0 classifier=spam\n\tadjust=0 reason=mlx scancount=1 engine=8.0.1-1707230000\n\tdefinitions=main-1708240234","X-BeenThere":"linuxppc-dev@lists.ozlabs.org","X-Mailman-Version":"2.1.23","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>","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>"}},{"id":1759822,"web_url":"http://patchwork.ozlabs.org/comment/1759822/","msgid":"<87bmmx3hr8.fsf@concordia.ellerman.id.au>","date":"2017-08-30T02:35:07","subject":"Re: [PATCH] powerpc/pseries: Don't attempt to acquire drc during\n\tmemory hot add for assigned lmbs","submitter":{"id":46580,"url":"http://patchwork.ozlabs.org/api/people/46580/","name":"Michael Ellerman","email":"mpe@ellerman.id.au"},"content":"John Allen <jallen@linux.vnet.ibm.com> writes:\n\n> Check if an LMB is assigned before attempting to call dlpar_acquire_drc in\n> order to avoid any unnecessary rtas calls. This substantially reduces the\n> running time of memory hot add on lpars with large amounts of memory.\n>\n> Signed-off-by: John Allen <jallen@linux.vnet.ibm.com>\n> ---\n> diff --git a/arch/powerpc/platforms/pseries/hotplug-memory.c b/arch/powerpc/platforms/pseries/hotplug-memory.c\n> index ca9b2f4..95cf2ff 100644\n> --- a/arch/powerpc/platforms/pseries/hotplug-memory.c\n> +++ b/arch/powerpc/platforms/pseries/hotplug-memory.c\n> @@ -817,6 +817,9 @@ static int dlpar_memory_add_by_count(u32 lmbs_to_add, struct property *prop)\n>  \t\treturn -EINVAL;\n>\n>  \tfor (i = 0; i < num_lmbs && lmbs_to_add != lmbs_added; i++) {\n> +\t\tif (lmbs[i].flags & DRCONF_MEM_ASSIGNED)\n> +\t\t\tcontinue;\n> +\n>  \t\trc = dlpar_acquire_drc(lmbs[i].drc_index);\n>  \t\tif (rc)\n>  \t\t\tcontinue;\n\nThis doesn't build for me, see below. What compiler are you using to\ntest this?\n\n  arch/powerpc/platforms/pseries/hotplug-memory.c: In function 'dlpar_memory':\n  arch/powerpc/platforms/pseries/hotplug-memory.c:1081:2: error: 'rc' may be used uninitialized in this function [-Werror=maybe-uninitialized]\n    return rc;\n    ^\n\nIt's a bit confusing because you didn't modify that function, but the\nfunction you did modify has been inlined into there.\n\nPossibly the compiler is wrong and we do always initialise rc, but it's\nnot clear at all.\n\nAnd it raises a bigger question, how is this supposed to actually work?\n\nIf we go around the loop and find that something is already assigned:\n\n\tfor (i = 0; i < num_lmbs && lmbs_to_add != lmbs_added; i++) {\n\t\tif (lmbs[i].flags & DRCONF_MEM_ASSIGNED)\n\t\t\tcontinue;\n                ...\n\t\tlmbs_added++;\n                ...\n        }\n\nWe don't increment lmbs_added, so at the end of the loop we will see\nthat lmbs_added is not equal to lmbs_to_add, and so we remove\neverything:\n\n\tif (lmbs_added != lmbs_to_add) {\n\t\tpr_err(\"Memory hot-add failed, removing any added LMBs\\n\");\n\n\t\tfor (i = 0; i < num_lmbs; i++) {\n\t\t\tif (!lmbs[i].reserved)\n\t\t\t\tcontinue;\n\n\t\t\trc = dlpar_remove_lmb(&lmbs[i]);\n\n\nSo it seems like if we ever hit that continue you added, the whole\noperation will fail anyway. So I'm confused.\n\ncheers","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 [103.22.144.68])\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 3xhqQ01rGxz9sMN\n\tfor <patchwork-incoming@ozlabs.org>;\n\tWed, 30 Aug 2017 12:36:24 +1000 (AEST)","from lists.ozlabs.org (lists.ozlabs.org [IPv6:2401:3900:2:1::3])\n\tby lists.ozlabs.org (Postfix) with ESMTP id 3xhqQ010dyzDqTs\n\tfor <patchwork-incoming@ozlabs.org>;\n\tWed, 30 Aug 2017 12:36:24 +1000 (AEST)","from ozlabs.org (ozlabs.org [IPv6:2401:3900:2:1::2])\n\t(using TLSv1.2 with cipher ADH-AES256-GCM-SHA384 (256/256 bits))\n\t(No client certificate requested)\n\tby lists.ozlabs.org (Postfix) with ESMTPS id 3xhqNX3zDszDq5b\n\tfor <linuxppc-dev@lists.ozlabs.org>;\n\tWed, 30 Aug 2017 12:35:08 +1000 (AEST)","from authenticated.ozlabs.org (localhost [127.0.0.1])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128\n\tbits)) (No client certificate requested)\n\tby ozlabs.org (Postfix) with ESMTPSA id 3xhqNX2mV1z9sMN;\n\tWed, 30 Aug 2017 12:35:08 +1000 (AEST)"],"From":"Michael Ellerman <mpe@ellerman.id.au>","To":"John Allen <jallen@linux.vnet.ibm.com>, linuxppc-dev@lists.ozlabs.org,\n\tNathan Fontenot <nfont@linux.vnet.ibm.com>","Subject":"Re: [PATCH] powerpc/pseries: Don't attempt to acquire drc during\n\tmemory hot add for assigned lmbs","In-Reply-To":"<fc2ad536-a772-f006-43c4-1ddf6e296ebb@linux.vnet.ibm.com>","References":"<fc2ad536-a772-f006-43c4-1ddf6e296ebb@linux.vnet.ibm.com>","User-Agent":"Notmuch/0.21 (https://notmuchmail.org)","Date":"Wed, 30 Aug 2017 12:35:07 +1000","Message-ID":"<87bmmx3hr8.fsf@concordia.ellerman.id.au>","MIME-Version":"1.0","Content-Type":"text/plain","X-BeenThere":"linuxppc-dev@lists.ozlabs.org","X-Mailman-Version":"2.1.23","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>","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>"}},{"id":1760214,"web_url":"http://patchwork.ozlabs.org/comment/1760214/","msgid":"<cad79893-3d1a-f2ea-892f-6481a22f261a@linux.vnet.ibm.com>","date":"2017-08-30T14:35:30","subject":"Re: [PATCH] powerpc/pseries: Don't attempt to acquire drc during\n\tmemory hot add for assigned lmbs","submitter":{"id":17146,"url":"http://patchwork.ozlabs.org/api/people/17146/","name":"Nathan Fontenot","email":"nfont@linux.vnet.ibm.com"},"content":"On 08/29/2017 09:35 PM, Michael Ellerman wrote:\n> John Allen <jallen@linux.vnet.ibm.com> writes:\n> \n>> Check if an LMB is assigned before attempting to call dlpar_acquire_drc in\n>> order to avoid any unnecessary rtas calls. This substantially reduces the\n>> running time of memory hot add on lpars with large amounts of memory.\n>>\n>> Signed-off-by: John Allen <jallen@linux.vnet.ibm.com>\n>> ---\n>> diff --git a/arch/powerpc/platforms/pseries/hotplug-memory.c b/arch/powerpc/platforms/pseries/hotplug-memory.c\n>> index ca9b2f4..95cf2ff 100644\n>> --- a/arch/powerpc/platforms/pseries/hotplug-memory.c\n>> +++ b/arch/powerpc/platforms/pseries/hotplug-memory.c\n>> @@ -817,6 +817,9 @@ static int dlpar_memory_add_by_count(u32 lmbs_to_add, struct property *prop)\n>>  \t\treturn -EINVAL;\n>>\n>>  \tfor (i = 0; i < num_lmbs && lmbs_to_add != lmbs_added; i++) {\n>> +\t\tif (lmbs[i].flags & DRCONF_MEM_ASSIGNED)\n>> +\t\t\tcontinue;\n>> +\n>>  \t\trc = dlpar_acquire_drc(lmbs[i].drc_index);\n>>  \t\tif (rc)\n>>  \t\t\tcontinue;\n> \n> This doesn't build for me, see below. What compiler are you using to\n> test this?> \n>   arch/powerpc/platforms/pseries/hotplug-memory.c: In function 'dlpar_memory':\n>   arch/powerpc/platforms/pseries/hotplug-memory.c:1081:2: error: 'rc' may be used uninitialized in this function [-Werror=maybe-uninitialized]\n>     return rc;\n>     ^\n>\n\nI don't see this build failure either, looks like its time to update my\ncompiler too.\n \n> It's a bit confusing because you didn't modify that function, but the\n> function you did modify has been inlined into there.\n> \n> Possibly the compiler is wrong and we do always initialise rc, but it's\n> not clear at all.\n> \n> And it raises a bigger question, how is this supposed to actually work?\n> \n> If we go around the loop and find that something is already assigned:\n> \n> \tfor (i = 0; i < num_lmbs && lmbs_to_add != lmbs_added; i++) {\n> \t\tif (lmbs[i].flags & DRCONF_MEM_ASSIGNED)\n> \t\t\tcontinue;\n>                 ...\n> \t\tlmbs_added++;\n>                 ...\n>         }\n> \n> We don't increment lmbs_added, so at the end of the loop we will see\n> that lmbs_added is not equal to lmbs_to_add, and so we remove\n> everything:\n\nThere is a loop just before this code verifies there are enough\nLMBs available to satisfy the add request. This counts the number\nof LMBs that do not have the assigned flag set. This is where we\nupdate lmbs_available and if there are not enough lmbs available to\nsatisfy the request, we bail.\n\nWhen the loop you referenced above exits we should have attempted to\nenough LMBs to satisfy the request.\n\n> \n> \tif (lmbs_added != lmbs_to_add) {\n> \t\tpr_err(\"Memory hot-add failed, removing any added LMBs\\n\");\n> \n> \t\tfor (i = 0; i < num_lmbs; i++) {\n> \t\t\tif (!lmbs[i].reserved)\n> \t\t\t\tcontinue;\n> \n> \t\t\trc = dlpar_remove_lmb(&lmbs[i]);\n> \n>\n\nif we get into this recovery path, we only try to remove any LMBs\nthat were added in the loop above. The code marks any LMB that is\nadded as 'reserved' so that we only try to remove LMBs marked\nas 'reserved' in the cleanup path.\n \n> So it seems like if we ever hit that continue you added, the whole\n> operation will fail anyway. So I'm confused.\n\nThe added code was to skip over any LMBs that are already assigned to\nthe partition. As the code is written now, we walk through the entire list\nof LMBs possible. For large systems this can be tens, or hundreds of thousands\nof LMBs.\n\nWithout this check the code will try to acquire the drc for (this\nis done via rtas-set-indicator calls) which will fail for LMBs that are\nalready assigned to the partition.\n\nAs an example on a large system that has 100,000 LMBs where the first\n50,000 are assigned to the partition. When we get an add request to add\nX more LMBs we do see that there are 50,000 available to add. We then try\nto add X LMBs but start at the beginning of the LMB list when trying to\nadd them. This results in 50,000 attempts to acquire the drc for LMbs\nthat we already own. Instead we should just skip trying to acquire them.\n\nHopefully that helps clarify things.\n\n-Nathan\n\n> \n> cheers\n>","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 3xj7PG3jzlz9s8P\n\tfor <patchwork-incoming@ozlabs.org>;\n\tThu, 31 Aug 2017 00:36:50 +1000 (AEST)","from lists.ozlabs.org (lists.ozlabs.org [IPv6:2401:3900:2:1::3])\n\tby lists.ozlabs.org (Postfix) with ESMTP id 3xj7PG2dYKzDqbd\n\tfor <patchwork-incoming@ozlabs.org>;\n\tThu, 31 Aug 2017 00:36:50 +1000 (AEST)","from mx0a-001b2d01.pphosted.com (mx0a-001b2d01.pphosted.com\n\t[148.163.156.1])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256\n\tbits)) (No client certificate requested)\n\tby lists.ozlabs.org (Postfix) with ESMTPS id 3xj7Mv3TPxzDqMY\n\tfor <linuxppc-dev@lists.ozlabs.org>;\n\tThu, 31 Aug 2017 00:35:39 +1000 (AEST)","from pps.filterd (m0098410.ppops.net [127.0.0.1])\n\tby mx0a-001b2d01.pphosted.com (8.16.0.21/8.16.0.21) with SMTP id\n\tv7UEYuHU027707\n\tfor <linuxppc-dev@lists.ozlabs.org>; Wed, 30 Aug 2017 10:35:35 -0400","from e36.co.us.ibm.com (e36.co.us.ibm.com [32.97.110.154])\n\tby mx0a-001b2d01.pphosted.com with ESMTP id 2cnx0pxpxk-1\n\t(version=TLSv1.2 cipher=AES256-SHA bits=256 verify=NOT)\n\tfor <linuxppc-dev@lists.ozlabs.org>; Wed, 30 Aug 2017 10:35:34 -0400","from localhost\n\tby e36.co.us.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use\n\tOnly! Violators will be prosecuted\n\tfor <linuxppc-dev@lists.ozlabs.org> from <nfont@linux.vnet.ibm.com>; \n\tWed, 30 Aug 2017 08:35:34 -0600","from b03cxnp08026.gho.boulder.ibm.com (9.17.130.18)\n\tby e36.co.us.ibm.com (192.168.1.136) with IBM ESMTP SMTP Gateway:\n\tAuthorized Use Only! Violators will be prosecuted; \n\tWed, 30 Aug 2017 08:35:31 -0600","from b03ledav004.gho.boulder.ibm.com\n\t(b03ledav004.gho.boulder.ibm.com [9.17.130.235])\n\tby b03cxnp08026.gho.boulder.ibm.com (8.14.9/8.14.9/NCO v10.0) with\n\tESMTP id v7UEZU2j64552988; Wed, 30 Aug 2017 07:35:30 -0700","from b03ledav004.gho.boulder.ibm.com (unknown [127.0.0.1])\n\tby IMSVA (Postfix) with ESMTP id A4E1B78047;\n\tWed, 30 Aug 2017 08:35:30 -0600 (MDT)","from [9.41.92.186] (unknown [9.41.92.186])\n\tby b03ledav004.gho.boulder.ibm.com (Postfix) with ESMTP id 6EFA478043;\n\tWed, 30 Aug 2017 08:35:30 -0600 (MDT)"],"Subject":"Re: [PATCH] powerpc/pseries: Don't attempt to acquire drc during\n\tmemory hot add for assigned lmbs","To":"Michael Ellerman <mpe@ellerman.id.au>,\n\tJohn Allen <jallen@linux.vnet.ibm.com>, linuxppc-dev@lists.ozlabs.org","References":"<fc2ad536-a772-f006-43c4-1ddf6e296ebb@linux.vnet.ibm.com>\n\t<87bmmx3hr8.fsf@concordia.ellerman.id.au>","From":"Nathan Fontenot <nfont@linux.vnet.ibm.com>","Date":"Wed, 30 Aug 2017 09:35:30 -0500","User-Agent":"Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101\n\tThunderbird/52.2.1","MIME-Version":"1.0","In-Reply-To":"<87bmmx3hr8.fsf@concordia.ellerman.id.au>","Content-Type":"text/plain; charset=utf-8","Content-Language":"en-US","Content-Transfer-Encoding":"7bit","X-TM-AS-GCONF":"00","x-cbid":"17083014-0020-0000-0000-00000CA319C4","X-IBM-SpamModules-Scores":"","X-IBM-SpamModules-Versions":"BY=3.00007636; HX=3.00000241; KW=3.00000007;\n\tPH=3.00000004; SC=3.00000226; SDB=6.00909761; UDB=6.00456309;\n\tIPR=6.00690045; \n\tBA=6.00005561; NDR=6.00000001; ZLA=6.00000005; ZF=6.00000009;\n\tZB=6.00000000; \n\tZP=6.00000000; ZH=6.00000000; ZU=6.00000002; MB=3.00016930;\n\tXFM=3.00000015; UTC=2017-08-30 14:35:32","X-IBM-AV-DETECTION":"SAVI=unused REMOTE=unused XFE=unused","x-cbparentid":"17083014-0021-0000-0000-00005DEE30F9","Message-Id":"<cad79893-3d1a-f2ea-892f-6481a22f261a@linux.vnet.ibm.com>","X-Proofpoint-Virus-Version":"vendor=fsecure engine=2.50.10432:, ,\n\tdefinitions=2017-08-30_06:, , signatures=0","X-Proofpoint-Spam-Details":"rule=outbound_notspam policy=outbound score=0\n\tspamscore=0 suspectscore=0\n\tmalwarescore=0 phishscore=0 adultscore=0 bulkscore=0 classifier=spam\n\tadjust=0 reason=mlx scancount=1 engine=8.0.1-1707230000\n\tdefinitions=main-1708300219","X-BeenThere":"linuxppc-dev@lists.ozlabs.org","X-Mailman-Version":"2.1.23","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>","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>"}},{"id":1760224,"web_url":"http://patchwork.ozlabs.org/comment/1760224/","msgid":"<c2e6a370-b648-4a25-8fe8-2dad41dce5c8@linux.vnet.ibm.com>","date":"2017-08-30T14:43:00","subject":"Re: [PATCH] powerpc/pseries: Don't attempt to acquire drc during\n\tmemory hot add for assigned lmbs","submitter":{"id":67553,"url":"http://patchwork.ozlabs.org/api/people/67553/","name":"John Allen","email":"jallen@linux.vnet.ibm.com"},"content":"On 08/30/2017 09:35 AM, Nathan Fontenot wrote:\n> On 08/29/2017 09:35 PM, Michael Ellerman wrote:\n>> John Allen <jallen@linux.vnet.ibm.com> writes:\n>>\n>>> Check if an LMB is assigned before attempting to call dlpar_acquire_drc in\n>>> order to avoid any unnecessary rtas calls. This substantially reduces the\n>>> running time of memory hot add on lpars with large amounts of memory.\n>>>\n>>> Signed-off-by: John Allen <jallen@linux.vnet.ibm.com>\n>>> ---\n>>> diff --git a/arch/powerpc/platforms/pseries/hotplug-memory.c b/arch/powerpc/platforms/pseries/hotplug-memory.c\n>>> index ca9b2f4..95cf2ff 100644\n>>> --- a/arch/powerpc/platforms/pseries/hotplug-memory.c\n>>> +++ b/arch/powerpc/platforms/pseries/hotplug-memory.c\n>>> @@ -817,6 +817,9 @@ static int dlpar_memory_add_by_count(u32 lmbs_to_add, struct property *prop)\n>>>  \t\treturn -EINVAL;\n>>>\n>>>  \tfor (i = 0; i < num_lmbs && lmbs_to_add != lmbs_added; i++) {\n>>> +\t\tif (lmbs[i].flags & DRCONF_MEM_ASSIGNED)\n>>> +\t\t\tcontinue;\n>>> +\n>>>  \t\trc = dlpar_acquire_drc(lmbs[i].drc_index);\n>>>  \t\tif (rc)\n>>>  \t\t\tcontinue;\n>>\n>> This doesn't build for me, see below. What compiler are you using to\n>> test this?> \n>>   arch/powerpc/platforms/pseries/hotplug-memory.c: In function 'dlpar_memory':\n>>   arch/powerpc/platforms/pseries/hotplug-memory.c:1081:2: error: 'rc' may be used uninitialized in this function [-Werror=maybe-uninitialized]\n>>     return rc;\n>>     ^\n>>\n> \n> I don't see this build failure either, looks like its time to update my\n> compiler too.\n\nThis also builds for me. I'm using gcc version 4.8.5\n\n> \n>> It's a bit confusing because you didn't modify that function, but the\n>> function you did modify has been inlined into there.\n>>\n>> Possibly the compiler is wrong and we do always initialise rc, but it's\n>> not clear at all.\n>>\n>> And it raises a bigger question, how is this supposed to actually work?\n>>\n>> If we go around the loop and find that something is already assigned:\n>>\n>> \tfor (i = 0; i < num_lmbs && lmbs_to_add != lmbs_added; i++) {\n>> \t\tif (lmbs[i].flags & DRCONF_MEM_ASSIGNED)\n>> \t\t\tcontinue;\n>>                 ...\n>> \t\tlmbs_added++;\n>>                 ...\n>>         }\n>>\n>> We don't increment lmbs_added, so at the end of the loop we will see\n>> that lmbs_added is not equal to lmbs_to_add, and so we remove\n>> everything:\n> \n> There is a loop just before this code verifies there are enough\n> LMBs available to satisfy the add request. This counts the number\n> of LMBs that do not have the assigned flag set. This is where we\n> update lmbs_available and if there are not enough lmbs available to\n> satisfy the request, we bail.\n> \n> When the loop you referenced above exits we should have attempted to\n> enough LMBs to satisfy the request.\n> \n>>\n>> \tif (lmbs_added != lmbs_to_add) {\n>> \t\tpr_err(\"Memory hot-add failed, removing any added LMBs\\n\");\n>>\n>> \t\tfor (i = 0; i < num_lmbs; i++) {\n>> \t\t\tif (!lmbs[i].reserved)\n>> \t\t\t\tcontinue;\n>>\n>> \t\t\trc = dlpar_remove_lmb(&lmbs[i]);\n>>\n>>\n> \n> if we get into this recovery path, we only try to remove any LMBs\n> that were added in the loop above. The code marks any LMB that is\n> added as 'reserved' so that we only try to remove LMBs marked\n> as 'reserved' in the cleanup path.\n> \n>> So it seems like if we ever hit that continue you added, the whole\n>> operation will fail anyway. So I'm confused.\n> \n> The added code was to skip over any LMBs that are already assigned to\n> the partition. As the code is written now, we walk through the entire list\n> of LMBs possible. For large systems this can be tens, or hundreds of thousands\n> of LMBs.\n> \n> Without this check the code will try to acquire the drc for (this\n> is done via rtas-set-indicator calls) which will fail for LMBs that are\n> already assigned to the partition.\n> \n> As an example on a large system that has 100,000 LMBs where the first\n> 50,000 are assigned to the partition. When we get an add request to add\n> X more LMBs we do see that there are 50,000 available to add. We then try\n> to add X LMBs but start at the beginning of the LMB list when trying to\n> add them. This results in 50,000 attempts to acquire the drc for LMbs\n> that we already own. Instead we should just skip trying to acquire them.\n> \n> Hopefully that helps clarify things.\n> \n> -Nathan\n> \n>>\n>> cheers\n>>\n>","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 [103.22.144.68])\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 3xj7Yp0GxFz9s9Y\n\tfor <patchwork-incoming@ozlabs.org>;\n\tThu, 31 Aug 2017 00:44:14 +1000 (AEST)","from lists.ozlabs.org (lists.ozlabs.org [IPv6:2401:3900:2:1::3])\n\tby lists.ozlabs.org (Postfix) with ESMTP id 3xj7Yn6SpZzDqZv\n\tfor <patchwork-incoming@ozlabs.org>;\n\tThu, 31 Aug 2017 00:44:13 +1000 (AEST)","from mx0a-001b2d01.pphosted.com (mx0a-001b2d01.pphosted.com\n\t[148.163.156.1])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256\n\tbits)) (No client certificate requested)\n\tby lists.ozlabs.org (Postfix) with ESMTPS id 3xj7Xc33jzzDqMc\n\tfor <linuxppc-dev@lists.ozlabs.org>;\n\tThu, 31 Aug 2017 00:43:12 +1000 (AEST)","from pps.filterd (m0098409.ppops.net [127.0.0.1])\n\tby mx0a-001b2d01.pphosted.com (8.16.0.21/8.16.0.21) with SMTP id\n\tv7UEgCWI019621\n\tfor <linuxppc-dev@lists.ozlabs.org>; Wed, 30 Aug 2017 10:43:10 -0400","from e14.ny.us.ibm.com (e14.ny.us.ibm.com [129.33.205.204])\n\tby mx0a-001b2d01.pphosted.com with ESMTP id 2cntm0q4n0-1\n\t(version=TLSv1.2 cipher=AES256-SHA bits=256 verify=NOT)\n\tfor <linuxppc-dev@lists.ozlabs.org>; Wed, 30 Aug 2017 10:43:10 -0400","from localhost\n\tby e14.ny.us.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use\n\tOnly! Violators will be prosecuted\n\tfor <linuxppc-dev@lists.ozlabs.org> from <jallen@linux.vnet.ibm.com>; \n\tWed, 30 Aug 2017 10:43:08 -0400","from b01cxnp22033.gho.pok.ibm.com (9.57.198.23)\n\tby e14.ny.us.ibm.com (146.89.104.201) with IBM ESMTP SMTP Gateway:\n\tAuthorized Use Only! Violators will be prosecuted; \n\tWed, 30 Aug 2017 10:43:07 -0400","from b01ledav004.gho.pok.ibm.com (b01ledav004.gho.pok.ibm.com\n\t[9.57.199.109])\n\tby b01cxnp22033.gho.pok.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP\n\tid v7UEh6au24117356; Wed, 30 Aug 2017 14:43:06 GMT","from b01ledav004.gho.pok.ibm.com (unknown [127.0.0.1])\n\tby IMSVA (Postfix) with ESMTP id 8257F112051;\n\tWed, 30 Aug 2017 10:42:52 -0400 (EDT)","from [9.41.92.172] (unknown [9.41.92.172])\n\tby b01ledav004.gho.pok.ibm.com (Postfix) with ESMTP id 16221112040;\n\tWed, 30 Aug 2017 10:42:51 -0400 (EDT)"],"Subject":"Re: [PATCH] powerpc/pseries: Don't attempt to acquire drc during\n\tmemory hot add for assigned lmbs","To":"Nathan Fontenot <nfont@linux.vnet.ibm.com>,\n\tMichael Ellerman <mpe@ellerman.id.au>, linuxppc-dev@lists.ozlabs.org","References":"<fc2ad536-a772-f006-43c4-1ddf6e296ebb@linux.vnet.ibm.com>\n\t<87bmmx3hr8.fsf@concordia.ellerman.id.au>\n\t<cad79893-3d1a-f2ea-892f-6481a22f261a@linux.vnet.ibm.com>","From":"John Allen <jallen@linux.vnet.ibm.com>","Date":"Wed, 30 Aug 2017 09:43:00 -0500","User-Agent":"Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101\n\tThunderbird/52.2.1","MIME-Version":"1.0","In-Reply-To":"<cad79893-3d1a-f2ea-892f-6481a22f261a@linux.vnet.ibm.com>","Content-Type":"text/plain; charset=utf-8","Content-Language":"en-US","Content-Transfer-Encoding":"7bit","X-TM-AS-GCONF":"00","x-cbid":"17083014-0052-0000-0000-0000025811F3","X-IBM-SpamModules-Scores":"","X-IBM-SpamModules-Versions":"BY=3.00007636; HX=3.00000241; KW=3.00000007;\n\tPH=3.00000004; SC=3.00000226; SDB=6.00909763; UDB=6.00456310;\n\tIPR=6.00690048; \n\tBA=6.00005561; NDR=6.00000001; ZLA=6.00000005; ZF=6.00000009;\n\tZB=6.00000000; \n\tZP=6.00000000; ZH=6.00000000; ZU=6.00000002; MB=3.00016930;\n\tXFM=3.00000015; UTC=2017-08-30 14:43:07","X-IBM-AV-DETECTION":"SAVI=unused REMOTE=unused XFE=unused","x-cbparentid":"17083014-0053-0000-0000-000051D6304F","Message-Id":"<c2e6a370-b648-4a25-8fe8-2dad41dce5c8@linux.vnet.ibm.com>","X-Proofpoint-Virus-Version":"vendor=fsecure engine=2.50.10432:, ,\n\tdefinitions=2017-08-30_06:, , signatures=0","X-Proofpoint-Spam-Details":"rule=outbound_notspam policy=outbound score=0\n\tspamscore=0 suspectscore=0\n\tmalwarescore=0 phishscore=0 adultscore=0 bulkscore=0 classifier=spam\n\tadjust=0 reason=mlx scancount=1 engine=8.0.1-1707230000\n\tdefinitions=main-1708300220","X-BeenThere":"linuxppc-dev@lists.ozlabs.org","X-Mailman-Version":"2.1.23","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>","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>"}},{"id":1760813,"web_url":"http://patchwork.ozlabs.org/comment/1760813/","msgid":"<87d17ct4pu.fsf@concordia.ellerman.id.au>","date":"2017-08-31T10:24:29","subject":"Re: [PATCH] powerpc/pseries: Don't attempt to acquire drc during\n\tmemory hot add for assigned lmbs","submitter":{"id":46580,"url":"http://patchwork.ozlabs.org/api/people/46580/","name":"Michael Ellerman","email":"mpe@ellerman.id.au"},"content":"Nathan Fontenot <nfont@linux.vnet.ibm.com> writes:\n...\n>\n> Hopefully that helps clarify things.\n\nYep thanks. In short, read the code better Michael :)\n\nI folded in this hunk, which will keep the compiler happy and is also\ncorrect I believe. Basically in the success case (lmbs_added == lmbs_to_add)\nwe explicitly set rc to 0.\n\n@@ -870,6 +873,7 @@ static int dlpar_memory_add_by_count(u32 lmbs_to_add, struct property *prop)\n                                lmbs[i].base_addr, lmbs[i].drc_index);\n                        lmbs[i].reserved = 0;\n                }\n+               rc = 0;\n        }\n \n        return rc;\n\ncheers","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 3xjdn91whcz9sPm\n\tfor <patchwork-incoming@ozlabs.org>;\n\tThu, 31 Aug 2017 20:25:49 +1000 (AEST)","from lists.ozlabs.org (lists.ozlabs.org [IPv6:2401:3900:2:1::3])\n\tby lists.ozlabs.org (Postfix) with ESMTP id 3xjdn90JNTzDqZ6\n\tfor <patchwork-incoming@ozlabs.org>;\n\tThu, 31 Aug 2017 20:25:49 +1000 (AEST)","from ozlabs.org (ozlabs.org [IPv6:2401:3900:2:1::2])\n\t(using TLSv1.2 with cipher ADH-AES256-GCM-SHA384 (256/256 bits))\n\t(No client certificate requested)\n\tby lists.ozlabs.org (Postfix) with ESMTPS id 3xjdlf54MYzDqRM\n\tfor <linuxppc-dev@lists.ozlabs.org>;\n\tThu, 31 Aug 2017 20:24:30 +1000 (AEST)","from authenticated.ozlabs.org (localhost [127.0.0.1])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128\n\tbits)) (No client certificate requested)\n\tby ozlabs.org (Postfix) with ESMTPSA id 3xjdlf3Fjlz9sPm;\n\tThu, 31 Aug 2017 20:24:30 +1000 (AEST)"],"From":"Michael Ellerman <mpe@ellerman.id.au>","To":"Nathan Fontenot <nfont@linux.vnet.ibm.com>,\n\tJohn Allen <jallen@linux.vnet.ibm.com>, linuxppc-dev@lists.ozlabs.org","Subject":"Re: [PATCH] powerpc/pseries: Don't attempt to acquire drc during\n\tmemory hot add for assigned lmbs","In-Reply-To":"<cad79893-3d1a-f2ea-892f-6481a22f261a@linux.vnet.ibm.com>","References":"<fc2ad536-a772-f006-43c4-1ddf6e296ebb@linux.vnet.ibm.com>\n\t<87bmmx3hr8.fsf@concordia.ellerman.id.au>\n\t<cad79893-3d1a-f2ea-892f-6481a22f261a@linux.vnet.ibm.com>","User-Agent":"Notmuch/0.21 (https://notmuchmail.org)","Date":"Thu, 31 Aug 2017 20:24:29 +1000","Message-ID":"<87d17ct4pu.fsf@concordia.ellerman.id.au>","MIME-Version":"1.0","Content-Type":"text/plain","X-BeenThere":"linuxppc-dev@lists.ozlabs.org","X-Mailman-Version":"2.1.23","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>","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>"}},{"id":1760819,"web_url":"http://patchwork.ozlabs.org/comment/1760819/","msgid":"<87a82gt4bp.fsf@concordia.ellerman.id.au>","date":"2017-08-31T10:32:58","subject":"Re: [PATCH] powerpc/pseries: Don't attempt to acquire drc during\n\tmemory hot add for assigned lmbs","submitter":{"id":46580,"url":"http://patchwork.ozlabs.org/api/people/46580/","name":"Michael Ellerman","email":"mpe@ellerman.id.au"},"content":"John Allen <jallen@linux.vnet.ibm.com> writes:\n\n> On 08/30/2017 09:35 AM, Nathan Fontenot wrote:\n>> On 08/29/2017 09:35 PM, Michael Ellerman wrote:\n>>> John Allen <jallen@linux.vnet.ibm.com> writes:\n>>>\n>>>> Check if an LMB is assigned before attempting to call dlpar_acquire_drc in\n>>>> order to avoid any unnecessary rtas calls. This substantially reduces the\n>>>> running time of memory hot add on lpars with large amounts of memory.\n>>>>\n>>>> Signed-off-by: John Allen <jallen@linux.vnet.ibm.com>\n>>>> ---\n>>>> diff --git a/arch/powerpc/platforms/pseries/hotplug-memory.c b/arch/powerpc/platforms/pseries/hotplug-memory.c\n>>>> index ca9b2f4..95cf2ff 100644\n>>>> --- a/arch/powerpc/platforms/pseries/hotplug-memory.c\n>>>> +++ b/arch/powerpc/platforms/pseries/hotplug-memory.c\n>>>> @@ -817,6 +817,9 @@ static int dlpar_memory_add_by_count(u32 lmbs_to_add, struct property *prop)\n>>>>  \t\treturn -EINVAL;\n>>>>\n>>>>  \tfor (i = 0; i < num_lmbs && lmbs_to_add != lmbs_added; i++) {\n>>>> +\t\tif (lmbs[i].flags & DRCONF_MEM_ASSIGNED)\n>>>> +\t\t\tcontinue;\n>>>> +\n>>>>  \t\trc = dlpar_acquire_drc(lmbs[i].drc_index);\n>>>>  \t\tif (rc)\n>>>>  \t\t\tcontinue;\n>>>\n>>> This doesn't build for me, see below. What compiler are you using to\n>>> test this?> \n>>>   arch/powerpc/platforms/pseries/hotplug-memory.c: In function 'dlpar_memory':\n>>>   arch/powerpc/platforms/pseries/hotplug-memory.c:1081:2: error: 'rc' may be used uninitialized in this function [-Werror=maybe-uninitialized]\n>>>     return rc;\n>>>     ^\n>>>\n>> \n>> I don't see this build failure either, looks like its time to update my\n>> compiler too.\n>\n> This also builds for me. I'm using gcc version 4.8.5\n\nOK, that is fairly old.\n\nI generally use 6.x or 7.x, but I see the warning on 5.4.1 also.\n\ncheers","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 3xjdyc0yYlz9sPt\n\tfor <patchwork-incoming@ozlabs.org>;\n\tThu, 31 Aug 2017 20:34:00 +1000 (AEST)","from lists.ozlabs.org (lists.ozlabs.org [IPv6:2401:3900:2:1::3])\n\tby lists.ozlabs.org (Postfix) with ESMTP id 3xjdyb0TVKzDqYv\n\tfor <patchwork-incoming@ozlabs.org>;\n\tThu, 31 Aug 2017 20:33:59 +1000 (AEST)","from ozlabs.org (ozlabs.org [IPv6:2401:3900:2:1::2])\n\t(using TLSv1.2 with cipher ADH-AES256-GCM-SHA384 (256/256 bits))\n\t(No client certificate requested)\n\tby lists.ozlabs.org (Postfix) with ESMTPS id 3xjdxS21BvzDqGZ\n\tfor <linuxppc-dev@lists.ozlabs.org>;\n\tThu, 31 Aug 2017 20:33:00 +1000 (AEST)","from authenticated.ozlabs.org (localhost [127.0.0.1])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128\n\tbits)) (No client certificate requested)\n\tby ozlabs.org (Postfix) with ESMTPSA id 3xjdxR6wQDz9sPt;\n\tThu, 31 Aug 2017 20:32:59 +1000 (AEST)"],"From":"Michael Ellerman <mpe@ellerman.id.au>","To":"John Allen <jallen@linux.vnet.ibm.com>,\n\tNathan Fontenot <nfont@linux.vnet.ibm.com>, linuxppc-dev@lists.ozlabs.org","Subject":"Re: [PATCH] powerpc/pseries: Don't attempt to acquire drc during\n\tmemory hot add for assigned lmbs","In-Reply-To":"<c2e6a370-b648-4a25-8fe8-2dad41dce5c8@linux.vnet.ibm.com>","References":"<fc2ad536-a772-f006-43c4-1ddf6e296ebb@linux.vnet.ibm.com>\n\t<87bmmx3hr8.fsf@concordia.ellerman.id.au>\n\t<cad79893-3d1a-f2ea-892f-6481a22f261a@linux.vnet.ibm.com>\n\t<c2e6a370-b648-4a25-8fe8-2dad41dce5c8@linux.vnet.ibm.com>","User-Agent":"Notmuch/0.21 (https://notmuchmail.org)","Date":"Thu, 31 Aug 2017 20:32:58 +1000","Message-ID":"<87a82gt4bp.fsf@concordia.ellerman.id.au>","MIME-Version":"1.0","Content-Type":"text/plain","X-BeenThere":"linuxppc-dev@lists.ozlabs.org","X-Mailman-Version":"2.1.23","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>","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>"}},{"id":1761703,"web_url":"http://patchwork.ozlabs.org/comment/1761703/","msgid":"<3xkKq82ypvz9t3t@ozlabs.org>","date":"2017-09-01T13:29:55","subject":"Re: powerpc/pseries: Don't attempt to acquire drc during memory hot\n\tadd for assigned lmbs","submitter":{"id":69509,"url":"http://patchwork.ozlabs.org/api/people/69509/","name":"Michael Ellerman","email":"patch-notifications@ellerman.id.au"},"content":"On Wed, 2017-08-23 at 17:18:43 UTC, John Allen wrote:\n> Check if an LMB is assigned before attempting to call dlpar_acquire_drc in\n> order to avoid any unnecessary rtas calls. This substantially reduces the\n> running time of memory hot add on lpars with large amounts of memory.\n> \n> Signed-off-by: John Allen <jallen@linux.vnet.ibm.com>\n> Reviewed-by: Nathan Fontenot <nfont@linux.vnet.ibm.com>\n\nApplied to powerpc next, thanks.\n\nhttps://git.kernel.org/powerpc/c/afb5519fdb346201728040cab4e08c\n\ncheers","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 [103.22.144.68])\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 3xkLBW3xldz9rvt\n\tfor <patchwork-incoming@ozlabs.org>;\n\tFri,  1 Sep 2017 23:46:43 +1000 (AEST)","from lists.ozlabs.org (lists.ozlabs.org [IPv6:2401:3900:2:1::3])\n\tby lists.ozlabs.org (Postfix) with ESMTP id 3xkLBW37VSzDrCd\n\tfor <patchwork-incoming@ozlabs.org>;\n\tFri,  1 Sep 2017 23:46:43 +1000 (AEST)","from ozlabs.org (ozlabs.org [IPv6:2401:3900:2:1::2])\n\t(using TLSv1.2 with cipher ADH-AES256-GCM-SHA384 (256/256 bits))\n\t(No client certificate requested)\n\tby lists.ozlabs.org (Postfix) with ESMTPS id 3xkKq85QRjzDqjB\n\tfor <linuxppc-dev@lists.ozlabs.org>;\n\tFri,  1 Sep 2017 23:29:56 +1000 (AEST)","by ozlabs.org (Postfix, from userid 1034)\n\tid 3xkKq82ypvz9t3t; Fri,  1 Sep 2017 23:29:55 +1000 (AEST)"],"X-powerpc-patch-notification":"thanks","X-powerpc-patch-commit":"afb5519fdb346201728040cab4e08ce53e7ff4fd","In-Reply-To":"<fc2ad536-a772-f006-43c4-1ddf6e296ebb@linux.vnet.ibm.com>","To":"John Allen <jallen@linux.vnet.ibm.com>, linuxppc-dev@lists.ozlabs.org,\n\tNathan Fontenot <nfont@linux.vnet.ibm.com>","From":"Michael Ellerman <patch-notifications@ellerman.id.au>","Subject":"Re: powerpc/pseries: Don't attempt to acquire drc during memory hot\n\tadd for assigned lmbs","Message-Id":"<3xkKq82ypvz9t3t@ozlabs.org>","Date":"Fri,  1 Sep 2017 23:29:55 +1000 (AEST)","X-BeenThere":"linuxppc-dev@lists.ozlabs.org","X-Mailman-Version":"2.1.23","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>","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>"}}]