Re: [PATCH v2] [media] staging/imx: remove confusing IS_ERR_OR_NULL usage

From: Steve Longerbeam
Date: Wed Jul 12 2017 - 13:12:53 EST




On 07/12/2017 08:50 AM, Philipp Zabel wrote:
On Tue, 2017-07-11 at 15:18 +0200, Arnd Bergmann wrote:
While looking at a compiler warning, I noticed the use of
IS_ERR_OR_NULL, which is generally a sign of a bad API design
and should be avoided.

In this driver, this is fairly easy, we can simply stop storing
error pointers in persistent structures, and change the two
functions that might return either a NULL pointer or an error
code to consistently return error pointers when failing.

of_parse_subdev() now separates the error code and the pointer
it looks up, to clarify the interface. There are two cases
where this function originally returns 'NULL', and I have
changed that to '0' for success to keep the current behavior,
though returning an error would also make sense there.

Fixes: e130291212df ("[media] media: Add i.MX media core driver")
Signed-off-by: Arnd Bergmann <arnd@xxxxxxxx>
---
v2: fix type mismatch
v3: rework of_parse_subdev() as well.

Thanks!

Reviewed-by: Philipp Zabel <p.zabel@xxxxxxxxxxxxxx>
Tested-by: Philipp Zabel <p.zabel@xxxxxxxxxxxxxx>


Looks fine to me. Tested on SabreAuto with affected pipelines.

Reviewed-by: Steve Longerbeam <steve_longerbeam@xxxxxxxxxx>
Tested-by: Steve Longerbeam <steve_longerbeam@xxxxxxxxxx>