Message ID | 20210128144127.113245-11-sgarzare@redhat.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | vdpa: add vdpa simulator for block device | expand |
On 2021/1/28 下午10:41, Stefano Garzarella wrote: > Handle VIRTIO_BLK_T_GET_ID request, always answering the > "vdpa_blk_sim" string. > > Signed-off-by: Stefano Garzarella <sgarzare@redhat.com> > --- > v2: > - made 'vdpasim_blk_id' static [Jason] Acked-by: Jason Wang <jasowang@redhat.com> > --- > drivers/vdpa/vdpa_sim/vdpa_sim_blk.c | 15 +++++++++++++++ > 1 file changed, 15 insertions(+) > > diff --git a/drivers/vdpa/vdpa_sim/vdpa_sim_blk.c b/drivers/vdpa/vdpa_sim/vdpa_sim_blk.c > index fc47e8320358..a3f8afad8d14 100644 > --- a/drivers/vdpa/vdpa_sim/vdpa_sim_blk.c > +++ b/drivers/vdpa/vdpa_sim/vdpa_sim_blk.c > @@ -37,6 +37,7 @@ > #define VDPASIM_BLK_VQ_NUM 1 > > static struct vdpasim *vdpasim_blk_dev; > +static char vdpasim_blk_id[VIRTIO_BLK_ID_BYTES] = "vdpa_blk_sim"; > > static bool vdpasim_blk_check_range(u64 start_sector, size_t range_size) > { > @@ -152,6 +153,20 @@ static bool vdpasim_blk_handle_req(struct vdpasim *vdpasim, > } > break; > > + case VIRTIO_BLK_T_GET_ID: > + bytes = vringh_iov_push_iotlb(&vq->vring, &vq->in_iov, > + vdpasim_blk_id, > + VIRTIO_BLK_ID_BYTES); > + if (bytes < 0) { > + dev_err(&vdpasim->vdpa.dev, > + "vringh_iov_push_iotlb() error: %zd\n", bytes); > + status = VIRTIO_BLK_S_IOERR; > + break; > + } > + > + pushed += bytes; > + break; > + > default: > dev_warn(&vdpasim->vdpa.dev, > "Unsupported request type %d\n", type);
On Thu, Jan 28, 2021 at 03:41:27PM +0100, Stefano Garzarella wrote: > Handle VIRTIO_BLK_T_GET_ID request, always answering the > "vdpa_blk_sim" string. > > Signed-off-by: Stefano Garzarella <sgarzare@redhat.com> > --- > v2: > - made 'vdpasim_blk_id' static [Jason] > --- > drivers/vdpa/vdpa_sim/vdpa_sim_blk.c | 15 +++++++++++++++ > 1 file changed, 15 insertions(+) Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
diff --git a/drivers/vdpa/vdpa_sim/vdpa_sim_blk.c b/drivers/vdpa/vdpa_sim/vdpa_sim_blk.c index fc47e8320358..a3f8afad8d14 100644 --- a/drivers/vdpa/vdpa_sim/vdpa_sim_blk.c +++ b/drivers/vdpa/vdpa_sim/vdpa_sim_blk.c @@ -37,6 +37,7 @@ #define VDPASIM_BLK_VQ_NUM 1 static struct vdpasim *vdpasim_blk_dev; +static char vdpasim_blk_id[VIRTIO_BLK_ID_BYTES] = "vdpa_blk_sim"; static bool vdpasim_blk_check_range(u64 start_sector, size_t range_size) { @@ -152,6 +153,20 @@ static bool vdpasim_blk_handle_req(struct vdpasim *vdpasim, } break; + case VIRTIO_BLK_T_GET_ID: + bytes = vringh_iov_push_iotlb(&vq->vring, &vq->in_iov, + vdpasim_blk_id, + VIRTIO_BLK_ID_BYTES); + if (bytes < 0) { + dev_err(&vdpasim->vdpa.dev, + "vringh_iov_push_iotlb() error: %zd\n", bytes); + status = VIRTIO_BLK_S_IOERR; + break; + } + + pushed += bytes; + break; + default: dev_warn(&vdpasim->vdpa.dev, "Unsupported request type %d\n", type);
Handle VIRTIO_BLK_T_GET_ID request, always answering the "vdpa_blk_sim" string. Signed-off-by: Stefano Garzarella <sgarzare@redhat.com> --- v2: - made 'vdpasim_blk_id' static [Jason] --- drivers/vdpa/vdpa_sim/vdpa_sim_blk.c | 15 +++++++++++++++ 1 file changed, 15 insertions(+)