virtio-blk.c (a6f2cb037a82fb8679e70e175cfbc879dd829e06) virtio-blk.c (631b22ea206300f09b9d1bb9249169e0f0092639)
1/*
2 * Virtio Block Device
3 *
4 * Copyright IBM, Corp. 2007
5 *
6 * Authors:
7 * Anthony Liguori <aliguori@us.ibm.com>
8 *

--- 501 unchanged lines hidden (view full) ---

510 req->in = (void *)in_iov[in_num - 1].iov_base
511 + in_iov[in_num - 1].iov_len
512 - sizeof(struct virtio_blk_inhdr);
513 iov_discard_back(in_iov, &in_num, sizeof(struct virtio_blk_inhdr));
514
515 type = virtio_ldl_p(VIRTIO_DEVICE(req->dev), &req->out.type);
516
517 /* VIRTIO_BLK_T_OUT defines the command direction. VIRTIO_BLK_T_BARRIER
1/*
2 * Virtio Block Device
3 *
4 * Copyright IBM, Corp. 2007
5 *
6 * Authors:
7 * Anthony Liguori <aliguori@us.ibm.com>
8 *

--- 501 unchanged lines hidden (view full) ---

510 req->in = (void *)in_iov[in_num - 1].iov_base
511 + in_iov[in_num - 1].iov_len
512 - sizeof(struct virtio_blk_inhdr);
513 iov_discard_back(in_iov, &in_num, sizeof(struct virtio_blk_inhdr));
514
515 type = virtio_ldl_p(VIRTIO_DEVICE(req->dev), &req->out.type);
516
517 /* VIRTIO_BLK_T_OUT defines the command direction. VIRTIO_BLK_T_BARRIER
518 * is an optional flag. Altough a guest should not send this flag if
518 * is an optional flag. Although a guest should not send this flag if
519 * not negotiated we ignored it in the past. So keep ignoring it. */
520 switch (type & ~(VIRTIO_BLK_T_OUT | VIRTIO_BLK_T_BARRIER)) {
521 case VIRTIO_BLK_T_IN:
522 {
523 bool is_write = type & VIRTIO_BLK_T_OUT;
524 req->sector_num = virtio_ldq_p(VIRTIO_DEVICE(req->dev),
525 &req->out.sector);
526

--- 473 unchanged lines hidden ---
519 * not negotiated we ignored it in the past. So keep ignoring it. */
520 switch (type & ~(VIRTIO_BLK_T_OUT | VIRTIO_BLK_T_BARRIER)) {
521 case VIRTIO_BLK_T_IN:
522 {
523 bool is_write = type & VIRTIO_BLK_T_OUT;
524 req->sector_num = virtio_ldq_p(VIRTIO_DEVICE(req->dev),
525 &req->out.sector);
526

--- 473 unchanged lines hidden ---