From patchwork Sat Jan 21 14:45:19 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: 718062 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 3v5L4l4Sv8z9s2Q for ; Sun, 22 Jan 2017 01:46:47 +1100 (AEDT) Received: from lists.ozlabs.org (lists.ozlabs.org [IPv6:2401:3900:2:1::3]) by lists.ozlabs.org (Postfix) with ESMTP id 3v5L4l3hcGzDqhV for ; Sun, 22 Jan 2017 01:46:47 +1100 (AEDT) X-Original-To: linuxppc-dev@lists.ozlabs.org Delivered-To: linuxppc-dev@lists.ozlabs.org Received: from mout.web.de (mout.web.de [212.227.15.3]) (using TLSv1.2 with cipher DHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by lists.ozlabs.org (Postfix) with ESMTPS id 3v5L3k12FfzDqVw for ; Sun, 22 Jan 2017 01:45:53 +1100 (AEDT) Received: from [192.168.1.2] ([78.49.16.114]) by smtp.web.de (mrweb004 [213.165.67.108]) with ESMTPSA (Nemesis) id 0MWNHW-1d1HvP3sa2-00Xfb2; Sat, 21 Jan 2017 15:45:30 +0100 To: linuxppc-dev@lists.ozlabs.org, Benjamin Herrenschmidt , Lennart Sorensen , Michael Ellerman , Nicholas Piggin , Oliver O'Halloran , Paul Mackerras From: SF Markus Elfring Subject: [PATCH] powerpc/sstep: Return directly after a failed address_ok() in emulate_step() Message-ID: Date: Sat, 21 Jan 2017 15:45:19 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.6.0 MIME-Version: 1.0 X-Provags-ID: V03:K0:Yn0agubIQoTPEBU/OBH/OuZ4HVK90MG4S1qsA6bxaxeTowdwxx3 Q3fMKcxjQbq93vPB4T4K6chb3LGUMoSKshn1LhOdX61JqDrkzWtxRtD1PBMSfErIsuP+Pyf a2r6cCAVzMKafLOPNCDia9xVn++0olK59GSye8w8CptLJ/iI24FaEMIPOuTsdXMlXk2FlPU +P/rLxXD3HxvyOw8WVpFQ== X-UI-Out-Filterresults: notjunk:1; V01:K0:z2Ri9SoyQCs=:qqj62gUDgNNJLrLelge7O3 dpV1DGsrzjTHvosjiZ/R3e6AAJ+GEF1fxUx9F0SDVFAnES33tVYp1Mi43j6s6htiX1cxwsdXn b+VDCAxiUrz6eMFVD4w7InaGZ712zVVqSFognsO1ijh1eoihSL+tMxL6ovPT3dkHE84IrHxK3 lDgX68sxgKdMN5L9uND8fcUqJ6hmLGU1Uzgxm5j6/hgeehczNI2/LXZcklluaIG4lLpqzSx83 AfNijq4rq4wgQUDbFrL92cCaW1yjxXNF6IDf8oGLcRzYxil1RaZbKsA2WDGxuvsDBqazOUv20 LgmL1duB6r6q0JwC0V48F+gfkDpeRf1dxSyWSUFsG2+MrFCMHiUY3HT9tK1JniM3Ck8pUMCNZ AF2HfBe8coik/2pzwjPDko0F+5Y+LpbfEdJFV1LeTMMGyi0lybWZPowogP3urEfjQUFJw6/C8 QIJt9k3Vf6lscDhlszIy36nsDcoOsYlyDYJGkAX5/KCQVoATFsjTmGwdcQUxu3N8dJtAh4DHX jdeo09tK7jWqyaQ86oEka6IJ1tJqi3W67NKgeo7uSC3sBczuzmHbwMRodrNqpSP2DhTC5EPy4 5Aqvpik0qYfKJScykkvDdsN7kZ+D+4DmAmBGiqu45KyREDsSXUer4NtGqUcyVnk0X2KTiqqU6 I9Ls2l+CnOOn6sXXw2R5fKoBXjVqKNrmsQauCxXUriLn/grRdBc3ObtqcM9zAcE2qQNcqDAM8 ciI4QDMSs9AVnhst2jLCObJ+A0ylbTFrrLDG9LG+XUobimZ+Bk0GawhgXuRn+VBBz51xsezsB Hd4sC1A X-BeenThere: linuxppc-dev@lists.ozlabs.org X-Mailman-Version: 2.1.23 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: Sat, 21 Jan 2017 15:30:15 +0100 * Return directly after a call of the function "address_ok" failed in a case block. This issue was detected by using the Coccinelle software. * Delete two error code assignments which became unnecessary with this refactoring. Signed-off-by: Markus Elfring --- arch/powerpc/lib/sstep.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/arch/powerpc/lib/sstep.c b/arch/powerpc/lib/sstep.c index 9c78a9c102c3..c33519c25b47 100644 --- a/arch/powerpc/lib/sstep.c +++ b/arch/powerpc/lib/sstep.c @@ -1803,9 +1803,8 @@ int __kprobes emulate_step(struct pt_regs *regs, unsigned int instr) return 0; if (op.ea & (size - 1)) break; /* can't handle misaligned */ - err = -EFAULT; if (!address_ok(regs, op.ea, size)) - goto ldst_done; + return 0; err = 0; switch (size) { case 4: @@ -1828,9 +1827,8 @@ int __kprobes emulate_step(struct pt_regs *regs, unsigned int instr) return 0; if (op.ea & (size - 1)) break; /* can't handle misaligned */ - err = -EFAULT; if (!address_ok(regs, op.ea, size)) - goto ldst_done; + return 0; err = 0; switch (size) { case 4: