Displaying 20 results from an estimated 47 matches for "isolate_movable_pag".
Did you mean:
isolate_movable_page
2016 Mar 11
1
[PATCH v1 02/19] mm/compaction: support non-lru movable page migration
...x86_64-nfsroot (attached as .config)
reproduce:
# save the attached .config to linux build tree
make ARCH=x86_64
All errors (new ones prefixed by >>):
In file included from mm/compaction.c:12:0:
>> include/linux/compaction.h:87:20: error: static declaration of 'isolate_movable_page' follows non-static declaration
static inline bool isolate_movable_page(struct page *page, isolate_mode_t mode)
^
In file included from mm/compaction.c:11:0:
include/linux/migrate.h:36:13: note: previous declaration of 'isolate_movable_page' was here...
2016 Mar 11
1
[PATCH v1 02/19] mm/compaction: support non-lru movable page migration
...x86_64-nfsroot (attached as .config)
reproduce:
# save the attached .config to linux build tree
make ARCH=x86_64
All errors (new ones prefixed by >>):
In file included from mm/compaction.c:12:0:
>> include/linux/compaction.h:87:20: error: static declaration of 'isolate_movable_page' follows non-static declaration
static inline bool isolate_movable_page(struct page *page, isolate_mode_t mode)
^
In file included from mm/compaction.c:11:0:
include/linux/migrate.h:36:13: note: previous declaration of 'isolate_movable_page' was here...
2016 May 16
2
[PATCH v5 02/12] mm: migrate: support non-lru movable page migration
...list_head *l);
> extern int migrate_page(struct address_space *,
> struct page *, struct page *, enum migrate_mode);
> extern int migrate_pages(struct list_head *l, new_page_t new, free_page_t free,
> unsigned long private, enum migrate_mode mode, int reason);
> +extern bool isolate_movable_page(struct page *page, isolate_mode_t mode);
> +extern void putback_movable_page(struct page *page);
>
> extern int migrate_prep(void);
> extern int migrate_prep_local(void);
given that some of Movable users can be built as modules, shouldn't
at least some of those symbols be expo...
2016 May 16
2
[PATCH v5 02/12] mm: migrate: support non-lru movable page migration
...list_head *l);
> extern int migrate_page(struct address_space *,
> struct page *, struct page *, enum migrate_mode);
> extern int migrate_pages(struct list_head *l, new_page_t new, free_page_t free,
> unsigned long private, enum migrate_mode mode, int reason);
> +extern bool isolate_movable_page(struct page *page, isolate_mode_t mode);
> +extern void putback_movable_page(struct page *page);
>
> extern int migrate_prep(void);
> extern int migrate_prep_local(void);
given that some of Movable users can be built as modules, shouldn't
at least some of those symbols be expo...
2016 Apr 04
1
[PATCH v3 02/16] mm/compaction: support non-lru movable page migration
...dea
> to separate compaction and migration part.
Guess it's better to see the new functions together with its user after
all, OK.
> I will just resend to change the tile from "mm/compaction" to
> "mm/migration".
OK!
>> Also I'm a bit uncomfortable how isolate_movable_page() blindly expects that
>> page->mapping->a_ops->isolate_page exists for PageMovable() pages.
>> What if it's a false positive on a PG_reclaim page? Can we rely on
>> PG_reclaim always (and without races) implying PageLRU() so that we
>> don't even attempt i...
2016 Apr 04
1
[PATCH v3 02/16] mm/compaction: support non-lru movable page migration
...dea
> to separate compaction and migration part.
Guess it's better to see the new functions together with its user after
all, OK.
> I will just resend to change the tile from "mm/compaction" to
> "mm/migration".
OK!
>> Also I'm a bit uncomfortable how isolate_movable_page() blindly expects that
>> page->mapping->a_ops->isolate_page exists for PageMovable() pages.
>> What if it's a false positive on a PG_reclaim page? Can we rely on
>> PG_reclaim always (and without races) implying PageLRU() so that we
>> don't even attempt i...
2016 Apr 01
2
[PATCH v3 02/16] mm/compaction: support non-lru movable page migration
...@@ -37,6 +37,8 @@ extern int migrate_page(struct address_space *,
> struct page *, struct page *, enum migrate_mode);
> extern int migrate_pages(struct list_head *l, new_page_t new, free_page_t free,
> unsigned long private, enum migrate_mode mode, int reason);
> +extern bool isolate_movable_page(struct page *page, isolate_mode_t mode);
> +extern void putback_movable_page(struct page *page);
>
> extern int migrate_prep(void);
> extern int migrate_prep_local(void);
> diff --git a/include/linux/page-flags.h b/include/linux/page-flags.h
> index f4ed4f1b0c77..77ebf8fdbc6e...
2016 Apr 01
2
[PATCH v3 02/16] mm/compaction: support non-lru movable page migration
...@@ -37,6 +37,8 @@ extern int migrate_page(struct address_space *,
> struct page *, struct page *, enum migrate_mode);
> extern int migrate_pages(struct list_head *l, new_page_t new, free_page_t free,
> unsigned long private, enum migrate_mode mode, int reason);
> +extern bool isolate_movable_page(struct page *page, isolate_mode_t mode);
> +extern void putback_movable_page(struct page *page);
>
> extern int migrate_prep(void);
> extern int migrate_prep_local(void);
> diff --git a/include/linux/page-flags.h b/include/linux/page-flags.h
> index f4ed4f1b0c77..77ebf8fdbc6e...
2016 Mar 23
1
[PATCH v2 13/18] mm/compaction: support non-lru movable page migration
...page(struct address_space *,
> > > struct page *, struct page *, enum migrate_mode);
> > > extern int migrate_pages(struct list_head *l, new_page_t new, free_page_t free,
> > > unsigned long private, enum migrate_mode mode, int reason);
> > > +extern bool isolate_movable_page(struct page *page, isolate_mode_t mode);
> > > +extern void putback_movable_page(struct page *page);
> > >
> > > extern int migrate_prep(void);
> > > extern int migrate_prep_local(void);
> > > diff --git a/include/linux/page-flags.h b/include/linux/...
2016 Mar 23
1
[PATCH v2 13/18] mm/compaction: support non-lru movable page migration
...page(struct address_space *,
> > > struct page *, struct page *, enum migrate_mode);
> > > extern int migrate_pages(struct list_head *l, new_page_t new, free_page_t free,
> > > unsigned long private, enum migrate_mode mode, int reason);
> > > +extern bool isolate_movable_page(struct page *page, isolate_mode_t mode);
> > > +extern void putback_movable_page(struct page *page);
> > >
> > > extern int migrate_prep(void);
> > > extern int migrate_prep_local(void);
> > > diff --git a/include/linux/page-flags.h b/include/linux/...
2016 May 16
1
[PATCH v5 02/12] mm: migrate: support non-lru movable page migration
...list_head *l);
> extern int migrate_page(struct address_space *,
> struct page *, struct page *, enum migrate_mode);
> extern int migrate_pages(struct list_head *l, new_page_t new, free_page_t free,
> unsigned long private, enum migrate_mode mode, int reason);
> +extern bool isolate_movable_page(struct page *page, isolate_mode_t mode);
> +extern void putback_movable_page(struct page *page);
>
> extern int migrate_prep(void);
> extern int migrate_prep_local(void);
__ClearPageMovable() is under CONFIG_MIGRATION in include/linux/migrate.h,
but zsmalloc checks for CONFIG_COMP...
2016 May 16
1
[PATCH v5 02/12] mm: migrate: support non-lru movable page migration
...list_head *l);
> extern int migrate_page(struct address_space *,
> struct page *, struct page *, enum migrate_mode);
> extern int migrate_pages(struct list_head *l, new_page_t new, free_page_t free,
> unsigned long private, enum migrate_mode mode, int reason);
> +extern bool isolate_movable_page(struct page *page, isolate_mode_t mode);
> +extern void putback_movable_page(struct page *page);
>
> extern int migrate_prep(void);
> extern int migrate_prep_local(void);
__ClearPageMovable() is under CONFIG_MIGRATION in include/linux/migrate.h,
but zsmalloc checks for CONFIG_COMP...
2016 Mar 22
2
[PATCH v2 13/18] mm/compaction: support non-lru movable page migration
...t; @@ -37,6 +37,8 @@ extern int migrate_page(struct address_space *,
> struct page *, struct page *, enum migrate_mode);
> extern int migrate_pages(struct list_head *l, new_page_t new, free_page_t free,
> unsigned long private, enum migrate_mode mode, int reason);
> +extern bool isolate_movable_page(struct page *page, isolate_mode_t mode);
> +extern void putback_movable_page(struct page *page);
>
> extern int migrate_prep(void);
> extern int migrate_prep_local(void);
> diff --git a/include/linux/page-flags.h b/include/linux/page-flags.h
> index f4ed4f1b0c77..3885064641c4...
2016 Mar 22
2
[PATCH v2 13/18] mm/compaction: support non-lru movable page migration
...t; @@ -37,6 +37,8 @@ extern int migrate_page(struct address_space *,
> struct page *, struct page *, enum migrate_mode);
> extern int migrate_pages(struct list_head *l, new_page_t new, free_page_t free,
> unsigned long private, enum migrate_mode mode, int reason);
> +extern bool isolate_movable_page(struct page *page, isolate_mode_t mode);
> +extern void putback_movable_page(struct page *page);
>
> extern int migrate_prep(void);
> extern int migrate_prep_local(void);
> diff --git a/include/linux/page-flags.h b/include/linux/page-flags.h
> index f4ed4f1b0c77..3885064641c4...
2016 Mar 11
0
[PATCH v1 02/19] mm/compaction: support non-lru movable page migration
...f --git a/include/linux/compaction.h b/include/linux/compaction.h
index 4cd4ddf64cc7..6f040ad379ce 100644
--- a/include/linux/compaction.h
+++ b/include/linux/compaction.h
@@ -84,6 +84,14 @@ static inline bool compaction_deferred(struct zone *zone, int order)
return true;
}
+static inline bool isolate_movable_page(struct page *page, isolate_mode_t mode)
+{
+ return false;
+}
+
+static inline void putback_movable_page(struct page *page)
+{
+}
#endif /* CONFIG_COMPACTION */
#if defined(CONFIG_COMPACTION) && defined(CONFIG_SYSFS) && defined(CONFIG_NUMA)
diff --git a/include/linux/fs.h b/inc...
2016 Apr 04
0
[PATCH v3 02/16] mm/compaction: support non-lru movable page migration
...@ extern int migrate_page(struct address_space *,
> > struct page *, struct page *, enum migrate_mode);
> > extern int migrate_pages(struct list_head *l, new_page_t new, free_page_t free,
> > unsigned long private, enum migrate_mode mode, int reason);
> >+extern bool isolate_movable_page(struct page *page, isolate_mode_t mode);
> >+extern void putback_movable_page(struct page *page);
> >
> > extern int migrate_prep(void);
> > extern int migrate_prep_local(void);
> >diff --git a/include/linux/page-flags.h b/include/linux/page-flags.h
> >index f...
2016 May 27
2
[PATCH v6 02/12] mm: migrate: support non-lru movable page migration
...ny other type of page
> + */
> + is_lru = PageLRU(page);
> + if (!is_lru) {
> + if (unlikely(balloon_page_movable(page))) {
> + if (balloon_page_isolate(page)) {
> + /* Successfully isolated */
> + goto isolate_success;
> + }
> + }
[...]
> +bool isolate_movable_page(struct page *page, isolate_mode_t mode)
> +{
> + struct address_space *mapping;
> +
> + /*
> + * Avoid burning cycles with pages that are yet under __free_pages(),
> + * or just got freed under us.
> + *
> + * In case we 'win' a race for a movable page being fre...
2016 May 27
2
[PATCH v6 02/12] mm: migrate: support non-lru movable page migration
...ny other type of page
> + */
> + is_lru = PageLRU(page);
> + if (!is_lru) {
> + if (unlikely(balloon_page_movable(page))) {
> + if (balloon_page_isolate(page)) {
> + /* Successfully isolated */
> + goto isolate_success;
> + }
> + }
[...]
> +bool isolate_movable_page(struct page *page, isolate_mode_t mode)
> +{
> + struct address_space *mapping;
> +
> + /*
> + * Avoid burning cycles with pages that are yet under __free_pages(),
> + * or just got freed under us.
> + *
> + * In case we 'win' a race for a movable page being fre...
2016 Mar 21
0
[PATCH v2 13/18] mm/compaction: support non-lru movable page migration
...nclude/linux/migrate.h
@@ -37,6 +37,8 @@ extern int migrate_page(struct address_space *,
struct page *, struct page *, enum migrate_mode);
extern int migrate_pages(struct list_head *l, new_page_t new, free_page_t free,
unsigned long private, enum migrate_mode mode, int reason);
+extern bool isolate_movable_page(struct page *page, isolate_mode_t mode);
+extern void putback_movable_page(struct page *page);
extern int migrate_prep(void);
extern int migrate_prep_local(void);
diff --git a/include/linux/page-flags.h b/include/linux/page-flags.h
index f4ed4f1b0c77..3885064641c4 100644
--- a/include/linux/pa...
2016 Mar 30
0
[PATCH v3 02/16] mm/compaction: support non-lru movable page migration
...nclude/linux/migrate.h
@@ -37,6 +37,8 @@ extern int migrate_page(struct address_space *,
struct page *, struct page *, enum migrate_mode);
extern int migrate_pages(struct list_head *l, new_page_t new, free_page_t free,
unsigned long private, enum migrate_mode mode, int reason);
+extern bool isolate_movable_page(struct page *page, isolate_mode_t mode);
+extern void putback_movable_page(struct page *page);
extern int migrate_prep(void);
extern int migrate_prep_local(void);
diff --git a/include/linux/page-flags.h b/include/linux/page-flags.h
index f4ed4f1b0c77..77ebf8fdbc6e 100644
--- a/include/linux/pa...