search for: report_unused_page_block

Displaying 20 results from an estimated 50 matches for "report_unused_page_block".

2017 Jul 14
4
[PATCH v12 6/8] mm: support reporting free page blocks
...> +++ b/include/linux/mm.h > @@ -1835,6 +1835,11 @@ extern void free_area_init_node(int nid, unsigned long * zones_size, > unsigned long zone_start_pfn, unsigned long *zholes_size); > extern void free_initmem(void); > > +#if IS_ENABLED(CONFIG_VIRTIO_BALLOON) > +extern int report_unused_page_block(struct zone *zone, unsigned int order, > + unsigned int migratetype, > + struct page **page); > +#endif > /* > * Free reserved pages within range [PAGE_ALIGN(start), end & PAGE_MASK) > * into the buddy system. The freed pages will be poisoned with pattern &g...
2017 Jul 14
4
[PATCH v12 6/8] mm: support reporting free page blocks
...> +++ b/include/linux/mm.h > @@ -1835,6 +1835,11 @@ extern void free_area_init_node(int nid, unsigned long * zones_size, > unsigned long zone_start_pfn, unsigned long *zholes_size); > extern void free_initmem(void); > > +#if IS_ENABLED(CONFIG_VIRTIO_BALLOON) > +extern int report_unused_page_block(struct zone *zone, unsigned int order, > + unsigned int migratetype, > + struct page **page); > +#endif > /* > * Free reserved pages within range [PAGE_ALIGN(start), end & PAGE_MASK) > * into the buddy system. The freed pages will be poisoned with pattern &g...
2017 Jul 13
1
[PATCH v12 6/8] mm: support reporting free page blocks
...> +++ b/include/linux/mm.h > @@ -1835,6 +1835,11 @@ extern void free_area_init_node(int nid, unsigned long * zones_size, > unsigned long zone_start_pfn, unsigned long *zholes_size); > extern void free_initmem(void); > > +#if IS_ENABLED(CONFIG_VIRTIO_BALLOON) > +extern int report_unused_page_block(struct zone *zone, unsigned int order, > + unsigned int migratetype, > + struct page **page); > +#endif > /* > * Free reserved pages within range [PAGE_ALIGN(start), end & PAGE_MASK) > * into the buddy system. The freed pages will be poisoned with pattern &g...
2017 Jul 13
1
[PATCH v12 6/8] mm: support reporting free page blocks
...> +++ b/include/linux/mm.h > @@ -1835,6 +1835,11 @@ extern void free_area_init_node(int nid, unsigned long * zones_size, > unsigned long zone_start_pfn, unsigned long *zholes_size); > extern void free_initmem(void); > > +#if IS_ENABLED(CONFIG_VIRTIO_BALLOON) > +extern int report_unused_page_block(struct zone *zone, unsigned int order, > + unsigned int migratetype, > + struct page **page); > +#endif > /* > * Free reserved pages within range [PAGE_ALIGN(start), end & PAGE_MASK) > * into the buddy system. The freed pages will be poisoned with pattern &g...
2017 Jun 09
0
[PATCH v11 4/6] mm: function to offer a page block on the free list
...a6 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h @@ -1841,6 +1841,11 @@ extern void free_area_init_node(int nid, unsigned long * zones_size, unsigned long zone_start_pfn, unsigned long *zholes_size); extern void free_initmem(void); +#if IS_ENABLED(CONFIG_VIRTIO_BALLOON) +extern int report_unused_page_block(struct zone *zone, unsigned int order, + unsigned int migratetype, + struct page **page); +#endif /* * Free reserved pages within range [PAGE_ALIGN(start), end & PAGE_MASK) * into the buddy system. The freed pages will be poisoned with pattern diff --git a/mm/page_alloc.c b/m...
2017 May 04
0
[PATCH v10 4/6] mm: function to offer a page block on the free list
...a6 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h @@ -1841,6 +1841,11 @@ extern void free_area_init_node(int nid, unsigned long * zones_size, unsigned long zone_start_pfn, unsigned long *zholes_size); extern void free_initmem(void); +#if IS_ENABLED(CONFIG_VIRTIO_BALLOON) +extern int report_unused_page_block(struct zone *zone, unsigned int order, + unsigned int migratetype, + struct page **page); +#endif /* * Free reserved pages within range [PAGE_ALIGN(start), end & PAGE_MASK) * into the buddy system. The freed pages will be poisoned with pattern diff --git a/mm/page_alloc.c b/m...
2017 Jul 12
0
[PATCH v12 6/8] mm: support reporting free page blocks
...33 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h @@ -1835,6 +1835,11 @@ extern void free_area_init_node(int nid, unsigned long * zones_size, unsigned long zone_start_pfn, unsigned long *zholes_size); extern void free_initmem(void); +#if IS_ENABLED(CONFIG_VIRTIO_BALLOON) +extern int report_unused_page_block(struct zone *zone, unsigned int order, + unsigned int migratetype, + struct page **page); +#endif /* * Free reserved pages within range [PAGE_ALIGN(start), end & PAGE_MASK) * into the buddy system. The freed pages will be poisoned with pattern diff --git a/mm/page_alloc.c b/m...
2017 Jul 14
0
[PATCH v12 6/8] mm: support reporting free page blocks
...> > @@ -1835,6 +1835,11 @@ extern void free_area_init_node(int nid, unsigned long * zones_size, > > unsigned long zone_start_pfn, unsigned long *zholes_size); > > extern void free_initmem(void); > > > > +#if IS_ENABLED(CONFIG_VIRTIO_BALLOON) > > +extern int report_unused_page_block(struct zone *zone, unsigned int order, > > + unsigned int migratetype, > > + struct page **page); > > +#endif > > /* > > * Free reserved pages within range [PAGE_ALIGN(start), end & PAGE_MASK) > > * into the buddy system. The freed pages wi...
2017 Jul 14
0
[PATCH v12 6/8] mm: support reporting free page blocks
...> > @@ -1835,6 +1835,11 @@ extern void free_area_init_node(int nid, unsigned long * zones_size, > > unsigned long zone_start_pfn, unsigned long *zholes_size); > > extern void free_initmem(void); > > > > +#if IS_ENABLED(CONFIG_VIRTIO_BALLOON) > > +extern int report_unused_page_block(struct zone *zone, unsigned int order, > > + unsigned int migratetype, > > + struct page **page); > > +#endif > > /* > > * Free reserved pages within range [PAGE_ALIGN(start), end & PAGE_MASK) > > * into the buddy system. The freed pages wi...
2017 Jun 12
2
[PATCH v11 4/6] mm: function to offer a page block on the free list
On 06/12/2017 09:28 AM, Michael S. Tsirkin wrote: > >> The hypervisor is going to throw away the contents of these pages, >> right? > It should be careful and only throw away contents that was there before > report_unused_page_block was invoked. Hypervisor is responsible for not > corrupting guest memory. But that's not something an mm patch should > worry about. That makes sense. I'm struggling to imagine how the hypervisor makes use of this information, though. Does it make the pages read-only before this,...
2017 Jun 12
2
[PATCH v11 4/6] mm: function to offer a page block on the free list
On 06/12/2017 09:28 AM, Michael S. Tsirkin wrote: > >> The hypervisor is going to throw away the contents of these pages, >> right? > It should be careful and only throw away contents that was there before > report_unused_page_block was invoked. Hypervisor is responsible for not > corrupting guest memory. But that's not something an mm patch should > worry about. That makes sense. I'm struggling to imagine how the hypervisor makes use of this information, though. Does it make the pages read-only before this,...
2017 Jun 12
1
[PATCH v11 6/6] virtio-balloon: VIRTIO_BALLOON_F_CMD_VQ
On 06/09/2017 03:41 AM, Wei Wang wrote: > + for_each_populated_zone(zone) { > + for (order = MAX_ORDER - 1; order > 0; order--) { > + for (migratetype = 0; migratetype < MIGRATE_TYPES; > + migratetype++) { > + do { > + ret = report_unused_page_block(zone, > + order, migratetype, &page); > + if (!ret) { > + pfn = (u64)page_to_pfn(page); > + add_one_chunk(vb, vq, > + PAGE_CHNUK_UNUSED_PAGE, > + pfn << VIRTIO_BALLOON_PFN_SHIFT, > + (u64)(1 << order) * > + VIRTIO_BALLOO...
2017 Jun 12
1
[PATCH v11 6/6] virtio-balloon: VIRTIO_BALLOON_F_CMD_VQ
On 06/09/2017 03:41 AM, Wei Wang wrote: > + for_each_populated_zone(zone) { > + for (order = MAX_ORDER - 1; order > 0; order--) { > + for (migratetype = 0; migratetype < MIGRATE_TYPES; > + migratetype++) { > + do { > + ret = report_unused_page_block(zone, > + order, migratetype, &page); > + if (!ret) { > + pfn = (u64)page_to_pfn(page); > + add_one_chunk(vb, vq, > + PAGE_CHNUK_UNUSED_PAGE, > + pfn << VIRTIO_BALLOON_PFN_SHIFT, > + (u64)(1 << order) * > + VIRTIO_BALLOO...
2017 Jul 26
1
[PATCH v12 6/8] mm: support reporting free page blocks
...his: > > void walk_free_mem(void *opaque1, void (*visit)(void *opaque2, unsigned long > pfn, > unsigned long nr_pages)) > { > ... > for_each_populated_zone(zone) { > for_each_migratetype_order(order, type) { > report_unused_page_block(zone, order, type, &page); > // from patch 6 > pfn = page_to_pfn(page); > visit(opaque1, pfn, 1 << order); > } > } > } > > The above function scans all the free list and directly sends each fr...
2017 Jul 26
1
[PATCH v12 6/8] mm: support reporting free page blocks
...his: > > void walk_free_mem(void *opaque1, void (*visit)(void *opaque2, unsigned long > pfn, > unsigned long nr_pages)) > { > ... > for_each_populated_zone(zone) { > for_each_migratetype_order(order, type) { > report_unused_page_block(zone, order, type, &page); > // from patch 6 > pfn = page_to_pfn(page); > visit(opaque1, pfn, 1 << order); > } > } > } > > The above function scans all the free list and directly sends each fr...
2017 Jun 12
1
[PATCH v11 4/6] mm: function to offer a page block on the free list
...0, Dave Hansen wrote: >> On 06/12/2017 09:28 AM, Michael S. Tsirkin wrote: >>> >>>> The hypervisor is going to throw away the contents of these pages, >>>> right? >>> It should be careful and only throw away contents that was there before >>> report_unused_page_block was invoked. Hypervisor is responsible for not >>> corrupting guest memory. But that's not something an mm patch should >>> worry about. >> >> That makes sense. I'm struggling to imagine how the hypervisor makes >> use of this information, though. Doe...
2017 Jun 12
1
[PATCH v11 4/6] mm: function to offer a page block on the free list
...0, Dave Hansen wrote: >> On 06/12/2017 09:28 AM, Michael S. Tsirkin wrote: >>> >>>> The hypervisor is going to throw away the contents of these pages, >>>> right? >>> It should be careful and only throw away contents that was there before >>> report_unused_page_block was invoked. Hypervisor is responsible for not >>> corrupting guest memory. But that's not something an mm patch should >>> worry about. >> >> That makes sense. I'm struggling to imagine how the hypervisor makes >> use of this information, though. Doe...
2017 Jul 12
19
[PATCH v12 0/8] Virtio-balloon Enhancement
...d free pages blocks directly using one or more chains of desc from the vq. v10->v11: 1) virtio_balloon: use vring_desc to describe a chunk; 2) virtio_ring: support to add an indirect desc table to virtqueue; 3) virtio_balloon: use cmdq to report guest memory statistics. v9->v10: 1) mm: put report_unused_page_block() under CONFIG_VIRTIO_BALLOON; 2) virtio-balloon: add virtballoon_validate(); 3) virtio-balloon: msg format change; 4) virtio-balloon: move miscq handling to a task on system_freezable_wq; 5) virtio-balloon: code cleanup. v8->v9: 1) Split the two new features, VIRTIO_BALLOON_F_BALLOON_CHUNKS an...
2017 Jul 12
19
[PATCH v12 0/8] Virtio-balloon Enhancement
...d free pages blocks directly using one or more chains of desc from the vq. v10->v11: 1) virtio_balloon: use vring_desc to describe a chunk; 2) virtio_ring: support to add an indirect desc table to virtqueue; 3) virtio_balloon: use cmdq to report guest memory statistics. v9->v10: 1) mm: put report_unused_page_block() under CONFIG_VIRTIO_BALLOON; 2) virtio-balloon: add virtballoon_validate(); 3) virtio-balloon: msg format change; 4) virtio-balloon: move miscq handling to a task on system_freezable_wq; 5) virtio-balloon: code cleanup. v8->v9: 1) Split the two new features, VIRTIO_BALLOON_F_BALLOON_CHUNKS an...
2017 Jun 12
4
[PATCH v11 4/6] mm: function to offer a page block on the free list
Please stop cc'ing me on things also sent to closed mailing lists (virtio-dev at lists.oasis-open.org). I'm happy to review things on open lists, but I'm not fond of the closed lists bouncing things at me. On 06/09/2017 03:41 AM, Wei Wang wrote: > Add a function to find a page block on the free list specified by the > caller. Pages from the page block may be used immediately