+static long w_munmap_raw(void *addr, size_t length)
+{
+ long ret;
+
+ ret = emu_do_munmap(addr, length);
+ if (ret == -EAGAIN)
+ ret = g_munmap_raw(addr, length);
+
+ strace("munmap(%p, %x) = %ld\n", addr, length, ret);
+ return ret;
+}
+
+static int w_munmap(void *addr, size_t length)
+{
+ long ret = w_munmap_raw(addr, length);
+ return g_syscall_error(ret);
+}
+
+long w_read_raw(int fd, void *buf, size_t count)