[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
- Re: [Qemu-devel] [PATCH 03/12 v9] linux-user: Support tilegx architecture in syscall,
Peter Maydell <=