Message ID | 20220728151406.2262862-1-peter.maydell@linaro.org |
---|---|
State | Superseded |
Headers | show |
Series | [for-7.1] linux-user/flatload.c: Fix setting of image_info::end_code | expand |
On 7/28/22 08:14, Peter Maydell wrote: > The flatload loader sets the end_code field in the image_info struct > incorrectly, due to a typo. > > This is a very long-standing bug (dating all the way back to when > the bFLT loader was added in 2006), but has gone unnoticed because > (a) most people don't use bFLT binaries > (b) we don't actually do anything with the end_code field, except > print it in debugging traces and pass it to TCG plugins > > Fix the typo. > > Resolves:https://gitlab.com/qemu-project/qemu/-/issues/1119 > Signed-off-by: Peter Maydell<peter.maydell@linaro.org> > --- > linux-user/flatload.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) Reviewed-by: Richard Henderson <richard.henderson@linaro.org> r~
Le 28/07/2022 à 17:14, Peter Maydell a écrit : > The flatload loader sets the end_code field in the image_info struct > incorrectly, due to a typo. > > This is a very long-standing bug (dating all the way back to when > the bFLT loader was added in 2006), but has gone unnoticed because > (a) most people don't use bFLT binaries > (b) we don't actually do anything with the end_code field, except > print it in debugging traces and pass it to TCG plugins > > Fix the typo. > > Resolves: https://gitlab.com/qemu-project/qemu/-/issues/1119 > Signed-off-by: Peter Maydell <peter.maydell@linaro.org> > --- > linux-user/flatload.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/linux-user/flatload.c b/linux-user/flatload.c > index e4c2f89a226..e99570ca182 100644 > --- a/linux-user/flatload.c > +++ b/linux-user/flatload.c > @@ -808,7 +808,7 @@ int load_flt_binary(struct linux_binprm *bprm, struct image_info *info) > > /* Stash our initial stack pointer into the mm structure */ > info->start_code = libinfo[0].start_code; > - info->end_code = libinfo[0].start_code = libinfo[0].text_len; > + info->end_code = libinfo[0].start_code + libinfo[0].text_len; > info->start_data = libinfo[0].start_data; > info->end_data = libinfo[0].end_data; > info->start_brk = libinfo[0].start_brk; Applied to my linux-user-for-7.1 branch. Thanks, Laurent
diff --git a/linux-user/flatload.c b/linux-user/flatload.c index e4c2f89a226..e99570ca182 100644 --- a/linux-user/flatload.c +++ b/linux-user/flatload.c @@ -808,7 +808,7 @@ int load_flt_binary(struct linux_binprm *bprm, struct image_info *info) /* Stash our initial stack pointer into the mm structure */ info->start_code = libinfo[0].start_code; - info->end_code = libinfo[0].start_code = libinfo[0].text_len; + info->end_code = libinfo[0].start_code + libinfo[0].text_len; info->start_data = libinfo[0].start_data; info->end_data = libinfo[0].end_data; info->start_brk = libinfo[0].start_brk;
The flatload loader sets the end_code field in the image_info struct incorrectly, due to a typo. This is a very long-standing bug (dating all the way back to when the bFLT loader was added in 2006), but has gone unnoticed because (a) most people don't use bFLT binaries (b) we don't actually do anything with the end_code field, except print it in debugging traces and pass it to TCG plugins Fix the typo. Resolves: https://gitlab.com/qemu-project/qemu/-/issues/1119 Signed-off-by: Peter Maydell <peter.maydell@linaro.org> --- linux-user/flatload.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)