Re: [PATCH V2 6/8] mdev: introduce virtio device and its device ops

Jason Wang
2019-09-27T08:37:36Z

On 2019/9/25 上午7:06, Alex Williamson wrote:
> On Tue, 24 Sep 2019 21:53:30 +0800
> Jason Wang<jasowang@redhat.com> wrote:
>
>> This patch implements basic support for mdev driver that supports
>> virtio transport for kernel virtio driver.
>>
>> Signed-off-by: Jason Wang<jasowang@redhat.com>
>> ---
>> include/linux/mdev.h | 2 +
>> include/linux/virtio_mdev.h | 145 ++++++++++++++++++++++++++++++++++++
>> 2 files changed, 147 insertions(+)
>> create mode 100644 include/linux/virtio_mdev.h
>>
>> diff --git a/include/linux/mdev.h b/include/linux/mdev.h
>> index 3414307311f1..73ac27b3b868 100644
>> --- a/include/linux/mdev.h
>> +++ b/include/linux/mdev.h
>> @@ -126,6 +126,8 @@ struct mdev_device *mdev_from_dev(struct device *dev);
>>
>> enum {
>> MDEV_ID_VFIO = 1,
>> + MDEV_ID_VIRTIO = 2,
>> + MDEV_ID_VHOST = 3,
> MDEV_ID_VHOST isn't used yet here. Also, given the strong
> interdependence between the class_id and the ops structure, we might
> wand to define them in the same place. Thanks,
>
> Alex
>

Rethink about this,  I believe it's better to define the device ops in
their own headers, and one set of device ops could be used for two
classes (e.g both virtio and vhost). And to avoid a duplicated ID
definition. I tend to keep this in the common mdev.h header.

Thanks