Message ID | 1480003738-8754-6-git-send-email-Lena.Djokic@rt-rk.com |
---|---|
State | New |
Headers | show |
On 24 November 2016 at 16:08, Lena Djokic <Lena.Djokic@rt-rk.com> wrote: > Calculation of 64-bit offset was not correct for all cases. > > Signed-off-by: Lena Djokic <Lena.Djokic@rt-rk.com> > --- > linux-user/syscall.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/linux-user/syscall.c b/linux-user/syscall.c > index 1b59a71..61c4126 100644 > --- a/linux-user/syscall.c > +++ b/linux-user/syscall.c > @@ -11296,7 +11296,7 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1, > arg3 = arg4; > arg4 = arg5; > } > - ret = get_errno(readahead(arg1, ((off64_t)arg3 << 32) | arg2, arg4)); > + ret = get_errno(readahead(arg1, target_offset64(arg2, arg3) , arg4)); > #else > ret = get_errno(readahead(arg1, arg2, arg3)); > #endif Reviewed-by: Peter Maydell <peter.maydell@linaro.org> thanks -- PMM
On Thu, Nov 24, 2016 at 05:08:56PM +0100, Lena Djokic wrote: > Calculation of 64-bit offset was not correct for all cases. Thanks, applied to linux-user > Signed-off-by: Lena Djokic <Lena.Djokic@rt-rk.com> > --- > linux-user/syscall.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/linux-user/syscall.c b/linux-user/syscall.c > index 1b59a71..61c4126 100644 > --- a/linux-user/syscall.c > +++ b/linux-user/syscall.c > @@ -11296,7 +11296,7 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1, > arg3 = arg4; > arg4 = arg5; > } > - ret = get_errno(readahead(arg1, ((off64_t)arg3 << 32) | arg2, arg4)); > + ret = get_errno(readahead(arg1, target_offset64(arg2, arg3) , arg4)); > #else > ret = get_errno(readahead(arg1, arg2, arg3)); > #endif > -- > 2.7.4 >
diff --git a/linux-user/syscall.c b/linux-user/syscall.c index 1b59a71..61c4126 100644 --- a/linux-user/syscall.c +++ b/linux-user/syscall.c @@ -11296,7 +11296,7 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1, arg3 = arg4; arg4 = arg5; } - ret = get_errno(readahead(arg1, ((off64_t)arg3 << 32) | arg2, arg4)); + ret = get_errno(readahead(arg1, target_offset64(arg2, arg3) , arg4)); #else ret = get_errno(readahead(arg1, arg2, arg3)); #endif
Calculation of 64-bit offset was not correct for all cases. Signed-off-by: Lena Djokic <Lena.Djokic@rt-rk.com> --- linux-user/syscall.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)