Commit 490365c3 authored by Andreas Fenkart's avatar Andreas Fenkart Committed by Tom Rini

tools/env: return with error if redundant environments have unequal size

For double buffering to work, the target buffer must always be big
enough to hold all data. This can only be ensured if buffers are of
equal size, otherwise one must be smaller and we risk data loss
when copying from the bigger to the smaller buffer.
Reviewed-by: default avatarSimon Glass <sjg@chromium.org>
Signed-off-by: default avatarAndreas Fenkart <andreas.fenkart@digitalstrom.com>
Reviewed-by: default avatarTom Rini <trini@konsulko.com>
parent c359ae5e
......@@ -1423,10 +1423,9 @@ static int parse_config(struct env_opts *opts)
return rc;
if (ENVSIZE(0) != ENVSIZE(1)) {
ENVSIZE(0) = ENVSIZE(1) = min(ENVSIZE(0), ENVSIZE(1));
fprintf(stderr,
"Redundant environments have inequal size, set to 0x%08lx\n",
ENVSIZE(1));
"Redundant environments have unequal size");
return -1;
}
}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment