On Mon, Apr 11, 2022 at 04:50:11PM +0300, Andy Shevchenko wrote: > On Fri, Apr 08, 2022 at 09:48:40PM +0300, Andy Shevchenko wrote: > > Some of the fwnode APIs might return an error pointer instead of NULL > > or valid fwnode handle. The result of such API call may be considered > > optional and hence the test for it is usually done in a form of > > > > fwnode = fwnode_find_reference(...); > > if (IS_ERR(fwnode)) > > ...error handling... > > > > Nevertheless the resulting fwnode may have bumped the reference count > > and hence caller of the above API is obliged to call fwnode_handle_put(). > > Since fwnode may be not valid either as NULL or error pointer the check > > has to be performed there. This approach uglifies the code and adds > > a point of making a mistake, i.e. forgetting about error point case. > > > > To prevent this, allow an error pointer to be passed to the fwnode APIs. > > Rafael and Greg, if this okay for you, can the first three patches be > applied, so we will have at least the fix in and consider constification > a further work? Give us a chance, you sent this on friday and are asking about it first thing Monday morning? Please go and review other patches sent on the list to help us catch up. greg k-h