#include "sys-queue.h"
#include "qemu_socket.h"
+#ifndef CONFIG_STUBDOM
+
typedef struct AioHandler AioHandler;
/* The list of registered AIO handlers */
}
} while (ret == 0);
}
+
+#endif
#include "qemu-common.h"
#include "nbd.h"
+#ifndef CONFIG_STUBDOM
+
#include <sys/types.h>
#include <unistd.h>
.bdrv_getlength = nbd_getlength,
.protocol_name = "nbd",
};
+
+#endif
* THE SOFTWARE.
*/
#include "qemu-common.h"
-#include "audio/sys-queue.h"
+#include "sys-queue.h"
#include "block_int.h"
#include <assert.h>
#include <xenbus.h>
{
}
-void qemu_aio_poll(void)
-{
-}
-
/* Wait for all IO requests to complete. */
void qemu_aio_flush(void)
{
blkfront_sync(s->dev);
}
-void qemu_aio_wait_start(void)
-{
-}
-
void qemu_aio_wait(void)
{
int some = 0;
remove_waiter(w);
}
-void qemu_aio_wait_end(void)
-{
-}
-
static void vbd_aio_callback(struct blkfront_aiocb *aiocbp, int ret) {
VbdAIOCB *acb = aiocbp->data;
VbdAIOCB *acb;
int result[2];
result[0] = 0;
- qemu_aio_wait_start();
acb = vbd_aio_setup(bs, sector_num, (uint8_t*) buf, nb_sectors, vbd_cb, &result);
blkfront_aio(&acb->aiocb, write);
while (!result[0])
qemu_aio_wait();
- qemu_aio_wait_end();
return result[1];
}
bdrv_register(&bdrv_vvfat);
bdrv_register(&bdrv_qcow2);
bdrv_register(&bdrv_parallels);
+#ifndef CONFIG_STUBDOM
bdrv_register(&bdrv_nbd);
+#endif
}
void *qemu_aio_get(BlockDriverState *bs, BlockDriverCompletionFunc *cb,
#include "qemu_socket.h"
+#ifndef CONFIG_STUBDOM
+
//#define DEBUG_NBD
#ifdef DEBUG_NBD
return 0;
}
+
+#endif
#ifdef __MINIOS__
#define CONFIG_STUBDOM
-#define NO_AIO 1
+#undef CONFIG_AIO
#define NO_UNIX_SOCKETS 1
+#define NO_BLUETOOTH_PASSTHROUGH 1
#endif
extern char domain_name[64];
OBJS += battery_mgmt.o
ifdef CONFIG_STUBDOM
-CPPFLAGS += $(TARGET_CPPFLAGS)
+CPPFLAGS += $(TARGET_CPPFLAGS) -DNEED_CPU_H \
+ -I$(QEMU_ROOT)/i386-dm -I$(QEMU_ROOT)/hw -I$(QEMU_ROOT)/fpu
CONFIG_SDL=
CONFIG_AUDIO=
OBJS += xenfbfront.o