Merge tag 'virtio-next-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git...
authorLinus Torvalds <torvalds@linux-foundation.org>
Thu, 12 Jun 2014 04:10:33 +0000 (21:10 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Thu, 12 Jun 2014 04:10:33 +0000 (21:10 -0700)
Pull virtio updates from Rusty Russell:
 "Main excitement is a virtio_scsi fix for alloc holding spinlock on the
  abort path, which I refuse to CC stable since (1) I discovered it
  myself, and (2) it's been there forever with no reports"

* tag 'virtio-next-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux:
  virtio_scsi: don't call virtqueue_add_sgs(... GFP_NOIO) holding spinlock.
  virtio-rng: fixes for device registration/unregistration
  virtio-rng: fix boot with virtio-rng device
  virtio-rng: support multiple virtio-rng devices
  virtio_ccw: introduce device_lost in virtio_ccw_device
  virtio: virtio_break_device() to mark all virtqueues broken.

1  2 
drivers/scsi/virtio_scsi.c

index d4727b3394749bcc6ab4265a19c20f83c5328bea,e2a68aece3da2c0901774ee7190bff9161c5ab87..99fdb94039442b50694e66d53f63cab55a5efdae
@@@ -484,10 -529,13 +483,9 @@@ static int virtscsi_queuecommand(struc
        memcpy(cmd->req.cmd.cdb, sc->cmnd, sc->cmd_len);
  
        if (virtscsi_kick_cmd(req_vq, cmd,
-                             sizeof cmd->req.cmd, sizeof cmd->resp.cmd,
-                             GFP_ATOMIC) != 0)
 -                            sizeof cmd->req.cmd, sizeof cmd->resp.cmd) == 0)
 -              ret = 0;
 -      else
 -              mempool_free(cmd, virtscsi_cmd_pool);
 -
 -out:
 -      return ret;
++                            sizeof cmd->req.cmd, sizeof cmd->resp.cmd) != 0)
 +              return SCSI_MLQUEUE_HOST_BUSY;
 +      return 0;
  }
  
  static int virtscsi_queuecommand_single(struct Scsi_Host *sh,