qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH] linux-user: Move target_to_host_errno_table[] s


From: Peter Maydell
Subject: Re: [Qemu-devel] [PATCH] linux-user: Move target_to_host_errno_table[] setup out of ioctl loop
Date: Mon, 6 Aug 2012 13:57:38 +0100

Ping?

Patchwork url: http://patchwork.ozlabs.org/patch/172732/

-- PMM

On 23 July 2012 19:07, Peter Maydell <address@hidden> wrote:
> The code to initialise the target_to_host_errno_table[] array was
> accidentally inside the loop through checking and initialising all
> the supported ioctls. This was harmless but meant that we reinitialised the
> array several hundred times on startup.
>
> Signed-off-by: Peter Maydell <address@hidden>
> ---
> The code seems to have been incorrectly placed like this since it was
> first committed...
>
>  linux-user/syscall.c |   10 +++++-----
>  1 files changed, 5 insertions(+), 5 deletions(-)
>
> diff --git a/linux-user/syscall.c b/linux-user/syscall.c
> index 539af3f..9f9ad9a 100644
> --- a/linux-user/syscall.c
> +++ b/linux-user/syscall.c
> @@ -4594,6 +4594,11 @@ void syscall_init(void)
>  #undef STRUCT
>  #undef STRUCT_SPECIAL
>
> +    /* Build target_to_host_errno_table[] table from
> +     * host_to_target_errno_table[]. */
> +    for (i=0; i < ERRNO_TABLE_SIZE; i++)
> +        target_to_host_errno_table[host_to_target_errno_table[i]] = i;
> +
>      /* we patch the ioctl size if necessary. We rely on the fact that
>         no ioctl has all the bits at '1' in the size field */
>      ie = ioctl_entries;
> @@ -4613,11 +4618,6 @@ void syscall_init(void)
>                  (size << TARGET_IOC_SIZESHIFT);
>          }
>
> -        /* Build target_to_host_errno_table[] table from
> -         * host_to_target_errno_table[]. */
> -        for (i=0; i < ERRNO_TABLE_SIZE; i++)
> -                target_to_host_errno_table[host_to_target_errno_table[i]] = 
> i;
> -
>          /* automatic consistency check if same arch */
>  #if (defined(__i386__) && defined(TARGET_I386) && defined(TARGET_ABI32)) || \
>      (defined(__x86_64__) && defined(TARGET_X86_64))
> --
> 1.7.5.4
>
>



reply via email to

[Prev in Thread] Current Thread [Next in Thread]