Displaying 20 results from an estimated 65 matches for "dump_page".
2020 Jul 29
0
[PATCH v1 2/6] mm/page_isolation: don't dump_page(NULL) in set_migratetype_isolate()
On 29.07.20 19:31, Mike Kravetz wrote:
> On 6/30/20 7:26 AM, David Hildenbrand wrote:
>> Right now, if we have two isolations racing, we might trigger the
>> WARN_ON_ONCE() and to dump_page(NULL), dereferencing NULL. Let's just
>> return directly.
>
> Just curious, what call path has the WARN_ON_ONCE()/dump_page(NULL)?
See below, two set_migratetype_isolate() caller racing.
>
>>
>> In the future, we might want to report -EAGAIN to the caller instead,...
2020 Jul 29
0
[PATCH v1 2/6] mm/page_isolation: don't dump_page(NULL) in set_migratetype_isolate()
> Am 29.07.2020 um 20:36 schrieb Mike Kravetz <mike.kravetz at oracle.com>:
>
> ?On 7/29/20 11:08 AM, David Hildenbrand wrote:
>> I have no clue what you mean with "reintroducing this abandoning of
>> pageblocks". All this patch is changing is not doing the dump_page() -
>> or am I missing something important?
>
> My apologies!!!
>
No worries, thanks for reviewing!!
> I got confused when I saw 'Return -EBUSY' removed from the comment and
> assumed the code would not return an error code. The code now more
> explicitly does r...
2020 Jun 30
12
[PATCH v1 0/6] mm / virtio-mem: support ZONE_MOVABLE
...ble_pages() and set_migratetype_isolate(), providing
better documentation of how ZONE_MOVABLE interacts with different kind of
unmovable pages (memory offlining vs. alloc_contig_range()).
David Hildenbrand (6):
mm/page_alloc: tweak comments in has_unmovable_pages()
mm/page_isolation: don't dump_page(NULL) in set_migratetype_isolate()
mm/page_isolation: drop WARN_ON_ONCE() in set_migratetype_isolate()
mm/page_isolation: cleanup set_migratetype_isolate()
mm/page_alloc: restrict ZONE_MOVABLE optimization in
has_unmovable_pages() to memory offlining
virtio-mem: don't special-case Z...
2020 Jun 30
12
[PATCH v1 0/6] mm / virtio-mem: support ZONE_MOVABLE
...ble_pages() and set_migratetype_isolate(), providing
better documentation of how ZONE_MOVABLE interacts with different kind of
unmovable pages (memory offlining vs. alloc_contig_range()).
David Hildenbrand (6):
mm/page_alloc: tweak comments in has_unmovable_pages()
mm/page_isolation: don't dump_page(NULL) in set_migratetype_isolate()
mm/page_isolation: drop WARN_ON_ONCE() in set_migratetype_isolate()
mm/page_isolation: cleanup set_migratetype_isolate()
mm/page_alloc: restrict ZONE_MOVABLE optimization in
has_unmovable_pages() to memory offlining
virtio-mem: don't special-case Z...
2020 Aug 04
8
[PATCH v4 0/6] mm / virtio-mem: support ZONE_MOVABLE
...e details why we initialli special-cased ZONE_MOVABLE (via MST)
- "mm: document semantics of ZONE_MOVABLE"
-- Rephrase some parts of documentation (via Mike)
v2 -> v3:
- "mm: document semantics of ZONE_MOVABLE"
-- Fix a typo
v1 -> v2:
- "mm/page_isolation: don't dump_page(NULL) in set_migratetype_isolate()"
-- Move to position 1, add Fixes: tag
-- Drop unused "out:" label
- "mm/page_isolation: drop WARN_ON_ONCE() in set_migratetype_isolate()"
-- Keep curly braces on "else" case
- Replace "[PATCH v1 5/6] mm/page_alloc: restrict...
2020 Aug 04
8
[PATCH v4 0/6] mm / virtio-mem: support ZONE_MOVABLE
...e details why we initialli special-cased ZONE_MOVABLE (via MST)
- "mm: document semantics of ZONE_MOVABLE"
-- Rephrase some parts of documentation (via Mike)
v2 -> v3:
- "mm: document semantics of ZONE_MOVABLE"
-- Fix a typo
v1 -> v2:
- "mm/page_isolation: don't dump_page(NULL) in set_migratetype_isolate()"
-- Move to position 1, add Fixes: tag
-- Drop unused "out:" label
- "mm/page_isolation: drop WARN_ON_ONCE() in set_migratetype_isolate()"
-- Keep curly braces on "else" case
- Replace "[PATCH v1 5/6] mm/page_alloc: restrict...
2020 Jul 30
7
[PATCH v2 0/6] mm / virtio-mem: support ZONE_MOVABLE
...ng more memory to get reliably unplugged.
Cleanup has_unmovable_pages() and set_migratetype_isolate(), providing
better documentation of how ZONE_MOVABLE interacts with different kind of
unmovable pages (memory offlining vs. alloc_contig_range()).
v1 -> v2:
- "mm/page_isolation: don't dump_page(NULL) in set_migratetype_isolate()"
-- Move to position 1, add Fixes: tag
-- Drop unused "out:" label
- "mm/page_isolation: drop WARN_ON_ONCE() in set_migratetype_isolate()"
-- Keep curly braces on "else" case
- Replace "[PATCH v1 5/6] mm/page_alloc: restrict...
2020 Aug 16
9
[PATCH v5 0/6] mm / virtio-mem: support ZONE_MOVABLE
...memory to get reliably unplugged.
Cleanup has_unmovable_pages() and set_migratetype_isolate(), providing
better documentation of how ZONE_MOVABLE interacts with different kind of
unmovable pages (memory offlining vs. alloc_contig_range()).
v4 -> v5:
- Rename "mm/page_isolation: don't dump_page(NULL) in
set_migratetype_isolate()" to "mm/page_isolation: exit early when
pageblock is isolated in set_migratetype_isolate()" as I was messing
up things while reshuffling patches (dump_page(NULL) could never happen,
only the WARN_ON_ONCE())
-- Clarify in the description that...
2020 Aug 16
9
[PATCH v5 0/6] mm / virtio-mem: support ZONE_MOVABLE
...memory to get reliably unplugged.
Cleanup has_unmovable_pages() and set_migratetype_isolate(), providing
better documentation of how ZONE_MOVABLE interacts with different kind of
unmovable pages (memory offlining vs. alloc_contig_range()).
v4 -> v5:
- Rename "mm/page_isolation: don't dump_page(NULL) in
set_migratetype_isolate()" to "mm/page_isolation: exit early when
pageblock is isolated in set_migratetype_isolate()" as I was messing
up things while reshuffling patches (dump_page(NULL) could never happen,
only the WARN_ON_ONCE())
-- Clarify in the description that...
2020 Aug 04
8
[PATCH v3 0/6] mm / virtio-mem: support ZONE_MOVABLE
...migratetype_isolate(), providing
better documentation of how ZONE_MOVABLE interacts with different kind of
unmovable pages (memory offlining vs. alloc_contig_range()).
v2 -> v3:
- "mm: document semantics of ZONE_MOVABLE"
-- Fix a typo
v1 -> v2:
- "mm/page_isolation: don't dump_page(NULL) in set_migratetype_isolate()"
-- Move to position 1, add Fixes: tag
-- Drop unused "out:" label
- "mm/page_isolation: drop WARN_ON_ONCE() in set_migratetype_isolate()"
-- Keep curly braces on "else" case
- Replace "[PATCH v1 5/6] mm/page_alloc: restrict...
2020 Aug 04
8
[PATCH v3 0/6] mm / virtio-mem: support ZONE_MOVABLE
...migratetype_isolate(), providing
better documentation of how ZONE_MOVABLE interacts with different kind of
unmovable pages (memory offlining vs. alloc_contig_range()).
v2 -> v3:
- "mm: document semantics of ZONE_MOVABLE"
-- Fix a typo
v1 -> v2:
- "mm/page_isolation: don't dump_page(NULL) in set_migratetype_isolate()"
-- Move to position 1, add Fixes: tag
-- Drop unused "out:" label
- "mm/page_isolation: drop WARN_ON_ONCE() in set_migratetype_isolate()"
-- Keep curly braces on "else" case
- Replace "[PATCH v1 5/6] mm/page_alloc: restrict...
2020 Jul 29
0
[PATCH v1 3/6] mm/page_isolation: drop WARN_ON_ONCE() in set_migratetype_isolate()
...movable_core". Also, besides
> ~~~ 'movablecore'
>> checking if the first page in the pageblock is reserved, we don't
>> perform any further checks in case of ZONE_MOVABLE.
>>
>> In case of memory offlining, we set REPORT_FAILURE, properly
>> dump_page() the page and handle the error gracefully.
>> alloc_contig_pages() users currently never allocate from ZONE_MOVABLE.
>> E.g., hugetlb uses alloc_contig_pages() for the allocation of gigantic
>> pages only, which will never end up on the MOVABLE zone
>> (see htlb_alloc_mask(...
2020 Aug 10
0
[PATCH v4 0/6] mm / virtio-mem: support ZONE_MOVABLE
..._MOVABLE (via MST)
> - "mm: document semantics of ZONE_MOVABLE"
> -- Rephrase some parts of documentation (via Mike)
>
> v2 -> v3:
> - "mm: document semantics of ZONE_MOVABLE"
> -- Fix a typo
>
> v1 -> v2:
> - "mm/page_isolation: don't dump_page(NULL) in set_migratetype_isolate()"
> -- Move to position 1, add Fixes: tag
> -- Drop unused "out:" label
> - "mm/page_isolation: drop WARN_ON_ONCE() in set_migratetype_isolate()"
> -- Keep curly braces on "else" case
> - Replace "[PATCH v1 5/6...
2020 Mar 10
1
[PATCH v1 07/11] virtio-mem: Allow to offline partially unplugged memory blocks
...ferent than 1->0 transition?
>
> Only if some other code would be taking a reference. At least not from
> virtio-mem perspective.
OK, so that is essentially an error condition. I think it shouldn't go
silent and you want something like
if (WARN_ON(!page_ref_sub_and_test(page)))
dump_page(pfn_to_page(pfn + i), "YOUR REASON");
--
Michal Hocko
SUSE Labs
2020 Jul 30
0
[PATCH v2 4/6] mm/page_isolation: cleanup set_migratetype_isolate()
...lags & REPORT_FAILURE) && unmovable) {
+ if (isol_flags & REPORT_FAILURE) {
/*
* printk() with zone->lock held will likely trigger a
* lockdep splat, so defer it here.
@@ -65,7 +62,7 @@ static int set_migratetype_isolate(struct page *page, int migratetype, int isol_
dump_page(unmovable, "unmovable page");
}
- return ret;
+ return -EBUSY;
}
static void unset_migratetype_isolate(struct page *page, unsigned migratetype)
--
2.26.2
2020 Aug 06
1
[PATCH v2 4/6] mm/page_isolation: cleanup set_migratetype_isolate()
...p;& unmovable) {
> + if (isol_flags & REPORT_FAILURE) {
> /*
> * printk() with zone->lock held will likely trigger a
> * lockdep splat, so defer it here.
> @@ -65,7 +62,7 @@ static int set_migratetype_isolate(struct page *page, int migratetype, int isol_
> dump_page(unmovable, "unmovable page");
> }
>
> - return ret;
> + return -EBUSY;
> }
>
> static void unset_migratetype_isolate(struct page *page, unsigned migratetype)
>
2016 May 09
0
[PATCH v5 03/12] mm: balloon: use general non-lru movable page feature
...e and prevents races against
- * concurrent isolation threads attempting to re-isolate it.
- */
- lock_page(page);
-
- if (__is_movable_balloon_page(page)) {
- __putback_balloon_page(page);
- /* drop the extra ref count taken for page isolation */
- put_page(page);
- } else {
- WARN_ON(1);
- dump_page(page, "not movable balloon page");
- }
- unlock_page(page);
-}
/* move_to_new_page() counterpart for a ballooned page */
-int balloon_page_migrate(struct page *newpage,
- struct page *page, enum migrate_mode mode)
+int balloon_page_migrate(struct address_space *mapping,
+ struct pa...
2016 May 20
0
[PATCH v6 03/12] mm: balloon: use general non-lru movable page feature
...e and prevents races against
- * concurrent isolation threads attempting to re-isolate it.
- */
- lock_page(page);
-
- if (__is_movable_balloon_page(page)) {
- __putback_balloon_page(page);
- /* drop the extra ref count taken for page isolation */
- put_page(page);
- } else {
- WARN_ON(1);
- dump_page(page, "not movable balloon page");
- }
- unlock_page(page);
-}
/* move_to_new_page() counterpart for a ballooned page */
-int balloon_page_migrate(struct page *newpage,
- struct page *page, enum migrate_mode mode)
+int balloon_page_migrate(struct address_space *mapping,
+ struct pa...
2020 Mar 10
2
[PATCH v1 07/11] virtio-mem: Allow to offline partially unplugged memory blocks
On Mon 02-03-20 14:49:37, David Hildenbrand wrote:
[...]
> +static void virtio_mem_notify_going_offline(struct virtio_mem *vm,
> + unsigned long mb_id)
> +{
> + const unsigned long nr_pages = PFN_DOWN(vm->subblock_size);
> + unsigned long pfn;
> + int sb_id, i;
> +
> + for (sb_id = 0; sb_id < vm->nb_sb_per_mb; sb_id++) {
> + if
2020 Mar 10
2
[PATCH v1 07/11] virtio-mem: Allow to offline partially unplugged memory blocks
On Mon 02-03-20 14:49:37, David Hildenbrand wrote:
[...]
> +static void virtio_mem_notify_going_offline(struct virtio_mem *vm,
> + unsigned long mb_id)
> +{
> + const unsigned long nr_pages = PFN_DOWN(vm->subblock_size);
> + unsigned long pfn;
> + int sb_id, i;
> +
> + for (sb_id = 0; sb_id < vm->nb_sb_per_mb; sb_id++) {
> + if