Displaying 9 results from an estimated 9 matches for "hdr_pa".
2017 Jul 13
2
[PATCH v12 8/8] virtio-balloon: VIRTIO_BALLOON_F_CMD_VQ
...size_func(struct work_struct *work)
> queue_work(system_freezable_wq, work);
> }
>
> +static unsigned int cmdq_hdr_add(struct virtqueue *vq,
> + struct virtio_balloon_cmdq_hdr *hdr,
> + bool in)
> +{
> + unsigned int id = VIRTQUEUE_DESC_ID_INIT;
> + uint64_t hdr_pa = (uint64_t)virt_to_phys((void *)hdr);
> +
> + virtqueue_add_chain_desc(vq, hdr_pa, sizeof(*hdr), &id, &id, in);
> +
> + /* Deliver the hdr for the host to send commands. */
> + if (in) {
> + hdr->flags = 0;
> + virtqueue_add_chain(vq, id, 0, NULL, hdr, NULL);
>...
2017 Jul 13
2
[PATCH v12 8/8] virtio-balloon: VIRTIO_BALLOON_F_CMD_VQ
...size_func(struct work_struct *work)
> queue_work(system_freezable_wq, work);
> }
>
> +static unsigned int cmdq_hdr_add(struct virtqueue *vq,
> + struct virtio_balloon_cmdq_hdr *hdr,
> + bool in)
> +{
> + unsigned int id = VIRTQUEUE_DESC_ID_INIT;
> + uint64_t hdr_pa = (uint64_t)virt_to_phys((void *)hdr);
> +
> + virtqueue_add_chain_desc(vq, hdr_pa, sizeof(*hdr), &id, &id, in);
> +
> + /* Deliver the hdr for the host to send commands. */
> + if (in) {
> + hdr->flags = 0;
> + virtqueue_add_chain(vq, id, 0, NULL, hdr, NULL);
>...
2017 Jul 13
0
[PATCH v12 8/8] virtio-balloon: VIRTIO_BALLOON_F_CMD_VQ
...;> queue_work(system_freezable_wq, work);
>> }
>>
>> +static unsigned int cmdq_hdr_add(struct virtqueue *vq,
>> + struct virtio_balloon_cmdq_hdr *hdr,
>> + bool in)
>> +{
>> + unsigned int id = VIRTQUEUE_DESC_ID_INIT;
>> + uint64_t hdr_pa = (uint64_t)virt_to_phys((void *)hdr);
>> +
>> + virtqueue_add_chain_desc(vq, hdr_pa, sizeof(*hdr), &id, &id, in);
>> +
>> + /* Deliver the hdr for the host to send commands. */
>> + if (in) {
>> + hdr->flags = 0;
>> + virtqueue_add_chain(vq, i...
2017 Jun 09
0
[PATCH v11 6/6] virtio-balloon: VIRTIO_BALLOON_F_CMD_VQ
...d miscq msg buf err\n",
+ __func__);
+ return;
+ }
+
+ virtqueue_kick(vb->cmd_vq);
+}
+
+static void cmdq_handle_unused_pages(struct virtio_balloon *vb)
+{
+ struct virtqueue *vq = vb->cmd_vq;
+ struct vring_desc *hdr_desc = &vb->cmdq_unused_page.desc_table[0];
+ unsigned long hdr_pa;
+ unsigned int order = 0, migratetype = 0;
+ struct zone *zone = NULL;
+ struct page *page = NULL;
+ u64 pfn;
+ int ret = 0;
+
+ /* Put the hdr to the first desc */
+ hdr_pa = virt_to_phys((void *)&vb->cmdq_unused_page.hdr);
+ hdr_desc->addr = cpu_to_virtio64(vb->vdev, hdr_pa);
+ hdr_...
2017 Jul 12
0
[PATCH v12 8/8] virtio-balloon: VIRTIO_BALLOON_F_CMD_VQ
...85,25 +492,214 @@ static void update_balloon_size_func(struct work_struct *work)
queue_work(system_freezable_wq, work);
}
+static unsigned int cmdq_hdr_add(struct virtqueue *vq,
+ struct virtio_balloon_cmdq_hdr *hdr,
+ bool in)
+{
+ unsigned int id = VIRTQUEUE_DESC_ID_INIT;
+ uint64_t hdr_pa = (uint64_t)virt_to_phys((void *)hdr);
+
+ virtqueue_add_chain_desc(vq, hdr_pa, sizeof(*hdr), &id, &id, in);
+
+ /* Deliver the hdr for the host to send commands. */
+ if (in) {
+ hdr->flags = 0;
+ virtqueue_add_chain(vq, id, 0, NULL, hdr, NULL);
+ virtqueue_kick(vq);
+ }
+
+ return i...
2017 Jul 12
19
[PATCH v12 0/8] Virtio-balloon Enhancement
This patch series enhances the existing virtio-balloon with the following new
features:
1) fast ballooning: transfer ballooned pages between the guest and host in
chunks using sgs, instead of one by one; and
2) cmdq: a new virtqueue to send commands between the device and driver.
Currently, it supports commands to report memory stats (replace the old statq
mechanism) and report guest unused pages.
2017 Jul 12
19
[PATCH v12 0/8] Virtio-balloon Enhancement
This patch series enhances the existing virtio-balloon with the following new
features:
1) fast ballooning: transfer ballooned pages between the guest and host in
chunks using sgs, instead of one by one; and
2) cmdq: a new virtqueue to send commands between the device and driver.
Currently, it supports commands to report memory stats (replace the old statq
mechanism) and report guest unused pages.
2017 Jun 09
11
[PATCH v11 0/6] Virtio-balloon Enhancement
This patch series enhances the existing virtio-balloon with the following new
features:
1) fast ballooning: transfer ballooned pages between the guest and host in
chunks, instead of one by one; and
2) cmdq: a new virtqueue to send commands between the device and driver.
Currently, it supports commands to report memory stats (replace the old statq
mechanism) and report guest unused pages.
Liang Li
2017 Jun 09
11
[PATCH v11 0/6] Virtio-balloon Enhancement
This patch series enhances the existing virtio-balloon with the following new
features:
1) fast ballooning: transfer ballooned pages between the guest and host in
chunks, instead of one by one; and
2) cmdq: a new virtqueue to send commands between the device and driver.
Currently, it supports commands to report memory stats (replace the old statq
mechanism) and report guest unused pages.
Liang Li