dbdma: reset io->processing flag for unassigned DBDMA channel rw accesses
authorMark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
Sun, 10 Jul 2016 18:08:58 +0000 (19:08 +0100)
committerDavid Gibson <david@gibson.dropbear.id.au>
Mon, 18 Jul 2016 00:40:27 +0000 (10:40 +1000)
Otherwise MacOS 9 hangs upon shutdown.

Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
hw/misc/macio/mac_dbdma.c

index ef5b0a51cadf24c13a204bedb626092ae3845d19..15452b9a28331e2abfea7f6c1cd7ead43f38ccf8 100644 (file)
@@ -778,6 +778,7 @@ static void dbdma_unassigned_rw(DBDMA_io *io)
     DBDMA_channel *ch = io->channel;
     qemu_log_mask(LOG_GUEST_ERROR, "%s: use of unassigned channel %d\n",
                   __func__, ch->channel);
+    ch->io.processing = false;
 }
 
 static void dbdma_unassigned_flush(DBDMA_io *io)