xen/blktap-ioemu-close-fix.patch

22 lines
878 B
Diff
Raw Normal View History

Index: xen-3.3.1-testing/tools/blktap/drivers/blktapctrl.c
===================================================================
--- xen-3.3.1-testing.orig/tools/blktap/drivers/blktapctrl.c
+++ xen-3.3.1-testing/tools/blktap/drivers/blktapctrl.c
@@ -245,8 +245,15 @@ static int del_disktype(blkif_t *blkif)
DPRINTF("DEL_DISKTYPE: Freeing entry\n");
free(entry);
+#ifdef ALWAYS_USE_IOEMU
+ return 0;
+#else
/* Caller should close() if no single controller, or list is empty. */
- return (!dtypes[type]->single_handler || (active_disks[type] == NULL));
+ /* tapdisk-ioemu is a single controller regardless of single_hander
+ (TODO: This needs to be per-domain in fact) */
+ return ((!dtypes[type]->single_handler && !dtypes[type]->use_ioemu)
+ || (active_disks[type] == NULL));
+#endif
}
static int write_msg(int fd, int msgtype, void *ptr, void *ptr2)