From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-pj1-f44.google.com (mail-pj1-f44.google.com [209.85.216.44]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 10F0E2C15B5 for ; Tue, 7 Apr 2026 14:32:21 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.216.44 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775572343; cv=none; b=rVaG9iU1huMLmWkr5iDs/Ai8CROMw4H5wcqHd1hC+hIjiCgLoIIsUiPBLlmFW/KRzDeTyAjb1BWWVe4OkInT71ePWTmnNXmmGQXrAZ707s5AACWmO7P/fhXED1/82UxKaG//ktASXReyYRsx7g4QxT0ky7Uyu5zU2ZwtPHuBf88= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775572343; c=relaxed/simple; bh=cpDEHoVHwyFqV9HkmQmw2SPLd4T6pLmzYa0QuFcZkSc=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=ajRt5MK6ITs4kXyj8fAcsT3gzNXgq8e4ATgIRzFh7f21V37Anc27uaP71fVYDcBoMGOsy2K7reoNcMQxeKwxGPO0Te/4XyXLCVt7G4Ssg9YTxy/Qf6173Gg+aCch/BaNBaZjiaopKJTyah5P1qEA6Z6p3zmhz5sCvCailhSeU+A= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=mUTBrM0j; arc=none smtp.client-ip=209.85.216.44 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="mUTBrM0j" Received: by mail-pj1-f44.google.com with SMTP id 98e67ed59e1d1-35da9c0c007so4850378a91.2 for ; Tue, 07 Apr 2026 07:32:21 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1775572341; x=1776177141; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=PY3ak4gklrB7dT78Kl3RlnvUvqFrPFBtFQWCDk/TdtE=; b=mUTBrM0jPWT+E9zdBLjqSUY5J6GS5B/0t8yP1lR0KNqMcyDEadYJMasDpBu53tN2OJ x80B5u3LbWKc+6mRhxBWv0/8LaTLoeSKFfjISLWflQPnmCNaoSBUjbjM6kdKx0urG/9N OniV2NJP4PFoUxwfvJTv8SpcyrRpsMVN7kMhMiqFQ4EN7eWi6cCWDk/ef79g1WpYuzse oahVehzYq+JxPhWy0o6+0dwyqg5WnONojTX50mjojafBsPx87l47QfGdoiKnU/MYnFjA 6lHmtiZuYU2RVhs/0+dk/JZLyLDjs26yX6PTNQRP21Jn8eNkzad46uIhJBqpQy4WZSuO KOPg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1775572341; x=1776177141; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=PY3ak4gklrB7dT78Kl3RlnvUvqFrPFBtFQWCDk/TdtE=; b=sd/R4WDqbQpAw/OxYVfY2xnRbJlzm8VxwhNYFtCQqzoD6LQxMwHGI0HReuCq7FUYui 2AkyST7V0u0jAFPjlvertfyoTnR/jw6eO5In4pBuaNdgwVbSXHYCGi+af6KLuo43A2xC dUkRA2kecVuPxmAZQQd1cWGeqpRSfcGuFlWGwsEUFXMKkIZ5EVlKCm+ltky3TA61+DB8 kWZ+rJsZmerL4XSlnmQGDAPdnC+Ozqvo9vZYX8W3gBp0cKWTBh+I9vXCeJSUTFsLfh7J MYqj2250N1bJrgm4TMBA6FxzogaHWGmE0D4n6r4BVcluNhZEPjDny9s4Eat6sJEcBbLJ awnQ== X-Forwarded-Encrypted: i=1; AJvYcCULT0w1XzPDCudlyAXtWZlHOoNdjwlbV8zuLuEK6qK78qcAdkKl0xFj9SvL4BMrQZieQbOgwSpjtzs1clk=@vger.kernel.org X-Gm-Message-State: AOJu0YwSSyq9NewM+wHZgWkiZKmkr6ATJnr5e9nztjoy592HNTbfAKPB DOFwnk2o53kSANIj57KInQRvHOgHCYajjj9/7x6f65g+5Kw0SsbLarAC X-Gm-Gg: AeBDievS3dYSnZxvqo3sf/QQ968IWO3E7MH+N4xj/SeD/VGzILLT6XCZk4ND6Dx8VLo xWz4z4bAfBG7geGQE5QuCZpfdTAEeQnuc0Vz8Mgogb2dAcasQEsMiose+Chymg9dVoeQDk/8/n/ jEpc7fucZ8ghplbH1MruiJFzvGmMS2SF/BdyuZeiyItbnHEUUWa3rAkoJI2dPK/RIvnQWeAFMMz KX2fXfqy7pw0v3wPWctK5avROqhhxi7rGa3atNzyNr5mjOwopI9hogD0XeQfTkaymLbX/ixrMAw a+vtRX3bGAFioErt4z6B0yBrW0QUg1w42yJyhCJvUVPqgt0+hA96fm54wCkyq26nXcZaCpgwwNK dG2mnKZCRtWipsqieK0N2qEppnRpgqG+wRgnGOKR3o8muFF8qI8u7aIz+eGQZ7juLDneZPfHD1r fR0HCPJ+g7Lvy7JyLG/6rDX9pHFjOQv20do1gFMuG7imcDtxDDB6F6kSj7I+S+ X-Received: by 2002:a17:903:8c5:b0:2b2:4d36:7aa with SMTP id d9443c01a7336-2b281932d71mr188155645ad.35.1775572341300; Tue, 07 Apr 2026 07:32:21 -0700 (PDT) Received: from Mac.localdomain.com ([49.205.216.49]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-2b2749cbc58sm181201525ad.78.2026.04.07.07.32.17 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 07 Apr 2026 07:32:20 -0700 (PDT) From: "Ritesh Harjani (IBM)" To: linuxppc-dev@lists.ozlabs.org, Haren Myneni Cc: Madhavan Srinivasan , Christophe Leroy , Venkat Rao Bagalkote , Nicholas Piggin , linux-kernel@vger.kernel.org, "Ritesh Harjani (IBM)" Subject: [RFC v1 6/6] pseries/papr-hvpipe: Simplify error handling in papr_hvpipe_init() Date: Tue, 7 Apr 2026 20:01:40 +0530 Message-ID: <15828cd5a57af373fa2e7025bdb7ef0d0a1143bb.1775569027.git.ritesh.list@gmail.com> X-Mailer: git-send-email 2.50.1 In-Reply-To: References: Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Remove such 3 levels of nesting patterns to check success return values from function calls. ret = enable_hvpipe_IRQ() if (!ret) ret = set_hvpipe_sys_param(1) if (!ret) ret = misc_register() Instead just bail out to "out*:" labels, in case of any error. This simplifies the init flow. Signed-off-by: Ritesh Harjani (IBM) --- arch/powerpc/platforms/pseries/papr-hvpipe.c | 26 +++++++++++--------- 1 file changed, 15 insertions(+), 11 deletions(-) diff --git a/arch/powerpc/platforms/pseries/papr-hvpipe.c b/arch/powerpc/platforms/pseries/papr-hvpipe.c index f41f5c0a8418..03ec004a6701 100644 --- a/arch/powerpc/platforms/pseries/papr-hvpipe.c +++ b/arch/powerpc/platforms/pseries/papr-hvpipe.c @@ -768,23 +768,27 @@ static int __init papr_hvpipe_init(void) } ret = enable_hvpipe_IRQ(); - if (!ret) { - ret = set_hvpipe_sys_param(1); - if (!ret) - ret = misc_register(&papr_hvpipe_dev); - } + if (ret) + goto out_wq; - if (!ret) { - pr_info("hvpipe feature is enabled\n"); - hvpipe_feature = true; - return 0; - } + ret = set_hvpipe_sys_param(1); + if (ret) + goto out_wq; - pr_err("hvpipe feature is not enabled %d\n", ret); + ret = misc_register(&papr_hvpipe_dev); + if (ret) + goto out_wq; + + pr_info("hvpipe feature is enabled\n"); + hvpipe_feature = true; + return 0; + +out_wq: destroy_workqueue(papr_hvpipe_wq); out: kfree(papr_hvpipe_work); papr_hvpipe_work = NULL; + pr_err("hvpipe feature is not enabled %d\n", ret); return ret; } machine_device_initcall(pseries, papr_hvpipe_init); -- 2.39.5