init: fix bug where environment vars can't be passed via boot args
Commit 026cee00 had the side-effect of dropping the '=' from the unknown boot arguments that are passed to init as environment variables. This is because parse_args() puts a NUL in the string where the '=' was when it passes the "param" and "val" pointers to the parsing subfunctions. Previously, unknown_bootoption() was the last parse_args() subfunction to run, and it carefully put back the '=' character. Now the ignore_unknown_bootoption() is the last one to run, and it wasn't doing the necessary repair, so the envp params ended up with the embedded NUL and were no longer seen as valid environment variables by init. Tested-by: NWoody Suwalski <terraluna977@gmail.com> Acked-by: NPawel Moll <pawel.moll@arm.com> Signed-off-by: NChris Metcalf <cmetcalf@tilera.com>
Showing
想要评论请 注册 或 登录