Received: by 2002:ab2:3350:0:b0:1f4:6588:b3a7 with SMTP id o16csp483221lqe; Sat, 6 Apr 2024 09:07:40 -0700 (PDT) X-Forwarded-Encrypted: i=3; AJvYcCXOPgTWGiJnB5kctEIDmvx9i0L+vZmufYPxXOsSy7OajxnA552o3dzoP+58ML0XH1TO+ubAtlEA1RFTCYDW/yFWX195fR7KuAOxFtWCUw== X-Google-Smtp-Source: AGHT+IGd9YR5Hnjw38TCxyjH7JAouaaoYitW4tFJDpkZkb2Z3Kkpnpx5yNXRej7TNGlV7E+2vve0 X-Received: by 2002:a05:6512:3b9b:b0:516:c7c2:23b6 with SMTP id g27-20020a0565123b9b00b00516c7c223b6mr3461337lfv.9.1712419660037; Sat, 06 Apr 2024 09:07:40 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1712419660; cv=pass; d=google.com; s=arc-20160816; b=Kf5lxmjSpjmkbECnahmEE79GOg2GcJVCt8aY5d9bg/xmdg6ysnd3aeuoIziWj5yUTc mNcb2rTmnhTi+geZxm+GIaCEP1+Y+Exgg8HuLHaJHPnuDqEVpYfN+TzL7bx/RGFIeHEQ 7YNH+ab7TFUqm6L1F3v2EeCJN+tPhOEpbICCvYCeGyQxxY09l1NHQn6Ci2jMz55V+lgi tNFp2Fuk9/fRjH+8dB/MfCwbWc8P89WG9re5ekteIXluAPVlqIRlshsKKLvu7Bke1uPZ sn/Xx+dLnPZsOZ9psY0meHCqa5Z/Dk70AL4Rgz+2d7oWHZF3eRZc0GuanVQSS8e5m/Ec C2fg== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:mime-version:list-unsubscribe :list-subscribe:list-id:precedence:references:in-reply-to:message-id :subject:cc:to:from:date:dkim-signature; bh=ZZqpwz0L4fBDhFVeOUt1Jx4lsFiR9mhQclB6d8ook4E=; fh=fRmFjSb5No3dyikNWMafw6fIEFUB2c1N9Ilk4P4y9ug=; b=Xqlf/nHR7mPyUrhpItf7kSmzPS6pbaaBxpWvUNAtZJypH2HayxG+WkTjxKTmR/pqB0 kELsRyGgxj56TXVYMWAqDE88zyrS/FlOaLlc33+ryPLDH8sHM3UOouM619zDTYqBcMMJ XgIWvx7AQiCI8ImEFAJogNCchDpD5213HzAIU6MWp9ehXVRY593RVdo6bAClCwm/+F3m ugwWvF8wILnpedGivXQ2IO0pu8E8dF3m4GcqIKb+Hl7FMlD1UaZ4ZRZkLE8nOco8mSKq /MvYnz93WbEs/Rwkj3SauMzFBOyxur/TqMpGIt6ijLTTZR566TfbH8I5HLHDAwWH2tSj ShZg==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=mQmIhjkS; arc=pass (i=1 dkim=pass dkdomain=kernel.org); spf=pass (google.com: domain of linux-kernel+bounces-133999-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:4601:e00::3 as permitted sender) smtp.mailfrom="linux-kernel+bounces-133999-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from am.mirrors.kernel.org (am.mirrors.kernel.org. [2604:1380:4601:e00::3]) by mx.google.com with ESMTPS id do7-20020a170906c10700b00a51c14c8964si518113ejc.187.2024.04.06.09.07.39 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 06 Apr 2024 09:07:40 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel+bounces-133999-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:4601:e00::3 as permitted sender) client-ip=2604:1380:4601:e00::3; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=mQmIhjkS; arc=pass (i=1 dkim=pass dkdomain=kernel.org); spf=pass (google.com: domain of linux-kernel+bounces-133999-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:4601:e00::3 as permitted sender) smtp.mailfrom="linux-kernel+bounces-133999-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by am.mirrors.kernel.org (Postfix) with ESMTPS id 859B01F218B7 for ; Sat, 6 Apr 2024 16:07:39 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 6390D3C092; Sat, 6 Apr 2024 16:07:31 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="mQmIhjkS" Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 84C9939FC5; Sat, 6 Apr 2024 16:07:30 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1712419650; cv=none; b=B+l8yPM/XleGZpqBFxT/0VWUF0FB6PzwHP9G3AW9V/9gyBTmgRTn1oMyNVlOoyEFtTEvu+J41x/jqkacoh4kTJwxMcEwtMcnCct8mjHF27wQkXrIXVUC1QZZUoCVfAmzTK+D+UHp98zfB4rE9+GTSZEQkZuiF3ESMnL1GfdcpC0= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1712419650; c=relaxed/simple; bh=zVT1kTFyJpggrN2Vq9amRM/0R/MdFrOjEQnNLK1sYHc=; h=Date:From:To:Cc:Subject:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=GwGjTxWL49jh/RerOiRAHP+uOo+OeH9Zoln9WtMzeFV0H3EOBcRUAhNMNxneEB01UgEzD5BmqDX+bir62E74YUjKFt4vPJovGSC0DvClBEczFpDVT76jaPQe4UH3wMCcZRLpJFu1IpA8tt/EtUYrhd2gWWiJJpgo2O6a/wYgRwA= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=mQmIhjkS; arc=none smtp.client-ip=10.30.226.201 Received: by smtp.kernel.org (Postfix) with ESMTPSA id 8779FC433C7; Sat, 6 Apr 2024 16:07:27 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1712419649; bh=zVT1kTFyJpggrN2Vq9amRM/0R/MdFrOjEQnNLK1sYHc=; h=Date:From:To:Cc:Subject:In-Reply-To:References:From; b=mQmIhjkSlsHCV3tzg2qGznXeY83la3QN1daXmG1AiYQsu/4iqvPj8bWs6JERDHPrq fG4lFV+O83dxD+X3rsq1xTJ3ufdjd8DzXYgGjXoBnvtYXt1BtKtok8sD1IW3AxU4/G fasr7sKbGmwKctlBu8255KzOuvVTXz7AwX9vOr7h3PIOcJJxQ++bcs+A3HNbnLUAjn IfMBDFYIIrFIr1UB+Cv2z/31d/LOOwe5968mUcIlIoNAcwGt5n20ZHufYnOXerZS/p zDyfJCy2JkJ7y5kuoUiqIpwXGgUCeVquDGLZ8pUeRUOvoX2qJYlARseHvyQI8zXUOY ULCUurC5EBPqw== Date: Sat, 6 Apr 2024 17:07:17 +0100 From: Jonathan Cameron To: Andy Shevchenko Cc: Nuno =?UTF-8?B?U8Oh?= , Nuno Sa , Petr Mladek , Lars-Peter Clausen , Olivier Moysan , Jyoti Bhayana , Chris Down , John Ogness , Greg Kroah-Hartman , linux-kernel@vger.kernel.org, linux-iio@vger.kernel.org Subject: Re: [PATCH 3/4] iio: backend: make use of dev_errp_probe() Message-ID: <20240406170717.31ab7e47@jic23-huawei> In-Reply-To: References: <20240404-dev-add_dev_errp_probe-v1-0-d18e3eb7ec3f@analog.com> <20240404-dev-add_dev_errp_probe-v1-3-d18e3eb7ec3f@analog.com> <9f91388faee750e16021f2c0544e7a158a16202b.camel@gmail.com> X-Mailer: Claws Mail 4.2.0 (GTK 3.24.41; x86_64-pc-linux-gnu) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable On Thu, 4 Apr 2024 18:12:25 +0300 Andy Shevchenko wrote: > On Thu, Apr 04, 2024 at 04:58:27PM +0200, Nuno S=C3=A1 wrote: > > On Thu, 2024-04-04 at 15:23 +0300, Andy Shevchenko wrote: =20 > > > On Thu, Apr 04, 2024 at 01:06:25PM +0200, Nuno Sa wrote: =20 > > > > Using dev_errp_probe() to simplify the code. =20 >=20 > ... >=20 > > > > + if (IS_ERR(fwnode)) > > > > + return dev_errp_probe(dev, PTR_ERR(fwnode), > > > > + =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "Cannot get Firmware reference\= n"); =20 > > >=20 > > > ERR_CAST() seems quite good candidate to have here. > > >=20 > > > return dev_errp_probe(dev, fwnode, "Cannot get Firmware > > > reference\n"); > > >=20 > > > (Assuming dev_errp_probe() magically understands that, note you may h= ave it as > > > =C2=A0a macro and distinguish parameter type with _Generic() or so an= d behave > > > =C2=A0differently: ERR_PTR() vs. ERR_CAST(), see acpi_dev_hid_uid_mat= ch() > > > =C2=A0implementation, but also keep in mind that it doesn't distingui= sh NULL/0, > > > there > > > =C2=A0is a patch available in the mailing list to fix that, though.) = =20 > >=20 > > Do we care that much for going with that trouble? =20 >=20 > I don't think we do. We are not supposed to be called with ret =3D=3D 0/N= ULL. > That's why I pointed out to the current version. >=20 > > I understand like this we go > > PTR_ERR() to then comeback to ERR_PTR() but this for probe() which is n= ot a > > fastpath. So perhaps we could just keep it simple? =20 >=20 > It's not about performance, it's about readability. See the difference be= tween > yours and mine. >=20 You are suggesting making it transparently take an error ptr or an integer? Whilst clever, I'm not seeing that as a good idea for readability / reviewa= bility. I expect something that looks like a function to take the same parameters (= other vargs) always. _Generic messes with that. Maybe I just don't like to learn new things! If consensus comes down in fa= vour of _Generic trickery then I'll get used to it eventually. Jonathan