From nobody Mon Feb 9 13:02:28 2026 Received: from mail-pl1-f176.google.com (mail-pl1-f176.google.com [209.85.214.176]) (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 289C1145B21 for ; Thu, 26 Dec 2024 19:49:10 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.176 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1735242551; cv=none; b=c7qXBSm/tGI0GIrbMIqhOyi00nWHGEbCTlm+sETLAXWB2+gz5eCJ5K6Um1P0++WFLQOb7Z+SgICkhLmfXEErR/E0atSGn51/olI1ykA+l0cDIUm/NMd7AFvAkiBVsQa175tOYKeuvroE6VBmAMwb4iFhzZ3zHXuWSaHSwYUuQAo= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1735242551; c=relaxed/simple; bh=VU/rrhleeS/+15Sn+0xnRSbzdoNVglfA6iecQU6+nM0=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=m1S+4C9NJV+bo6CaAf5GsEXMeLsw7WlAzn2Sc2FvFNL/R5Xe8rpdbMU1AXdgISXMYUO+dGheJjNmj9xqiiywXAosdnzvajJfJu3Xh/uyQeKos+wcb57Qtk+SNHvB+CKizT4/aO+1newOMPmXlTl+wNSl229I/fupsltj6V1XvkE= 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=W+r6ovj9; arc=none smtp.client-ip=209.85.214.176 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="W+r6ovj9" Received: by mail-pl1-f176.google.com with SMTP id d9443c01a7336-215464b0432so7910205ad.0 for ; Thu, 26 Dec 2024 11:49:10 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1735242549; x=1735847349; 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=CLv/TrsqKNLXFPXLidmCmK90WVqyL60WkqeVoeLIKIs=; b=W+r6ovj9S5mWSjYSSDMVzd1AT7bGnwJraT0lxAUXTzh4Xpw/0BSTN/CQfjkF3g5tnc HbweRT558c+ViS8G36U3rYWgD1mOQkdwV+Lo+HXgRqqqrjxXGAQJEIDyPN7cYYj1XuQr VxQtxyabML10ysmUyg4EvIJjmuDbu8wqC1XI6HT30uW8hoO0DzPLJNIc6is2ad0vbPl0 Mrkt1dhWPLXeRUQLUYi1TEsfQKOSHXBLX76ofXi9pOuBkIHkYC1kvxuwt58KW9gfhoci v0ugIpB0ePadYJDigCN3fhAC+x+aahrNaBBnCwnh5P473oqwUntug4zXpZomaZBKI8RP tmXA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1735242549; x=1735847349; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=CLv/TrsqKNLXFPXLidmCmK90WVqyL60WkqeVoeLIKIs=; b=bhPSHfv7X1b+9SlYdH4h/TYtj8LRuqTnQx7l1h9PnKvK2AkbxPLXhRuiaDsFfLV586 wqarSX4O/jwCExSAGDJ9EhIJDTlsYlNbElnRm8brmEdY4Hzc6nGgvFtPG04Q0UDcei7K E4XlIb8yqOtX2TGsWtCD9pUARYT/mvhZnqTBW4blqPg5McNLwvojDXCnGZINfMH8oUPJ LI9CXK0Cmi/3FDnBip5w43NeN51xblxY1nfmhj7UL7cYqka9c78H736WGxprUGgF3yEk fNcJsVHQCS1tkgNKgAiuGwIfG4AMl4j3zcDAM+/EgqTAyPxEjOgU/ranqmlCR3nqMyN5 VaLg== X-Forwarded-Encrypted: i=1; AJvYcCWfmI2hD94HFdhHYLLO/NkEOo7oeGr5qBTh4eWWtWs0uLO0WwXMpCNCoLV8CxVslKp2Rslm5NbDw0gkvW4=@vger.kernel.org X-Gm-Message-State: AOJu0YzcjYjt5xTYOQV7MSIdyINRkKrdykEh+A+7QLQZiaaSfNiYH9Rm 2IVdvfKE7zNHMl08Z9DCURMOT/D7sP/93ac4bqmR3vZ4Y3CGoBMz X-Gm-Gg: ASbGncs6VsMdVFjVhAyqWO+qT3uXCZq+9bLlTwZcvJudIuDsuAiSqZnfl2po/BhakBS QYSzl03jF3gb+uc/mzyAk/mQQSIXeyybzl4SUo/P2s+lX0rLIGdJhtoitttLl/jj9vN5bzv3HAx IdkQ2dRG6IwzEHdAdERRPbzZ7p5E7QN08IM5y8k1idR7zauzvN30YlHodQ9qBt0wdeYgwqUVmAC Fpv+Fun/L9mwh1vGfytC7cfZ3Y5/gPXzfVMp0iJV2NvuT00ROiLKp0= X-Google-Smtp-Source: AGHT+IGPHRpatZpeO3OHQr6/82Ll3cTeuH2yhyXUn6+2MEIQIMuUxptiY/LzfNwREyNAYRuVbOPSDQ== X-Received: by 2002:a05:6a21:6801:b0:1e5:d3cc:4632 with SMTP id adf61e73a8af0-1e5e04580c0mr13477510637.1.1735242549434; Thu, 26 Dec 2024 11:49:09 -0800 (PST) Received: from ice.. ([171.76.83.141]) by smtp.gmail.com with ESMTPSA id 41be03b00d2f7-842e35d4becsm10304580a12.79.2024.12.26.11.49.06 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 26 Dec 2024 11:49:09 -0800 (PST) From: Nihar Chaithanya To: dpenkler@gmail.com, gregkh@linuxfoundation.org Cc: dan.carpenter@linaro.org, skhan@linuxfoundation.org, linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org, Nihar Chaithanya Subject: [PATCH v4 01/15] staging: gpib: Modify gpib_register_driver() to return error if it fails Date: Fri, 27 Dec 2024 01:06:25 +0530 Message-Id: <20241226193637.241049-2-niharchaithanya@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20241226193637.241049-1-niharchaithanya@gmail.com> References: <20241226193637.241049-1-niharchaithanya@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" The function gpib_register_driver() can fail if kmalloc() fails, but it doesn't return any error if that happens. Modify the function to return error i.e int. Return the appropriate=20 error code if it fails. Signed-off-by: Nihar Chaithanya --- drivers/staging/gpib/common/gpib_os.c | 7 ++++--- drivers/staging/gpib/include/gpibP.h | 2 +- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/drivers/staging/gpib/common/gpib_os.c b/drivers/staging/gpib/c= ommon/gpib_os.c index 405237d8cb47..07795df3b721 100644 --- a/drivers/staging/gpib/common/gpib_os.c +++ b/drivers/staging/gpib/common/gpib_os.c @@ -2094,18 +2094,19 @@ void init_gpib_descriptor(gpib_descriptor_t *desc) atomic_set(&desc->io_in_progress, 0); } =20 -void gpib_register_driver(gpib_interface_t *interface, struct module *prov= ider_module) +int gpib_register_driver(gpib_interface_t *interface, struct module *provi= der_module) { struct gpib_interface_list_struct *entry; =20 entry =3D kmalloc(sizeof(*entry), GFP_KERNEL); if (!entry) - return; + return -ENOMEM; =20 entry->interface =3D interface; entry->module =3D provider_module; list_add(&entry->list, ®istered_drivers); - pr_info("gpib: registered %s interface\n", interface->name); + + return 0; } EXPORT_SYMBOL(gpib_register_driver); =20 diff --git a/drivers/staging/gpib/include/gpibP.h b/drivers/staging/gpib/in= clude/gpibP.h index 5fc42b645ab7..d0cd42c1a0ad 100644 --- a/drivers/staging/gpib/include/gpibP.h +++ b/drivers/staging/gpib/include/gpibP.h @@ -17,7 +17,7 @@ #include #include =20 -void gpib_register_driver(gpib_interface_t *interface, struct module *mod); +int gpib_register_driver(gpib_interface_t *interface, struct module *mod); void gpib_unregister_driver(gpib_interface_t *interface); struct pci_dev *gpib_pci_get_device(const gpib_board_config_t *config, uns= igned int vendor_id, unsigned int device_id, struct pci_dev *from); --=20 2.34.1 From nobody Mon Feb 9 13:02:28 2026 Received: from mail-pl1-f173.google.com (mail-pl1-f173.google.com [209.85.214.173]) (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 3D15118871F for ; Thu, 26 Dec 2024 19:49:13 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.173 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1735242554; cv=none; b=rcLYRyPXyQ5eq40q8bRvPL73GHC9uphkaEFWIUldW82XO3UNaOGCEfrDckv8isIfp1OJjPHem6gJ89z/yUbqgZMpQpRpC7VYq6DWQUgck7zUYn1Ckn67Sz38ykkeTvYSbk0q5EY+21CN/NnEBRKHNA7HiqJxiHo10nNLIOgi2fw= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1735242554; c=relaxed/simple; bh=3xK8YWYKMbM0mF8SiVUuVBtW3m5mFrfCV2KkOgyI/6g=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=Hgzd58FaFmdRjQ1PD8mUHi16OiedBwmiBCDf/NEP7VElmgYGeppHt1TdMK5tdSPj1mefcbtlR59sJksKMt9sqQSswk8QIr3qbsb7JUQW0pgs2UxdK20ottzOh2Ol81iymLdw8s9VEcuz8r84cKc39Pt4nyDTrP4cHvmmOF6pZ0w= 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=HCGNw18W; arc=none smtp.client-ip=209.85.214.173 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="HCGNw18W" Received: by mail-pl1-f173.google.com with SMTP id d9443c01a7336-2162b5d2e1fso10245355ad.3 for ; Thu, 26 Dec 2024 11:49:13 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1735242552; x=1735847352; 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=Xpms6VJhoswik5SdrxdqcScRWf09VOg6bXYIyYCcg90=; b=HCGNw18WfUO78VRurjhYwZqneR67WIHZK4s3kbBBQvQnw/ruhQynZG92tNu1Rph3ce nW14aPjsQPx4VblunAMQmpFEZ7UPUEBgg8ckRHbRZQFTXkSV2tItvbOP+5vEyOJ0Iw2s C2cbQ0iBsDSWPwW3s+/0n12CdLJz7u8x1PZMA+pTz1t0bjmPThVs2LUnaHo1s+QqEr24 FBYy9bZImwUO6FRZEvtfvBVb2hDRKOIFqlL1FUs/y903AWlApWks5NZ6odzQOsjigq2W +4vR3GEUdNYaLQGFELmhsTerpMWbn+I3V2O1zLPmjsWV+y6uEU9ebLrKi/bDbZkBOEsp 3wxQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1735242552; x=1735847352; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=Xpms6VJhoswik5SdrxdqcScRWf09VOg6bXYIyYCcg90=; b=u4OXIGA+ZM5LL0dkJ73egIZ7ga2rEcxk49uGrH/NjRL2nY2rJVpaq8ztqwInl0hxRh 8x/uElJxsyGBVdHyIopYpFjOpUVcbFz6rZoRSBUEXcd2aNeegQ00qEPZ8RplipDQP0QW TcYM9JdHkLHcKsYc+EItA2Eiq6GNmS+LLd6FcKNYbSZ5NHSQ5vosVyK1zgm1RfMsq8b3 4fjTC27DmaLgmjNeiee6UZ12S4NdXO5QurMT05+MqJpBrM27NIHB1a5FkvSwudJy8gMe j/79k7ymE8XQXqVNAoAHeDRhRZraRRxIfpIyjbDQ/msDRofyxDX0O1hzwSN99oxnLRDm /NuQ== X-Forwarded-Encrypted: i=1; AJvYcCXggzD3avCP90i+yWdRGaW3nnLfs93TripoBeweXmXmha7NrPsz2ouwWAGsI3BYstkAqHACyYo/sOIxpcw=@vger.kernel.org X-Gm-Message-State: AOJu0YxkbX6vt+2B8U3UIqJW0JcrAloXKKTg2soabkQkqzUm4bQewBic DZAf/OgIwCKj8V+FC3IKyAhODiyEfL30H08/2XqCv08nHDuicFmF X-Gm-Gg: ASbGncs2WkZ2XTs4uXommzeL+usimI1pVCfjiOkoHSw1EiYFwYIartNXATVXJFhDR5j af9fdafZXiFDVArQZi8q/Bp4FlEWzz62FSefJWqNW2xkvvCJDCioJFxt7PJbjo2foV/uWvLMYwz cSOxdnq2MNbwD0F0qcDHkZJ7ckW9zPshbQs4U7jRtjebWZMDurQOxEWVXABCyv5RV0xZXdBampI 4M5Xi5XzkTjYThl5zjjwo0N+xEn4j1e/njRm3EPv3hyD0+Pd0H93fA= X-Google-Smtp-Source: AGHT+IG+k5CT+c5AOowokzehQMPwzamNkGyp2o5D6Q6bTpSMc2HBncdJqoX+cMwtCei+Oth9PE2B7g== X-Received: by 2002:a05:6a20:a105:b0:1cf:2be2:8dd3 with SMTP id adf61e73a8af0-1e5e080df5amr15213315637.12.1735242552466; Thu, 26 Dec 2024 11:49:12 -0800 (PST) Received: from ice.. ([171.76.83.141]) by smtp.gmail.com with ESMTPSA id 41be03b00d2f7-842e35d4becsm10304580a12.79.2024.12.26.11.49.09 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 26 Dec 2024 11:49:12 -0800 (PST) From: Nihar Chaithanya To: dpenkler@gmail.com, gregkh@linuxfoundation.org Cc: dan.carpenter@linaro.org, skhan@linuxfoundation.org, linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org, Nihar Chaithanya Subject: [PATCH v4 02/15] staging: gpib: agilent_82350b: Handle gpib_register_driver() errors Date: Fri, 27 Dec 2024 01:06:26 +0530 Message-Id: <20241226193637.241049-3-niharchaithanya@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20241226193637.241049-1-niharchaithanya@gmail.com> References: <20241226193637.241049-1-niharchaithanya@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" The function gpib_register_driver() can fail which can result in semi-registered module. In case gpib_register_driver() fails unregister the previous gpib and pci registering functions, return the error value. Signed-off-by: Nihar Chaithanya --- .../gpib/agilent_82350b/agilent_82350b.c | 21 ++++++++++++++----- 1 file changed, 16 insertions(+), 5 deletions(-) diff --git a/drivers/staging/gpib/agilent_82350b/agilent_82350b.c b/drivers= /staging/gpib/agilent_82350b/agilent_82350b.c index 53006d0cc79c..39420f2b0b32 100644 --- a/drivers/staging/gpib/agilent_82350b/agilent_82350b.c +++ b/drivers/staging/gpib/agilent_82350b/agilent_82350b.c @@ -909,14 +909,25 @@ static int __init agilent_82350b_init_module(void) int result; =20 result =3D pci_register_driver(&agilent_82350b_pci_driver); - if (result) { - pr_err("agilent_82350b: pci_driver_register failed!\n"); + if (result) return result; - } =20 - gpib_register_driver(&agilent_82350b_unaccel_interface, THIS_MODULE); - gpib_register_driver(&agilent_82350b_interface, THIS_MODULE); + result =3D gpib_register_driver(&agilent_82350b_unaccel_interface, THIS_M= ODULE); + if (result) + goto err_unaccel; + + result =3D gpib_register_driver(&agilent_82350b_interface, THIS_MODULE); + if (result) + goto err_interface; + return 0; + +err_interface: + gpib_unregister_driver(&agilent_82350b_unaccel_interface); +err_unaccel: + pci_unregister_driver(&agilent_82350b_pci_driver); + + return result; } =20 static void __exit agilent_82350b_exit_module(void) --=20 2.34.1 From nobody Mon Feb 9 13:02:28 2026 Received: from mail-pl1-f176.google.com (mail-pl1-f176.google.com [209.85.214.176]) (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 F0CBA18C008 for ; Thu, 26 Dec 2024 19:49:15 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.176 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1735242557; cv=none; b=UTjSBt+0qQ4T/QjYI9DWFfTEMMckOoCqVnQPniLarxMzzPhLw6omupY18sxNkFn6CUV2tisDAbKqMqlePXEviwiC9dDfKUQsjuBTiTUxCK3KymjepBjyrem3U4rTNhTxwahHNVxkbO368XWobobxl6+hUXs3PuzXr3QIaNGrfSo= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1735242557; c=relaxed/simple; bh=u3cJyewB0tyfHja4vFw79gzzgMChdWbHeOvFQeP3HcI=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=JmtCBVAvtV1YMXtzRDhb30QPZzsFzrqUcShWQTIrMV9jmkdSV11fictySiHVsc++K4qzFd4zJl3/HHpXwSOVh17MWltoLcAyJbbfC5GFjZ77bi7eEp9/9FNcKzB4zQkPMDuOJ2c1YHk5mqLqdbtgqnJUv51vWKO4H/MMGCGtPf0= 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=V7NOLdvW; arc=none smtp.client-ip=209.85.214.176 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="V7NOLdvW" Received: by mail-pl1-f176.google.com with SMTP id d9443c01a7336-21644db9f3cso9239855ad.2 for ; Thu, 26 Dec 2024 11:49:15 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1735242555; x=1735847355; 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=xOoEk0tyYf3jxdc6YHVdHzWzrpuWImBtU+LJtV7lOfI=; b=V7NOLdvWIGE3yq0SsN/1hFH4bBEUaCOu7UsG4RL4vjpWkXR7h+kQ6PRwqmOdV6CyVS CQXzEheZ7VJu6KUNNPNe5M+RoXQWtwK/nb9REFTGTE90x2UgCSO5DAyCTFYh9B90O2zh fWWMiEo+2fBBweAcHQlEJ5nJu6qalpkfrWa/B3fFVUPT59w/3aplDTt6pATAuosn0ton 3I6al/octRccPqcSgPtKWRh1kVvEEumoKTu/B6tBGtRH0q2MUmp53vYqb/4DZDmXK1Jj 6G5r2x2GYXV6fZt6QbDfxOsFw79xldfI7IzxfGwW+HBeTuDZHvqgfgj0vXLEIQQprTH2 ZC+A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1735242555; x=1735847355; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=xOoEk0tyYf3jxdc6YHVdHzWzrpuWImBtU+LJtV7lOfI=; b=IXsmPBg9oobeCELUckrH8rY9Vf+d2Mr398WkenEzVcCiifSL3q0PvAqcnVpj9YpBIU Iunt9qv3UrYg5lHX+oC0wMuBepdzbKzjNKSt/m5vZQ05JJPO7PCeyJtjzyXw+ktdoMdU 5OtIFInQImOfLeM432sQ6chZfeqSp1gZ0zzxpYoPYFS8N4god77PV4kAIwoONVfO1kt4 0JK8/gpY1EhrKG0ki5Jd0oyIvuKJKzT4T5tH9D6KHrwBzBG1VT32LQumWeyJ8IAbJ6ov ov2hh8yBeSe8SpwUTxljGgPg5lkBufVdKBukkmCkdWv7PWvL7C642tKfBgvRPyXhMqaP AThQ== X-Forwarded-Encrypted: i=1; AJvYcCXciHnHbmAjr7LJtXT8LAL5VsCjxe4IFy9dGIdF2Yjj7/7OWiDbt/aCcKLKAoiYJQwdz11amgy3Fv2R+4I=@vger.kernel.org X-Gm-Message-State: AOJu0YyVdR0KvOwgkF9LXGs7iGJM5GS95mU4QRO+cP++jESRk0GZ0d5j oI44C7H7AppjYGmyXHLbSH2fggGBE9McXSqhZNQgueCXhccid4/f X-Gm-Gg: ASbGncvnBeuY3Tjx/4VJArxsFYkYIOESUUz9qbf8NcEX36dMflipopDGojUZtemeYgp /nbW018wy3XSPjdEf+Cbavfs+FB3t6ZRTtaZ8FZ5uD7fYIjy36Y6eVA8q0vZqmW5cyZsIwLfcVv bbdz8eRTQ6xVpCPyg3FKkIZAv9kbQhdrWfnCOBSPo/7ERYWskTo3tnw/N2ko0Ozehy658y5ZRa7 d31TDQ8fmn1+j6r9HgivI2f4i2MTI7MeS25ibbsWnxw9fBw6iAvKz0= X-Google-Smtp-Source: AGHT+IEg/oi/pjwuWuRYD2MRFmlg7q2JW/QnFqN29cnhbWknm8up6+gUuf9/RBXspHF20GHs/bJ1dg== X-Received: by 2002:a17:903:1248:b0:20c:da9a:d5b9 with SMTP id d9443c01a7336-219e6e9e74emr121940195ad.5.1735242555346; Thu, 26 Dec 2024 11:49:15 -0800 (PST) Received: from ice.. ([171.76.83.141]) by smtp.gmail.com with ESMTPSA id 41be03b00d2f7-842e35d4becsm10304580a12.79.2024.12.26.11.49.12 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 26 Dec 2024 11:49:15 -0800 (PST) From: Nihar Chaithanya To: dpenkler@gmail.com, gregkh@linuxfoundation.org Cc: dan.carpenter@linaro.org, skhan@linuxfoundation.org, linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org, Nihar Chaithanya Subject: [PATCH v4 03/15] staging: gpib: agilent_82357a: Handle gpib_register_driver() errors Date: Fri, 27 Dec 2024 01:06:27 +0530 Message-Id: <20241226193637.241049-4-niharchaithanya@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20241226193637.241049-1-niharchaithanya@gmail.com> References: <20241226193637.241049-1-niharchaithanya@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" The usb_register() function can fail and returns an error value which is not returned. The function gpib_register_driver() can also fail which can result in semi-registered module. In case gpib_register_driver() fails unregister the previous usb driver registering function. Return the error value if gpib_register_driver() or usb_register() functions fail. Signed-off-by: Nihar Chaithanya --- .../staging/gpib/agilent_82357a/agilent_82357a.c | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/drivers/staging/gpib/agilent_82357a/agilent_82357a.c b/drivers= /staging/gpib/agilent_82357a/agilent_82357a.c index bf05fb4a736b..60311ce8d164 100644 --- a/drivers/staging/gpib/agilent_82357a/agilent_82357a.c +++ b/drivers/staging/gpib/agilent_82357a/agilent_82357a.c @@ -1691,14 +1691,21 @@ static struct usb_driver agilent_82357a_bus_driver = =3D { static int __init agilent_82357a_init_module(void) { int i; + int ret =3D 0; =20 pr_info("agilent_82357a_gpib driver loading"); for (i =3D 0; i < MAX_NUM_82357A_INTERFACES; ++i) agilent_82357a_driver_interfaces[i] =3D NULL; - usb_register(&agilent_82357a_bus_driver); - gpib_register_driver(&agilent_82357a_gpib_interface, THIS_MODULE); =20 - return 0; + ret =3D usb_register(&agilent_82357a_bus_driver); + if (ret) + return ret; + + ret =3D gpib_register_driver(&agilent_82357a_gpib_interface, THIS_MODULE); + if (ret) + usb_deregister(&agilent_82357a_bus_driver); + + return ret; } =20 static void __exit agilent_82357a_exit_module(void) --=20 2.34.1 From nobody Mon Feb 9 13:02:28 2026 Received: from mail-pl1-f178.google.com (mail-pl1-f178.google.com [209.85.214.178]) (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 C7251198E9B for ; Thu, 26 Dec 2024 19:49:19 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.178 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1735242561; cv=none; b=e5ag7USfuFLzPz/269JdfJ/qSNJpC1ifgPRTXL+L8UM7Iwt3GWm4kFZZv/R1GJVCXzzOJR2BBVSImWwZPALasT1XBrHgUrot1Jjv/tL5FP6gBwe9JKMllGAEdQ4r+IxgGLmzJ96LsV4Chfx1JR5Tz4cM4LSdh/RbJNI6ff9c4iI= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1735242561; c=relaxed/simple; bh=+ihw3GQCK6j9Ewtkfi1LzDB2HWpiS31z6aBWnAR32LU=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=EbEzJyo9BQ4jF2kkLfvlGwek3fL5tDRwEdRtroA3sX7e2FwflIsmllt09Usiv6gim7Sesk1RgClnCpjyuIFE5DwkmAF+gBu27eQcadvR2T1Wp8pZYH2dv9Vuq4OlbIYKplAqOI01IxxnyFLhbz9oV8ZMySi4MtN0wsM+dGndx8w= 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=Oqjrvyri; arc=none smtp.client-ip=209.85.214.178 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="Oqjrvyri" Received: by mail-pl1-f178.google.com with SMTP id d9443c01a7336-216513f8104so8882445ad.2 for ; Thu, 26 Dec 2024 11:49:19 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1735242559; x=1735847359; 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=8CFtqKpL2xT789qBVaHSwRjKXZVp5JYOteyLFbQy5ho=; b=Oqjrvyri7roo+/X00Q4MERrbht4QTUYtOyw9R8/ZLYpEZM4Sxw0GC9bF3wRXgTxcof glMssXY1qS2JBVBBGs29PqAQ6I2WsbvzcZPb/jP5CFX2gv+k5ylwuriTQuh5JGs19YNe 037A3ycvaN2BHLfndpmVnI+aqLlzMOIYY79MCPeDbKBPE2w3s+HoEhvG5NPZDVdrml86 fEUwpeZmiV/ok6qwkVNrf3MvykaNMJtQcivqy8hmb1fOAFQyy6z/R4gpxv8KNsoRYFnl ELOwxPcSdvcQEEI3boccKhbgKotVEvdF/OeGUe8wZvjT/TkDue7C9rEyXMq0qFw3z9tI Hp0w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1735242559; x=1735847359; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=8CFtqKpL2xT789qBVaHSwRjKXZVp5JYOteyLFbQy5ho=; b=Ix0OHDk9KTTlDbMcwNCyUDccrNh/+gvZq0VtsOQft09RlNgj88BI6NF2xQweA04uj0 w05Gu2DWRTfdrHA6woIzOgwivp9q7+dKCL60Y+ew6W264k+NyKBGt9CzIPYPBKoE5DMT rzZH2KbVosMbvGIzBAsFPpjyS7FeMG2/slrWH7NK63xn4PJRvBEwtQasA6pNfYFaCn+g rdkrj3trJscV2UcCBPa7VZ2WhHLT+drtF1NPNYnuJcxgUamqalEeX+T95y35L+htSa2D BiIGt6hSCqsgtsyJcnCuV3MRz7k7ONuxJpahovsI7GxQYvWvBOC/Za2txLH+gkX762b0 RcIA== X-Forwarded-Encrypted: i=1; AJvYcCVozEZpbkMziODgquJfTWMyHudfQK/1Q72owrBfjuUmQysbrA+ugLhdT9r1pv0o2WU4GOgXIej8kIyR37U=@vger.kernel.org X-Gm-Message-State: AOJu0Yy8R8uHLT8erPLMs00+nOn/wAeKwqcceY+dJt+hcDk9TpjTsg67 iQwr9MLiFnNdpMGSNADm/sG5kA7+uw63ki7xf1rq306tXxNmI7EI X-Gm-Gg: ASbGnctta2/DWKPGBvZjhaieSf/XJG2SruK8+Ua5XAy//u9k0uhcsqs2oE5m2ci4QYq 9xVXm//dXNW4anzMnrc/kOLUhbFVMh4mB/QSSLbES/0aL/yeYMJ0yAJkw7F71uE2iiFb4aDW1R+ ktlHu1rHuK030m7qE/rhBQji2MELTkigF4tXBwm8Oxtw+8LR0d9xZqM/LacIcKGPmJva8y5W44g QfTO8L+inrKBuSujUam71u7esqAAt2POwRBCsNhhX39g1v5CSt86g4= X-Google-Smtp-Source: AGHT+IFKmz/sisepMc8kR9hLoE13n/o2Jq2Jywmwrtud0r0I/5KQYcu5HoEF6ZT1XonOYEYFApW3wQ== X-Received: by 2002:a05:6a21:178a:b0:1d8:a203:95a4 with SMTP id adf61e73a8af0-1e5e0481626mr15627422637.5.1735242559217; Thu, 26 Dec 2024 11:49:19 -0800 (PST) Received: from ice.. ([171.76.83.141]) by smtp.gmail.com with ESMTPSA id 41be03b00d2f7-842e35d4becsm10304580a12.79.2024.12.26.11.49.15 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 26 Dec 2024 11:49:18 -0800 (PST) From: Nihar Chaithanya To: dpenkler@gmail.com, gregkh@linuxfoundation.org Cc: dan.carpenter@linaro.org, skhan@linuxfoundation.org, linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org, Nihar Chaithanya Subject: [PATCH v4 04/15] staging: gpib: cb7210: Handle gpib_register_driver() errors Date: Fri, 27 Dec 2024 01:06:28 +0530 Message-Id: <20241226193637.241049-5-niharchaithanya@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20241226193637.241049-1-niharchaithanya@gmail.com> References: <20241226193637.241049-1-niharchaithanya@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" The function cb_pcmcia_init_module() can be replaced by calling pcmcia_register_driver() directly. The error value from this function is not returned and the previous registering functions are not unregistered. The function gpib_register_driver() can fail and similar to pcmcia_register_driver() function failing, the previous registering functions are not unregistered. Replace cb_pcmcia_init_module() with pcmcia_register_driver(). Unregister the gpib and pci register functions if the subsequent gpib or pcmcia register functions fail and return the error value. Signed-off-by: Nihar Chaithanya --- drivers/staging/gpib/cb7210/cb7210.c | 96 ++++++++++++++++++++-------- 1 file changed, 69 insertions(+), 27 deletions(-) diff --git a/drivers/staging/gpib/cb7210/cb7210.c b/drivers/staging/gpib/cb= 7210/cb7210.c index 63df7f3eb3f3..1b7eb9cabcbd 100644 --- a/drivers/staging/gpib/cb7210/cb7210.c +++ b/drivers/staging/gpib/cb7210/cb7210.c @@ -1351,12 +1351,6 @@ static struct pcmcia_driver cb_gpib_cs_driver =3D { .resume =3D cb_gpib_resume, }; =20 -int cb_pcmcia_init_module(void) -{ - pcmcia_register_driver(&cb_gpib_cs_driver); - return 0; -} - void cb_pcmcia_cleanup_module(void) { DEBUG(0, "cb_gpib_cs: unloading\n"); @@ -1506,32 +1500,80 @@ void cb_pcmcia_detach(gpib_board_t *board) =20 static int __init cb7210_init_module(void) { - int err =3D 0; - int result; + int ret; =20 - result =3D pci_register_driver(&cb7210_pci_driver); - if (result) { - pr_err("cb7210: pci_driver_register failed!\n"); - return result; - } + ret =3D pci_register_driver(&cb7210_pci_driver); + if (ret) + return ret; + + ret =3D gpib_register_driver(&cb_pci_interface, THIS_MODULE); + if (ret) + goto err_pci; + + ret =3D gpib_register_driver(&cb_isa_interface, THIS_MODULE); + if (ret) + goto err_isa; + + ret =3D gpib_register_driver(&cb_pci_accel_interface, THIS_MODULE); + if (ret) + goto err_pci_accel; + + ret =3D gpib_register_driver(&cb_pci_unaccel_interface, THIS_MODULE); + if (ret) + goto err_pci_unaccel; + + ret =3D gpib_register_driver(&cb_isa_accel_interface, THIS_MODULE); + if (ret) + goto err_isa_accel; + + ret =3D gpib_register_driver(&cb_isa_unaccel_interface, THIS_MODULE); + if (ret) + goto err_isa_unaccel; + +#ifdef GPIB_PCMCIA + ret =3D gpib_register_driver(&cb_pcmcia_interface, THIS_MODULE); + if (ret) + goto err_pcmcia; + + ret =3D gpib_register_driver(&cb_pcmcia_accel_interface, THIS_MODULE); + if (ret) + goto err_pcmcia_accel; + + ret =3D gpib_register_driver(&cb_pcmcia_unaccel_interface, THIS_MODULE); + if (ret) + goto err_pcmcia_unaccel; =20 - gpib_register_driver(&cb_pci_interface, THIS_MODULE); - gpib_register_driver(&cb_isa_interface, THIS_MODULE); - gpib_register_driver(&cb_pci_accel_interface, THIS_MODULE); - gpib_register_driver(&cb_pci_unaccel_interface, THIS_MODULE); - gpib_register_driver(&cb_isa_accel_interface, THIS_MODULE); - gpib_register_driver(&cb_isa_unaccel_interface, THIS_MODULE); - -#ifdef GPIB__PCMCIA - gpib_register_driver(&cb_pcmcia_interface, THIS_MODULE); - gpib_register_driver(&cb_pcmcia_accel_interface, THIS_MODULE); - gpib_register_driver(&cb_pcmcia_unaccel_interface, THIS_MODULE); - err +=3D cb_pcmcia_init_module(); + ret =3D pcmcia_register_driver(&cb_gpib_cs_driver); + if (ret) + goto err_pcmcia_driver; #endif - if (err) - return -1; =20 return 0; + +#ifdef GPIB_PCMCIA +err_pcmcia_driver: + gpib_unregister_driver(&cb_pcmcia_unaccel_interface); +err_pcmcia_unaccel: + gpib_unregister_driver(&cb_pcmcia_accel_interface); +err_pcmcia_accel: + gpib_unregister_driver(&cb_pcmcia_interface); +err_pcmcia: +#endif + gpib_unregister_driver(&cb_isa_unaccel_interface); +err_isa_unaccel: + gpib_unregister_driver(&cb_isa_accel_interface); +err_isa_accel: + gpib_unregister_driver(&cb_pci_unaccel_interface); +err_pci_unaccel: + gpib_unregister_driver(&cb_pci_accel_interface); +err_pci_accel: + gpib_unregister_driver(&cb_isa_interface); +err_isa: + gpib_unregister_driver(&cb_pci_interface); +err_pci: + pci_unregister_driver(&cb7210_pci_driver); + + return ret; } =20 static void __exit cb7210_exit_module(void) --=20 2.34.1 From nobody Mon Feb 9 13:02:28 2026 Received: from mail-pl1-f176.google.com (mail-pl1-f176.google.com [209.85.214.176]) (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 660401B4157 for ; Thu, 26 Dec 2024 19:49:22 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.176 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1735242563; cv=none; b=bwflwYEN64acqpKRgIs6geX4oiwl6/RXgpdN9s0tQkH66zSLpSUZoY4U662LdBb3Vs2u59h++3COQ1So6K8LavHZRLeUUuO/52JDWzTqGsrJ2lTte7fJ6kwMqXArT4C5LouG/M+qJa7pkjmKQ6kVUp1i5+FcW5iFa1mOE+yutxg= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1735242563; c=relaxed/simple; bh=/tWWqyQBjCa37Hoi/rd2gDMGifDNNGuAhp+UsSe++O0=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=EM7Fb8a8XIu5tkwY4hG2JGZ7oLhUEkys5/SoGPXt5LRIsnQbneHkvzsPxp5IyU1gn30LnZ4lTZwbJz5WfbZ8LRqhDjjNIt8uCgBGvYrEV7d9ZjFiZP0uNqRdCYQrtEwKo4dNT7gGMTcQtjMNdxTWfhz9nyrfdWnVpyshhV0WRME= 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=eFqHzoeV; arc=none smtp.client-ip=209.85.214.176 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="eFqHzoeV" Received: by mail-pl1-f176.google.com with SMTP id d9443c01a7336-216325f516fso8594175ad.3 for ; Thu, 26 Dec 2024 11:49:22 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1735242562; x=1735847362; 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=YiGGjLP1sUA3+CKFxkxP+Nzp9uRb7o+38Fzbf0e9QCM=; b=eFqHzoeV539o0txSIXfp+xqePYR4jtyTfwnSvFqsZVVE0IixmJ+bLG0g+9Gmn1bcad 2OAJhLAjzD1/RN8eoku7pVALZvsGPqnQwk4d+xlvcJSkgCLtgpTFtTO+ABFUdxdCY6I2 w61GE5Hw6QOYlx2UThet2DcE+Ws/pTjBpHCvR9w0hF0I6ledu+FUZjqo5QT0V7LEForC 4493elJFbwWNEA1O0mwPr/i0SN4ndFT9+vcltprVgASieQFOuifxYpugUqsdl6mktVM6 L4dPpSFzEVT2RrYG5MdxHO4UdHuZFSXkzQ9l6G9zZ1yiOSaG0DKNgUzCjG4CUh18sW7P 8FfQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1735242562; x=1735847362; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=YiGGjLP1sUA3+CKFxkxP+Nzp9uRb7o+38Fzbf0e9QCM=; b=jc7X4FdHKixG3zeT7Cwe9RA0hCUaQeOr8Abz5OToq2rUdkDiOvw9Zxl68tDHcjZplL y7Yn/0zQhk6iYRW+1vf/8wJqKfmJ/7PK6fwnyryso6O4SGVBSn+hFHc0YpUcEizW+/gZ AmOkBHUj5opY0n6KVD+QtNItYfe61+csrGhlfsNNPsZ3t5JQiGuV5BGaNWbf+gNx9JEo VJxJXr1UZ764rNg0ns0I7u27lki9gJ0IKk+gDrzzStgHfD7CI4rN5Eppe4uA/GPkKIjC AKL+ggEm9R/dLh4KY8b6PHfCEME4/qBvug0mermwS8rqS4CDqbXo1taEkHMsMS57C8jK MCQg== X-Forwarded-Encrypted: i=1; AJvYcCU8sJAwjjGU16py99puAwwp1QXHLZT8Bzx/h6zYCj2L30zD8S3EtyCX4q2AACgPSp0YOTcfpcGXE8paQqc=@vger.kernel.org X-Gm-Message-State: AOJu0YxyxRPUT4c/Zo/21shGMNvXbR4jvBnB1ncAyUTZx/oxabT8W6QI FWbpkgOC5k6NnO/tEnZA8cqGiMQTKSrW/dIwrKKJ9I28TG5Z8++l X-Gm-Gg: ASbGnctkpru+6Pd9QhMb3d7a8wPTn/+Bs79tpI/qmpXJsL6oWDelfr/A9+YXWLPQqIh HbgGOc9oBVsNYLyQKVGSe7kJ0uBiWAGbkGcKgV+Dq0ddHHKLnq6d2syivyDgqVy1wkE6u6cErth 0aoKYvrluuOS1VlULSMVKTY5/xsJ4cRx4YTkFh+28kX7NdBG2SPw9U6X6c4ZcUygpMZsaXv3ulb Np/wmL47ibO9uSTf21GpruywhPATv9lHVQRhwHf2Cpp1uXiIA3NOsM= X-Google-Smtp-Source: AGHT+IElec6AfBf3JXW3cVhtMs2r2njKuK1M1VQZJYL1H2oIAiZf7mGHRdvGGak3k95nef/cKgQzAA== X-Received: by 2002:a05:6a20:c70a:b0:1cf:4c3a:162a with SMTP id adf61e73a8af0-1e5e047fae3mr14465742637.5.1735242561749; Thu, 26 Dec 2024 11:49:21 -0800 (PST) Received: from ice.. ([171.76.83.141]) by smtp.gmail.com with ESMTPSA id 41be03b00d2f7-842e35d4becsm10304580a12.79.2024.12.26.11.49.19 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 26 Dec 2024 11:49:21 -0800 (PST) From: Nihar Chaithanya To: dpenkler@gmail.com, gregkh@linuxfoundation.org Cc: dan.carpenter@linaro.org, skhan@linuxfoundation.org, linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org, Nihar Chaithanya Subject: [PATCH v4 05/15] staging: gpib: cec: Handle gpib_register_driver() errors Date: Fri, 27 Dec 2024 01:06:29 +0530 Message-Id: <20241226193637.241049-6-niharchaithanya@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20241226193637.241049-1-niharchaithanya@gmail.com> References: <20241226193637.241049-1-niharchaithanya@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" The function gpib_register_driver() can fail and result in a semi-registered module and does not return an error value if it fails. Unregister the pci registering function in case gpib_register_driver() fails and return the error value. Signed-off-by: Nihar Chaithanya --- drivers/staging/gpib/cec/cec_gpib.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/drivers/staging/gpib/cec/cec_gpib.c b/drivers/staging/gpib/cec= /cec_gpib.c index 3dc933deb401..ffa366c30ac5 100644 --- a/drivers/staging/gpib/cec/cec_gpib.c +++ b/drivers/staging/gpib/cec/cec_gpib.c @@ -361,17 +361,17 @@ static struct pci_driver cec_pci_driver =3D { =20 static int __init cec_init_module(void) { - int result; + int result =3D 0; =20 result =3D pci_register_driver(&cec_pci_driver); - if (result) { - pr_err("cec_gpib: pci_driver_register failed!\n"); + if (result) return result; - } =20 - gpib_register_driver(&cec_pci_interface, THIS_MODULE); + result =3D gpib_register_driver(&cec_pci_interface, THIS_MODULE); + if (result) + pci_unregister_driver(&cec_pci_driver); =20 - return 0; + return result; } =20 static void cec_exit_module(void) --=20 2.34.1 From nobody Mon Feb 9 13:02:28 2026 Received: from mail-pl1-f171.google.com (mail-pl1-f171.google.com [209.85.214.171]) (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 EDC8C1BBBE0 for ; Thu, 26 Dec 2024 19:49:24 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.171 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1735242566; cv=none; b=VazREfDS8DYbvL7VqnXUhSValqga5Tj1mJ1Wak6IGNZWlmM2TWDlY8HcIfeCyqYKxhL47Qln9XIg3Be0YBomfzZAap0wJvT9B+JrXhvu5rxwvJX65vuH0e00AuQ+uhVTToIA8oQFv2/Vzlu592443B2Eu1Wb6TMyyjig5z3AEEE= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1735242566; c=relaxed/simple; bh=W3ZjR038WD4Bz8igH/5TljAfRXoTF0kna4HuXgpHkW8=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=GhJ/tR1DO8c/kCSwFisJ8uTjoANacIoXOv2PxZ6y0ySOQSm4DqQAd9dLc8ptc0nzSfXNWHol1voejb9eEVbIzTcLW4+XmXaE6nlVNfelKbKiPXOYW6RW4OQPfBT/kErg98EjuUiIMjPKjdfN9MG7v9/7Xn7hC7N2Kets66rkJ9g= 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=kb9bJ6Q7; arc=none smtp.client-ip=209.85.214.171 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="kb9bJ6Q7" Received: by mail-pl1-f171.google.com with SMTP id d9443c01a7336-2161a4f86a3so7919535ad.1 for ; Thu, 26 Dec 2024 11:49:24 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1735242564; x=1735847364; 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=wWsepmZqswshDonO9fJBx9b75dLoOUCjODKtIvCqx3A=; b=kb9bJ6Q71i0VhfLrx0HWjcvuRftgc3QWamPBnTdmz14p52xKA6YYvjqDUdlrMG/ry5 TjJBuR5okCdrIbONf8sdlw3AI+CDcPfDhvjYCNKJMY/ylz4Ge/HrVjD+4nkDGB+usrUR v4sawa59tyCQT+XAlllKGlFGVyhQ+7T88i1ScShhAPjyFZkfSsyvP0b2zqoItJHgBtFA u+9A2rtXq8ORwRRJK9JD8kbnDtbHYtzdxfBdPuHH1U0pnEn1Ri9OrkKxcwvYTWG5KoRb hKykwLHyXYhRFqE35TnQhOLJlX7IEgVsHVpbTuQ/7robDkGEPDd4q0qko+AFlPTGF1+X 8Djw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1735242564; x=1735847364; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=wWsepmZqswshDonO9fJBx9b75dLoOUCjODKtIvCqx3A=; b=lMr9Bv9zcFsGPxhB3rWZGmmQ8XALAlE1FgdC0d78BhMunAqWlBybgCLyrf3GV32pcS KKwhN9Tgxmk5i30iA46PF1aWqommrPjdrhRy5VZoto5799uSVnlvfDxjQWHt9le1PYKO 33oh+pp8cJORQTGEg095G0gcMwThYP7QRZ6Fd7S3dsq6VJHflJl2eVSYNg4ti51Fee3k IAI3R7Jrdw8o7fe4rtC9sM5sZLis+Ct8JTxPfyCZn/0LRMYB1Jk752uhRXrJqV4kXkgg q3m5H3bUUUsLu9CUEQi+3IYcVzOhun1Gz2aMCp4pbB+W4/fj5jkE5AxfVC/JyyblemGO FGxA== X-Forwarded-Encrypted: i=1; AJvYcCUMjdt0UHUZtwfRrK8D4SXvPFMii46iuSiR9LaLQYeoCzSk8GKfVMEO3GXWHkgsn/XWzXd+ljfGUpSkLh0=@vger.kernel.org X-Gm-Message-State: AOJu0YyqoACBYptmxYVsopS+fPx7UW91XUMyF5fAR3WrBMgnleRsq9Zf gKctCJDyOIO+EF4LEYN+v7VMwuz9fjCvl2TGUOXuWhiDkw3W73hg X-Gm-Gg: ASbGncsFU1DGnsDGlb65+0pvkjBnsII2irB5B2f1veu67cDYBsmKbERH+udPcgQf9C4 b4gD9e/8GRfv79guR977FhIio0iUsFi0uYxwzaOTINgz4ROI07mfPDoRicccCvDpDvQfJApfywP AJ8BnpxaanChHUfdFXPB6NLZTkoOWmcRRwcCtIColXENqG6WP8fuSSi8QATp4T2FTI5fc8XxYY+ bqtORqAqbLt/nb1M1Y4uNCd2jGnz6bfdFixjeBoxE4a+ry5EkJTXjc= X-Google-Smtp-Source: AGHT+IFSV+pTPPC3LBKjOHrGxRxrFkz//ki2GUAWYlo0jfonnQE+N294Tc2ESohCWlGyqv3dvEcqIA== X-Received: by 2002:a05:6a21:e8d:b0:1d9:1894:cdc4 with SMTP id adf61e73a8af0-1e5e0847032mr14245160637.11.1735242564259; Thu, 26 Dec 2024 11:49:24 -0800 (PST) Received: from ice.. ([171.76.83.141]) by smtp.gmail.com with ESMTPSA id 41be03b00d2f7-842e35d4becsm10304580a12.79.2024.12.26.11.49.22 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 26 Dec 2024 11:49:24 -0800 (PST) From: Nihar Chaithanya To: dpenkler@gmail.com, gregkh@linuxfoundation.org Cc: dan.carpenter@linaro.org, skhan@linuxfoundation.org, linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org, Nihar Chaithanya Subject: [PATCH v4 06/15] staging: gpib: fluke: Handle gpib_register_driver() errors Date: Fri, 27 Dec 2024 01:06:30 +0530 Message-Id: <20241226193637.241049-7-niharchaithanya@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20241226193637.241049-1-niharchaithanya@gmail.com> References: <20241226193637.241049-1-niharchaithanya@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" The function gpib_register_driver() can fail, resulting in a semi-registered module and does not return an error value if it fails. Unregister the previous platform driver and gpib registering functions if subsequent gpib_register_driver() fail and return the error value. Signed-off-by: Nihar Chaithanya --- drivers/staging/gpib/eastwood/fluke_gpib.c | 28 ++++++++++++++++------ 1 file changed, 21 insertions(+), 7 deletions(-) diff --git a/drivers/staging/gpib/eastwood/fluke_gpib.c b/drivers/staging/g= pib/eastwood/fluke_gpib.c index 3f938ab0c84d..2efc0226ec2b 100644 --- a/drivers/staging/gpib/eastwood/fluke_gpib.c +++ b/drivers/staging/gpib/eastwood/fluke_gpib.c @@ -1154,17 +1154,31 @@ static int __init fluke_init_module(void) int result; =20 result =3D platform_driver_register(&fluke_gpib_platform_driver); - if (result) { - pr_err("fluke_gpib: platform_driver_register failed!\n"); + if (result) return result; - } =20 - gpib_register_driver(&fluke_unaccel_interface, THIS_MODULE); - gpib_register_driver(&fluke_hybrid_interface, THIS_MODULE); - gpib_register_driver(&fluke_interface, THIS_MODULE); + result =3D gpib_register_driver(&fluke_unaccel_interface, THIS_MODULE); + if (result) + goto err_unaccel; + + result =3D gpib_register_driver(&fluke_hybrid_interface, THIS_MODULE); + if (result) + goto err_hybrid; + + result =3D gpib_register_driver(&fluke_interface, THIS_MODULE); + if (result) + goto err_interface; =20 - pr_info("fluke_gpib\n"); return 0; + +err_interface: + gpib_unregister_driver(&fluke_hybrid_interface); +err_hybrid: + gpib_unregister_driver(&fluke_unaccel_interface); +err_unaccel: + platform_driver_unregister(&fluke_gpib_platform_driver); + + return result; } =20 static void __exit fluke_exit_module(void) --=20 2.34.1 From nobody Mon Feb 9 13:02:28 2026 Received: from mail-pl1-f181.google.com (mail-pl1-f181.google.com [209.85.214.181]) (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 9FC4C1C07D1 for ; Thu, 26 Dec 2024 19:49:27 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.181 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1735242569; cv=none; b=h82b0Z/JcWpxwdsrlbgA9tj3yPIFyq51T+E6Ji7kn5mDBe1XWzX6Vnl1wBqhdr7XCVGjGUDQfcdYDk2zu3JEcb82kY/wwOkxVMkUY0jTwp0cYk9z9P3fD6NU0ahmnkyfNN2qAnf8wjO/SPMdw/RCntX87D2R0X03wlh4B+Udlyc= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1735242569; c=relaxed/simple; bh=o5Q2vj5i6zwZGZjOwqoP1zbV9zKaCIQkqXtEblYsFK8=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=KCf6oFzZ6DwbWc5XXqxtQua0lowji2ZGtZ7MmD4SdXrKUEquMQ8ZItjoBefZ6uMLhVHtJB6PXGIGaDDw4n36R8rKdAkIvNoMB2CAjBQZG9/cwy0pmNen4X+rbfLe7DfXOrr3JWIeW5Ve7/BeOSOPhJNlhq/cRStEzmYDEg0XK38= 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=I86xT6LV; arc=none smtp.client-ip=209.85.214.181 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="I86xT6LV" Received: by mail-pl1-f181.google.com with SMTP id d9443c01a7336-2162b5d2e1fso10245675ad.3 for ; Thu, 26 Dec 2024 11:49:27 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1735242567; x=1735847367; 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=qzmfsqIqFBfv5O/wsRIwJBpkRaSj938n7kWMDnZ1VX4=; b=I86xT6LVqh9j8XV1TMZf3Z+G9DK1zeYYaYtfVytaV7AEf3KrhUPbuogPhTtSuU3c4q 7m+mwLgwY3s7Tepidw2qcZdS0EMYb/DaJNIgH/XfpG5a82Y01tVERZ2pbe6ijtuY6s7U CpQbK8O7oEDbJRtt6a8emiOf6vs0wBrTvHux3n14QDLvnwcu7QpvzlFvkPB+i6kadM4N OI+AQ094QwrrJ32CfrL72abQ3W5+Zqqm9GUJiIv/RBMsZPEVFzCb4WzDqU6vO7uxbKm3 55pOPel2M+2avoEHDvImLSFD+Gr9OpCPJlqKdHx6bXO7wzTJBy32vPYKuCRW+g4LsAKy kSaw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1735242567; x=1735847367; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=qzmfsqIqFBfv5O/wsRIwJBpkRaSj938n7kWMDnZ1VX4=; b=UyzqNxAYunC9ZWUvSB/Es+DIKEEEqYD04fX7DK0Se4qhGNNuX6GGAeozdgOrVWOrl7 6n5fwbC3D/4K/WA1DP53pbu5dYK0bo5szN8I1sHIoPEwocy8TWkjYEZQag97OXh7gAAf UScvfim5vUBw8pZ4rrAXV9oJmD8GD0pAg+pLNbkHm8mt79I7bUiePDcp/0L/E3x2/T1S 4pj5OOPi8UNuzQkkLcRZaJCaFnqGAlPvnT4z5c78G+HHnM0rjBHnRtf10cgzqm5I7KEM qYWwYCENSPalkWoTUw0rv4VqZ322HOBKhRZUJaQZG2IvRnVhxZm/kcOE2m3Z1FaJmJxh BxTA== X-Forwarded-Encrypted: i=1; AJvYcCWGHXfh6RZMujnP+u+Rjth8cL034qLwFR191CZ/CyKTRA9SwOWQtgSTfp/pGUjGBYNcpEhBTFh76js9k8o=@vger.kernel.org X-Gm-Message-State: AOJu0YwX12hW3YG/y6vYsO2N03Su6brzbmGdzmVCoZXHepX5lryF3ZwE 9DB20gR2bS8/kQA2aM5a3euUjrpX7XrGzeI5nM0RvZjNtjSIWhks X-Gm-Gg: ASbGncuqYSfLGN3Rjhvo5Ai+r9CAssSf516Qfr4uI99MnI1bpjANuF+Qe3hu/E+GC70 vk/zf/ywEpsOAkVmcBjg3ECoGIVC+TXDavQ1W3IRUp8DHfkRcEZnBlwpIuxzNtRz6vcBMI4ZI9G KVeqdUuNOo2egFWVEkooZoM09dgg0h0IiTZEgo7ov5Y8g1lhBMJhu0qh0ld6tVYVYhsyGXPfsxO kO0ciJz7lQZdA540b3TgO+6V67ulHqeYXfkft3m7qFVrxJucuuqj9M= X-Google-Smtp-Source: AGHT+IFj7MMCkHOLs6KYvDs7vYIZq9uzlP6PD6aH+BBdTWes7047Hhy+pbDfyeW8aWuh5QdCAG0OiQ== X-Received: by 2002:a17:902:e848:b0:215:740b:d3ec with SMTP id d9443c01a7336-219e6f1db38mr125009825ad.14.1735242566819; Thu, 26 Dec 2024 11:49:26 -0800 (PST) Received: from ice.. ([171.76.83.141]) by smtp.gmail.com with ESMTPSA id 41be03b00d2f7-842e35d4becsm10304580a12.79.2024.12.26.11.49.24 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 26 Dec 2024 11:49:26 -0800 (PST) From: Nihar Chaithanya To: dpenkler@gmail.com, gregkh@linuxfoundation.org Cc: dan.carpenter@linaro.org, skhan@linuxfoundation.org, linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org, Nihar Chaithanya Subject: [PATCH v4 07/15] staging: gpib: fmh: Handle gpib_register_driver() errors Date: Fri, 27 Dec 2024 01:06:31 +0530 Message-Id: <20241226193637.241049-8-niharchaithanya@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20241226193637.241049-1-niharchaithanya@gmail.com> References: <20241226193637.241049-1-niharchaithanya@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" The function gpib_register_driver() can fail, resulting in a semi-registered module and does not return an error value if it fails. Unregister the previous platform driver, pci and gpib registering functions if subsequent gpib_register_driver() fail and return the error value. Signed-off-by: Nihar Chaithanya --- drivers/staging/gpib/fmh_gpib/fmh_gpib.c | 43 +++++++++++++++++------- 1 file changed, 31 insertions(+), 12 deletions(-) diff --git a/drivers/staging/gpib/fmh_gpib/fmh_gpib.c b/drivers/staging/gpi= b/fmh_gpib/fmh_gpib.c index 62791db1c34a..30676f139a61 100644 --- a/drivers/staging/gpib/fmh_gpib/fmh_gpib.c +++ b/drivers/staging/gpib/fmh_gpib/fmh_gpib.c @@ -1690,24 +1690,43 @@ static int __init fmh_gpib_init_module(void) int result; =20 result =3D platform_driver_register(&fmh_gpib_platform_driver); - if (result) { - pr_err("fmh_gpib: platform_driver_register failed!\n"); + if (result) return result; - } =20 result =3D pci_register_driver(&fmh_gpib_pci_driver); - if (result) { - pr_err("fmh_gpib: pci_driver_register failed!\n"); - return result; - } + if (result) + goto err_pci_driver; + + result =3D gpib_register_driver(&fmh_gpib_unaccel_interface, THIS_MODULE); + if (result) + goto err_unaccel; =20 - gpib_register_driver(&fmh_gpib_unaccel_interface, THIS_MODULE); - gpib_register_driver(&fmh_gpib_interface, THIS_MODULE); - gpib_register_driver(&fmh_gpib_pci_unaccel_interface, THIS_MODULE); - gpib_register_driver(&fmh_gpib_pci_interface, THIS_MODULE); + result =3D gpib_register_driver(&fmh_gpib_interface, THIS_MODULE); + if (result) + goto err_interface; + + result =3D gpib_register_driver(&fmh_gpib_pci_unaccel_interface, THIS_MOD= ULE); + if (result) + goto err_pci_unaccel; + + result =3D gpib_register_driver(&fmh_gpib_pci_interface, THIS_MODULE); + if (result) + goto err_pci; =20 - pr_info("fmh_gpib\n"); return 0; + +err_pci: + gpib_unregister_driver(&fmh_gpib_pci_unaccel_interface); +err_pci_unaccel: + gpib_unregister_driver(&fmh_gpib_interface); +err_interface: + gpib_unregister_driver(&fmh_gpib_unaccel_interface); +err_unaccel: + pci_unregister_driver(&fmh_gpib_pci_driver); +err_pci_driver: + platform_driver_unregister(&fmh_gpib_platform_driver); + + return result; } =20 static void __exit fmh_gpib_exit_module(void) --=20 2.34.1 From nobody Mon Feb 9 13:02:28 2026 Received: from mail-pl1-f173.google.com (mail-pl1-f173.google.com [209.85.214.173]) (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 C6A8915E5CA for ; Thu, 26 Dec 2024 19:49:30 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.173 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1735242572; cv=none; b=iI/5x7m1GgTcqlxJ97TwOna+FFkyMdoRlwroh3Az9FlJulB+02D8VMhnWncQTdeIxLhYW2xGKhkJmwQkBM4MQ7uorzsHXZxO80lSNOdAPqlJXM0zEoczN8RqvOvFoVbp5frEWD8mVy7TA1zThh3ZiVE5EqbxrqYADd9Rl0ncLks= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1735242572; c=relaxed/simple; bh=f9NCgfzsIe6h+GVonhu5wjjsUqVhKNoQn7Uy+tts5dg=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=pkWGylAtFXBVC6E7/gxhwMFPhkumfTNa7VEPt9Uernwsmgn2Q+rbLfCjcemxB3ia1AEMm4jaXx9bFWW4v2zH1DZYjDO9Gmdyq6KB39PLiQ4QNgjnPLnEyKRgr4q3aAfJc47gfgFL1aCSHNZ8ebPXojN8zszzjwbvA+qpiYsMA/k= 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=FiRcPr8B; arc=none smtp.client-ip=209.85.214.173 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="FiRcPr8B" Received: by mail-pl1-f173.google.com with SMTP id d9443c01a7336-21634417587so10481135ad.3 for ; Thu, 26 Dec 2024 11:49:30 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1735242570; x=1735847370; 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=yt2glYu/Skw1HVNCbtnoM321oyEzxI0AuWZ4m/1+W6k=; b=FiRcPr8BPUKeeJXM1R8RDZQIbA2M4kfzlkTb/oV35I0fhhEbMASb8rXZ+TMEcVuGZk AEAj/mCZrb57VDVN0ruhju8xfSaJIK14bHnl3+GMEBAe7SUnAckDPDo5OF6M1TWxiCBa ja+IaOAG9t4A1MD6dgCxN1efM6yXe/AH9etBQfIDwAeMrixq1DQS52As87FZ3fK8W+Xa im05ufjL1EonRMVB5U2sAVVUYdjRfKyi3DC4BSaXRQoKilRNCtsjlvp+kGe3PzJD69ub VptiXPZB9d5aEoBtKzvs8dnVE6HGBwhmakO9g4X+Q52cOdQhASvgffUmPs9Eie/BlzFb ol+Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1735242570; x=1735847370; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=yt2glYu/Skw1HVNCbtnoM321oyEzxI0AuWZ4m/1+W6k=; b=Cid+bUg4JrXt0y8bXCbJlyhqmlktJbZZMPFvqnw/4EDeuCDws3BEaRRg6lfh7g2Zb2 1rUqw0W+1W6EWbFk+2g2q0sq3g4sg/7F+gTjn+sO+cwuKvX87HbMZiiDi80UKdN8I2QY afqLzUCqn4lq1w2NP7G90z0jevVm7rxIdko1Ineq1XvCj3LzJGEqp1wElptt4FyAMskt qPFf0pKACXXcW3LYwd9smj4bDTZalHijbDyvZuYsNg0Z7Qg9VvMxl57nOgnrnnDF+xb0 r89F2Ay5OA5peGz+Ryn4MZQOwyhuXSWtqMP61Omloz21ochvKLJlviyNqlSnwTOZmkra i6Ow== X-Forwarded-Encrypted: i=1; AJvYcCWiLxJbd7xCqZ4dBrqa87lZYGrSnZ8oJ3GWf0aUNBtS+tPBNnFSO8xyK03axqS5YCmtIOhMADGGOh1mmxw=@vger.kernel.org X-Gm-Message-State: AOJu0Yy4UaEuklnjG7wj26u2yFjJ5M1sHNbN3152MUvrCFe3LGlc5iVo NMLFgoqyR5Zvtl3VIoNuZ4cemNDG06hvuRRvgHiDAbtMHavRKOHl X-Gm-Gg: ASbGnctPxIZmZZHrenTDTxpsDCSswwYGoaUFtNkRouYyTJzdIA+beMdVZq54RJK1qiN Q/LffKL0yuSxepYwP6+VfJW+WQu5SZzOjko78kk9PBM6tP5ogZzEM0Hf5rpPKgDm+jU3Ov/dsMZ h1g+5/GlpRfGxACXMg1du38nbligsC6DfI0McJmR6PUX9Z9zwcJ3imEiyOkhhTtWRfagm0UNUb6 R//GrARkiOoWHkJabSGJ9vDS3S8OoJFTFPGMVNnSoaFjtNzTTB9svo= X-Google-Smtp-Source: AGHT+IE01zw8BgwNwUzzQy+6SXWtkQWySXV/1PQqDygaDgj93zLX+tkhhzaSdFf1JW14cZRIz1YfJQ== X-Received: by 2002:a05:6a20:9c8d:b0:1e0:d4c4:f736 with SMTP id adf61e73a8af0-1e5e080247bmr14626358637.8.1735242570093; Thu, 26 Dec 2024 11:49:30 -0800 (PST) Received: from ice.. ([171.76.83.141]) by smtp.gmail.com with ESMTPSA id 41be03b00d2f7-842e35d4becsm10304580a12.79.2024.12.26.11.49.27 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 26 Dec 2024 11:49:29 -0800 (PST) From: Nihar Chaithanya To: dpenkler@gmail.com, gregkh@linuxfoundation.org Cc: dan.carpenter@linaro.org, skhan@linuxfoundation.org, linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org, Nihar Chaithanya Subject: [PATCH v4 08/15] staging: gpib: gpio: Return error value from gpib_register_driver() Date: Fri, 27 Dec 2024 01:06:32 +0530 Message-Id: <20241226193637.241049-9-niharchaithanya@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20241226193637.241049-1-niharchaithanya@gmail.com> References: <20241226193637.241049-1-niharchaithanya@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" The function gpib_register_driver() can fail and does not return an error value if it fails. Return the error value if gpib_register_driver() fails. Signed-off-by: Nihar Chaithanya --- drivers/staging/gpib/gpio/gpib_bitbang.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/drivers/staging/gpib/gpio/gpib_bitbang.c b/drivers/staging/gpi= b/gpio/gpib_bitbang.c index a2d562cbd65b..c88d85b7dc71 100644 --- a/drivers/staging/gpib/gpio/gpib_bitbang.c +++ b/drivers/staging/gpib/gpio/gpib_bitbang.c @@ -1341,7 +1341,10 @@ return_to_local : bb_return_to_local, =20 static int __init bb_init_module(void) { - gpib_register_driver(&bb_interface, THIS_MODULE); + int result =3D gpib_register_driver(&bb_interface, THIS_MODULE); + + if (result) + return result; =20 dbg_printk(0, "module loaded with pin map \"%s\"%s\n", pin_map, (sn7516x_used) ? " and SN7516x driver support" : ""); --=20 2.34.1 From nobody Mon Feb 9 13:02:28 2026 Received: from mail-pl1-f180.google.com (mail-pl1-f180.google.com [209.85.214.180]) (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 31F241C54B6 for ; Thu, 26 Dec 2024 19:49:33 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.180 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1735242575; cv=none; b=Tx13q/+qlrpPAfft6qp4gm+whw76MPrD/YTiWBwz7k0vW1hw32gqcYS48938b06kjQPcJwOcQeDWLE+dv6uR0AkRkXceffgLliq2boufAP6isROFxpuQRQp4gUCppV9dVd3FfGChNws1sep9CPR3RQa7kvgap9yEa3F4/8r5clI= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1735242575; c=relaxed/simple; bh=F6jz18fUTt/WGUdJMn78AT7obmibKSnGAl0CjYbQlsY=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=g5kiBuRdizVMeDxvqQQBjs4JnY0nxR8f4KtpFD8hhIxzNqX0UmX9/sPo3lKSkDydIkQX791IYx/rJKp4A4hPJKWODUJAQAb+dCYvt05JsfU0XXzc/0QJbTgFTG0PSR8O1/HH61W2XcNWG6WVlHkcIg/anTqzVJEBdxKpwZmU65c= 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=DaaKPHTm; arc=none smtp.client-ip=209.85.214.180 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="DaaKPHTm" Received: by mail-pl1-f180.google.com with SMTP id d9443c01a7336-216325f516fso8594495ad.3 for ; Thu, 26 Dec 2024 11:49:33 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1735242573; x=1735847373; 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=dXudBEfa67ru92hiSni5t52owHUXzQ1TaFPBYkz21dA=; b=DaaKPHTmJC4pflh7W7wsXOkRRaOm44rv0oIkU7D7GI36Wx7FVvsK9cqSL6HoHSkwZ9 Wbg60Cy1Bp7A4KMWUomCJByGlkxDBnHyccEkDWKsoGP9gpm90YjKQggNQG+BftEQ1Ywr BYx7VyBfweNdFC0RyXi4V462O3vgmBLyH8x9+7Vq6Yf7kzQZoMLWgvcbb3ygrN36u8cD w9nXROXtZLTNgdgcXmQAGeZiCA2wWvAfYncZZ67MdaC3A0QtLPwt0sN8sY+uiR3l8VFD rj2HMmFWw/2KU4+TLIHYV5e7XJ8Vt2ElV53/y7adlRYgEfooJW290rDVEtMHWJ8QIllV 0NAg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1735242573; x=1735847373; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=dXudBEfa67ru92hiSni5t52owHUXzQ1TaFPBYkz21dA=; b=eEaHSCYBWUGoK7SkcCfXEG0cDSGYDpiY9UuwoQrl8f6Cm3x9+5wQxTerduybQN3IJb H1+BDSDO2veFYQS6rycN5lsEiPsK8ajuqlPvcq6i19IR8R7F7nwkqBr+IW1rWWY0Uiii LLlnSEqDw2fl7/cmE72KwwxcGe6YFyUiPEEh1UgEI9nNOx6NnACKn13ysBOg+vD02Ilx FOWs5aytv2ywtJ+P7f/GBofiXdv1i/np5TMYJL7T8QidyjXuMrY2TQ3RYW4P7MtrStDV MSpQGO7MYvsOYLI61chKkHKoWZVIpAYNlCOVOj105nBuIv68HtcBgOFop31LQ1mjeo11 nC8Q== X-Forwarded-Encrypted: i=1; AJvYcCUDQRu/Lj9pkRBBMp8Wc44gJUkIoEPqMJ85tuJnMdXTfGzzKO4bNS843xRC5QvoF1bmtbvMFJMEMPNA9PU=@vger.kernel.org X-Gm-Message-State: AOJu0Yz8Js6vmyAL611/0LPXOCgg9rH1wLYuM9iyzVZYntQvH3n07X+m 76wd4EuD7B6iroHowsyBm2Oz/OVoZXvNq3J0qnnccZiJmgzyIAMg X-Gm-Gg: ASbGnctIBXs2uF+YAFgyriEZ69zx4Q1E5KVlU1ZrfRG8ILn5DnO1sLWzeF9JhE3gM02 APZpnlmRRi+hHeNARbmIU4GDdTQ8O3+NwKEhX7qJ/uxysOyUknBCdNkq6PR4/1zrJvYkHO2KXw8 ccJdj2I/5Zb3Q/OKTnWAWDB2b2qFdNJ0W/kxJVgwacqrxycfmHphucegfl+/STXCLHGlbevTNnt xm9nfOytDfxwGhyTymaMxIztmfMb10O6+Wg3zV854QAG+pXCkccQSw= X-Google-Smtp-Source: AGHT+IH3zYa80e14n8q/Wa3gLe5UBUTz0L0/+2YwKF6kv1M6pjd5UyvW0VCbPzjIjWGPQt+KaCteaw== X-Received: by 2002:a05:6a21:3991:b0:1e1:b1e4:e753 with SMTP id adf61e73a8af0-1e5e047faefmr15388272637.4.1735242573425; Thu, 26 Dec 2024 11:49:33 -0800 (PST) Received: from ice.. ([171.76.83.141]) by smtp.gmail.com with ESMTPSA id 41be03b00d2f7-842e35d4becsm10304580a12.79.2024.12.26.11.49.30 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 26 Dec 2024 11:49:33 -0800 (PST) From: Nihar Chaithanya To: dpenkler@gmail.com, gregkh@linuxfoundation.org Cc: dan.carpenter@linaro.org, skhan@linuxfoundation.org, linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org, Nihar Chaithanya Subject: [PATCH v4 09/15] staging: gpib: hp_82335: Return error value from gpib_register_driver() Date: Fri, 27 Dec 2024 01:06:33 +0530 Message-Id: <20241226193637.241049-10-niharchaithanya@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20241226193637.241049-1-niharchaithanya@gmail.com> References: <20241226193637.241049-1-niharchaithanya@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" The function gpib_register_driver() can fail and does not return an error value if it fails. Return the error value if gpib_register_driver() fails. Signed-off-by: Nihar Chaithanya --- drivers/staging/gpib/hp_82335/hp82335.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/drivers/staging/gpib/hp_82335/hp82335.c b/drivers/staging/gpib= /hp_82335/hp82335.c index 40afe42aea47..1fa7bcb7d8fa 100644 --- a/drivers/staging/gpib/hp_82335/hp82335.c +++ b/drivers/staging/gpib/hp_82335/hp82335.c @@ -325,7 +325,11 @@ void hp82335_detach(gpib_board_t *board) =20 static int __init hp82335_init_module(void) { - gpib_register_driver(&hp82335_interface, THIS_MODULE); + int result =3D gpib_register_driver(&hp82335_interface, THIS_MODULE); + + if (result) + return result; + return 0; } =20 --=20 2.34.1 From nobody Mon Feb 9 13:02:28 2026 Received: from mail-pl1-f176.google.com (mail-pl1-f176.google.com [209.85.214.176]) (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 818701C9DCB for ; Thu, 26 Dec 2024 19:49:37 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.176 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1735242578; cv=none; b=PQuCFYa/hWZxUeuWVqWLftDSwVMgi/3UCUBO8VvZy1HXfws4/MnINGz8nghFAoWV1nyf5+/pEMf4PxubNBvOpgaQ6v1/3ewFs4OgSOr85jJBFY8X0OxAHLNEQWieA3zP6FetBPrD6UY8M3Yd+bw2nUsAPB8OSwkYB9Nl2CknLWs= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1735242578; c=relaxed/simple; bh=4wP+yrbQKdqe7qTF88p0m3AcYeGmFMMgogAzdvOtUzc=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=TTbz3CWDdF5HnyTEuvXz28bKlTKXCGnk8k+Wuo0VnxL+oVZ7r+mnxmQUNaVQEBKthBpDRNspg/QL6EZ4jeW7VF//acvXDuX8bGqtrDA6G6ucob32QWEQhpeuTh5qhOyjsOKoJvOT1E+Nb6OD3rbAsfxelkHL8Xhwbp2BuhdUZtA= 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=DqWpk1ag; arc=none smtp.client-ip=209.85.214.176 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="DqWpk1ag" Received: by mail-pl1-f176.google.com with SMTP id d9443c01a7336-215607278acso7769935ad.1 for ; Thu, 26 Dec 2024 11:49:37 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1735242577; x=1735847377; 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=OuuMFLa1FGsu6aUaZ3Bcceiqnb07JBfGbEvGz7MoD9g=; b=DqWpk1agjG6nnomrPzTv3aNN2LtP6LP65v1sTlv6LauTFlQ9LKxCNp9TxuqoofvBUq tCsytu9DHMUqZiwDT7juQI/jC7MNTW0sEqhWZw/VUbqLb5g71EM72c8ZMpseBOJoknS2 kcN5tjkBUkFNG6qqmI35LudeXkV/frAY8AzMa+3EKi4H2ZRwqp6n76BEsAr6yUaVuij/ LR+ViWxJJxuZlAfXWzR1WpyEE3EuNab/ZOawpCuh8CSZJGK2afkQ+G6SqwUJ3V9vzV8p ukWMYTmud3ga1ZkFy4e5NTzwhuxHoS+QEoMd2SnNujMbIsoW7RidvyY8ktjd3ShWuLry mq1A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1735242577; x=1735847377; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=OuuMFLa1FGsu6aUaZ3Bcceiqnb07JBfGbEvGz7MoD9g=; b=ESLmhK5Wv8i07Ii+zUG2RTnmedyYQ11ZTcMM8oBSmwXKtDbgPASX3jF+ZmrQzOMStE ldMLAeP2pRpfgpOtsFQN9hmS6j3/kndFbWHqAcBHa13A/CmtjXDxqlS5dpZ3rjYZjGVO SeY7l0yoVbh4J3wIXfP8aCs/u0hVzraoYRkouVZ+Lo+iJBa1e1G1ulzE7xPUsbjXwXCK HwlGtStkPrRV1W6JuXq/O77FWW5zF/M/DLL8PNODe1qGMmrLJxMtfYeUWMwaNT1q1OXA eFofOX58IPEPdMyQHry1sEa4WUvmgFBSTe/agbp9ljxnVap5owXXb3qsiuZV5CRdWmGi V49Q== X-Forwarded-Encrypted: i=1; AJvYcCUWLoa7I1/D/s/k3bUeub/Soj/qMsSJPPrAx2FRAS9TOzSAoNsp+S36tUvkYY5KKvUKftC7zqSQ6NDcykA=@vger.kernel.org X-Gm-Message-State: AOJu0Yz66+3l/tDC5tp33Ia54IwGximIw7s2FbublJquf3l75xFP61Vs AcFmvzIINpOe7c++A1qSQNm3uFeI8FPYfyK3vBJIlceS2Wk3rstLkq/0Cx54s6A= X-Gm-Gg: ASbGncscUTKqwVf2yUN1LBlwxf3ixof2Brxe5JYWinP/MuNDqUcWIEQiJdSnW4ys70P j++t7i2yIagZtFhQTI26DnAhjLsbEhwd9OtakV8KHUHXqHsVUXv2lE0mCCpB9qeMSyYqbzc5PMH jDpTpp31lDz//+nBUm5NmN8aeX+yTQJ3ZM9yeX+117vgi7JmmIYRg6JVtp3a4nQubk7mjNpdFOC 1r8wM1tepw7ru8UC71q10wSI9BhCE7JZpCeZQvlu+9uP1JvjAonP/Y= X-Google-Smtp-Source: AGHT+IFgeglFpXFOFkkqQVGIgyPBR0JhX/cLzwgARcPCkBLAZt6ScP+DQGnHBOfy7m0VonZ5DXqjZw== X-Received: by 2002:a17:902:d48e:b0:215:8698:fb02 with SMTP id d9443c01a7336-219e6f05e39mr129712775ad.11.1735242576769; Thu, 26 Dec 2024 11:49:36 -0800 (PST) Received: from ice.. ([171.76.83.141]) by smtp.gmail.com with ESMTPSA id 41be03b00d2f7-842e35d4becsm10304580a12.79.2024.12.26.11.49.33 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 26 Dec 2024 11:49:36 -0800 (PST) From: Nihar Chaithanya To: dpenkler@gmail.com, gregkh@linuxfoundation.org Cc: dan.carpenter@linaro.org, skhan@linuxfoundation.org, linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org, Nihar Chaithanya Subject: [PATCH v4 10/15] staging: gpib: hp_82341: Handle gpib_register_driver() errors Date: Fri, 27 Dec 2024 01:06:34 +0530 Message-Id: <20241226193637.241049-11-niharchaithanya@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20241226193637.241049-1-niharchaithanya@gmail.com> References: <20241226193637.241049-1-niharchaithanya@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" The function gpib_register_driver() can fail, resulting in a semi-registered module and does not return an error value if it fails. Return the error value if the first gpib_register_driver() fails and if the second gpib_register_driver() fails unregister the first gpib_register_driver() and return the error value. Signed-off-by: Nihar Chaithanya --- drivers/staging/gpib/hp_82341/hp_82341.c | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/drivers/staging/gpib/hp_82341/hp_82341.c b/drivers/staging/gpi= b/hp_82341/hp_82341.c index 8ad1c885a9fb..daf5f6e02bd5 100644 --- a/drivers/staging/gpib/hp_82341/hp_82341.c +++ b/drivers/staging/gpib/hp_82341/hp_82341.c @@ -807,9 +807,17 @@ MODULE_DEVICE_TABLE(pnp, hp_82341_pnp_table); =20 static int __init hp_82341_init_module(void) { - gpib_register_driver(&hp_82341_unaccel_interface, THIS_MODULE); - gpib_register_driver(&hp_82341_interface, THIS_MODULE); - return 0; + int ret =3D 0; + + ret =3D gpib_register_driver(&hp_82341_unaccel_interface, THIS_MODULE); + if (ret) + return ret; + + ret =3D gpib_register_driver(&hp_82341_interface, THIS_MODULE); + if (ret) + gpib_unregister_driver(&hp_82341_unaccel_interface); + + return ret; } =20 static void __exit hp_82341_exit_module(void) --=20 2.34.1 From nobody Mon Feb 9 13:02:28 2026 Received: from mail-pl1-f171.google.com (mail-pl1-f171.google.com [209.85.214.171]) (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 28E871CD208 for ; Thu, 26 Dec 2024 19:49:41 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.171 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1735242582; cv=none; b=cBnVaIL1IGXUI37qbLbJE6w1/EX5ejGh9XGPSKQ3rMnO8oO91Tpnkb/DhLY0XUIkFOMjMaRMDtiiMMZMETZaBidEUbiLPHVTGUN3UOTqc5PEQeOLfxjqtcGXYlwsp/fpcmwxQPzrMVSWlOvENlaRL4ciVcuAvYRIC4pFin10Gb8= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1735242582; c=relaxed/simple; bh=1QbddRKCNYr3HYo4IhQB9/Bf6CeIQvgX6GjTWhQ89Ls=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=uxlacO6HI5JD1NWlefUWoWBYXSt+z+L6Bh1H8V1aS7K2AZBHYLf43QLT56aggoVuZA6NdLXPuMeNxjqdx+VhJqCxvPi3NNG5Ki/N1580ka/4kunGN9xfSdTuIjQTVOtJvAf/R1WTO814y6BdYsMk3Q27SVJNpkW6b1WxaH4v/nc= 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=TF1865W6; arc=none smtp.client-ip=209.85.214.171 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="TF1865W6" Received: by mail-pl1-f171.google.com with SMTP id d9443c01a7336-21644db9f3cso9240365ad.2 for ; Thu, 26 Dec 2024 11:49:41 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1735242580; x=1735847380; 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=iqW9Swsnv7VLS6ZMLw89eDGe2BsxNZ7CXUs3SW+g2Lo=; b=TF1865W6iRn6h9/R+Sza0SYhTbmXBE4gdykDbjnvkZwbb9gH9eUbRq5FhPGa01jSQJ jRXueaONBANBFyzf+ym2o3qnhT2m5swtKzFbjftCB/A3adpvRL9mbQyxVVuOzCj8yEtQ ExY/WDxan8DvcnropQVMI7CbFnx+onqTtk/CNXKERvzgKawSaI2bpY3ZpdIhkHZLHQHo JsTrWfnfQHyKOWCKQjYjUZhX8L6oB56BBwrVvdw/N0C0odORbly6jFo67n/1O0UFx/z7 Ld57Qj96K664c+hJt4NEkLF/KGODpGx4eo3yZ8J6cezzftZIsEZDGUn9ENrPpFlXSmcn FOgA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1735242580; x=1735847380; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=iqW9Swsnv7VLS6ZMLw89eDGe2BsxNZ7CXUs3SW+g2Lo=; b=XERfckiKsGPuWJQWPPTy+48Sd9a0dw7mIfGpmG7ZnaWhcHt7R++U92ZCiVFXcll+NF NJZV0inAUYJjHnECFne9v/vBG2P7vDU7SnVTSjz4dOFFOcdTxrAtYUaeUGRtH22f7HG1 or7Ju3NgfdNJmbZ8nFJMUTfKrdKRbjPqTKjuk1ol0clkwZMbAobZBDVwJF46BF70EMpk cW55VlfjmEMHDBubEDMXGxYj75GcGJ3xY2P/nuOX/na58JCqxn/MDiLm+Z+HUE9aVM0r 14Z5+pSn3t74qaA/iq1ypkafPUjF0ucS/XZAFHrPRep6nqsMRBBdYv0ZTxxxpJwA0Hwx tYNg== X-Forwarded-Encrypted: i=1; AJvYcCW6vIRicorsx36HwsBxIjgjaS+4EFKsKv5tAPHqc9qCDso8Jffd+jpkiwKhF61dUqzuasFtCee3JWQt8bY=@vger.kernel.org X-Gm-Message-State: AOJu0YyAuPsMGC7GOQu2EGpRXgTynYS+SpQ13oR4Ty7rWiMbmm/A1g9/ nEHjkmGBLc8oer7SCgJ9MwZ70BHtjpxbY1EeuMMK4YxSbRm1s1zwp3KMrkI1J/s= X-Gm-Gg: ASbGncuH88WoHg0o8Kl3I5OOyXv2YVOkir+PyrKJJRVi69O7azJEhyq7g0a5o/0ojCP nbzUReWbzCe2e1X/M927hl8lFihPveTW1Eu0M93TeYoUTnN+CsVMjRleKVc8JkB9693bQ7/0MSQ HYzuHojoPnnpCctxqp7Fe7cjkzSQiDCEoA05G2/Dk2kzpOYJw0zmda1L5kP1tqSV45KkLRoln5L 3Cxm+TdjnTXmgL2lKLOjOvJoxGXKQg/pDmPuKWZoE551riqcComQtU= X-Google-Smtp-Source: AGHT+IGJHnyHlHs1hPjONK46MhelbvDImJ/ZpAqtTjiBRJ7oN6fZpHhJaDQL8rrZudWKWC7KD09S2g== X-Received: by 2002:a05:6a21:3381:b0:1e1:d2a0:46ae with SMTP id adf61e73a8af0-1e5e081ee64mr15060906637.12.1735242580514; Thu, 26 Dec 2024 11:49:40 -0800 (PST) Received: from ice.. ([171.76.83.141]) by smtp.gmail.com with ESMTPSA id 41be03b00d2f7-842e35d4becsm10304580a12.79.2024.12.26.11.49.37 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 26 Dec 2024 11:49:40 -0800 (PST) From: Nihar Chaithanya To: dpenkler@gmail.com, gregkh@linuxfoundation.org Cc: dan.carpenter@linaro.org, skhan@linuxfoundation.org, linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org, Nihar Chaithanya Subject: [PATCH v4 11/15] staging: gpib: ines: Handle gpib_register_driver() errors Date: Fri, 27 Dec 2024 01:06:35 +0530 Message-Id: <20241226193637.241049-12-niharchaithanya@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20241226193637.241049-1-niharchaithanya@gmail.com> References: <20241226193637.241049-1-niharchaithanya@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" The function ines_pcmcia_init_module() can be replaced by calling pcmcia_register_driver() directly. The error value from this function is not returned and the previous registering functions are not unregistered. The function gpib_register_driver() can fail and similar to pcmcia_register_driver() function failing, the previous registering functions are not unregistered. Replace cb_pcmcia_init_module() with pcmcia_register_driver(). Unregister the gpib and pci register functions if the subsequent gpib or pcmcia register functions fail and return the error value. Signed-off-by: Nihar Chaithanya --- drivers/staging/gpib/ines/ines_gpib.c | 78 +++++++++++++++++++-------- 1 file changed, 56 insertions(+), 22 deletions(-) diff --git a/drivers/staging/gpib/ines/ines_gpib.c b/drivers/staging/gpib/i= nes/ines_gpib.c index 9d8387c3bf01..dda9205bfd97 100644 --- a/drivers/staging/gpib/ines/ines_gpib.c +++ b/drivers/staging/gpib/ines/ines_gpib.c @@ -1227,12 +1227,6 @@ static struct pcmcia_driver ines_gpib_cs_driver =3D { .resume =3D ines_gpib_resume, }; =20 -int ines_pcmcia_init_module(void) -{ - pcmcia_register_driver(&ines_gpib_cs_driver); - return 0; -} - void ines_pcmcia_cleanup_module(void) { DEBUG(0, "ines_cs: unloading\n"); @@ -1420,28 +1414,68 @@ void ines_pcmcia_detach(gpib_board_t *board) =20 static int __init ines_init_module(void) { - int err =3D 0; + int ret; =20 - err =3D pci_register_driver(&ines_pci_driver); - if (err) { - pr_err("ines_gpib: pci_driver_register failed!\n"); - return err; - } + ret =3D pci_register_driver(&ines_pci_driver); + if (ret) + return ret; + + ret =3D gpib_register_driver(&ines_pci_interface, THIS_MODULE); + if (ret) + goto err_pci; + + ret =3D gpib_register_driver(&ines_pci_unaccel_interface, THIS_MODULE); + if (ret) + goto err_pci_unaccel; + + ret =3D gpib_register_driver(&ines_pci_accel_interface, THIS_MODULE); + if (ret) + goto err_pci_accel; + + ret =3D gpib_register_driver(&ines_isa_interface, THIS_MODULE); + if (ret) + goto err_isa; =20 - gpib_register_driver(&ines_pci_interface, THIS_MODULE); - gpib_register_driver(&ines_pci_unaccel_interface, THIS_MODULE); - gpib_register_driver(&ines_pci_accel_interface, THIS_MODULE); - gpib_register_driver(&ines_isa_interface, THIS_MODULE); #ifdef GPIB_PCMCIA - gpib_register_driver(&ines_pcmcia_interface, THIS_MODULE); - gpib_register_driver(&ines_pcmcia_unaccel_interface, THIS_MODULE); - gpib_register_driver(&ines_pcmcia_accel_interface, THIS_MODULE); - err +=3D ines_pcmcia_init_module(); + ret =3D gpib_register_driver(&ines_pcmcia_interface, THIS_MODULE); + if (ret) + goto err_pcmcia; + + ret =3D gpib_register_driver(&ines_pcmcia_unaccel_interface, THIS_MODULE); + if (ret) + goto err_pcmcia_unaccel; + + ret =3D gpib_register_driver(&ines_pcmcia_accel_interface, THIS_MODULE); + if (ret) + goto err_pcmcia_accel; + + ret =3D pcmcia_register_driver(&ines_gpib_cs_driver); + if (ret) + goto err_pcmcia_driver; #endif - if (err) - return -1; =20 return 0; + +#ifdef GPIB_PCMCIA +err_pcmcia_driver: + gpib_unregister_driver(&ines_pcmcia_accel_interface); +err_pcmcia_accel: + gpib_unregister_driver(&ines_pcmcia_unaccel_interface); +err_pcmcia_unaccel: + gpib_unregister_driver(&ines_pcmcia_interface); +err_pcmcia: +#endif + gpib_unregister_driver(&ines_isa_interface); +err_isa: + gpib_unregister_driver(&ines_pci_accel_interface); +err_pci_accel: + gpib_unregister_driver(&ines_pci_unaccel_interface); +err_pci_unaccel: + gpib_unregister_driver(&ines_pci_interface); +err_pci: + pci_unregister_driver(&ines_pci_driver); + + return ret; } =20 static void __exit ines_exit_module(void) --=20 2.34.1 From nobody Mon Feb 9 13:02:28 2026 Received: from mail-pl1-f176.google.com (mail-pl1-f176.google.com [209.85.214.176]) (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 1917C1CEAD4 for ; Thu, 26 Dec 2024 19:49:44 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.176 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1735242586; cv=none; b=IDnjoxzlyw+8zGH3Bz/tSkEN/3YW/T+Pkje1A1PusZ3FRqeZmxl6kNptUYUAlZw44L/JlqAeYZSOqSsaW2xqbRLvdEQSK/ydYvmdkoRdhr9SpGlu9TfS/hZVxm9bNa+atV5L8/NKNBf+d8cls4+aRHrsRwDOSQrfnazCyJQoQmM= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1735242586; c=relaxed/simple; bh=C1m2qIRcVhbyiBfPZcibOHclNLGXibt0YYCUhqw/+Ls=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=qYGz5LK4sZFclYvP/nTvWKCniYElvZdzZpX3YUymQ3JnV9TCvo22JAXFih8aDzAXYJFQCxZ66HS2632duEoDCHt0OsjDasj/zG8YhzDWxxG/6gK5mANAOjOoig6MWurWF2GgZEH+I9bvAXFYywwmCIJAA0qGW6c3jQEd0ZHGJyM= 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=O8jgQLjj; arc=none smtp.client-ip=209.85.214.176 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="O8jgQLjj" Received: by mail-pl1-f176.google.com with SMTP id d9443c01a7336-2161d4b820bso8094005ad.1 for ; Thu, 26 Dec 2024 11:49:44 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1735242584; x=1735847384; 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=4COc1F2QXFTwXqtvB4VWYIZTqsLaKCmT1xH03KuvEOg=; b=O8jgQLjj3ITU4BgJ9XBemFBYv+1gGV2izopyrNYAwC2u7SQUFeWMVdoilWzn01gG6R cTIHBa9i8aSPRDR10R2uFXPUipNm5OANrkykBynndtup6C+2d6zvjX5dWdHv80nB27+9 ohklTYkH/7hiKkEh6I6V+8RVt/9H7j19QFSZ6lo7GNwfuP44mAas3OgGL7kUePXVH3hr EGFST1krzALMG4tsihH9FUXWs9SHF3AaZM9Fabqc7IR4MScMSkKXaCRjVC0BXyoX1/Mt 8TssNUW7dIKmyZDeP17KM6QF6fhULWomNIiISaX1Rkq4zxrhxS3RV57Sbj1/n7kIm6UM 6lGw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1735242584; x=1735847384; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=4COc1F2QXFTwXqtvB4VWYIZTqsLaKCmT1xH03KuvEOg=; b=m/xu11SlJzyjuYgi1FlYKZ9Ly+08K1/NT1DW2S4nFUzK5qDLAS1Ql/ftIb/cbAHEm/ I7iXm9LQ4+f4ZATiQYQSPV+OVa/REXn5UrBxSa333rtbPsIlcU1xcSFPU+iIT2WkVQFp SZHUGdTaEh/xT/gfFhumJVHcAtlus27TQxIp0QB21f1xI7ilDxxRcTsOS2t8UgsxmU6W 8dqNUL+Y/BucGRJ7NejsXUE9LMXgg/tTIb8WzG1W7IbleYFwACFM083gOxCcgucNO6It qrUijZA3clpvd/qQAqWWXi0TkuwIXGKMMcYN0AdET/7g59n30WUqo+Xol5MXy3XqnA42 mVHQ== X-Forwarded-Encrypted: i=1; AJvYcCUPdGsLkX524Zu0T7s4HfGMohPxegFHyoSMS076pIQdXeAPmyPPAnLOrNudU3BX0t9S5juUP4d5mX58TWk=@vger.kernel.org X-Gm-Message-State: AOJu0Yz8OyQdAvPqIWMM7DJ/Nnyd1nvOliPNonv2gjiWgRcm43AbHoh/ Ik/lJZ6Y+9JimVHUXFp4sNU7K0lz5kYRvXTgXs9N+I6IzeEJVUcx X-Gm-Gg: ASbGncsBYb50QmSEtdbRionfKqhgDvT9WMJA5zsWESzJMLRJQzYqbkhGQSDCrdl91zc BLgmVj63bGrI06chyf9DLFYcR53cZa9jAguPw1rSJ95t9oqiEfOPVu/47bIB+Ap2lobEw//+uYO 5Tj4msGMpF65TMFy9jQMEUOoEHfiM3X77USLUNRBV7E6NfPeyOa0fBv7NOSJUDIZ4Jm+1OhHY+G DcL8LC6FrqR3RW8e8EuPKcmISw9xOgT1Ljs7II0jiv8t0XnORQuKRc= X-Google-Smtp-Source: AGHT+IG17vjbgwMDwKMBDYcO5TCiXPz5GHom6B27qRh7AqF7BUvk2ZTdW0B7Pdz++QoHgNIV/bSGJg== X-Received: by 2002:a05:6a21:999e:b0:1e1:94e6:db0f with SMTP id adf61e73a8af0-1e5e07f182fmr14783323637.8.1735242584397; Thu, 26 Dec 2024 11:49:44 -0800 (PST) Received: from ice.. ([171.76.83.141]) by smtp.gmail.com with ESMTPSA id 41be03b00d2f7-842e35d4becsm10304580a12.79.2024.12.26.11.49.40 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 26 Dec 2024 11:49:44 -0800 (PST) From: Nihar Chaithanya To: dpenkler@gmail.com, gregkh@linuxfoundation.org Cc: dan.carpenter@linaro.org, skhan@linuxfoundation.org, linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org, Nihar Chaithanya Subject: [PATCH v4 12/15] staging: gpib: lpvo_usb: Return error value from gpib_register_driver() Date: Fri, 27 Dec 2024 01:06:36 +0530 Message-Id: <20241226193637.241049-13-niharchaithanya@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20241226193637.241049-1-niharchaithanya@gmail.com> References: <20241226193637.241049-1-niharchaithanya@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" The function gpib_register_driver() can fail and does not return an error value if it fails. Return the error value if gpib_register_driver() fails. Signed-off-by: Nihar Chaithanya --- drivers/staging/gpib/lpvo_usb_gpib/lpvo_usb_gpib.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/staging/gpib/lpvo_usb_gpib/lpvo_usb_gpib.c b/drivers/s= taging/gpib/lpvo_usb_gpib/lpvo_usb_gpib.c index 796c3a5be545..d8af811c75ca 100644 --- a/drivers/staging/gpib/lpvo_usb_gpib/lpvo_usb_gpib.c +++ b/drivers/staging/gpib/lpvo_usb_gpib/lpvo_usb_gpib.c @@ -1181,7 +1181,9 @@ static int usb_gpib_init_module(struct usb_interface = *interface) return rv; =20 if (!assigned_usb_minors) { - gpib_register_driver(&usb_gpib_interface, THIS_MODULE); + rv =3D gpib_register_driver(&usb_gpib_interface, THIS_MODULE); + if (rv) + goto exit; } else { /* check if minor is already registered - maybe useless, but if * it happens the code is inconsistent somewhere --=20 2.34.1 From nobody Mon Feb 9 13:02:28 2026 Received: from mail-pl1-f170.google.com (mail-pl1-f170.google.com [209.85.214.170]) (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 ECCB51D416E for ; Thu, 26 Dec 2024 19:49:48 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.170 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1735242590; cv=none; b=HvYk45832aiIghBAu9CvhBL6XSUgHFNoJju+jFHU2itXWDxqqlCUHFONlA08gloLoquguQPQZcuCF09P8eAaOSEk7RjTqcoHIfuaaz6dImHT/m+M1jRPDnwBhdm/58zlsUEuR/14R6r8SoS3Jf8MH9jSvLoOdLtyQZn5IgxropA= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1735242590; c=relaxed/simple; bh=lM4F4tNWhI9bXPIjvz5N58CH3ALV+ujeYhLvFQ2TUJ8=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=AP88tcdEF5mP+V6Oo1VQM9fdPUFxmpxJRVPlKnBhcSaOteQYA/WLLgX33joq5SSOLDx9bhAJl5HEhvbRsYWeR9duXsqU6iZt8mv/Am8qf9DPxSLm1LC3CvtZ8NDptFQUyb7WTvqdqZRRSEk0A/srcZwMGY1sqNgTeAEGOXLadAc= 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=SioG6tzZ; arc=none smtp.client-ip=209.85.214.170 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="SioG6tzZ" Received: by mail-pl1-f170.google.com with SMTP id d9443c01a7336-2162f968cd7so8297485ad.1 for ; Thu, 26 Dec 2024 11:49:48 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1735242588; x=1735847388; 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=SaMYoJWCSlwYzZZh/EkMcwMBpZjwpcPJiIs7cTJyhsk=; b=SioG6tzZ5esr8UhSDYbKyPfWTummQ48IivKWs2B9GWADyHBrccCxCwcUTyB6wElakE cVWMy/ILl2GWZrmwtnLtWwI88y3x5orTlAcM5Vn92EyvMuuvNmASkFJRHGo+geaf8vHL kQSh0WIEOwnFReNRz51L3H5QOSi7KDn3Yw6/mIbfzFu7y3gkKJJcg48ksFwcF3UkKML5 XIB/5uPSaBjr2N6gNh8Q/3TPiZu6t8i66msAlgMfpkbWq2l7s5/uNW8hNc5RMwu+ZU/L +/yu3BuGswiSm2DxYWKFykQMLNxa3spl0tX8KT0RGMbKge2RDk9N8DRpVpjxYGAB4MnL J2tA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1735242588; x=1735847388; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=SaMYoJWCSlwYzZZh/EkMcwMBpZjwpcPJiIs7cTJyhsk=; b=kwLi6jnrxcOt95GukaxnraZnuUXAYGdWFwBhVLgXvTGJyTVLZEJgZTV1rlL3FTLSAv y89HAsYlIHf7ZSDexy/neibe2SFtMcu0nLSQOPaliWBs3JAV4GQ2he9xUeYWgKiEYqHQ fsdVrY4kfnLIO9/fjCKIu2Xq5ZExBZNXSNuEWvVyE2HtcG9xKxSdv8W02iBgkNgdFZwk eDFqw5eiLf8LaFTLdVyO4NJDX/De6kr9Dm058s1IPN6HEeCRoo9CQgXDXL8VcAJ56McU lVb2+p5Z9sGJ3bAZ9uraMtiSP2N26mAlSlJwOHWCw2ffSkxlTpHajmgktrUfOBpuf8lS 1yug== X-Forwarded-Encrypted: i=1; AJvYcCVuU29iW9uxfa/BTsbT8lMNO0Q21KneaA7l5sMlV2NWNnFqeyX+lvncXgNnMv3cJfg0ZiKEiyRpwfcB368=@vger.kernel.org X-Gm-Message-State: AOJu0Yz13IhWwFUmSyTXofo57BRH/Dy+2sLwwfpZzOJwGcBnk/bUFcMl fe12pI1dcz0blKKLQU/J++tu96zrXDBHS8ntFQm4Uyt/C1ITjko9 X-Gm-Gg: ASbGnctlYICIaije7336harLpFEVvNNZbw0mxzUB7FuG8JT1aVZ9JEtMFT5e5K1GPlV RLbgXxY05R97a2CkwQeWDs6o82RYQS9XnIprXBFxS6taI5foJjmz1ev4UZosllFKDeP6fv3ro/f zzqgyYxSTs4rreG7uVevwdxe9nff8/MvxS11lrD95Q9yeVdNf6T4jezkrazHTK0D0CqZkSz26qs DrmmTNEECnafCtH8Gzi6vJsmp0jmFi2as9w/uacz/uubikuLX05A4Q= X-Google-Smtp-Source: AGHT+IFKEXpSh+f0GaZDDZpL0smypeehq7M391fZ2nFcOvkX0+NwgFglxPr3xc4HbKcntFIcmLMPkw== X-Received: by 2002:a17:902:c408:b0:216:526a:5403 with SMTP id d9443c01a7336-219e6e887dbmr127996065ad.3.1735242588222; Thu, 26 Dec 2024 11:49:48 -0800 (PST) Received: from ice.. ([171.76.83.141]) by smtp.gmail.com with ESMTPSA id 41be03b00d2f7-842e35d4becsm10304580a12.79.2024.12.26.11.49.44 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 26 Dec 2024 11:49:47 -0800 (PST) From: Nihar Chaithanya To: dpenkler@gmail.com, gregkh@linuxfoundation.org Cc: dan.carpenter@linaro.org, skhan@linuxfoundation.org, linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org, Nihar Chaithanya Subject: [PATCH v4 13/15] staging: gpib: ni_usb: Handle gpib_register_driver() errors Date: Fri, 27 Dec 2024 01:06:37 +0530 Message-Id: <20241226193637.241049-14-niharchaithanya@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20241226193637.241049-1-niharchaithanya@gmail.com> References: <20241226193637.241049-1-niharchaithanya@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" The usb_register() function can fail and returns an error value which is not returned. The function gpib_register_driver() can also fail which can result in semi-registered module. In case gpib_register_driver() fails unregister the previous usb driver registering function. Return the error value if gpib_register_driver() or usb_register() functions fail. Signed-off-by: Nihar Chaithanya --- drivers/staging/gpib/ni_usb/ni_usb_gpib.c | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/drivers/staging/gpib/ni_usb/ni_usb_gpib.c b/drivers/staging/gp= ib/ni_usb/ni_usb_gpib.c index b7b6fb1be379..f20a23a023d9 100644 --- a/drivers/staging/gpib/ni_usb/ni_usb_gpib.c +++ b/drivers/staging/gpib/ni_usb/ni_usb_gpib.c @@ -2619,14 +2619,21 @@ static struct usb_driver ni_usb_bus_driver =3D { static int __init ni_usb_init_module(void) { int i; + int ret =3D 0; =20 pr_info("ni_usb_gpib driver loading\n"); for (i =3D 0; i < MAX_NUM_NI_USB_INTERFACES; i++) ni_usb_driver_interfaces[i] =3D NULL; - usb_register(&ni_usb_bus_driver); - gpib_register_driver(&ni_usb_gpib_interface, THIS_MODULE); =20 - return 0; + ret =3D usb_register(&ni_usb_bus_driver); + if (ret) + return ret; + + ret =3D gpib_register_driver(&ni_usb_gpib_interface, THIS_MODULE); + if (ret) + usb_deregister(&ni_usb_bus_driver); + + return ret; } =20 static void __exit ni_usb_exit_module(void) --=20 2.34.1 From nobody Mon Feb 9 13:02:28 2026 Received: from mail-pl1-f179.google.com (mail-pl1-f179.google.com [209.85.214.179]) (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 7FB2B1D45EF for ; Thu, 26 Dec 2024 19:49:51 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.179 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1735242592; cv=none; b=pPkeRsuMQMUHh2FirnLDh6G59qkAzUNTGUdPEpE1NVoY1+5ozr7aBAIX78sOIyuIfsv2RHhdKqVij3pmiab2CbQRsnnxLiiyCf5005XmYi00SCkJPdTQo3uB+QbQxanMZcI31j9MJkDpxb1zXIlB8TId3QvwWXeYizxW9dL2GvY= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1735242592; c=relaxed/simple; bh=uoRS2FQJmsfyJ4pjwVrUVvJUL2CXgWB/WSSSY69yO8o=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=q6GLA6xlvtZGEqBpHOLImqRCZgITtuxNYVqJkpe2FZu9rPZvXXNNCoPVnGvVxyH6ShO4D0tK4t6CrVsMDQJhkeHVzNOobFOHXjBZebJwI6tnfyh8EYcLOiFkb88N2WFaPqQ3vb9I81dCZsjuQ4L/hzOS5XdqTXYTtMjhGzxq+K4= 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=FfuuZjL6; arc=none smtp.client-ip=209.85.214.179 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="FfuuZjL6" Received: by mail-pl1-f179.google.com with SMTP id d9443c01a7336-216406238f9so8990935ad.2 for ; Thu, 26 Dec 2024 11:49:51 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1735242591; x=1735847391; 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=lzTMfFBlFZr+lpOgXP6pxefjRutEhsyjgWDG/oae2Wg=; b=FfuuZjL6/4QlOBX8sPLqjjvMOPMUolT8ZDGbpiTdJxuaZaimJRmgZzcRAcH0EGsgpk hYy4KnHI+d81awGDXgK/8Q34zNt5KuH59Pgizahq39DVCseYQzsYaa0SdJqCx8sIpjQN c9Sh6uSZavW5OAnEH9uW0ZiLaOMam6/+pUgeJyGJFEKsQYdEn2ZJdf99aou91Z+eZ80m JcKfonIQ00MxBGIK8ASVKx/60ljkstCtrO3R9TaWBCc/Uo2U+vX0FsN5xN9yMwr3Jl8q ZMB9z9lTaXzYA1zk1xjfSPj3i/kLqtch2vsijScbCo1NnnvmyDKOx3n67G/JXDf2eeWQ AZyg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1735242591; x=1735847391; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=lzTMfFBlFZr+lpOgXP6pxefjRutEhsyjgWDG/oae2Wg=; b=s2MiRXgauiX07/qOAVjBufLPTjtC2LxYSPeA2zIv+/9l/OPhMblFlG7u36yTdPFONf l7M/nWsYburS4uh6GBQOSSw7FhS241bQaTqUcWKtWw3yjCrcoOAff8WjbspThUOMBPXt UMD6yeR2TFW5AHAjsHFPoQli2bNQesYg01obZmEQCwsDFXjVl7dpst2jVksenRnq/Vcn 4XKv3xJkSwyYRzg/qru6w3QFkyEG7TRKpP0vJQj0JaRK/8zbMmt9PRduwkb3sn75vMKI rXOKwr5xGZCWpmYHIywnWDxp5mCHgLVs5qmqhnz79eWxbCnq2KRnaDgwAlyFr68pkCA9 b/fw== X-Forwarded-Encrypted: i=1; AJvYcCVu56MBTTZO75M1oCnB+PMWCag7BSpdnSl+3roFf/rYDby5OpB1hnWk1MFNL6J/HqX8Y/YqKlV04OzSAb4=@vger.kernel.org X-Gm-Message-State: AOJu0YyYimsObP5xZrtZbB03T7IdTdf/3aTsa5OSFS+jtUsyUYkP335z peq34T3cCanNYg5BgHejFTJ3XEDlPq8/4FJ3n1I4PmKMzF+JKSK7 X-Gm-Gg: ASbGnctGDX9hsvsEa3eY6ZsK0SmdcmOPqkbQnfJmtHk9NVBqvd9iUrSsoif80ZwF/E5 4Ii+Vtc18j/64bdPy1DVag2pOxyve9IX0Q5TQAgxzLeHRb8XTeGvtIms0olpburgOvSr6iz5LXS UTkCozdtucZFQqeUoKiFMWVgAG63v+h7m80jbfh9NnHUn+I66tIty11Od99vwMgrmWyoMFcm4ok SdraZtXtIdQYe9qqccNdt4UhRdxhVek3Qy7foHA3O/me41kpTTREAI= X-Google-Smtp-Source: AGHT+IEFjWIkssF5xwActXI8r1y01mJnLV/vNZGiVEfCF5IFGTaaL4qeFUKa1NL7iaHwb6KheZ9v7A== X-Received: by 2002:a05:6a20:8409:b0:1e1:c26d:d81a with SMTP id adf61e73a8af0-1e5e080dcc1mr14527061637.8.1735242590764; Thu, 26 Dec 2024 11:49:50 -0800 (PST) Received: from ice.. ([171.76.83.141]) by smtp.gmail.com with ESMTPSA id 41be03b00d2f7-842e35d4becsm10304580a12.79.2024.12.26.11.49.48 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 26 Dec 2024 11:49:50 -0800 (PST) From: Nihar Chaithanya To: dpenkler@gmail.com, gregkh@linuxfoundation.org Cc: dan.carpenter@linaro.org, skhan@linuxfoundation.org, linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org, Nihar Chaithanya Subject: [PATCH v4 14/15] staging: gpib: pc2: Handle gpib_register_driver() errors Date: Fri, 27 Dec 2024 01:06:38 +0530 Message-Id: <20241226193637.241049-15-niharchaithanya@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20241226193637.241049-1-niharchaithanya@gmail.com> References: <20241226193637.241049-1-niharchaithanya@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" The function gpib_register_driver() can fail, resulting in a semi-registered module and does not return an error value if it fails. Unregister the previous gpib registering functions if subsequent gpib_register_driver() fail and return the error value. Signed-off-by: Nihar Chaithanya --- drivers/staging/gpib/pc2/pc2_gpib.c | 30 +++++++++++++++++++++++++---- 1 file changed, 26 insertions(+), 4 deletions(-) diff --git a/drivers/staging/gpib/pc2/pc2_gpib.c b/drivers/staging/gpib/pc2= /pc2_gpib.c index 7b3b34f47341..1d42ced67b2c 100644 --- a/drivers/staging/gpib/pc2/pc2_gpib.c +++ b/drivers/staging/gpib/pc2/pc2_gpib.c @@ -635,12 +635,34 @@ void pc2_2a_detach(gpib_board_t *board) =20 static int __init pc2_init_module(void) { - gpib_register_driver(&pc2_interface, THIS_MODULE); - gpib_register_driver(&pc2a_interface, THIS_MODULE); - gpib_register_driver(&pc2a_cb7210_interface, THIS_MODULE); - gpib_register_driver(&pc2_2a_interface, THIS_MODULE); + int ret; + + ret =3D gpib_register_driver(&pc2_interface, THIS_MODULE); + if (ret) + return ret; + + ret =3D gpib_register_driver(&pc2a_interface, THIS_MODULE); + if (ret) + goto err_pc2a; + + ret =3D gpib_register_driver(&pc2a_cb7210_interface, THIS_MODULE); + if (ret) + goto err_cb7210; + + ret =3D gpib_register_driver(&pc2_2a_interface, THIS_MODULE); + if (ret) + goto err_pc2_2a; =20 return 0; + +err_pc2_2a: + gpib_unregister_driver(&pc2a_cb7210_interface); +err_cb7210: + gpib_unregister_driver(&pc2a_interface); +err_pc2a: + gpib_unregister_driver(&pc2_interface); + + return ret; } =20 static void __exit pc2_exit_module(void) --=20 2.34.1 From nobody Mon Feb 9 13:02:28 2026 Received: from mail-pl1-f176.google.com (mail-pl1-f176.google.com [209.85.214.176]) (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 0C6CE1D5AC2 for ; Thu, 26 Dec 2024 19:49:53 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.176 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1735242595; cv=none; b=VKvXyg9C7fzmDIFS5luuW85BMU4R3F50/RWxLKrJZRRgdPby0+KHIiozmcvlH3yRVPV8a36e9L5Wbe4YrM0ueqSAvhV3ZpsEdHslstQqcdolFrLEp7rntyVV3sJXuGq7YCHB0CXt7FX8A1RfbmdCjx+xf9XfpNbXvwAVlbS0pqw= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1735242595; c=relaxed/simple; bh=jMiBs8Zgo5YGTHOQOrp9o+SytXIc88kul1rGnthOYqQ=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=NFs2pWRQLbYWHEXVYhCveYtvAK32D+2zm9HYGxgMnc89WqTVm8LpNAUvMyCdewJgK9Wq5Jr23Vcdir4h5D9r9F8QUDEhuaWU8vFFj9uvbCeGjVUBhuwWkSoKTIuEBJNIX/Qv0o3K1eWSDWPZLdUQ0sLUnUgQBUnnMZ75600HDck= 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=dC35ynu4; arc=none smtp.client-ip=209.85.214.176 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="dC35ynu4" Received: by mail-pl1-f176.google.com with SMTP id d9443c01a7336-218c8ac69faso9956745ad.3 for ; Thu, 26 Dec 2024 11:49:53 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1735242593; x=1735847393; 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=TznYTabiEz88B+6m8vXWxYzFmFYHHBYjakt0e1+7PRs=; b=dC35ynu4JVs1njO1NDs9u8dz473O5Hh1J+Uh5EUre9m04poDanNosKSmtfLVJsgvwf Cn7VeX2oPff2eYiBE6dxuhid8GvQuZht26BulaVnKQx//SxdZjBcTZAZpRISoLkhjzgQ xl7ARur+a8ynIOOGf8KdfSKlPbVvPICws0TKK7u3K0xMqKNQhiR1oTy+eDaHNdgy2c1f LcrNuxV3cjgSiYPz1A7NqaMSNcdWkbiqB90gWVQYUh4e6Toz55VArzhButbLu8C2DGL0 m+NBjbZZRkoi2xsZRgPtN4tFGyBJNCn94xHjDgSvcsRMPpFALP53Rd9Vpv89VphXjIG9 lv/g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1735242593; x=1735847393; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=TznYTabiEz88B+6m8vXWxYzFmFYHHBYjakt0e1+7PRs=; b=sjMURnU1Ry0BL/W6yEa6eARLt7b3u3fc/xRSRMtKUIoj7Ic7xvUS9dVDaSmNXsErmc ZS0tQgkYSXJc41SxOhDk0Ck6PuLGSRmDMeYbqAGrIhX6qhbIiyRNA8ewPjgjnB5qyAL/ +jereQk+v1S/N1KB2a1Gcxi1qOYeuvkam7exz8TX5K+eBpv27gjfZ9GwvKKXIxhryZUS ds8mcSLuL5z307ZgoHUu3Lng/1leOgRr3sTkOc9yG5fOKdIaYDYiW2m2pDsrnuTLW7kb lbbE5VMq5hVSZJi+mTUTYqt2DbWd8Go0yR92+ANri7QcfWXDk74B2Q6kLPgNWNduqySb g3zw== X-Forwarded-Encrypted: i=1; AJvYcCUpTyHtVzyzJyu5KsARsh9lmgPQEJ9kwP/tiRgtxLl5EnMvf8++g0ykr3T+13JpHtatAIHhi4M28mAUDPQ=@vger.kernel.org X-Gm-Message-State: AOJu0YxgoQfFC2bblDwe3wvocvyUhEfGK+RRkgVYLgsxYPpwxt1uO64O NQDzD37a66KFXCXKLNiqHNaH5eskDsrWbAt3e07eiNmuZ2k1TpkeQfU80H/x3Is= X-Gm-Gg: ASbGncvGrvKGLGufzKmOsIVu6luErKTy4JWu6qpcIIIFhJPtEcxWT7GYxCnsISFrdo3 2Eb1FyjQwmHaU/9zdiyjqjUtlh9adD1a2S0gGu1y9X8puhc0d+rDBQkU2qfJ3OMwdsc4FIYloHK bgHqwwWZ5yVI7eByTi8NbaqwSCuRY7CTQC7cc/06ouSuCNZAxHxzLFPXAQPeMAL03NHWrpuZmK/ pnzkjai9JeOSWRLsK89TM1H9dGC5QInDQLppCTs4iWMrM7I/v1fzQ0= X-Google-Smtp-Source: AGHT+IGVQ1GV579fliUueCO8/2rXvmGwAYSEBRixGbdMRH6zyr2YWj1JDjubZFf5hRUy/jJrfRJn2Q== X-Received: by 2002:a17:902:f681:b0:215:5f17:4296 with SMTP id d9443c01a7336-219e6eb3ac4mr119249375ad.8.1735242593286; Thu, 26 Dec 2024 11:49:53 -0800 (PST) Received: from ice.. ([171.76.83.141]) by smtp.gmail.com with ESMTPSA id 41be03b00d2f7-842e35d4becsm10304580a12.79.2024.12.26.11.49.51 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 26 Dec 2024 11:49:53 -0800 (PST) From: Nihar Chaithanya To: dpenkler@gmail.com, gregkh@linuxfoundation.org Cc: dan.carpenter@linaro.org, skhan@linuxfoundation.org, linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org, Nihar Chaithanya Subject: [PATCH v4 15/15] staging: gpib: tnt4882: Handle gpib_register_driver() errors Date: Fri, 27 Dec 2024 01:06:39 +0530 Message-Id: <20241226193637.241049-16-niharchaithanya@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20241226193637.241049-1-niharchaithanya@gmail.com> References: <20241226193637.241049-1-niharchaithanya@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" The error value from the init_ni_gpib_cs() function is not returned and the previous registering functions are not unregistered. The function gpib_register_driver() can fail and similar to pcmcia_register_driver() function failing, the previous registering functions are not unregistered. Unregister the gpib and pci register functions if the subsequent gpib or pcmcia register functions fail and return the error value. Signed-off-by: Nihar Chaithanya --- drivers/staging/gpib/tnt4882/tnt4882_gpib.c | 87 +++++++++++++++++---- 1 file changed, 71 insertions(+), 16 deletions(-) diff --git a/drivers/staging/gpib/tnt4882/tnt4882_gpib.c b/drivers/staging/= gpib/tnt4882/tnt4882_gpib.c index e49a952fa0d8..573544e86598 100644 --- a/drivers/staging/gpib/tnt4882/tnt4882_gpib.c +++ b/drivers/staging/gpib/tnt4882/tnt4882_gpib.c @@ -1523,30 +1523,85 @@ static int __init tnt4882_init_module(void) int result; =20 result =3D pci_register_driver(&tnt4882_pci_driver); - if (result) { - pr_err("tnt4882: pci_driver_register failed!\n"); + if (result) return result; - } =20 - gpib_register_driver(&ni_isa_interface, THIS_MODULE); - gpib_register_driver(&ni_isa_accel_interface, THIS_MODULE); - gpib_register_driver(&ni_nat4882_isa_interface, THIS_MODULE); - gpib_register_driver(&ni_nat4882_isa_accel_interface, THIS_MODULE); - gpib_register_driver(&ni_nec_isa_interface, THIS_MODULE); - gpib_register_driver(&ni_nec_isa_accel_interface, THIS_MODULE); - gpib_register_driver(&ni_pci_interface, THIS_MODULE); - gpib_register_driver(&ni_pci_accel_interface, THIS_MODULE); + result =3D gpib_register_driver(&ni_isa_interface, THIS_MODULE); + if (result) + goto err_isa; + + result =3D gpib_register_driver(&ni_isa_accel_interface, THIS_MODULE); + if (result) + goto err_isa_accel; + + result =3D gpib_register_driver(&ni_nat4882_isa_interface, THIS_MODULE); + if (result) + goto err_nat4882_isa; + + result =3D gpib_register_driver(&ni_nat4882_isa_accel_interface, THIS_MOD= ULE); + if (result) + goto err_nat4882_isa_accel; + + result =3D gpib_register_driver(&ni_nec_isa_interface, THIS_MODULE); + if (result) + goto err_nec_isa; + + result =3D gpib_register_driver(&ni_nec_isa_accel_interface, THIS_MODULE); + if (result) + goto err_nec_isa_accel; + + result =3D gpib_register_driver(&ni_pci_interface, THIS_MODULE); + if (result) + goto err_pci; + + result =3D gpib_register_driver(&ni_pci_accel_interface, THIS_MODULE); + if (result) + goto err_pci_accel; + #ifdef GPIB_PCMCIA - gpib_register_driver(&ni_pcmcia_interface, THIS_MODULE); - gpib_register_driver(&ni_pcmcia_accel_interface, THIS_MODULE); - if (init_ni_gpib_cs() < 0) - return -1; + result =3D gpib_register_driver(&ni_pcmcia_interface, THIS_MODULE); + if (result) + goto err_pcmcia; + + result =3D gpib_register_driver(&ni_pcmcia_accel_interface, THIS_MODULE); + if (result) + goto err_pcmcia_accel; + + result =3D init_ni_gpib_cs(); + if (result) + goto err_pcmcia_driver; #endif =20 mite_init(); mite_list_devices(); - return 0; + +#ifdef GPIB_PCMCIA +err_pcmcia_driver: + gpib_unregister_driver(&ni_pcmcia_accel_interface); +err_pcmcia_accel: + gpib_unregister_driver(&ni_pcmcia_interface); +err_pcmcia: +#endif + gpib_unregister_driver(&ni_pci_accel_interface); +err_pci_accel: + gpib_unregister_driver(&ni_pci_interface); +err_pci: + gpib_unregister_driver(&ni_nec_isa_accel_interface); +err_nec_isa_accel: + gpib_unregister_driver(&ni_nec_isa_interface); +err_nec_isa: + gpib_unregister_driver(&ni_nat4882_isa_accel_interface); +err_nat4882_isa_accel: + gpib_unregister_driver(&ni_nat4882_isa_interface); +err_nat4882_isa: + gpib_unregister_driver(&ni_isa_accel_interface); +err_isa_accel: + gpib_unregister_driver(&ni_isa_interface); +err_isa: + pci_unregister_driver(&tnt4882_pci_driver); + + return result; } =20 static void __exit tnt4882_exit_module(void) --=20 2.34.1