Merge change 2069 into donut
* changes:
Fix one minor crashing bug when -debug-audio is used with the OSS audio backend. Moreover, properly set errno to 0 in QSOCKET_CALL macro, to avoid misleading trace messages when -debug-slirp is used
diff --git a/hw/goldfish_trace.c b/hw/goldfish_trace.c
index a9f6437..f49b704 100644
--- a/hw/goldfish_trace.c
+++ b/hw/goldfish_trace.c
@@ -205,6 +205,9 @@
case TRACE_DEV_REG_METHOD_ENTRY:
case TRACE_DEV_REG_METHOD_EXIT:
case TRACE_DEV_REG_METHOD_EXCEPTION:
+ case TRACE_DEV_REG_NATIVE_ENTRY:
+ case TRACE_DEV_REG_NATIVE_EXIT:
+ case TRACE_DEV_REG_NATIVE_EXCEPTION:
if (tracing) {
int call_type = (offset - 4096) >> 2;
trace_interpreted_method(value, call_type);
diff --git a/hw/goldfish_trace.h b/hw/goldfish_trace.h
index c49745b..11ed906 100644
--- a/hw/goldfish_trace.h
+++ b/hw/goldfish_trace.h
@@ -46,6 +46,9 @@
#define TRACE_DEV_REG_METHOD_ENTRY 1024
#define TRACE_DEV_REG_METHOD_EXIT 1025
#define TRACE_DEV_REG_METHOD_EXCEPTION 1026
+#define TRACE_DEV_REG_NATIVE_ENTRY 1028
+#define TRACE_DEV_REG_NATIVE_EXIT 1029
+#define TRACE_DEV_REG_NATIVE_EXCEPTION 1030
/* the virtual trace device state */
typedef struct {
diff --git a/trace_common.h b/trace_common.h
index 3c4440d..fe84c1a 100644
--- a/trace_common.h
+++ b/trace_common.h
@@ -29,10 +29,13 @@
#define kMethodEnter 0
#define kMethodExit 1
#define kMethodException 2
+#define kNativeEnter 4
+#define kNativeExit 5
+#define kNativeException 6
// The trace identifier string must be less than 16 characters.
#define TRACE_IDENT "qemu_trace_file"
-#define TRACE_VERSION 1
+#define TRACE_VERSION 2
typedef struct TraceHeader {
char ident[16];