From patchwork Wed Oct 18 19:21:34 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: SF Markus Elfring X-Patchwork-Id: 827788 Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Received: from lists.ozlabs.org (lists.ozlabs.org [IPv6:2401:3900:2:1::3]) (using TLSv1.2 with cipher ADH-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 3yHMRV0RzFz9t6m for ; Thu, 19 Oct 2017 06:23:34 +1100 (AEDT) Received: from lists.ozlabs.org (lists.ozlabs.org [IPv6:2401:3900:2:1::3]) by lists.ozlabs.org (Postfix) with ESMTP id 3yHMRT6f2NzDrVZ for ; Thu, 19 Oct 2017 06:23:33 +1100 (AEDT) X-Original-To: linuxppc-dev@lists.ozlabs.org Delivered-To: linuxppc-dev@lists.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=users.sourceforge.net (client-ip=217.72.192.78; helo=mout.web.de; envelope-from=elfring@users.sourceforge.net; receiver=) Received: from mout.web.de (mout.web.de [217.72.192.78]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by lists.ozlabs.org (Postfix) with ESMTPS id 3yHMPq4kw4zDrRV for ; Thu, 19 Oct 2017 06:22:07 +1100 (AEDT) Received: from [192.168.1.2] ([77.181.46.217]) by smtp.web.de (mrweb101 [213.165.67.124]) with ESMTPSA (Nemesis) id 0MMn1H-1e9abz0DKJ-008c1U; Wed, 18 Oct 2017 21:21:40 +0200 Subject: [PATCH 1/5] powerpc-pseries: Delete five error messages for a failed memory allocation From: SF Markus Elfring To: linuxppc-dev@lists.ozlabs.org, Alex Williamson , Alexey Kardashevskiy , Andrew Morton , Bart Van Assche , Benjamin Herrenschmidt , David Gibson , Doug Ledford , Greg Kroah-Hartman , Johan Hovold , Masahiro Yamada , Michael Ellerman , Nathan Fontenot , Paul Mackerras , Rob Herring , Sahil Mehta , Tyrel Datwyler References: <0d221be4-1402-0499-d95e-afa4a30e1f33@users.sourceforge.net> Message-ID: <8cdd700c-47d1-0819-a3d1-17f79db45f8c@users.sourceforge.net> Date: Wed, 18 Oct 2017 21:21:34 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.4.0 MIME-Version: 1.0 In-Reply-To: <0d221be4-1402-0499-d95e-afa4a30e1f33@users.sourceforge.net> Content-Language: en-GB X-Provags-ID: V03:K0:ymPhddhkzMCGZJ8Tldz2lEkyVLftg+ZIlmL4uA8IXlc0d+7WCL5 ocNXJNYxD9LAY8zgt62TkZrrLKSEp5Z8qGLgLnQKDLsYKR794UjH3vosDRis2OHp4TiTQZj jJYj7ujEoxVNMY7ITWtIac722wU/7McrRngPpTMS6nB8CQPI5FwH2cIQef2+zTnZyCIFC7s VYENXCn92niZJVWNksEug== X-UI-Out-Filterresults: notjunk:1; V01:K0:zrYY8kdcL7Q=:XG/rVG0mpA/+erWOmEuhtA fVInjd7f5ep5+HdYlpZLSmSazDCssehiX4gDfdxYAHFtuBA/5frLkaX9Fj3sydwODElaylFbP a/1Jknw2nYlb70DId2WYfn4tqZIsA0T3m/p5Xg2+egxKDrgpgI4xM6WxJwvWZbeZkz9hab4hz OEGn6J8cAL8BJ78Dm57DhNP9qXzlRRP/oRJXIITdLSJUJYdcuVjDEBHs8Q+4nhJbjIoH2k5Mf AN5awB3USWsnJOHMsEFV6vYscgHUKR/SFdhI73bOVF5pI/Ly6H9wZmEHll63kErYL8WtHf89Y 9E9NLQSIV3Sf35AsK+lsoIOvpgQ+NN/MVvzDPSEHqvTWyZ8pukXYl7spTN3FN1bdA2b7+YIpY OGBt/RRrS7r/eJS8ODNR8I5WkM5RyrZIfaRDUjd6TEZWf/s3Dj6TMEJNsCFqUYUUZWsaZYFpO klqX2t4TQlqdQUHksLMW3LskH+qUfq2wcDM44QFc0hFz24R+fJWZibk8V0Y6lStcEgcsSxVfm SMp87dgL+C4jz7bgPIIuxJelKOw/CNBOBAsryWv8xIf6pnm0wOerAw+WMFazIphnVEoqjdhQ7 n5dRTQTcBtKJQWMJDIwX8HzEcYhoXteF5oEye+Toj5LJvBMa43cX5b7awf7h5Lc2fg+4wdAsX fgR/EVNg86Y7syLnmTLwgdjm/MPdmHP0qbAdiaYnqeVjaWjkbY3dQUtwZUdKGwkO8ym4OqARh 0eVZEIWczl3iJScLAIamybD9MbYCr8/9yer+y5JNpuIrzKeInBja/pWkGFn+epe7M8XSF34A0 3gNc7BZnqhDT7TlxTlouJcm/rnEKaErYe4HpEJc7SmBPlyArrI= X-BeenThere: linuxppc-dev@lists.ozlabs.org X-Mailman-Version: 2.1.24 Precedence: list List-Id: Linux on PowerPC Developers Mail List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: kernel-janitors@vger.kernel.org, LKML Errors-To: linuxppc-dev-bounces+patchwork-incoming=ozlabs.org@lists.ozlabs.org Sender: "Linuxppc-dev" From: Markus Elfring Date: Wed, 18 Oct 2017 16:39:01 +0200 Omit extra messages for a memory allocation failure in these functions. This issue was detected by using the Coccinelle software. Signed-off-by: Markus Elfring --- arch/powerpc/platforms/pseries/dtl.c | 5 +---- arch/powerpc/platforms/pseries/hvcserver.c | 2 -- arch/powerpc/platforms/pseries/iommu.c | 11 +++-------- arch/powerpc/platforms/pseries/vio.c | 4 +--- 4 files changed, 5 insertions(+), 17 deletions(-) diff --git a/arch/powerpc/platforms/pseries/dtl.c b/arch/powerpc/platforms/pseries/dtl.c index 18014cdeb590..467b9f578a7d 100644 --- a/arch/powerpc/platforms/pseries/dtl.c +++ b/arch/powerpc/platforms/pseries/dtl.c @@ -203,11 +203,8 @@ static int dtl_enable(struct dtl *dtl) n_entries = dtl_buf_entries; buf = kmem_cache_alloc_node(dtl_cache, GFP_KERNEL, cpu_to_node(dtl->cpu)); - if (!buf) { - printk(KERN_WARNING "%s: buffer alloc failed for cpu %d\n", - __func__, dtl->cpu); + if (!buf) return -ENOMEM; - } spin_lock(&dtl->lock); rc = -EBUSY; diff --git a/arch/powerpc/platforms/pseries/hvcserver.c b/arch/powerpc/platforms/pseries/hvcserver.c index 94a6e5612b0d..db2c20e65a58 100644 --- a/arch/powerpc/platforms/pseries/hvcserver.c +++ b/arch/powerpc/platforms/pseries/hvcserver.c @@ -177,8 +177,6 @@ int hvcs_get_partner_info(uint32_t unit_address, struct list_head *head, GFP_ATOMIC); if (!next_partner_info) { - printk(KERN_WARNING "HVCONSOLE: kmalloc() failed to" - " allocate partner info struct.\n"); hvcs_free_partner_info(head); return -ENOMEM; } diff --git a/arch/powerpc/platforms/pseries/iommu.c b/arch/powerpc/platforms/pseries/iommu.c index 7c181467d0ad..c92822fdf269 100644 --- a/arch/powerpc/platforms/pseries/iommu.c +++ b/arch/powerpc/platforms/pseries/iommu.c @@ -1063,19 +1063,14 @@ static u64 enable_ddw(struct pci_dev *dev, struct device_node *pdn) } len = order_base_2(max_addr); win64 = kzalloc(sizeof(struct property), GFP_KERNEL); - if (!win64) { - dev_info(&dev->dev, - "couldn't allocate property for 64bit dma window\n"); + if (!win64) goto out_failed; - } + win64->name = kstrdup(DIRECT64_PROPNAME, GFP_KERNEL); win64->value = ddwprop = kmalloc(sizeof(*ddwprop), GFP_KERNEL); win64->length = sizeof(*ddwprop); - if (!win64->name || !win64->value) { - dev_info(&dev->dev, - "couldn't allocate property name and value\n"); + if (!win64->name || !win64->value) goto out_free_prop; - } ret = create_ddw(dev, ddw_avail, &create, page_shift, len); if (ret != 0) diff --git a/arch/powerpc/platforms/pseries/vio.c b/arch/powerpc/platforms/pseries/vio.c index 12277bc9fd9e..74b919040e68 100644 --- a/arch/powerpc/platforms/pseries/vio.c +++ b/arch/powerpc/platforms/pseries/vio.c @@ -1386,10 +1386,8 @@ struct vio_dev *vio_register_device_node(struct device_node *of_node) /* allocate a vio_dev for this node */ viodev = kzalloc(sizeof(struct vio_dev), GFP_KERNEL); - if (viodev == NULL) { - pr_warn("%s: allocation failure for VIO device.\n", __func__); + if (!viodev) return NULL; - } /* we need the 'device_type' property, in order to match with drivers */ viodev->family = family; From patchwork Wed Oct 18 19:23:12 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: SF Markus Elfring X-Patchwork-Id: 827789 Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Received: from lists.ozlabs.org (lists.ozlabs.org [IPv6:2401:3900:2:1::3]) (using TLSv1.2 with cipher ADH-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 3yHMTK28Y1z9t6m for ; Thu, 19 Oct 2017 06:25:09 +1100 (AEDT) Received: from lists.ozlabs.org (lists.ozlabs.org [IPv6:2401:3900:2:1::3]) by lists.ozlabs.org (Postfix) with ESMTP id 3yHMTK1JXHzDrWS for ; Thu, 19 Oct 2017 06:25:09 +1100 (AEDT) X-Original-To: linuxppc-dev@lists.ozlabs.org Delivered-To: linuxppc-dev@lists.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=users.sourceforge.net (client-ip=217.72.192.78; helo=mout.web.de; envelope-from=elfring@users.sourceforge.net; receiver=) Received: from mout.web.de (mout.web.de [217.72.192.78]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by lists.ozlabs.org (Postfix) with ESMTPS id 3yHMRq4sgNzDrSt for ; Thu, 19 Oct 2017 06:23:51 +1100 (AEDT) Received: from [192.168.1.2] ([77.181.46.217]) by smtp.web.de (mrweb103 [213.165.67.124]) with ESMTPSA (Nemesis) id 0MTy9d-1deGOd0lJB-00Qn0O; Wed, 18 Oct 2017 21:23:18 +0200 Subject: [PATCH 2/5] powerpc-pseries: Improve nine size determinations From: SF Markus Elfring To: linuxppc-dev@lists.ozlabs.org, Alex Williamson , Alexey Kardashevskiy , Andrew Morton , Bart Van Assche , Benjamin Herrenschmidt , David Gibson , Doug Ledford , Greg Kroah-Hartman , Johan Hovold , Masahiro Yamada , Michael Ellerman , Nathan Fontenot , Paul Mackerras , Rob Herring , Sahil Mehta , Tyrel Datwyler References: <0d221be4-1402-0499-d95e-afa4a30e1f33@users.sourceforge.net> Message-ID: <7a16a571-2087-7926-3ff7-e6252cf34734@users.sourceforge.net> Date: Wed, 18 Oct 2017 21:23:12 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.4.0 MIME-Version: 1.0 In-Reply-To: <0d221be4-1402-0499-d95e-afa4a30e1f33@users.sourceforge.net> Content-Language: en-GB X-Provags-ID: V03:K0:43YSptpV4p59b8HwKVabIP7p1tMisY+EQ3DWehlg2PZ9hMzgFnE LZinZWPjM+rhv9a2IOgJYZGz6/r0y21tg7b2E0pq9ckPNSBh1IDHhecZlLBDT7Y0ZR7wLsS 2j73rKqiRQZHy2kTtwDJ1PkMWVq6/93eP/NkBTE75IJaaUSTG/6tcMUGhFVOCMxvoFV8v8B OJu+AL0JY0lCqYRLO0a0g== X-UI-Out-Filterresults: notjunk:1; V01:K0:Pjgr1Q20vG8=:pG8tprZZtDjhhQjcsOMQTl lGyg/v7sdHG7Czv5YEf4lBvcEg8Rze5NA2nJgFHZ4DljIrjUAejUquyH29cQUGo1uPjxRPN7C 4hHMMuhnnA320mLV+zl+VW3OCn16Qk4e44CVMEJT/RT9/kZmMeLqD7MVdLQ/n70EMX0QDqGXv dvl1+7EP/Ty1OOT/Vg+cTb2SvGWjDIImvSoPH0O9MdhGveaE/dRvo1itAiZktu+aMfFZ+sv8/ 6WcI5tR5fTY0wWvOq7LRycdYN2nqvKEBXlmsPzTdeRuDsLDJ9AM1iebtu/7HxdzyE052SrWIr seupcB6JeF9NMjweiK4J71uSk3nk5QCLhvJv0dRx6YzlG+SEBSRGVwC+DZVCnp7r5e6tcePcx MyVF4I2Sv31UtLENN2pwFA1W2wUQu88euABhU6Rb1rTGlnQ9MrzbWj0qla5A5KTSYE70v2G6H YzRFraBM66vLBdhxw9SQWvtiBsTiKQ2USA9IX5o0LAlEK4508a4k4y2gZ++OuJRg8McWu20Ew zM+o304annOqMuHZd+TSi/jEwcmLR0S1Px0kG6+WDV1XC1Ph53D2nmKWtlzqhdjVECyUXrTk+ QoQ/A/988ZYVc85jbxftYxSSA/+0jQ693ecBwLUq7ZhmpvOWYiUhyolBiQosyzOrZ5aQZVO4+ wDdXbfVTChbM5HL54FfywwOhmcF4fSSwvv7z96MONztCPsNQ8DHI/P+zzUrJKTTXrPzKtKsnV 9VW8pY5kCNbANJl8sdgURFqOKcSHqsJuFUhReiupqUhGolomU/WRfUn/5SeJH2r+5FbThB59m Y/nM7YSVhXmn3Mv/Ktb2wkMpaY+HnrIVH2Oc+zQ7jDu3nrMIuc= X-BeenThere: linuxppc-dev@lists.ozlabs.org X-Mailman-Version: 2.1.24 Precedence: list List-Id: Linux on PowerPC Developers Mail List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: kernel-janitors@vger.kernel.org, LKML Errors-To: linuxppc-dev-bounces+patchwork-incoming=ozlabs.org@lists.ozlabs.org Sender: "Linuxppc-dev" From: Markus Elfring Date: Wed, 18 Oct 2017 18:18:11 +0200 Replace the specification of data structures by pointer dereferences as the parameter for the operator "sizeof" to make the corresponding size determination a bit safer according to the Linux coding style convention. This issue was detected by using the Coccinelle software. Signed-off-by: Markus Elfring --- arch/powerpc/platforms/pseries/dlpar.c | 5 ++--- arch/powerpc/platforms/pseries/hvcserver.c | 5 ++--- arch/powerpc/platforms/pseries/iommu.c | 10 ++++------ arch/powerpc/platforms/pseries/vio.c | 5 ++--- 4 files changed, 10 insertions(+), 15 deletions(-) diff --git a/arch/powerpc/platforms/pseries/dlpar.c b/arch/powerpc/platforms/pseries/dlpar.c index 6e35780c5962..dca88997cb4b 100644 --- a/arch/powerpc/platforms/pseries/dlpar.c +++ b/arch/powerpc/platforms/pseries/dlpar.c @@ -389,11 +389,10 @@ void queue_hotplug_event(struct pseries_hp_errorlog *hp_errlog, struct pseries_hp_work *work; struct pseries_hp_errorlog *hp_errlog_copy; - hp_errlog_copy = kmalloc(sizeof(struct pseries_hp_errorlog), - GFP_KERNEL); + hp_errlog_copy = kmalloc(sizeof(*hp_errlog_copy), GFP_KERNEL); memcpy(hp_errlog_copy, hp_errlog, sizeof(struct pseries_hp_errorlog)); - work = kmalloc(sizeof(struct pseries_hp_work), GFP_KERNEL); + work = kmalloc(sizeof(*work), GFP_KERNEL); if (work) { INIT_WORK((struct work_struct *)work, pseries_hp_work_fn); work->errlog = hp_errlog_copy; diff --git a/arch/powerpc/platforms/pseries/hvcserver.c b/arch/powerpc/platforms/pseries/hvcserver.c index db2c20e65a58..b85cca04dd7d 100644 --- a/arch/powerpc/platforms/pseries/hvcserver.c +++ b/arch/powerpc/platforms/pseries/hvcserver.c @@ -173,9 +173,8 @@ int hvcs_get_partner_info(uint32_t unit_address, struct list_head *head, /* This is a very small struct and will be freed soon in * hvcs_free_partner_info(). */ - next_partner_info = kmalloc(sizeof(struct hvcs_partner_info), - GFP_ATOMIC); - + next_partner_info = kmalloc(sizeof(*next_partner_info), + GFP_ATOMIC); if (!next_partner_info) { hvcs_free_partner_info(head); return -ENOMEM; diff --git a/arch/powerpc/platforms/pseries/iommu.c b/arch/powerpc/platforms/pseries/iommu.c index c92822fdf269..b37d4fb20d1c 100644 --- a/arch/powerpc/platforms/pseries/iommu.c +++ b/arch/powerpc/platforms/pseries/iommu.c @@ -59,17 +59,15 @@ static struct iommu_table_group *iommu_pseries_alloc_group(int node) struct iommu_table *tbl = NULL; struct iommu_table_group_link *tgl = NULL; - table_group = kzalloc_node(sizeof(struct iommu_table_group), GFP_KERNEL, - node); + table_group = kzalloc_node(sizeof(*table_group), GFP_KERNEL, node); if (!table_group) goto fail_exit; - tbl = kzalloc_node(sizeof(struct iommu_table), GFP_KERNEL, node); + tbl = kzalloc_node(sizeof(*tbl), GFP_KERNEL, node); if (!tbl) goto fail_exit; - tgl = kzalloc_node(sizeof(struct iommu_table_group_link), GFP_KERNEL, - node); + tgl = kzalloc_node(sizeof(*tgl), GFP_KERNEL, node); if (!tgl) goto fail_exit; @@ -1062,7 +1060,7 @@ static u64 enable_ddw(struct pci_dev *dev, struct device_node *pdn) goto out_failed; } len = order_base_2(max_addr); - win64 = kzalloc(sizeof(struct property), GFP_KERNEL); + win64 = kzalloc(sizeof(*win64), GFP_KERNEL); if (!win64) goto out_failed; diff --git a/arch/powerpc/platforms/pseries/vio.c b/arch/powerpc/platforms/pseries/vio.c index 74b919040e68..cf0939eb3aee 100644 --- a/arch/powerpc/platforms/pseries/vio.c +++ b/arch/powerpc/platforms/pseries/vio.c @@ -754,8 +754,7 @@ static int vio_cmo_bus_probe(struct vio_dev *viodev) viodev->cmo.desired = VIO_CMO_MIN_ENT; size = VIO_CMO_MIN_ENT; - dev_ent = kmalloc(sizeof(struct vio_cmo_dev_entry), - GFP_KERNEL); + dev_ent = kmalloc(sizeof(*dev_ent), GFP_KERNEL); if (!dev_ent) return -ENOMEM; @@ -1385,7 +1384,7 @@ struct vio_dev *vio_register_device_node(struct device_node *of_node) } /* allocate a vio_dev for this node */ - viodev = kzalloc(sizeof(struct vio_dev), GFP_KERNEL); + viodev = kzalloc(sizeof(*viodev), GFP_KERNEL); if (!viodev) return NULL; From patchwork Wed Oct 18 19:24:25 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: SF Markus Elfring X-Patchwork-Id: 827790 Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Received: from lists.ozlabs.org (lists.ozlabs.org [103.22.144.68]) (using TLSv1.2 with cipher ADH-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 3yHMVw18mvz9t6m for ; Thu, 19 Oct 2017 06:26:32 +1100 (AEDT) Received: from lists.ozlabs.org (lists.ozlabs.org [IPv6:2401:3900:2:1::3]) by lists.ozlabs.org (Postfix) with ESMTP id 3yHMVw01pYzDqY1 for ; Thu, 19 Oct 2017 06:26:32 +1100 (AEDT) X-Original-To: linuxppc-dev@lists.ozlabs.org Delivered-To: linuxppc-dev@lists.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=users.sourceforge.net (client-ip=217.72.192.78; helo=mout.web.de; envelope-from=elfring@users.sourceforge.net; receiver=) Received: from mout.web.de (mout.web.de [217.72.192.78]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by lists.ozlabs.org (Postfix) with ESMTPS id 3yHMT85KZjzDrS9 for ; Thu, 19 Oct 2017 06:24:59 +1100 (AEDT) Received: from [192.168.1.2] ([77.181.46.217]) by smtp.web.de (mrweb102 [213.165.67.124]) with ESMTPSA (Nemesis) id 0M6DuI-1dK5nI1uX4-00y61C; Wed, 18 Oct 2017 21:24:30 +0200 Subject: [PATCH 3/5] powerpc-pseries: Delete an unnecessary variable initialisation in iommu_pseries_alloc_group() From: SF Markus Elfring To: linuxppc-dev@lists.ozlabs.org, Alex Williamson , Alexey Kardashevskiy , Andrew Morton , Bart Van Assche , Benjamin Herrenschmidt , David Gibson , Doug Ledford , Greg Kroah-Hartman , Johan Hovold , Masahiro Yamada , Michael Ellerman , Nathan Fontenot , Paul Mackerras , Rob Herring , Sahil Mehta , Tyrel Datwyler References: <0d221be4-1402-0499-d95e-afa4a30e1f33@users.sourceforge.net> Message-ID: <9c71e3e0-8998-fd02-e3a3-ef219d82ee32@users.sourceforge.net> Date: Wed, 18 Oct 2017 21:24:25 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.4.0 MIME-Version: 1.0 In-Reply-To: <0d221be4-1402-0499-d95e-afa4a30e1f33@users.sourceforge.net> Content-Language: en-GB X-Provags-ID: V03:K0:JiAdRTKxPRI9Nv89WKCOU9aehrUvj7FsGLE68HeH54jWjAzCkIt NUHWaoz7kf5UXoqiALhjixXaXdiyUj1qyRBIeBC8SnxK93m2SKK3Y/auQtBCHuW4DFrMLIX VodsYGs149AJyD5ZgMac5AJQAiKSJALW+IikrXVG+w6DY6iqFiXgZpleDSE3AqaMwN1l+AU yR03Gi/dEV29wiH74WDrw== X-UI-Out-Filterresults: notjunk:1; V01:K0:1arycx4xylA=:wd4RBqGyuZ7x3E5eulwBib jMu8t3KlMqylu7/x4cgfUsPW85zBM3RK0wTgPLLK5rAaqP6MdgJcuCx4UzfH7yr7hGXfTyhEa fcWdSwC5nPz6yISfC8JfGmcDGVltZjQDL7VcGOfE0fbvNt4oyFVu2UKI3Jrg5kWIL7TMNctff Unx6eioBTPQo+SWMuS4CCfP43mv+ej5CUkKUMvLlW7HewisLysRz3iVJ1xErqXUiuYsWJ5JwH POxe23ofavoFhnYElYS3hr35IOXelQ8N4WJRzndsasZIcX3tkBcnLK2h2E81eDKk6893hcbb6 jqGgso9fBDNY2ik9dZ6N/c2WfDQVqSEXcZgyjgUcaInZq8q/dIK6suBDaJ6aZic/rLs4LQ+nT DeGCR5oo/6VFQax90bT73+lUtr6mzvJ4QQtiRJbdOmKqnMTT+vlWtjbaOX1n6IlNiFMc6E5rq rVWJ9ZhPo1U0lSYtFoyN4/r4J9gKrU9uzq2IT2yJZck4R2atu+iTa6SXPew7N9JJZ06vdm5YA nsNaDu6eecMMjgK8l/Uqot7FrmeKGQ182e37Ik+xjpVgbGatTzs2A80wbXPFaypE377zocGbv JYBwUeiQRd/zre58FUcrPJE6ca9hE0Fkjl2fQmZNQ3EX8vwEM7PjwLY5usbZLhQM0aDhSOsRK Q3v4fSZGXADtkg4WZqGjvRSwqPkGFQZpqVfaS6HKfrZrMT9KBN8GUXfkUhvNwImUZWcH62bXX DBUGqYIg48wUkGoOmkWUA4Zt4yECX2eDmqwhacemY/WVD26ZSjX0KLA3nvS/VNAnTWP9Awb2p M2kK9rjyKE4E65dre/FAzwPwIBHaaAWIuR1+gMsl+xE3JydvQs= X-BeenThere: linuxppc-dev@lists.ozlabs.org X-Mailman-Version: 2.1.24 Precedence: list List-Id: Linux on PowerPC Developers Mail List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: kernel-janitors@vger.kernel.org, LKML Errors-To: linuxppc-dev-bounces+patchwork-incoming=ozlabs.org@lists.ozlabs.org Sender: "Linuxppc-dev" From: Markus Elfring Date: Wed, 18 Oct 2017 19:14:39 +0200 The variable "table_group" will be set to an appropriate pointer. Thus omit the explicit initialisation at the beginning. Signed-off-by: Markus Elfring --- arch/powerpc/platforms/pseries/iommu.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/powerpc/platforms/pseries/iommu.c b/arch/powerpc/platforms/pseries/iommu.c index b37d4fb20d1c..b6c12b8e3ace 100644 --- a/arch/powerpc/platforms/pseries/iommu.c +++ b/arch/powerpc/platforms/pseries/iommu.c @@ -55,7 +55,7 @@ static struct iommu_table_group *iommu_pseries_alloc_group(int node) { - struct iommu_table_group *table_group = NULL; + struct iommu_table_group *table_group; struct iommu_table *tbl = NULL; struct iommu_table_group_link *tgl = NULL; From patchwork Wed Oct 18 19:26:10 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: SF Markus Elfring X-Patchwork-Id: 827791 Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Received: from lists.ozlabs.org (lists.ozlabs.org [IPv6:2401:3900:2:1::3]) (using TLSv1.2 with cipher ADH-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 3yHMXT1YSvz9t44 for ; Thu, 19 Oct 2017 06:27:53 +1100 (AEDT) Received: from lists.ozlabs.org (lists.ozlabs.org [IPv6:2401:3900:2:1::3]) by lists.ozlabs.org (Postfix) with ESMTP id 3yHMXT0dj1zDrLf for ; Thu, 19 Oct 2017 06:27:53 +1100 (AEDT) X-Original-To: linuxppc-dev@lists.ozlabs.org Delivered-To: linuxppc-dev@lists.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=users.sourceforge.net (client-ip=217.72.192.78; helo=mout.web.de; envelope-from=elfring@users.sourceforge.net; receiver=) Received: from mout.web.de (mout.web.de [217.72.192.78]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by lists.ozlabs.org (Postfix) with ESMTPS id 3yHMWC0lnVzDqGj for ; Thu, 19 Oct 2017 06:26:46 +1100 (AEDT) Received: from [192.168.1.2] ([77.181.46.217]) by smtp.web.de (mrweb102 [213.165.67.124]) with ESMTPSA (Nemesis) id 0Lvjn6-1dAiMd2hp6-017TWn; Wed, 18 Oct 2017 21:26:15 +0200 Subject: [PATCH 4/5] powerpc-pseries: Return directly after a failed kzalloc_node() in iommu_pseries_alloc_group() From: SF Markus Elfring To: linuxppc-dev@lists.ozlabs.org, Alex Williamson , Alexey Kardashevskiy , Andrew Morton , Bart Van Assche , Benjamin Herrenschmidt , David Gibson , Doug Ledford , Greg Kroah-Hartman , Johan Hovold , Masahiro Yamada , Michael Ellerman , Nathan Fontenot , Paul Mackerras , Rob Herring , Sahil Mehta , Tyrel Datwyler References: <0d221be4-1402-0499-d95e-afa4a30e1f33@users.sourceforge.net> Message-ID: Date: Wed, 18 Oct 2017 21:26:10 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.4.0 MIME-Version: 1.0 In-Reply-To: <0d221be4-1402-0499-d95e-afa4a30e1f33@users.sourceforge.net> Content-Language: en-GB X-Provags-ID: V03:K0:QsovCEiQ4dwedhne0r9pqqBvU8fmmQEPDLByucW+NpiH2CU+rf8 OgOai4fLD2VelVQhEzgFO+Tnug3SbyiCjuEmH78dDnHTtCCoc3sREW141aCfRsdAv8xS/ri /M8O8s2oU4t0GLxqp+4CTxMgGvVj6/1u2K59LILVn5jwGqfw1m5hsvM+t50yLX4DE3GFkyM vYqGeVw+133nu0/rx9nkw== X-UI-Out-Filterresults: notjunk:1; V01:K0:VsfLi/XycAE=:3Dls24OLe3L9NGTP4C7R2Y fArb4yletM/XqLQheU6YPq100tb8eNjtH1I211IkebzYij147me8CpIdxNY9LpnhmFjwnH4dq YTi7Tgud4y+Gg/3nbz93PwWYdoIAtfmHATbguVeyECHonl0bl1B5Hgkov5ek9AacDJLH1yPIN sAStwxtlgLshit8kwg0duVbseG6C84qpu0awivlJn8vaCZ8DPG01bVIJkMsHLcY5AUsiiwhwt 6XsK70gAHoOO+vvqO9i6s6eJMtrHoJ9FPkEnmgCywvyUTxr/CagzQseVCvK9r9Mzdy90AIquq mEysAckPpC2hpSM6y44RMfcdWIl8mkLXt1cpRKawSJ+Eneht4cAi8QmhLtnRGbh6vjj7DZnrx +KTJh9grX1khSyEfC3pYrHQfcLOIZnbjS+gGu0gya+fe70ju9B76WDfYlAUxyGHor1Ws9SfLT Ubj7vM3WNO+4T6vOj7Q0q9j1qlFDjbXvuQbvV23uzImWw/1m/qV9aKnZhICd7nr3wpMjecKCq DW8U25/aPTdAv+BgrhtNuq2n0Jbl+13KU6hCs6495YRRpL+EA47X2MOFabfjBADuFgo3L5OOP 4Z8sXk9W4E8kS96JosqQCls5pZOHo5CLbYSwr1g/43KSI9YNIefqe3hdezHhaVZf39TcBSOkr Wctw5Ux7zcPe9uoIZO+E1I6oCR/moyVbmXNRDsoRofasGLTPobeDDxPBvAIdKXKFVfCFXRQTk ow8aNWPk7yhSBcdh62If4wjq6pDz4HfWWsUr7gZy9CbVZ+ONpY8r0O+7DUN80zNrQtAMkqfUE huh+krXpVM33YDaUJXNyETk5pAXvPUUzPdxxfd6icfKG5EAiNg= X-BeenThere: linuxppc-dev@lists.ozlabs.org X-Mailman-Version: 2.1.24 Precedence: list List-Id: Linux on PowerPC Developers Mail List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: kernel-janitors@vger.kernel.org, LKML Errors-To: linuxppc-dev-bounces+patchwork-incoming=ozlabs.org@lists.ozlabs.org Sender: "Linuxppc-dev" From: Markus Elfring Date: Wed, 18 Oct 2017 20:15:32 +0200 Return directly after a call of the function "kzalloc_node" failed at the beginning. Signed-off-by: Markus Elfring --- arch/powerpc/platforms/pseries/iommu.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/powerpc/platforms/pseries/iommu.c b/arch/powerpc/platforms/pseries/iommu.c index b6c12b8e3ace..207ff8351af1 100644 --- a/arch/powerpc/platforms/pseries/iommu.c +++ b/arch/powerpc/platforms/pseries/iommu.c @@ -61,7 +61,7 @@ static struct iommu_table_group *iommu_pseries_alloc_group(int node) table_group = kzalloc_node(sizeof(*table_group), GFP_KERNEL, node); if (!table_group) - goto fail_exit; + return NULL; tbl = kzalloc_node(sizeof(*tbl), GFP_KERNEL, node); if (!tbl) From patchwork Wed Oct 18 19:27:57 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: SF Markus Elfring X-Patchwork-Id: 827792 Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Received: from lists.ozlabs.org (lists.ozlabs.org [IPv6:2401:3900:2:1::3]) (using TLSv1.2 with cipher ADH-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 3yHMZR0Rmzz9t7W for ; Thu, 19 Oct 2017 06:29:35 +1100 (AEDT) Received: from lists.ozlabs.org (lists.ozlabs.org [IPv6:2401:3900:2:1::3]) by lists.ozlabs.org (Postfix) with ESMTP id 3yHMZQ6XzbzDqG6 for ; Thu, 19 Oct 2017 06:29:34 +1100 (AEDT) X-Original-To: linuxppc-dev@lists.ozlabs.org Delivered-To: linuxppc-dev@lists.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=users.sourceforge.net (client-ip=212.227.17.12; helo=mout.web.de; envelope-from=elfring@users.sourceforge.net; receiver=) Received: from mout.web.de (mout.web.de [212.227.17.12]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by lists.ozlabs.org (Postfix) with ESMTPS id 3yHMYG12glzDq5x for ; Thu, 19 Oct 2017 06:28:33 +1100 (AEDT) Received: from [192.168.1.2] ([77.181.46.217]) by smtp.web.de (mrweb101 [213.165.67.124]) with ESMTPSA (Nemesis) id 0Lw0ht-1dARLz3mDl-017lam; Wed, 18 Oct 2017 21:28:03 +0200 Subject: [PATCH 5/5] powerpc-pseries: Less function calls in iommu_pseries_alloc_group() after error detection From: SF Markus Elfring To: linuxppc-dev@lists.ozlabs.org, Alex Williamson , Alexey Kardashevskiy , Andrew Morton , Bart Van Assche , Benjamin Herrenschmidt , David Gibson , Doug Ledford , Greg Kroah-Hartman , Johan Hovold , Masahiro Yamada , Michael Ellerman , Nathan Fontenot , Paul Mackerras , Rob Herring , Sahil Mehta , Tyrel Datwyler References: <0d221be4-1402-0499-d95e-afa4a30e1f33@users.sourceforge.net> Message-ID: <45cdde43-075d-10c0-ab34-1ce1aa4dfa17@users.sourceforge.net> Date: Wed, 18 Oct 2017 21:27:57 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.4.0 MIME-Version: 1.0 In-Reply-To: <0d221be4-1402-0499-d95e-afa4a30e1f33@users.sourceforge.net> Content-Language: en-GB X-Provags-ID: V03:K0:XKZ1g09phOUuy/9yCBphnrnQnHdZy3LvR1wuUysXM8nlplJ3jGf WaRt6wwI1kNkerCXBuZ9Mmv9vhKgMSq/nwYCxg7zaFwCMbdzVniukkD+v+JwU3AKs3oNCnX oATk5gmeIUBfJItIAWVmTIxf6Dut4nbyueXQvBjuThhrcGVUatNzLqtudM9jbILy0s4z/Df REm4+0xCKeCb/+llzZ6WQ== X-UI-Out-Filterresults: notjunk:1; V01:K0:WETUOQ7UZFU=:UWv+QoAO78+PK2QgiEg3bj QIY/bAf+NM9pcOUWFquCvBpDabN9jNFLCN/E5RayFs8SoipuZHjjwsUke9CI3x1F7/NKCTnFi bwgqWxM7itoz4C8agTK2Jjib1/KimqWVbuEIfaHfg+7txnqiHuZmULRlRf88Plu2Pn2fnXJGP vSZyEPj8FuWLahYwQpFtGxIJH2AW+02DmCaoebLkqfK1k9OWaJ+dHxJwk/tRTMlntSpJG/zJ4 plpM2voyaHCpaxUlkaAtzkT770asUBqJxrHzMl+vQJgM41OJhKWYw4eAyRxGO4vqNYUUWRTMg yPUbFdOqNc8n9koSNytoW6EsbiQeNwu1HN4ib9G2Gz5Cq9AavnPQQKq6VCF1sYdaAdUgJiugA sfNs9+2AAVoFI6plN8XK05zIdE2wthOdV50cMCoVfCRm8LLDdf9tT3/qhpUC8LCUgOqHNeCKe prT2RbL5SiQdCJXbDwTOpaBfYG9L3MtIQM2p95OOu7wjgxIbkNIuc+XIKjU857WI1FMM+bR6y mcxUc0aceACuQnoUVZakTCzSAzufmfnAuWqPN39X9yjqGeVp5YM6ck00KIyEeB8cAcCCo6meB Zh93+swqc0MmWWQ+cuSO7u5Qfee5UbN1QnFgZEyKYWl/ErlSoEM4i7C/UfeAC1X0iwy2tOFAK G0po1b3uZh6kNK1KDof5L/Bqa1fFAV3haN6VE76TzrfPhEHiOYbRxUfhBWoJpszOzaAgm5i3K D7hv4MGzvLoREVjJN7jfT6ExOT6VjVORNahSFY282Sb8zMYcwteNPibS6GzLA3Beg06YOqpzN TpEOsSvFR8MkMJQ88lYzjK9dbp4HCMUR3DaCtViKR89rVL/6c0= X-BeenThere: linuxppc-dev@lists.ozlabs.org X-Mailman-Version: 2.1.24 Precedence: list List-Id: Linux on PowerPC Developers Mail List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: kernel-janitors@vger.kernel.org, LKML Errors-To: linuxppc-dev-bounces+patchwork-incoming=ozlabs.org@lists.ozlabs.org Sender: "Linuxppc-dev" From: Markus Elfring Date: Wed, 18 Oct 2017 20:48:52 +0200 The kfree() function was called in up to two cases by the iommu_pseries_alloc_group() function during error handling even if the passed variable contained a null pointer. * Adjust jump targets according to the Linux coding style convention. * Delete initialisations for the variables "tbl" and "tgl" which became unnecessary with this refactoring. Signed-off-by: Markus Elfring --- arch/powerpc/platforms/pseries/iommu.c | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/arch/powerpc/platforms/pseries/iommu.c b/arch/powerpc/platforms/pseries/iommu.c index 207ff8351af1..13b424f34039 100644 --- a/arch/powerpc/platforms/pseries/iommu.c +++ b/arch/powerpc/platforms/pseries/iommu.c @@ -56,8 +56,8 @@ static struct iommu_table_group *iommu_pseries_alloc_group(int node) { struct iommu_table_group *table_group; - struct iommu_table *tbl = NULL; - struct iommu_table_group_link *tgl = NULL; + struct iommu_table *tbl; + struct iommu_table_group_link *tgl; table_group = kzalloc_node(sizeof(*table_group), GFP_KERNEL, node); if (!table_group) @@ -65,11 +65,11 @@ static struct iommu_table_group *iommu_pseries_alloc_group(int node) tbl = kzalloc_node(sizeof(*tbl), GFP_KERNEL, node); if (!tbl) - goto fail_exit; + goto free_group; tgl = kzalloc_node(sizeof(*tgl), GFP_KERNEL, node); if (!tgl) - goto fail_exit; + goto free_table; INIT_LIST_HEAD_RCU(&tbl->it_group_list); kref_init(&tbl->it_kref); @@ -80,11 +80,10 @@ static struct iommu_table_group *iommu_pseries_alloc_group(int node) return table_group; -fail_exit: - kfree(tgl); - kfree(table_group); +free_table: kfree(tbl); - +free_group: + kfree(table_group); return NULL; }