qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH 03/12 v9] linux-user: Support tilegx architectur


From: Peter Maydell
Subject: Re: [Qemu-devel] [PATCH 03/12 v9] linux-user: Support tilegx architecture in syscall
Date: Thu, 9 Apr 2015 22:38:30 +0100

On 27 March 2015 at 10:50, Chen Gang <address@hidden> wrote:
> Add tilegx architecture in "syscall_defs.h", all related features (ioctrl,
> and stat) are based on Linux kernel tilegx 64-bit implementation.
>
> Signed-off-by: Chen Gang <address@hidden>
> ---
>  linux-user/syscall_defs.h | 38 ++++++++++++++++++++++++++++++++++----
>  1 file changed, 34 insertions(+), 4 deletions(-)
>
> diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h
> index edd5f3c..023f4b5 100644
> --- a/linux-user/syscall_defs.h
> +++ b/linux-user/syscall_defs.h
> @@ -64,8 +64,9 @@
>  #endif
>
>  #if defined(TARGET_I386) || defined(TARGET_ARM) || defined(TARGET_SH4) \
> -    || defined(TARGET_M68K) || defined(TARGET_CRIS) || 
> defined(TARGET_UNICORE32) \
> -    || defined(TARGET_S390X) || defined(TARGET_OPENRISC)
> +    || defined(TARGET_M68K) || defined(TARGET_CRIS) \
> +    || defined(TARGET_UNICORE32) || defined(TARGET_S390X) \
> +    || defined(TARGET_OPENRISC) || defined(TARGET_TILEGX)
>
>  #define TARGET_IOC_SIZEBITS    14
>  #define TARGET_IOC_DIRBITS     2
> @@ -365,7 +366,8 @@ int do_sigaction(int sig, const struct target_sigaction 
> *act,
>      || defined(TARGET_PPC) || defined(TARGET_MIPS) || defined(TARGET_SH4) \
>      || defined(TARGET_M68K) || defined(TARGET_ALPHA) || defined(TARGET_CRIS) 
> \
>      || defined(TARGET_MICROBLAZE) || defined(TARGET_UNICORE32) \
> -    || defined(TARGET_S390X) || defined(TARGET_OPENRISC)
> +    || defined(TARGET_S390X) || defined(TARGET_OPENRISC) \
> +    || defined(TARGET_TILEGX)
>
>  #if defined(TARGET_SPARC)
>  #define TARGET_SA_NOCLDSTOP    8u
> @@ -1922,6 +1924,32 @@ struct target_stat64 {
>      unsigned int __unused5;
>  };
>
> +#elif defined(TARGET_TILEGX)
> +
> +/* Copy from Linux kernel "uapi/asm-generic/stat.h" */
> +struct target_stat {
> +        abi_ulong st_dev;               /* Device.  */
> +        abi_ulong st_ino;               /* File serial number.  */
> +        unsigned int st_mode;           /* File mode.  */
> +        unsigned int st_nlink;          /* Link count.  */
> +        unsigned int st_uid;            /* User ID of the file's owner.  */
> +        unsigned int st_gid;            /* Group ID of the file's group. */
> +        abi_ulong st_rdev;              /* Device number, if device.  */
> +        abi_ulong __pad1;
> +        abi_long  st_size;              /* Size of file, in bytes.  */
> +        int st_blksize;                 /* Optimal block size for I/O.  */
> +        int __pad2;
> +        abi_long st_blocks;             /* Number 512-byte blocks allocated. 
> */
> +        abi_long target_st_atime;       /* Time of last access.  */
> +        abi_ulong target_st_atime_nsec;
> +        abi_long target_st_mtime;       /* Time of last modification.  */
> +        abi_ulong target_st_mtime_nsec;
> +        abi_long target_st_ctime;       /* Time of last status change.  */
> +        abi_ulong target_st_ctime_nsec;
> +        unsigned int __unused4;
> +        unsigned int __unused5;
> +};

We already have the generic stat struct for TARGET_OPENRISC,
so you should just add TILEGX to the #if for that. (Pretty
sure you want the stat64 struct too, or at least that it
won't hurt.)

-- PMM



reply via email to

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