Messages in this thread | | | From | Michael Ellerman <> | Subject | Re: [PATCH v6 07/18] of: dynamic: change type of of_{at,de}tach_node() to void | Date | Thu, 08 Nov 2018 10:48:33 +1100 |
| |
Frank Rowand <frowand.list@gmail.com> writes: > On 11/7/18 4:08 AM, Michael Ellerman wrote: >> frowand.list@gmail.com writes: >> >>> From: Frank Rowand <frank.rowand@sony.com> >>> >>> of_attach_node() and of_detach_node() always return zero, so >>> their return value is meaningless. >> >> But should they always return zero? >> >> At least __of_attach_node_sysfs() can fail in several ways. > > Sigh. And of_reconfig_notify() can fail. And at one point in the > history the return value of of_reconfig_notify() was returned by > of_attach_node() if of_reconfig_notify() failed. > >> And there's also this in __of_detach_node() which should probably be >> returning an error: >> >> if (WARN_ON(of_node_check_flag(np, OF_DETACHED))) >> return; >> >> >> Seems to me we should instead be fixing these to propagate errors, >> rather than hiding them? > > The history of how of_attach_node() stopped propagating errors is > a bit more complex than I want to dig into at the moment. So I'll > drop this patch from the series and add investigating this onto > my todo list. I suspect that the result of investigating will be > that error return values should not be ignored in of_attach_node() > and of_detach_node(), but should instead be propagated to the > callers, as you suggest.
Thanks.
cheers
| |