]> rtime.felk.cvut.cz Git - lisovros/qemu_apohw.git/commitdiff
Merge remote-tracking branch 'bonzini/scsi-next' into staging
authorAnthony Liguori <aliguori@amazon.com>
Fri, 24 Jan 2014 23:50:14 +0000 (15:50 -0800)
committerAnthony Liguori <aliguori@amazon.com>
Fri, 24 Jan 2014 23:50:14 +0000 (15:50 -0800)
* bonzini/scsi-next:
  scsi: Support TEST UNIT READY in the dummy LUN0
  block: add .bdrv_reopen_prepare() stub for iscsi
  virtio-scsi: Prevent assertion on missed events
  virtio-scsi: Cleanup of I/Os that never started
  scsi: Assign cancel_io vector for scsi_disk_emulate_ops

Conflicts:
block/iscsi.c

aliguori: resolve trivial merge conflict in block/iscsi.c

Signed-off-by: Anthony Liguori <aliguori@amazon.com>
1  2 
block/iscsi.c
hw/scsi/scsi-disk.c

diff --cc block/iscsi.c
index 890bd81336b287a7a59269afed92ad24f8754172,5976bd14da0fc5d7ad8821c536150d21299ddc08..6f4af72a7539aba0cd8722cf6c23d6eafa3207a8
@@@ -1310,31 -1326,11 +1310,38 @@@ static void iscsi_close(BlockDriverStat
      memset(iscsilun, 0, sizeof(IscsiLun));
  }
  
 +static int iscsi_refresh_limits(BlockDriverState *bs)
 +{
 +    IscsiLun *iscsilun = bs->opaque;
 +
 +    /* We don't actually refresh here, but just return data queried in
 +     * iscsi_open(): iscsi targets don't change their limits. */
 +    if (iscsilun->lbp.lbpu || iscsilun->lbp.lbpws) {
 +        if (iscsilun->bl.max_unmap < 0xffffffff) {
 +            bs->bl.max_discard = sector_lun2qemu(iscsilun->bl.max_unmap,
 +                                                 iscsilun);
 +        }
 +        bs->bl.discard_alignment = sector_lun2qemu(iscsilun->bl.opt_unmap_gran,
 +                                                   iscsilun);
 +
 +        if (iscsilun->bl.max_ws_len < 0xffffffff) {
 +            bs->bl.max_write_zeroes = sector_lun2qemu(iscsilun->bl.max_ws_len,
 +                                                      iscsilun);
 +        }
 +        bs->bl.write_zeroes_alignment = sector_lun2qemu(iscsilun->bl.opt_unmap_gran,
 +                                                        iscsilun);
 +
 +        bs->bl.opt_transfer_length = sector_lun2qemu(iscsilun->bl.opt_xfer_len,
 +                                                     iscsilun);
 +    }
++    return 0;
++}
 +
+ /* We have nothing to do for iSCSI reopen, stub just returns
+  * success */
+ static int iscsi_reopen_prepare(BDRVReopenState *state,
+                                 BlockReopenQueue *queue, Error **errp)
+ {
      return 0;
  }
  
Simple merge