On 2021/1/5 下午2:33, Parav Pandit wrote:
From: Jason Wang <jasowang@xxxxxxxxxx>
Sent: Tuesday, January 5, 2021 9:40 AM
On 2021/1/4 下午3:24, Parav Pandit wrote:
From: Jason Wang <jasowang@xxxxxxxxxx>
Sent: Monday, January 4, 2021 12:33 PM
On 2021/1/4 上午11:31, Parav Pandit wrote:
To add one or more VDPA devices, define a management device which
allows adding or removing vdpa device. A management device defines
set of callbacks to manage vdpa devices.
To begin with, it defines add and remove callbacks through which a
user defined vdpa device can be added or removed.
A unique management device is identified by its unique handle
identified by management device name and optionally the bus name.
Hence, introduce routine through which driver can register a
management device and its callback operations for adding and remove
a vdpa device.
Introduce vdpa netlink socket family so that user can query
management device and its attributes.
Example of show vdpa management device which allows creating vdpa
device of networking class (device id = 0x1) of virtio specification
1.1 section 5.1.1.
$ vdpa mgmtdev show
vdpasim_net:
supported_classes:
net
Example of showing vdpa management device in JSON format.
$ vdpa mgmtdev show -jp
{
"show": {
"vdpasim_net": {
"supported_classes": [ "net" ]
}
}
}
Signed-off-by: Parav Pandit<parav@xxxxxxxxxx>
Reviewed-by: Eli Cohen<elic@xxxxxxxxxx>
Reviewed-by: Jason Wang<jasowang@xxxxxxxxxx>
---
Changelog:
v1->v2:
- rebased
- updated commit log example for management device name from
"vdpasim" to "vdpasim_net"
- removed device_id as net and block management devices are
separated
So I wonder whether there could be a type of management devices that
can deal with multiple types of virtio devices. If yes, we probably
need to add device id back.
At this point mlx5 plan to support only net.
It is useful to see what type of vdpa device is supported by a management
device.
In future if a mgmt dev supports multiple types, user needs to choose
desired type.
I guess we can differ this optional type to future, when such mgmt. device
will/may be available.
I worry if we remove device_id, it may gives a hint that multiple mgmt
devices needs to be registered if it supports multiple types.
No it shouldn't. because we do expose multiple supported types in mgmtdev attributes.
Right.
So if possible I would like to keep the device_id here.
Its possible to keep it. But with current drivers, mainly mlx5 and vdpa_sim, it is redundant.
Not sure of the ifc's plan.
We have been splitting modules to handle net and block differently in mlx5 as well as vdpa_sim.
So it looks to me that both may be separate management drivers (and management devices).
Such as vdpasim_net and vdpasim_block.
mlx5 doesn't have plan for block yet.
Ok. Then it's fine.
Thanks
_______________________________________________
Virtualization mailing list
Virtualization@xxxxxxxxxxxxxxxxxxxxxxxxxx
https://lists.linuxfoundation.org/mailman/listinfo/virtualization