search for: virtio_balloon_nr_pfn_bit

Displaying 18 results from an estimated 18 matches for "virtio_balloon_nr_pfn_bit".

2017 Jan 17
2
[PATCH v6 kernel 3/5] virtio-balloon: speed up inflate/deflate process
...*vb, > + unsigned long base_pfn, int pages) > > - /* When host has read buffer, this completes via balloon_ack */ > - wait_event(vb->acked, virtqueue_get_buf(vq, &len)); > +{ > + __le64 *range = vb->resp_data + vb->resp_pos; > > + if (pages > (1 << VIRTIO_BALLOON_NR_PFN_BITS)) { > + /* when the length field can't contain pages, set it to 0 to /* * Multi-line * comments * should look like this. */ Also, pls start sentences with an upper-case letter. > + * indicate the actual length is in the next __le64; > + */ This is part of the interface so...
2017 Jan 17
2
[PATCH v6 kernel 3/5] virtio-balloon: speed up inflate/deflate process
...*vb, > + unsigned long base_pfn, int pages) > > - /* When host has read buffer, this completes via balloon_ack */ > - wait_event(vb->acked, virtqueue_get_buf(vq, &len)); > +{ > + __le64 *range = vb->resp_data + vb->resp_pos; > > + if (pages > (1 << VIRTIO_BALLOON_NR_PFN_BITS)) { > + /* when the length field can't contain pages, set it to 0 to /* * Multi-line * comments * should look like this. */ Also, pls start sentences with an upper-case letter. > + * indicate the actual length is in the next __le64; > + */ This is part of the interface so...
2017 Jan 18
2
[PATCH v6 kernel 3/5] virtio-balloon: speed up inflate/deflate process
...; > > - /* When host has read buffer, this completes via balloon_ack */ > > > - wait_event(vb->acked, virtqueue_get_buf(vq, &len)); > > > +{ > > > + __le64 *range = vb->resp_data + vb->resp_pos; > > > > > > + if (pages > (1 << VIRTIO_BALLOON_NR_PFN_BITS)) { > > > + /* when the length field can't contain pages, set it to 0 to > > > > /* > > * Multi-line > > * comments > > * should look like this. > > */ > > > > Also, pls start sentences with an upper-case letter. > > >...
2017 Jan 18
2
[PATCH v6 kernel 3/5] virtio-balloon: speed up inflate/deflate process
...; > > - /* When host has read buffer, this completes via balloon_ack */ > > > - wait_event(vb->acked, virtqueue_get_buf(vq, &len)); > > > +{ > > > + __le64 *range = vb->resp_data + vb->resp_pos; > > > > > > + if (pages > (1 << VIRTIO_BALLOON_NR_PFN_BITS)) { > > > + /* when the length field can't contain pages, set it to 0 to > > > > /* > > * Multi-line > > * comments > > * should look like this. > > */ > > > > Also, pls start sentences with an upper-case letter. > > >...
2017 Jan 19
0
[PATCH v6 kernel 3/5] virtio-balloon: speed up inflate/deflate process
...t has read buffer, this completes via balloon_ack */ > > > > - wait_event(vb->acked, virtqueue_get_buf(vq, &len)); > > > > +{ > > > > + __le64 *range = vb->resp_data + vb->resp_pos; > > > > > > > > + if (pages > (1 << VIRTIO_BALLOON_NR_PFN_BITS)) { > > > > + /* when the length field can't contain pages, set it to 0 to > > > > > > /* > > > * Multi-line > > > * comments > > > * should look like this. > > > */ > > > > > > Also, pls start sentences w...
2017 Jan 12
2
[PATCH v6 kernel 2/5] virtio-balloon: define new feature bit and head struct
...+#define VIRTIO_BALLOON_F_PAGE_RANGE 3 /* Send page info with ranges */ > > /* Size of a PFN in the balloon interface. */ > #define VIRTIO_BALLOON_PFN_SHIFT 12 > > +/* Bits width for the length of the pfn range */ What does this mean? Couldn't figure it out. > +#define VIRTIO_BALLOON_NR_PFN_BITS 12 > + > struct virtio_balloon_config { > /* Number of pages host wants Guest to give up. */ > __u32 num_pages; > @@ -82,4 +86,12 @@ struct virtio_balloon_stat { > __virtio64 val; > } __attribute__((packed)); > > +/* Response header structure */ > +struct vi...
2017 Jan 12
2
[PATCH v6 kernel 2/5] virtio-balloon: define new feature bit and head struct
...+#define VIRTIO_BALLOON_F_PAGE_RANGE 3 /* Send page info with ranges */ > > /* Size of a PFN in the balloon interface. */ > #define VIRTIO_BALLOON_PFN_SHIFT 12 > > +/* Bits width for the length of the pfn range */ What does this mean? Couldn't figure it out. > +#define VIRTIO_BALLOON_NR_PFN_BITS 12 > + > struct virtio_balloon_config { > /* Number of pages host wants Guest to give up. */ > __u32 num_pages; > @@ -82,4 +86,12 @@ struct virtio_balloon_stat { > __virtio64 val; > } __attribute__((packed)); > > +/* Response header structure */ > +struct vi...
2017 Jan 18
0
[PATCH v6 kernel 3/5] virtio-balloon: speed up inflate/deflate process
..._pfn, int pages) > > > > - /* When host has read buffer, this completes via balloon_ack */ > > - wait_event(vb->acked, virtqueue_get_buf(vq, &len)); > > +{ > > + __le64 *range = vb->resp_data + vb->resp_pos; > > > > + if (pages > (1 << VIRTIO_BALLOON_NR_PFN_BITS)) { > > + /* when the length field can't contain pages, set it to 0 to > > /* > * Multi-line > * comments > * should look like this. > */ > > Also, pls start sentences with an upper-case letter. > Sorry for that. > > + * indicate the actual le...
2016 Dec 21
0
[PATCH v6 kernel 3/5] virtio-balloon: speed up inflate/deflate process
...o_set_resp_bitmap(struct virtio_balloon *vb, + unsigned long base_pfn, int pages) - /* When host has read buffer, this completes via balloon_ack */ - wait_event(vb->acked, virtqueue_get_buf(vq, &len)); +{ + __le64 *range = vb->resp_data + vb->resp_pos; + if (pages > (1 << VIRTIO_BALLOON_NR_PFN_BITS)) { + /* when the length field can't contain pages, set it to 0 to + * indicate the actual length is in the next __le64; + */ + *range = cpu_to_le64((base_pfn << + VIRTIO_BALLOON_NR_PFN_BITS) | 0); + *(range + 1) = cpu_to_le64(pages); + vb->resp_pos += 2; + } else { + *ran...
2016 Dec 21
12
[PATCH v6 kernel 0/5] Extend virtio-balloon for fast (de)inflating & fast live migration
This patch set contains two parts of changes to the virtio-balloon. One is the change for speeding up the inflating & deflating process, the main idea of this optimization is to use {pfn|length} to present the page information instead of the PFNs, to reduce the overhead of virtio data transmission, address translation and madvise(). This can help to improve the performance by about 85%.
2016 Dec 21
12
[PATCH v6 kernel 0/5] Extend virtio-balloon for fast (de)inflating & fast live migration
This patch set contains two parts of changes to the virtio-balloon. One is the change for speeding up the inflating & deflating process, the main idea of this optimization is to use {pfn|length} to present the page information instead of the PFNs, to reduce the overhead of virtio data transmission, address translation and madvise(). This can help to improve the performance by about 85%.
2017 Jan 17
2
[virtio-dev] Re: [PATCH v6 kernel 2/5] virtio-balloon: define new feature bit and head struct
...> > > /* Size of a PFN in the balloon interface. */ #define > > > VIRTIO_BALLOON_PFN_SHIFT 12 > > > > > > +/* Bits width for the length of the pfn range */ > > > > What does this mean? Couldn't figure it out. > > > > > +#define VIRTIO_BALLOON_NR_PFN_BITS 12 > > > + > > > struct virtio_balloon_config { > > > /* Number of pages host wants Guest to give up. */ > > > __u32 num_pages; > > > @@ -82,4 +86,12 @@ struct virtio_balloon_stat { > > > __virtio64 val; > > > } __attribute__((...
2017 Jan 17
2
[virtio-dev] Re: [PATCH v6 kernel 2/5] virtio-balloon: define new feature bit and head struct
...> > > /* Size of a PFN in the balloon interface. */ #define > > > VIRTIO_BALLOON_PFN_SHIFT 12 > > > > > > +/* Bits width for the length of the pfn range */ > > > > What does this mean? Couldn't figure it out. > > > > > +#define VIRTIO_BALLOON_NR_PFN_BITS 12 > > > + > > > struct virtio_balloon_config { > > > /* Number of pages host wants Guest to give up. */ > > > __u32 num_pages; > > > @@ -82,4 +86,12 @@ struct virtio_balloon_stat { > > > __virtio64 val; > > > } __attribute__((...
2017 Jan 18
1
[virtio-dev] Re: [PATCH v6 kernel 2/5] virtio-balloon: define new feature bit and head struct
...ine > > > > > VIRTIO_BALLOON_PFN_SHIFT 12 > > > > > > > > > > +/* Bits width for the length of the pfn range */ > > > > > > > > What does this mean? Couldn't figure it out. > > > > > > > > > +#define VIRTIO_BALLOON_NR_PFN_BITS 12 > > > > > + > > > > > struct virtio_balloon_config { > > > > > /* Number of pages host wants Guest to give up. */ > > > > > __u32 num_pages; > > > > > @@ -82,4 +86,12 @@ struct virtio_balloon_stat { > > > &...
2017 Jan 18
1
[virtio-dev] Re: [PATCH v6 kernel 2/5] virtio-balloon: define new feature bit and head struct
...ine > > > > > VIRTIO_BALLOON_PFN_SHIFT 12 > > > > > > > > > > +/* Bits width for the length of the pfn range */ > > > > > > > > What does this mean? Couldn't figure it out. > > > > > > > > > +#define VIRTIO_BALLOON_NR_PFN_BITS 12 > > > > > + > > > > > struct virtio_balloon_config { > > > > > /* Number of pages host wants Guest to give up. */ > > > > > __u32 num_pages; > > > > > @@ -82,4 +86,12 @@ struct virtio_balloon_stat { > > > &...
2016 Dec 21
0
[PATCH v6 kernel 2/5] virtio-balloon: define new feature bit and head struct
...queue */ #define VIRTIO_BALLOON_F_DEFLATE_ON_OOM 2 /* Deflate balloon on OOM */ +#define VIRTIO_BALLOON_F_PAGE_RANGE 3 /* Send page info with ranges */ /* Size of a PFN in the balloon interface. */ #define VIRTIO_BALLOON_PFN_SHIFT 12 +/* Bits width for the length of the pfn range */ +#define VIRTIO_BALLOON_NR_PFN_BITS 12 + struct virtio_balloon_config { /* Number of pages host wants Guest to give up. */ __u32 num_pages; @@ -82,4 +86,12 @@ struct virtio_balloon_stat { __virtio64 val; } __attribute__((packed)); +/* Response header structure */ +struct virtio_balloon_resp_hdr { + __le64 cmd : 8; /* Disti...
2017 Jan 13
0
[virtio-dev] Re: [PATCH v6 kernel 2/5] virtio-balloon: define new feature bit and head struct
...page info > with ranges */ > > > > /* Size of a PFN in the balloon interface. */ #define > > VIRTIO_BALLOON_PFN_SHIFT 12 > > > > +/* Bits width for the length of the pfn range */ > > What does this mean? Couldn't figure it out. > > > +#define VIRTIO_BALLOON_NR_PFN_BITS 12 > > + > > struct virtio_balloon_config { > > /* Number of pages host wants Guest to give up. */ > > __u32 num_pages; > > @@ -82,4 +86,12 @@ struct virtio_balloon_stat { > > __virtio64 val; > > } __attribute__((packed)); > > > > +/* R...
2017 Jan 18
0
[virtio-dev] Re: [PATCH v6 kernel 2/5] virtio-balloon: define new feature bit and head struct
...in the balloon interface. */ #define > > > > VIRTIO_BALLOON_PFN_SHIFT 12 > > > > > > > > +/* Bits width for the length of the pfn range */ > > > > > > What does this mean? Couldn't figure it out. > > > > > > > +#define VIRTIO_BALLOON_NR_PFN_BITS 12 > > > > + > > > > struct virtio_balloon_config { > > > > /* Number of pages host wants Guest to give up. */ > > > > __u32 num_pages; > > > > @@ -82,4 +86,12 @@ struct virtio_balloon_stat { > > > > __virtio64 val; &gt...