Displaying 15 results from an estimated 15 matches for "part_fil".
Did you mean:
part_fill
2017 Mar 03
0
[PATCH v7 kernel 5/5] This patch contains two parts:
...(pos > 0 || done)
+ send_resp_data(vb, vq, true);
+
+}
+
+static void send_unused_pages(struct virtio_balloon *vb,
+ unsigned long req_id)
+{
+ struct scatterlist sg_in;
+ unsigned int pos = 0;
+ struct virtqueue *vq = vb->host_req_vq;
+ int ret, order;
+ struct zone *zone = NULL;
+ bool part_fill = false;
+
+ mutex_lock(&vb->balloon_lock);
+
+ for (order = MAX_ORDER - 1; order >= 0; order--) {
+ ret = mark_unused_pages(&zone, order, vb->resp_data,
+ vb->resp_buf_size / sizeof(__le64),
+ &pos, VIRTIO_BALLOON_CHUNK_SIZE_SHIFT, part_fill);
+ if (ret == -ENOSPC)...
2017 Mar 16
0
[PATCH kernel v8 3/4] mm: add inerface to offer info about unused pages
...ree_area_init_node(int nid, unsigned long * zones_size,
unsigned long zone_start_pfn, unsigned long *zholes_size);
extern void free_initmem(void);
+extern int record_unused_pages(struct zone **start_zone, int order,
+ __le64 *pages, unsigned int size,
+ unsigned int *pos, bool part_fill);
/*
* Free reserved pages within range [PAGE_ALIGN(start), end & PAGE_MASK)
diff --git a/mm/page_alloc.c b/mm/page_alloc.c
index f3e0c69..b72a7ac 100644
--- a/mm/page_alloc.c
+++ b/mm/page_alloc.c
@@ -4498,6 +4498,120 @@ void show_free_areas(unsigned int filter)
show_swap_cache_info();...
2017 Mar 16
4
[PATCH kernel v8 3/4] mm: add inerface to offer info about unused pages
...loc.c
> +++ b/mm/page_alloc.c
> @@ -4498,6 +4498,120 @@ void show_free_areas(unsigned int filter)
> show_swap_cache_info();
> }
>
> +static int __record_unused_pages(struct zone *zone, int order,
> + __le64 *buf, unsigned int size,
> + unsigned int *offset, bool part_fill)
> +{
> + unsigned long pfn, flags;
> + int t, ret = 0;
> + struct list_head *curr;
> + __le64 *chunk;
> +
> + if (zone_is_empty(zone))
> + return 0;
> +
> + spin_lock_irqsave(&zone->lock, flags);
> +
> + if (*offset + zone->free_area[order].nr_free &...
2017 Mar 16
4
[PATCH kernel v8 3/4] mm: add inerface to offer info about unused pages
...loc.c
> +++ b/mm/page_alloc.c
> @@ -4498,6 +4498,120 @@ void show_free_areas(unsigned int filter)
> show_swap_cache_info();
> }
>
> +static int __record_unused_pages(struct zone *zone, int order,
> + __le64 *buf, unsigned int size,
> + unsigned int *offset, bool part_fill)
> +{
> + unsigned long pfn, flags;
> + int t, ret = 0;
> + struct list_head *curr;
> + __le64 *chunk;
> +
> + if (zone_is_empty(zone))
> + return 0;
> +
> + spin_lock_irqsave(&zone->lock, flags);
> +
> + if (*offset + zone->free_area[order].nr_free &...
2017 Mar 16
8
[PATCH kernel v8 0/4] Extend virtio-balloon for fast (de)inflating & fast live migration
This patch series implements two optimizations:
1) transfer pages in chuncks between the guest and host;
2) transfer the guest unused pages to the host so that they
can be skipped to migrate in live migration.
Please read each patch commit log for details.
Changes:
v7->v8:
1) Use only one chunk format, instead of two.
2) re-write the virtio-balloon implementation patch.
3) commit changes
4)
2017 Mar 16
8
[PATCH kernel v8 0/4] Extend virtio-balloon for fast (de)inflating & fast live migration
This patch series implements two optimizations:
1) transfer pages in chuncks between the guest and host;
2) transfer the guest unused pages to the host so that they
can be skipped to migrate in live migration.
Please read each patch commit log for details.
Changes:
v7->v8:
1) Use only one chunk format, instead of two.
2) re-write the virtio-balloon implementation patch.
3) commit changes
4)
2017 Mar 29
2
[PATCH kernel v8 3/4] mm: add inerface to offer info about unused pages
...8,6 +4498,120 @@ void show_free_areas(unsigned int filter)
> > > show_swap_cache_info();
> > > }
> > > +static int __record_unused_pages(struct zone *zone, int order,
> > > + __le64 *buf, unsigned int size,
> > > + unsigned int *offset, bool part_fill)
> > > +{
> > > + unsigned long pfn, flags;
> > > + int t, ret = 0;
> > > + struct list_head *curr;
> > > + __le64 *chunk;
> > > +
> > > + if (zone_is_empty(zone))
> > > + return 0;
> > > +
> > > + spin_lock...
2017 Mar 29
2
[PATCH kernel v8 3/4] mm: add inerface to offer info about unused pages
...8,6 +4498,120 @@ void show_free_areas(unsigned int filter)
> > > show_swap_cache_info();
> > > }
> > > +static int __record_unused_pages(struct zone *zone, int order,
> > > + __le64 *buf, unsigned int size,
> > > + unsigned int *offset, bool part_fill)
> > > +{
> > > + unsigned long pfn, flags;
> > > + int t, ret = 0;
> > > + struct list_head *curr;
> > > + __le64 *chunk;
> > > +
> > > + if (zone_is_empty(zone))
> > > + return 0;
> > > +
> > > + spin_lock...
2017 Mar 16
0
[PATCH kernel v8 4/4] virtio-balloon: VIRTIO_BALLOON_F_HOST_REQ_VQ
...> 0 || done)
+ send_resp_data(vb, vq, true);
+
+}
+
+static void send_unused_pages(struct virtio_balloon *vb,
+ unsigned long req_id)
+{
+ struct scatterlist sg_in;
+ unsigned int pos = 0;
+ struct virtqueue *vq = vb->host_req_vq;
+ int ret, order;
+ struct zone *zone = NULL;
+ bool part_fill = false;
+
+ mutex_lock(&vb->balloon_lock);
+
+ for (order = MAX_ORDER - 1; order >= 0; order--) {
+ ret = record_unused_pages(&zone, order, vb->resp_data,
+ vb->resp_buf_size / sizeof(__le64),
+ &pos, part_fill);
+ if (ret == -ENOSPC) {
+ if (pos == 0) {
+...
2017 Mar 17
0
[PATCH kernel v8 3/4] mm: add inerface to offer info about unused pages
...c
>> @@ -4498,6 +4498,120 @@ void show_free_areas(unsigned int filter)
>> show_swap_cache_info();
>> }
>>
>> +static int __record_unused_pages(struct zone *zone, int order,
>> + __le64 *buf, unsigned int size,
>> + unsigned int *offset, bool part_fill)
>> +{
>> + unsigned long pfn, flags;
>> + int t, ret = 0;
>> + struct list_head *curr;
>> + __le64 *chunk;
>> +
>> + if (zone_is_empty(zone))
>> + return 0;
>> +
>> + spin_lock_irqsave(&zone->lock, flags);
>> +
>> + i...
2017 Mar 31
0
[PATCH kernel v8 3/4] mm: add inerface to offer info about unused pages
...0 @@ void show_free_areas(unsigned int filter)
>>>> show_swap_cache_info();
>>>> }
>>>> +static int __record_unused_pages(struct zone *zone, int order,
>>>> + __le64 *buf, unsigned int size,
>>>> + unsigned int *offset, bool part_fill)
>>>> +{
>>>> + unsigned long pfn, flags;
>>>> + int t, ret = 0;
>>>> + struct list_head *curr;
>>>> + __le64 *chunk;
>>>> +
>>>> + if (zone_is_empty(zone))
>>>> + return 0;
>>>> +
>>...
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 Mar 03
10
[PATCH v7 kernel 0/5] Extend virtio-balloon for fast (de)inflating & fast live migration
Take over this work from Liang.
This patch series implements two optimizations: 1) transfer pages in chuncks
between the guest and host; 1) transfer the guest unused pages to the host so
that they can be skipped to migrate in live migration.
Please check patch 0003 for more details about optimization 1).
For an idle guest with 8GB RAM, optimization 2) can help shorten the total live
migration
2017 Mar 03
10
[PATCH v7 kernel 0/5] Extend virtio-balloon for fast (de)inflating & fast live migration
Take over this work from Liang.
This patch series implements two optimizations: 1) transfer pages in chuncks
between the guest and host; 1) transfer the guest unused pages to the host so
that they can be skipped to migrate in live migration.
Please check patch 0003 for more details about optimization 1).
For an idle guest with 8GB RAM, optimization 2) can help shorten the total live
migration