glib: Add compat wrapper for g_poll on old glib
[qemu/pbrook.git] / block / qed-gencb.c
blob7d7ac1ffc8e0a1497c76519c04be383d1d8ad3af
1 /*
2 * QEMU Enhanced Disk Format
4 * Copyright IBM, Corp. 2010
6 * Authors:
7 * Stefan Hajnoczi <stefanha@linux.vnet.ibm.com>
9 * This work is licensed under the terms of the GNU LGPL, version 2 or later.
10 * See the COPYING.LIB file in the top-level directory.
14 #include "qed.h"
16 void *gencb_alloc(size_t len, BlockDriverCompletionFunc *cb, void *opaque)
18 GenericCB *gencb = g_malloc(len);
19 gencb->cb = cb;
20 gencb->opaque = opaque;
21 return gencb;
24 void gencb_complete(void *opaque, int ret)
26 GenericCB *gencb = opaque;
27 BlockDriverCompletionFunc *cb = gencb->cb;
28 void *user_opaque = gencb->opaque;
30 g_free(gencb);
31 cb(user_opaque, ret);