[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-arm] [PATCH 2/2] target-arm/arm-semi.c: Fix SYS_HEAPINFO for 6
From: |
Peter Maydell |
Subject: |
Re: [Qemu-arm] [PATCH 2/2] target-arm/arm-semi.c: Fix SYS_HEAPINFO for 64-bit guests |
Date: |
Fri, 24 Jun 2016 17:39:47 +0100 |
On 24 June 2016 at 17:09, Laurent Desnogues <address@hidden> wrote:
> On Fri, Jun 24, 2016 at 5:49 PM, Peter Maydell <address@hidden> wrote:
>> SYS_HEAPINFO is one of the few semihosting calls which has to write
>> values back into a parameter block in memory. When we added
>> support for 64-bit semihosting we updated the code which reads from
>> the parameter block to read 64-bit words but forgot to change the
>> code that writes back into the block. Update it to treat the
>> block as a set of words of the appropriate width for the guest.
>>
>> Signed-off-by: Peter Maydell <address@hidden>
>> ---
>> target-arm/arm-semi.c | 47 ++++++++++++++++++++++++++---------------------
>> 1 file changed, 26 insertions(+), 21 deletions(-)
>>
>> diff --git a/target-arm/arm-semi.c b/target-arm/arm-semi.c
>> index 8be0645..d50726f 100644
>> --- a/target-arm/arm-semi.c
>> +++ b/target-arm/arm-semi.c
>> @@ -564,8 +564,10 @@ target_ulong do_arm_semihosting(CPUARMState *env)
>> }
>> case TARGET_SYS_HEAPINFO:
>> {
>> - uint32_t *ptr;
>> + target_ulong retvals[4];
>> uint32_t limit;
>
> I think limit should also be converted to target_ulong.
Yes, it should.
thanks
-- PMM