diff options
author | Jan Luebbe <jluebbe@debian.org> | 2015-05-30 15:11:44 +0200 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2015-06-03 10:20:15 +0200 |
commit | d0d929927c5e61531385e0c51fea9dc9440d35ad (patch) | |
tree | e3236263723371e6d6b650d4561811d2cc15b27b | |
parent | 5a71e981fd3a2637cef647bc0f63ac3731a28c4d (diff) | |
download | barebox-d0d929927c5e61531385e0c51fea9dc9440d35ad.tar.gz barebox-d0d929927c5e61531385e0c51fea9dc9440d35ad.tar.xz |
state: add some more error messages
This helps with finding out why the state cannot be loaded correctly.
Signed-off-by: Jan Luebbe <jluebbe@debian.org>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
-rw-r--r-- | common/state.c | 19 |
1 files changed, 14 insertions, 5 deletions
diff --git a/common/state.c b/common/state.c index d243de8b01..0be0efe898 100644 --- a/common/state.c +++ b/common/state.c @@ -848,10 +848,13 @@ int state_load(struct state *state) return -ENOSYS; ret = state->backend->load(state->backend, state); - if (ret) + if (ret) { + dev_warn(&state->dev, "load failed\n"); state->dirty = 1; - else + } else { + dev_info(&state->dev, "load successful\n"); state->dirty = 0; + } return ret; } @@ -1065,8 +1068,11 @@ static int backend_raw_load_one(struct state_backend_raw *backend_raw, ret = read_full(fd, &header, sizeof(header)); max_len -= sizeof(header); - if (ret < 0) + if (ret < 0) { + dev_err(&state->dev, + "cannot read header from backend device"); return ret; + } crc = crc32(0, &header, sizeof(header) - sizeof(uint32_t)); if (crc != header.header_crc) { @@ -1127,8 +1133,10 @@ static int state_backend_raw_load(struct state_backend *backend, int ret = 0, fd, i; fd = open(backend->path, O_RDONLY); - if (fd < 0) + if (fd < 0) { + dev_err(&state->dev, "cannot open %s\n", backend->path); return fd; + } for (i = 0; i < RAW_BACKEND_COPIES; i++) { off_t offset = backend_raw->offset + i * backend_raw->stride; @@ -1352,7 +1360,8 @@ int state_backend_raw_file(struct state *state, const char *of_path, } if (backend_raw->size / backend_raw->stride < RAW_BACKEND_COPIES) { - dev_err(&state->dev, "not enough space for two copies\n"); + dev_err(&state->dev, "not enough space for two copies (%lu each)\n", + backend_raw->stride); ret = -ENOSPC; goto err; } |