diff mbox

[v6,1/7] linux-user: Fix TARGET_SIOCATMARK definition for Mips

Message ID 20160916111422.109959-2-aleksandar.markovic@rt-rk.com (mailing list archive)
State New, archived
Headers show

Commit Message

Aleksandar Markovic Sept. 16, 2016, 11:14 a.m. UTC
From: Aleksandar Markovic <aleksandar.markovic@imgtec.com>

This patch fixes wrong definition of TARGET_SIOCATMARK for Mips.

The current definition is:

  #define SIOCATMARK      0x8905

while the correct definition is:

  #define SIOCATMARK      TARGET_IOR('s', 7, int)

See Linux kernel source file arch/mips/include/uapi/asm/sockios.h#L19
for reference.

This patch also a fixes LTP test failure for test sockioctl01, for Mips.

Signed-off-by: Aleksandar Rikalo <aleksandar.rikalo@imgtec.com>
Signed-off-by: Aleksandar Markovic <aleksandar.markovic@imgtec.com>
---
 linux-user/syscall_defs.h | 4 ++++
 1 file changed, 4 insertions(+)

Comments

Laurent Vivier Sept. 16, 2016, 6:22 p.m. UTC | #1
Le 16/09/2016 à 13:14, Aleksandar Markovic a écrit :
> From: Aleksandar Markovic <aleksandar.markovic@imgtec.com>
> 
> This patch fixes wrong definition of TARGET_SIOCATMARK for Mips.
> 
> The current definition is:
> 
>   #define SIOCATMARK      0x8905
> 
> while the correct definition is:
> 
>   #define SIOCATMARK      TARGET_IOR('s', 7, int)

According to linux sources, it seems true also for alpha and sh4.

Perhaps you can add them to the patch?
Do you have something to test it doesn't break anything?

Thanks,
Laurent
Aleksandar Markovic Sept. 19, 2016, 8:31 a.m. UTC | #2
Thanks a lot for the review, Laurent, I am going to add TARGET_SH4 and TARGET_ALPHA to this change.

I test LTP syscall test set on mips, arm and intel platforms as my regression tests, but also some number of individual LTP tests (the choice of tests depends on the change) on more platforms, and minimal test examples illustrating the bug and the fix as well.

Aleksandar
diff mbox

Patch

diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h
index 7835654..cf89f16 100644
--- a/linux-user/syscall_defs.h
+++ b/linux-user/syscall_defs.h
@@ -898,7 +898,11 @@  struct target_pollfd {
 #define TARGET_KDSETLED        0x4B32	/* set led state [lights, not flags] */
 #define TARGET_KDSIGACCEPT     0x4B4E
 
+#if defined(TARGET_MIPS)
+#define TARGET_SIOCATMARK      TARGET_IOR('s', 7, int)
+#else
 #define TARGET_SIOCATMARK      0x8905
+#endif
 
 /* Networking ioctls */
 #define TARGET_SIOCADDRT       0x890B          /* add routing table entry */