search for: pageflag

Displaying 20 results from an estimated 48 matches for "pageflag".

2019 Aug 13
2
DANGER WILL ROBINSON, DANGER
On 09/08/19 18:24, Matthew Wilcox wrote: > On Fri, Aug 09, 2019 at 07:00:26PM +0300, Adalbert Laz?r wrote: >> +++ b/include/linux/page-flags.h >> @@ -417,8 +417,10 @@ PAGEFLAG(Idle, idle, PF_ANY) >> */ >> #define PAGE_MAPPING_ANON 0x1 >> #define PAGE_MAPPING_MOVABLE 0x2 >> +#define PAGE_MAPPING_REMOTE 0x4 > Uh. How do you know page->mapping would otherwise have bit 2 clear? > Who's guaranteeing that? > > This is an awfully...
2019 Aug 13
2
DANGER WILL ROBINSON, DANGER
On 09/08/19 18:24, Matthew Wilcox wrote: > On Fri, Aug 09, 2019 at 07:00:26PM +0300, Adalbert Laz?r wrote: >> +++ b/include/linux/page-flags.h >> @@ -417,8 +417,10 @@ PAGEFLAG(Idle, idle, PF_ANY) >> */ >> #define PAGE_MAPPING_ANON 0x1 >> #define PAGE_MAPPING_MOVABLE 0x2 >> +#define PAGE_MAPPING_REMOTE 0x4 > Uh. How do you know page->mapping would otherwise have bit 2 clear? > Who's guaranteeing that? > > This is an awfully...
2016 Apr 05
1
[PATCH v3 04/16] mm/balloon: use general movable page feature into balloon
...> + return (test_bit(PG_movable, &(page)->flags) && > + atomic_read(&page->_mapcount) == PAGE_MOVABLE_MAPCOUNT_VALUE); > } > > /* Caller should hold a PG_lock */ > @@ -645,6 +626,35 @@ static inline void __ClearPageMovable(struct page *page) > > PAGEFLAG(Isolated, isolated, PF_ANY); > > +static inline int PageBalloon(struct page *page) > +{ > + return atomic_read(&page->_mapcount) == PAGE_BALLOON_MAPCOUNT_VALUE > + && PagePrivate2(page); > +} Hmm so you are now using PG_private_2 flag here, but it's not docum...
2016 Apr 05
1
[PATCH v3 04/16] mm/balloon: use general movable page feature into balloon
...> + return (test_bit(PG_movable, &(page)->flags) && > + atomic_read(&page->_mapcount) == PAGE_MOVABLE_MAPCOUNT_VALUE); > } > > /* Caller should hold a PG_lock */ > @@ -645,6 +626,35 @@ static inline void __ClearPageMovable(struct page *page) > > PAGEFLAG(Isolated, isolated, PF_ANY); > > +static inline int PageBalloon(struct page *page) > +{ > + return atomic_read(&page->_mapcount) == PAGE_BALLOON_MAPCOUNT_VALUE > + && PagePrivate2(page); > +} Hmm so you are now using PG_private_2 flag here, but it's not docum...
2016 Mar 22
2
[PATCH v2 13/18] mm/compaction: support non-lru movable page migration
...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/page-flags.h > +++ b/include/linux/page-flags.h > @@ -129,6 +129,10 @@ enum pageflags { > > /* Compound pages. Stored in first tail page's flags */ > PG_double_map = PG_private_2, > + > + /* non-lru movable pages */ > + PG_movable = PG_reclaim, > + PG_isolated = PG_owner_priv_1, > }; > > #ifndef __GENERATING_BOUNDS_H > @@ -614,6 +618,3...
2016 Mar 22
2
[PATCH v2 13/18] mm/compaction: support non-lru movable page migration
...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/page-flags.h > +++ b/include/linux/page-flags.h > @@ -129,6 +129,10 @@ enum pageflags { > > /* Compound pages. Stored in first tail page's flags */ > PG_double_map = PG_private_2, > + > + /* non-lru movable pages */ > + PG_movable = PG_reclaim, > + PG_isolated = PG_owner_priv_1, > }; > > #ifndef __GENERATING_BOUNDS_H > @@ -614,6 +618,3...
2016 Mar 23
1
[PATCH v2 13/18] mm/compaction: support non-lru movable page migration
...grate_prep_local(void); > > > diff --git a/include/linux/page-flags.h b/include/linux/page-flags.h > > > index f4ed4f1b0c77..3885064641c4 100644 > > > --- a/include/linux/page-flags.h > > > +++ b/include/linux/page-flags.h > > > @@ -129,6 +129,10 @@ enum pageflags { > > > > > > /* Compound pages. Stored in first tail page's flags */ > > > PG_double_map = PG_private_2, > > > + > > > + /* non-lru movable pages */ > > > + PG_movable = PG_reclaim, > > > + PG_isolated = PG_owner_priv_1, &gt...
2016 Mar 23
1
[PATCH v2 13/18] mm/compaction: support non-lru movable page migration
...grate_prep_local(void); > > > diff --git a/include/linux/page-flags.h b/include/linux/page-flags.h > > > index f4ed4f1b0c77..3885064641c4 100644 > > > --- a/include/linux/page-flags.h > > > +++ b/include/linux/page-flags.h > > > @@ -129,6 +129,10 @@ enum pageflags { > > > > > > /* Compound pages. Stored in first tail page's flags */ > > > PG_double_map = PG_private_2, > > > + > > > + /* non-lru movable pages */ > > > + PG_movable = PG_reclaim, > > > + PG_isolated = PG_owner_priv_1, &gt...
2019 Aug 09
0
DANGER WILL ROBINSON, DANGER
On Fri, Aug 09, 2019 at 07:00:26PM +0300, Adalbert Laz?r wrote: > +++ b/include/linux/page-flags.h > @@ -417,8 +417,10 @@ PAGEFLAG(Idle, idle, PF_ANY) > */ > #define PAGE_MAPPING_ANON 0x1 > #define PAGE_MAPPING_MOVABLE 0x2 > +#define PAGE_MAPPING_REMOTE 0x4 Uh. How do you know page->mapping would otherwise have bit 2 clear? Who's guaranteeing that? This is an awfully big patch to the memory management...
2019 Aug 13
0
DANGER WILL ROBINSON, DANGER
On Tue, Aug 13, 2019 at 11:29:07AM +0200, Paolo Bonzini wrote: > On 09/08/19 18:24, Matthew Wilcox wrote: > > On Fri, Aug 09, 2019 at 07:00:26PM +0300, Adalbert Laz?r wrote: > >> +++ b/include/linux/page-flags.h > >> @@ -417,8 +417,10 @@ PAGEFLAG(Idle, idle, PF_ANY) > >> */ > >> #define PAGE_MAPPING_ANON 0x1 > >> #define PAGE_MAPPING_MOVABLE 0x2 > >> +#define PAGE_MAPPING_REMOTE 0x4 > > Uh. How do you know page->mapping would otherwise have bit 2 clear? > > Who's guaranteeing that?...
2016 Mar 21
0
[PATCH v2 13/18] mm/compaction: support non-lru movable page migration
...e_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/page-flags.h +++ b/include/linux/page-flags.h @@ -129,6 +129,10 @@ enum pageflags { /* Compound pages. Stored in first tail page's flags */ PG_double_map = PG_private_2, + + /* non-lru movable pages */ + PG_movable = PG_reclaim, + PG_isolated = PG_owner_priv_1, }; #ifndef __GENERATING_BOUNDS_H @@ -614,6 +618,31 @@ static inline void __ClearPageBalloon(struct page...
2016 Mar 11
0
[PATCH v1 02/19] mm/compaction: support non-lru movable page migration
...e_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 19724e6ebd26..cdf07c3f3a6f 100644 --- a/include/linux/page-flags.h +++ b/include/linux/page-flags.h @@ -129,6 +129,10 @@ enum pageflags { /* Compound pages. Stored in first tail page's flags */ PG_double_map = PG_private_2, + + /* non-lru movable pages */ + PG_movable = PG_reclaim, + PG_isolated = PG_owner_priv_1, }; #ifndef __GENERATING_BOUNDS_H @@ -612,6 +616,31 @@ static inline void __ClearPageBalloon(struct page...
2016 Mar 30
0
[PATCH v3 02/16] mm/compaction: support non-lru movable page migration
...e_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/page-flags.h +++ b/include/linux/page-flags.h @@ -129,6 +129,10 @@ enum pageflags { /* Compound pages. Stored in first tail page's flags */ PG_double_map = PG_private_2, + + /* non-lru movable pages */ + PG_movable = PG_reclaim, + PG_isolated = PG_owner_priv_1, }; #ifndef __GENERATING_BOUNDS_H @@ -614,6 +618,33 @@ static inline void __ClearPageBalloon(struct page...
2016 Mar 22
0
[PATCH v2 13/18] mm/compaction: support non-lru movable page migration
...> > 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/page-flags.h > > +++ b/include/linux/page-flags.h > > @@ -129,6 +129,10 @@ enum pageflags { > > > > /* Compound pages. Stored in first tail page's flags */ > > PG_double_map = PG_private_2, > > + > > + /* non-lru movable pages */ > > + PG_movable = PG_reclaim, > > + PG_isolated = PG_owner_priv_1, > > }; > > > > #...
2016 Mar 21
0
[PATCH v2 14/18] mm/balloon: use general movable page feature into balloon
...c inline void __ClearPageBalloon(struct page *page) +static inline void __ClearPageMovable(struct page *page) { - VM_BUG_ON_PAGE(!PageBalloon(page), page); atomic_set(&page->_mapcount, -1); + __clear_bit(PG_movable, &(page)->flags); } -#define PAGE_MOVABLE_MAPCOUNT_VALUE (-255) +PAGEFLAG(Isolated, isolated, PF_ANY); -static inline int PageMovable(struct page *page) +static inline int PageBalloon(struct page *page) { - return ((test_bit(PG_movable, &(page)->flags) && - atomic_read(&page->_mapcount) == PAGE_MOVABLE_MAPCOUNT_VALUE) - || PageBalloon(page)); +...
2016 Apr 01
2
[PATCH v3 02/16] mm/compaction: support non-lru movable page migration
...xtern 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/page-flags.h > +++ b/include/linux/page-flags.h > @@ -129,6 +129,10 @@ enum pageflags { > > /* Compound pages. Stored in first tail page's flags */ > PG_double_map = PG_private_2, > + > + /* non-lru movable pages */ > + PG_movable = PG_reclaim, > + PG_isolated = PG_owner_priv_1, Documentation should probably state that these fields alias and subsyste...
2016 Apr 01
2
[PATCH v3 02/16] mm/compaction: support non-lru movable page migration
...xtern 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/page-flags.h > +++ b/include/linux/page-flags.h > @@ -129,6 +129,10 @@ enum pageflags { > > /* Compound pages. Stored in first tail page's flags */ > PG_double_map = PG_private_2, > + > + /* non-lru movable pages */ > + PG_movable = PG_reclaim, > + PG_isolated = PG_owner_priv_1, Documentation should probably state that these fields alias and subsyste...
2019 Sep 05
0
DANGER WILL ROBINSON, DANGER
...n Fri, 9 Aug 2019 09:24:44 -0700, Matthew Wilcox <willy at infradead.org> > > wrote: > > > > > On Fri, Aug 09, 2019 at 07:00:26PM +0300, Adalbert Laz?r wrote: > > > > > > +++ b/include/linux/page-flags.h > > > > > > @@ -417,8 +417,10 @@ PAGEFLAG(Idle, idle, PF_ANY) > > > > > > */ > > > > > > #define PAGE_MAPPING_ANON 0x1 > > > > > > #define PAGE_MAPPING_MOVABLE 0x2 > > > > > > +#define PAGE_MAPPING_REMOTE 0x4 > > > > > > > > > > Uh. H...
2016 Apr 04
0
[PATCH v3 02/16] mm/compaction: support non-lru movable page migration
...oid); > > 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/page-flags.h > >+++ b/include/linux/page-flags.h > >@@ -129,6 +129,10 @@ enum pageflags { > > > > /* Compound pages. Stored in first tail page's flags */ > > PG_double_map = PG_private_2, > >+ > >+ /* non-lru movable pages */ > >+ PG_movable = PG_reclaim, > >+ PG_isolated = PG_owner_priv_1, > > Documentation should probably sta...
2016 Mar 21
1
[PATCH v2 14/18] mm/balloon: use general movable page feature into balloon
Hi Minchan, [auto build test ERROR on next-20160318] [cannot apply to v4.5-rc7 v4.5-rc6 v4.5-rc5 v4.5] [if your patch is applied to the wrong git tree, please drop us a note to help improving the system] url: https://github.com/0day-ci/linux/commits/Minchan-Kim/Support-non-lru-page-migration/20160321-143339 config: x86_64-randconfig-x000-201612 (attached as .config) reproduce: # save