search for: vhost_iotlb_msg_v2

Displaying 15 results from an estimated 15 matches for "vhost_iotlb_msg_v2".

2018 Aug 03
4
[PATCH net-next] vhost: switch to use new message format
...pe) { + switch (type) { case VHOST_IOTLB_MSG: - err = vhost_process_iotlb_msg(dev, &node.msg.iotlb); - if (err) - ret = err; + /* There maybe a hole after type for V1 message type, + * so skip it here. + */ + offset = offsetof(struct vhost_msg, iotlb) - sizeof(int); + break; + case VHOST_IOTLB_MSG_V2: + offset = sizeof(__u32); break; default: ret = -EINVAL; - break; + goto done; + } + + iov_iter_advance(from, offset); + ret = copy_from_iter(&msg, sizeof(msg), from); + if (ret != sizeof(msg)) + goto done; + if (vhost_process_iotlb_msg(dev, &msg)) { + ret = -EFAULT; + goto d...
2018 Aug 03
4
[PATCH net-next] vhost: switch to use new message format
...pe) { + switch (type) { case VHOST_IOTLB_MSG: - err = vhost_process_iotlb_msg(dev, &node.msg.iotlb); - if (err) - ret = err; + /* There maybe a hole after type for V1 message type, + * so skip it here. + */ + offset = offsetof(struct vhost_msg, iotlb) - sizeof(int); + break; + case VHOST_IOTLB_MSG_V2: + offset = sizeof(__u32); break; default: ret = -EINVAL; - break; + goto done; + } + + iov_iter_advance(from, offset); + ret = copy_from_iter(&msg, sizeof(msg), from); + if (ret != sizeof(msg)) + goto done; + if (vhost_process_iotlb_msg(dev, &msg)) { + ret = -EFAULT; + goto d...
2018 Aug 03
0
[PATCH net-next] vhost: switch to use new message format
...G: > - err = vhost_process_iotlb_msg(dev, &node.msg.iotlb); > - if (err) > - ret = err; > + /* There maybe a hole after type for V1 message type, > + * so skip it here. > + */ > + offset = offsetof(struct vhost_msg, iotlb) - sizeof(int); > + break; > + case VHOST_IOTLB_MSG_V2: > + offset = sizeof(__u32); > break; > default: > ret = -EINVAL; > - break; > + goto done; > + } > + > + iov_iter_advance(from, offset); > + ret = copy_from_iter(&msg, sizeof(msg), from); > + if (ret != sizeof(msg)) > + goto done; > + if (vhos...
2018 Aug 06
1
[PATCH net-next V2] vhost: switch to use new message format
...pe) { + switch (type) { case VHOST_IOTLB_MSG: - err = vhost_process_iotlb_msg(dev, &node.msg.iotlb); - if (err) - ret = err; + /* There maybe a hole after type for V1 message type, + * so skip it here. + */ + offset = offsetof(struct vhost_msg, iotlb) - sizeof(int); + break; + case VHOST_IOTLB_MSG_V2: + offset = sizeof(__u32); break; default: ret = -EINVAL; - break; + goto done; + } + + iov_iter_advance(from, offset); + ret = copy_from_iter(&msg, sizeof(msg), from); + if (ret != sizeof(msg)) + goto done; + if (vhost_process_iotlb_msg(dev, &msg)) { + ret = -EFAULT; + goto d...
2020 Feb 05
2
[PATCH] vhost: introduce vDPA based backend
...S_RO????? 0x1 #define VHOST_ACCESS_WO????? 0x2 #define VHOST_ACCESS_RW????? 0x3 ??? __u8 perm; #define VHOST_IOTLB_MISS?????????? 1 #define VHOST_IOTLB_UPDATE???????? 2 #define VHOST_IOTLB_INVALIDATE???? 3 #define VHOST_IOTLB_ACCESS_FAIL??? 4 ??? __u8 type; }; #define VHOST_IOTLB_MSG 0x1 #define VHOST_IOTLB_MSG_V2 0x2 struct vhost_msg { ??? int type; ??? union { ??? ??? struct vhost_iotlb_msg iotlb; ??? ??? __u8 padding[64]; ??? }; }; struct vhost_msg_v2 { ??? __u32 type; ??? __u32 reserved; ??? union { ??? ??? struct vhost_iotlb_msg iotlb; ??? ??? __u8 padding[64]; ??? }; };
2020 Feb 05
2
[PATCH] vhost: introduce vDPA based backend
...S_RO????? 0x1 #define VHOST_ACCESS_WO????? 0x2 #define VHOST_ACCESS_RW????? 0x3 ??? __u8 perm; #define VHOST_IOTLB_MISS?????????? 1 #define VHOST_IOTLB_UPDATE???????? 2 #define VHOST_IOTLB_INVALIDATE???? 3 #define VHOST_IOTLB_ACCESS_FAIL??? 4 ??? __u8 type; }; #define VHOST_IOTLB_MSG 0x1 #define VHOST_IOTLB_MSG_V2 0x2 struct vhost_msg { ??? int type; ??? union { ??? ??? struct vhost_iotlb_msg iotlb; ??? ??? __u8 padding[64]; ??? }; }; struct vhost_msg_v2 { ??? __u32 type; ??? __u32 reserved; ??? union { ??? ??? struct vhost_iotlb_msg iotlb; ??? ??? __u8 padding[64]; ??? }; };
2020 Feb 05
2
[PATCH] vhost: introduce vDPA based backend
...??? __u8 perm; >> #define VHOST_IOTLB_MISS?????????? 1 >> #define VHOST_IOTLB_UPDATE???????? 2 >> #define VHOST_IOTLB_INVALIDATE???? 3 >> #define VHOST_IOTLB_ACCESS_FAIL??? 4 >> ??? __u8 type; >> }; >> >> #define VHOST_IOTLB_MSG 0x1 >> #define VHOST_IOTLB_MSG_V2 0x2 >> >> struct vhost_msg { >> ??? int type; >> ??? union { >> ??? ??? struct vhost_iotlb_msg iotlb; >> ??? ??? __u8 padding[64]; >> ??? }; >> }; >> >> struct vhost_msg_v2 { >> ??? __u32 type; >> ??? __u32 reserved; &gt...
2020 Feb 05
2
[PATCH] vhost: introduce vDPA based backend
...??? __u8 perm; >> #define VHOST_IOTLB_MISS?????????? 1 >> #define VHOST_IOTLB_UPDATE???????? 2 >> #define VHOST_IOTLB_INVALIDATE???? 3 >> #define VHOST_IOTLB_ACCESS_FAIL??? 4 >> ??? __u8 type; >> }; >> >> #define VHOST_IOTLB_MSG 0x1 >> #define VHOST_IOTLB_MSG_V2 0x2 >> >> struct vhost_msg { >> ??? int type; >> ??? union { >> ??? ??? struct vhost_iotlb_msg iotlb; >> ??? ??? __u8 padding[64]; >> ??? }; >> }; >> >> struct vhost_msg_v2 { >> ??? __u32 type; >> ??? __u32 reserved; &gt...
2020 Feb 05
1
[PATCH] vhost: introduce vDPA based backend
...;>>> #define VHOST_IOTLB_UPDATE???????? 2 >>>> #define VHOST_IOTLB_INVALIDATE???? 3 >>>> #define VHOST_IOTLB_ACCESS_FAIL??? 4 >>>> ??? __u8 type; >>>> }; >>>> >>>> #define VHOST_IOTLB_MSG 0x1 >>>> #define VHOST_IOTLB_MSG_V2 0x2 >>>> >>>> struct vhost_msg { >>>> ??? int type; >>>> ??? union { >>>> ??? ??? struct vhost_iotlb_msg iotlb; >>>> ??? ??? __u8 padding[64]; >>>> ??? }; >>>> }; >>>> >>>&...
2020 Feb 05
0
[PATCH] vhost: introduce vDPA based backend
...define VHOST_ACCESS_RW????? 0x3 > ??? __u8 perm; > #define VHOST_IOTLB_MISS?????????? 1 > #define VHOST_IOTLB_UPDATE???????? 2 > #define VHOST_IOTLB_INVALIDATE???? 3 > #define VHOST_IOTLB_ACCESS_FAIL??? 4 > ??? __u8 type; > }; > > #define VHOST_IOTLB_MSG 0x1 > #define VHOST_IOTLB_MSG_V2 0x2 > > struct vhost_msg { > ??? int type; > ??? union { > ??? ??? struct vhost_iotlb_msg iotlb; > ??? ??? __u8 padding[64]; > ??? }; > }; > > struct vhost_msg_v2 { > ??? __u32 type; > ??? __u32 reserved; > ??? union { > ??? ??? struct vhost_iotlb_msg iot...
2020 Feb 05
2
[PATCH] vhost: introduce vDPA based backend
On 2020/2/5 ??10:05, Tiwei Bie wrote: > On Tue, Feb 04, 2020 at 02:46:16PM +0800, Jason Wang wrote: >> On 2020/2/4 ??2:01, Michael S. Tsirkin wrote: >>> On Tue, Feb 04, 2020 at 11:30:11AM +0800, Jason Wang wrote: >>>> 5) generate diffs of memory table and using IOMMU API to setup the dma >>>> mapping in this method >>> Frankly I think that's a
2020 Feb 05
2
[PATCH] vhost: introduce vDPA based backend
On 2020/2/5 ??10:05, Tiwei Bie wrote: > On Tue, Feb 04, 2020 at 02:46:16PM +0800, Jason Wang wrote: >> On 2020/2/4 ??2:01, Michael S. Tsirkin wrote: >>> On Tue, Feb 04, 2020 at 11:30:11AM +0800, Jason Wang wrote: >>>> 5) generate diffs of memory table and using IOMMU API to setup the dma >>>> mapping in this method >>> Frankly I think that's a
2020 Feb 05
0
[PATCH] vhost: introduce vDPA based backend
...?????????? 1 > > > #define VHOST_IOTLB_UPDATE???????? 2 > > > #define VHOST_IOTLB_INVALIDATE???? 3 > > > #define VHOST_IOTLB_ACCESS_FAIL??? 4 > > > ??? __u8 type; > > > }; > > > > > > #define VHOST_IOTLB_MSG 0x1 > > > #define VHOST_IOTLB_MSG_V2 0x2 > > > > > > struct vhost_msg { > > > ??? int type; > > > ??? union { > > > ??? ??? struct vhost_iotlb_msg iotlb; > > > ??? ??? __u8 padding[64]; > > > ??? }; > > > }; > > > > > > struct vhost_msg_v2...
2020 Sep 24
30
[RFC PATCH 00/24] Control VQ support in vDPA
Hi All: This series tries to add the support for control virtqueue in vDPA. Control virtqueue is used by networking device for accepting various commands from the driver. It's a must to support multiqueue and other configurations. When used by vhost-vDPA bus driver for VM, the control virtqueue should be shadowed via userspace VMM (Qemu) instead of being assigned directly to Guest. This is
2020 Sep 24
30
[RFC PATCH 00/24] Control VQ support in vDPA
Hi All: This series tries to add the support for control virtqueue in vDPA. Control virtqueue is used by networking device for accepting various commands from the driver. It's a must to support multiqueue and other configurations. When used by vhost-vDPA bus driver for VM, the control virtqueue should be shadowed via userspace VMM (Qemu) instead of being assigned directly to Guest. This is