diff options
-rw-r--r-- | contrib/libvhost-user/libvhost-user-glib.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/contrib/libvhost-user/libvhost-user-glib.c b/contrib/libvhost-user/libvhost-user-glib.c index 0df2ec9271..efc9d814e3 100644 --- a/contrib/libvhost-user/libvhost-user-glib.c +++ b/contrib/libvhost-user/libvhost-user-glib.c @@ -12,10 +12,16 @@ * later. See the COPYING file in the top-level directory. */ -#include "qemu/osdep.h" - #include "libvhost-user-glib.h" +#ifndef container_of +#define container_of(ptr, type, member) \ + __extension__({ \ + void *__mptr = (void *)(ptr); \ + ((type *)(__mptr - offsetof(type, member))); \ + }) +#endif + /* glib event loop integration for libvhost-user and misc callbacks */ G_STATIC_ASSERT((int)G_IO_IN == (int)VU_WATCH_IN); |