]> git.proxmox.com Git - mirror_qemu.git/commitdiff
linux-user: Handle ERFKILL and EHWPOISON
authorRichard Henderson <rth@twiddle.net>
Mon, 5 Dec 2016 21:08:12 +0000 (13:08 -0800)
committerRichard Henderson <rth@twiddle.net>
Mon, 23 Jan 2017 02:14:10 +0000 (18:14 -0800)
With definitions for generic, alpha and mips taken from 4.9-rc2.

Signed-off-by: Richard Henderson <rth@twiddle.net>
linux-user/alpha/target_syscall.h
linux-user/errno_defs.h
linux-user/mips/target_syscall.h
linux-user/mips64/target_syscall.h
linux-user/syscall.c

index b580fc5b3733c43cd1c34f89e01793bdd5706ebc..3426cc5b4e4f167699c2e028bb45dbba09d995b9 100644 (file)
@@ -235,6 +235,8 @@ struct target_pt_regs {
 #define TARGET_ENOTRECOVERABLE 137
 #undef TARGET_ERFKILL
 #define TARGET_ERFKILL         138
+#undef TARGET_EHWPOISON
+#define TARGET_EHWPOISON        139
 
 // For sys_osf_getsysinfo
 #define TARGET_GSI_UACPROC             8
index 65522c45160ee8a92cd54f9a86f46d9e49dd467a..55fbebda5101623251584fbb563c3cb116b91007 100644 (file)
 #define TARGET_EOWNERDEAD      130     /* Owner died */
 #define TARGET_ENOTRECOVERABLE 131     /* State not recoverable */
 
+#define TARGET_ERFKILL         132     /* Operation not possible due to RF-kill */
+#define TARGET_EHWPOISON       133     /* Memory page has hardware error */
+
 /* QEMU internal, not visible to the guest. This is returned when a
  * system call should be restarted, to tell the main loop that it
  * should wind the guest PC backwards so it will re-execute the syscall
index 0b64b73714dd45ab57decabdb54bd559ba0e271d..2fca1c6bf9bb07ea133e6a95861e14790b209243 100644 (file)
@@ -221,6 +221,11 @@ struct target_pt_regs {
 #undef TARGET_ENOTRECOVERABLE
 #define TARGET_ENOTRECOVERABLE 166     /* State not recoverable */
 
+#undef TARGET_ERFKILL
+#define TARGET_ERFKILL         167
+#undef TARGET_EHWPOISON
+#define TARGET_EHWPOISON       168
+
 #undef TARGET_EDQUOT
 #define TARGET_EDQUOT          1133    /* Quota exceeded */
 
index 6692917e2e5eec9a38356a67887bad3ad8124633..078437d765675cc5b0ce7f77f2565020d47a1d7b 100644 (file)
@@ -218,6 +218,11 @@ struct target_pt_regs {
 #undef TARGET_ENOTRECOVERABLE
 #define TARGET_ENOTRECOVERABLE 166     /* State not recoverable */
 
+#undef TARGET_ERFKILL
+#define TARGET_ERFKILL         167
+#undef TARGET_EHWPOISON
+#define TARGET_EHWPOISON       168
+
 #undef TARGET_EDQUOT
 #define TARGET_EDQUOT          1133    /* Quota exceeded */
 
index acb004f035cfe3cea35889de529dec7414d01f0d..11a311f9dbdb424b37d19c5a856f066080bca5e9 100644 (file)
@@ -798,6 +798,12 @@ static uint16_t host_to_target_errno_table[ERRNO_TABLE_SIZE] = {
 #ifdef ENOMSG
     [ENOMSG]            = TARGET_ENOMSG,
 #endif
+#ifdef ERKFILL
+    [ERFKILL]           = TARGET_ERFKILL,
+#endif
+#ifdef EHWPOISON
+    [EHWPOISON]         = TARGET_EHWPOISON,
+#endif
 };
 
 static inline int host_to_target_errno(int err)