diff options
author | Nikunj A Dadhania <nikunj@linux.vnet.ibm.com> | 2017-12-12 11:07:12 +0530 |
---|---|---|
committer | Alexey Kardashevskiy <aik@ozlabs.ru> | 2017-12-13 12:54:06 +1100 |
commit | 1e8f6e68d28132e70898bd4bd6f799b591c3bf2b (patch) | |
tree | 281e2e6feca87985ae2b7cea9e29018e8179b303 /slof | |
parent | 6e925bbb1a0389535263f69b8a8645dcf3ae926e (diff) | |
download | SLOF-1e8f6e68d28132e70898bd4bd6f799b591c3bf2b.zip SLOF-1e8f6e68d28132e70898bd4bd6f799b591c3bf2b.tar.gz SLOF-1e8f6e68d28132e70898bd4bd6f799b591c3bf2b.tar.bz2 |
boot: do not concatenate bootdev
We were concatenating the word " parse-load" and $bootdev list that was input to
evaluate. Open code EVALUATE work such that concatenation is not required.
"load" and "load-next" does not use $cat anymore.
Reported here: https://github.com/qemu/SLOF/issues/3
Signed-off-by: Nikunj A Dadhania <nikunj@linux.vnet.ibm.com>
Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru>
Diffstat (limited to 'slof')
-rw-r--r-- | slof/fs/boot.fs | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/slof/fs/boot.fs b/slof/fs/boot.fs index 1fd7439..5d41a0e 100644 --- a/slof/fs/boot.fs +++ b/slof/fs/boot.fs @@ -221,11 +221,19 @@ defer go ( -- ) ELSE drop THEN - set-boot-args s" parse-load " $bootdev $cat strdup evaluate + set-boot-args + save-source -1 to source-id + $bootdev dup #ib ! span ! to ib + 0 >in ! + ['] parse-load catch restore-source throw ; : load-next ( -- success ) \ Continue after go failed - load-list 2@ ?dup IF s" parse-load " 2swap $cat strdup evaluate + load-list 2@ ?dup IF + save-source -1 to source-id + dup #ib ! span ! to ib + 0 >in ! + ['] parse-load catch restore-source throw ELSE drop false THEN ; |