[PATCH 1/3] state: pass error code instead of inventing new one

Sascha Hauer s.hauer at pengutronix.de
Thu Oct 20 00:31:20 PDT 2016


Both of_find_path() and of_find_path_by_node() return a meaningful
error code, so forward it instead of inventing a new one. Do this
especially for the -EPROBE_DEFER case which currently does not work.

Signed-off-by: Sascha Hauer <s.hauer at pengutronix.de>
---
 common/state/state.c | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/common/state/state.c b/common/state/state.c
index 075618e..2be3c8c 100644
--- a/common/state/state.c
+++ b/common/state/state.c
@@ -466,9 +466,10 @@ struct state *state_new_from_node(struct device_node *node, char *path,
 			of_path = partition_node->full_name;
 			ret = of_find_path_by_node(partition_node, &path, 0);
 		}
-		if (!path) {
-			pr_err("state failed to parse path to backend\n");
-			ret = -EINVAL;
+		if (ret) {
+			if (ret != -EPROBE_DEFER)
+				pr_err("state failed to parse path to backend: %s\n",
+				       strerror(-ret));
 			goto out_release_state;
 		}
 	}
-- 
2.9.3




More information about the barebox mailing list