@@ -276,6 +276,7 @@ static int default_serial = 1;
static int default_parallel = 1;
static int default_monitor = 1;
static int default_vga = 1;
+static int default_drive = 1;
static struct {
const char *driver;
@@ -5466,6 +5467,7 @@ int main(int argc, char **argv, char **envp)
default_monitor = 0;
default_vga = 0;
default_net = 0;
+ default_drive = 0;
break;
#ifndef _WIN32
case QEMU_OPTION_chroot:
@@ -5695,14 +5697,16 @@ int main(int argc, char **argv, char **envp)
blk_mig_init();
- /* we always create the cdrom drive, even if no disk is there */
- drive_add(NULL, CDROM_ALIAS);
+ if (default_drive) {
+ /* we always create the cdrom drive, even if no disk is there */
+ drive_add(NULL, CDROM_ALIAS);
- /* we always create at least one floppy */
- drive_add(NULL, FD_ALIAS, 0);
+ /* we always create at least one floppy */
+ drive_add(NULL, FD_ALIAS, 0);
- /* we always create one sd slot, even if no card is in it */
- drive_add(NULL, SD_ALIAS);
+ /* we always create one sd slot, even if no card is in it */
+ drive_add(NULL, SD_ALIAS);
+ }
/* open the virtual block devices */
if (snapshot)
Add a default_drive variable which specified whenever the default drives (cdrom, floppy, sd) should be created. It is cleared when the new -nodefaults switch is specified on the command line. Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> --- vl.c | 16 ++++++++++------ 1 files changed, 10 insertions(+), 6 deletions(-)