Re: [PATCH 1/2] mm, page_alloc: Keep pcp count and list contents in sync if struct page is corrupted

2016-12-04 Thread Hillf Danton
On Friday, December 02, 2016 7:30 PM Mel Gorman wrote: > Vlastimil Babka pointed out that commit 479f854a207c ("mm, page_alloc: > defer debugging checks of pages allocated from the PCP") will allow the > per-cpu list counter to be out of sync with the per-cpu list contents > if a struct page is

Re: [PATCH 1/2] mm, page_alloc: Keep pcp count and list contents in sync if struct page is corrupted

2016-12-04 Thread Hillf Danton
On Friday, December 02, 2016 7:30 PM Mel Gorman wrote: > Vlastimil Babka pointed out that commit 479f854a207c ("mm, page_alloc: > defer debugging checks of pages allocated from the PCP") will allow the > per-cpu list counter to be out of sync with the per-cpu list contents > if a struct page is

Re: [PATCH 1/2] mm, page_alloc: Keep pcp count and list contents in sync if struct page is corrupted

2016-12-02 Thread Michal Hocko
On Fri 02-12-16 11:29:50, Mel Gorman wrote: > Vlastimil Babka pointed out that commit 479f854a207c ("mm, page_alloc: > defer debugging checks of pages allocated from the PCP") will allow the > per-cpu list counter to be out of sync with the per-cpu list contents > if a struct page is corrupted. >

Re: [PATCH 1/2] mm, page_alloc: Keep pcp count and list contents in sync if struct page is corrupted

2016-12-02 Thread Michal Hocko
On Fri 02-12-16 11:29:50, Mel Gorman wrote: > Vlastimil Babka pointed out that commit 479f854a207c ("mm, page_alloc: > defer debugging checks of pages allocated from the PCP") will allow the > per-cpu list counter to be out of sync with the per-cpu list contents > if a struct page is corrupted. >

Re: [PATCH 1/2] mm, page_alloc: Keep pcp count and list contents in sync if struct page is corrupted

2016-12-02 Thread Vlastimil Babka
On 12/02/2016 12:29 PM, Mel Gorman wrote: Vlastimil Babka pointed out that commit 479f854a207c ("mm, page_alloc: defer debugging checks of pages allocated from the PCP") will allow the per-cpu list counter to be out of sync with the per-cpu list contents if a struct page is corrupted. The

Re: [PATCH 1/2] mm, page_alloc: Keep pcp count and list contents in sync if struct page is corrupted

2016-12-02 Thread Vlastimil Babka
On 12/02/2016 12:29 PM, Mel Gorman wrote: Vlastimil Babka pointed out that commit 479f854a207c ("mm, page_alloc: defer debugging checks of pages allocated from the PCP") will allow the per-cpu list counter to be out of sync with the per-cpu list contents if a struct page is corrupted. The

[PATCH 1/2] mm, page_alloc: Keep pcp count and list contents in sync if struct page is corrupted

2016-12-02 Thread Mel Gorman
Vlastimil Babka pointed out that commit 479f854a207c ("mm, page_alloc: defer debugging checks of pages allocated from the PCP") will allow the per-cpu list counter to be out of sync with the per-cpu list contents if a struct page is corrupted. The consequence is an infinite loop if the per-cpu

[PATCH 1/2] mm, page_alloc: Keep pcp count and list contents in sync if struct page is corrupted

2016-12-02 Thread Mel Gorman
Vlastimil Babka pointed out that commit 479f854a207c ("mm, page_alloc: defer debugging checks of pages allocated from the PCP") will allow the per-cpu list counter to be out of sync with the per-cpu list contents if a struct page is corrupted. The consequence is an infinite loop if the per-cpu

Re: [PATCH 1/2] mm, page_alloc: Keep pcp count and list contents in sync if struct page is corrupted

2016-12-02 Thread Mel Gorman
On Fri, Dec 02, 2016 at 11:04:11AM +0100, Michal Hocko wrote: > On Fri 02-12-16 17:30:07, Hillf Danton wrote: > [...] > > > >> @@ -2217,13 +2217,14 @@ static int rmqueue_bulk(struct zone *zone, > > > >> unsigned int order, > > > >>else > > > >>

Re: [PATCH 1/2] mm, page_alloc: Keep pcp count and list contents in sync if struct page is corrupted

2016-12-02 Thread Mel Gorman
On Fri, Dec 02, 2016 at 11:04:11AM +0100, Michal Hocko wrote: > On Fri 02-12-16 17:30:07, Hillf Danton wrote: > [...] > > > >> @@ -2217,13 +2217,14 @@ static int rmqueue_bulk(struct zone *zone, > > > >> unsigned int order, > > > >>else > > > >>

Re: [PATCH 1/2] mm, page_alloc: Keep pcp count and list contents in sync if struct page is corrupted

2016-12-02 Thread Michal Hocko
On Fri 02-12-16 17:30:07, Hillf Danton wrote: [...] > > >> @@ -2217,13 +2217,14 @@ static int rmqueue_bulk(struct zone *zone, > > >> unsigned int order, > > >> else > > >> list_add_tail(>lru, list); > > >> list = >lru; > > >> +

Re: [PATCH 1/2] mm, page_alloc: Keep pcp count and list contents in sync if struct page is corrupted

2016-12-02 Thread Michal Hocko
On Fri 02-12-16 17:30:07, Hillf Danton wrote: [...] > > >> @@ -2217,13 +2217,14 @@ static int rmqueue_bulk(struct zone *zone, > > >> unsigned int order, > > >> else > > >> list_add_tail(>lru, list); > > >> list = >lru; > > >> +

Re: [PATCH 1/2] mm, page_alloc: Keep pcp count and list contents in sync if struct page is corrupted

2016-12-02 Thread Michal Hocko
On Fri 02-12-16 09:49:33, Mel Gorman wrote: > On Fri, Dec 02, 2016 at 09:12:17AM +0100, Michal Hocko wrote: > > On Fri 02-12-16 00:22:43, Mel Gorman wrote: > > > Vlastimil Babka pointed out that commit 479f854a207c ("mm, page_alloc: > > > defer debugging checks of pages allocated from the PCP")

Re: [PATCH 1/2] mm, page_alloc: Keep pcp count and list contents in sync if struct page is corrupted

2016-12-02 Thread Michal Hocko
On Fri 02-12-16 09:49:33, Mel Gorman wrote: > On Fri, Dec 02, 2016 at 09:12:17AM +0100, Michal Hocko wrote: > > On Fri 02-12-16 00:22:43, Mel Gorman wrote: > > > Vlastimil Babka pointed out that commit 479f854a207c ("mm, page_alloc: > > > defer debugging checks of pages allocated from the PCP")

Re: [PATCH 1/2] mm, page_alloc: Keep pcp count and list contents in sync if struct page is corrupted

2016-12-02 Thread Mel Gorman
On Fri, Dec 02, 2016 at 09:12:17AM +0100, Michal Hocko wrote: > On Fri 02-12-16 00:22:43, Mel Gorman wrote: > > Vlastimil Babka pointed out that commit 479f854a207c ("mm, page_alloc: > > defer debugging checks of pages allocated from the PCP") will allow the > > per-cpu list counter to be out of

Re: [PATCH 1/2] mm, page_alloc: Keep pcp count and list contents in sync if struct page is corrupted

2016-12-02 Thread Mel Gorman
On Fri, Dec 02, 2016 at 09:12:17AM +0100, Michal Hocko wrote: > On Fri 02-12-16 00:22:43, Mel Gorman wrote: > > Vlastimil Babka pointed out that commit 479f854a207c ("mm, page_alloc: > > defer debugging checks of pages allocated from the PCP") will allow the > > per-cpu list counter to be out of

Re: [PATCH 1/2] mm, page_alloc: Keep pcp count and list contents in sync if struct page is corrupted

2016-12-02 Thread Hillf Danton
On Friday, December 02, 2016 2:19 PM Vlastimil Babka wrote: > On 12/02/2016 04:47 AM, Hillf Danton wrote: > > On Friday, December 02, 2016 8:23 AM Mel Gorman wrote: > >> Vlastimil Babka pointed out that commit 479f854a207c ("mm, page_alloc: > >> defer debugging checks of pages allocated from the

Re: [PATCH 1/2] mm, page_alloc: Keep pcp count and list contents in sync if struct page is corrupted

2016-12-02 Thread Hillf Danton
On Friday, December 02, 2016 2:19 PM Vlastimil Babka wrote: > On 12/02/2016 04:47 AM, Hillf Danton wrote: > > On Friday, December 02, 2016 8:23 AM Mel Gorman wrote: > >> Vlastimil Babka pointed out that commit 479f854a207c ("mm, page_alloc: > >> defer debugging checks of pages allocated from the

Re: [PATCH 1/2] mm, page_alloc: Keep pcp count and list contents in sync if struct page is corrupted

2016-12-02 Thread Michal Hocko
On Fri 02-12-16 00:22:43, Mel Gorman wrote: > Vlastimil Babka pointed out that commit 479f854a207c ("mm, page_alloc: > defer debugging checks of pages allocated from the PCP") will allow the > per-cpu list counter to be out of sync with the per-cpu list contents > if a struct page is corrupted.

Re: [PATCH 1/2] mm, page_alloc: Keep pcp count and list contents in sync if struct page is corrupted

2016-12-02 Thread Michal Hocko
On Fri 02-12-16 00:22:43, Mel Gorman wrote: > Vlastimil Babka pointed out that commit 479f854a207c ("mm, page_alloc: > defer debugging checks of pages allocated from the PCP") will allow the > per-cpu list counter to be out of sync with the per-cpu list contents > if a struct page is corrupted.

Re: [PATCH 1/2] mm, page_alloc: Keep pcp count and list contents in sync if struct page is corrupted

2016-12-01 Thread Vlastimil Babka
On 12/02/2016 04:47 AM, Hillf Danton wrote: On Friday, December 02, 2016 8:23 AM Mel Gorman wrote: Vlastimil Babka pointed out that commit 479f854a207c ("mm, page_alloc: defer debugging checks of pages allocated from the PCP") will allow the per-cpu list counter to be out of sync with the

Re: [PATCH 1/2] mm, page_alloc: Keep pcp count and list contents in sync if struct page is corrupted

2016-12-01 Thread Vlastimil Babka
On 12/02/2016 04:47 AM, Hillf Danton wrote: On Friday, December 02, 2016 8:23 AM Mel Gorman wrote: Vlastimil Babka pointed out that commit 479f854a207c ("mm, page_alloc: defer debugging checks of pages allocated from the PCP") will allow the per-cpu list counter to be out of sync with the

Re: [PATCH 1/2] mm, page_alloc: Keep pcp count and list contents in sync if struct page is corrupted

2016-12-01 Thread Hillf Danton
On Friday, December 02, 2016 8:23 AM Mel Gorman wrote: > Vlastimil Babka pointed out that commit 479f854a207c ("mm, page_alloc: > defer debugging checks of pages allocated from the PCP") will allow the > per-cpu list counter to be out of sync with the per-cpu list contents > if a struct page is

Re: [PATCH 1/2] mm, page_alloc: Keep pcp count and list contents in sync if struct page is corrupted

2016-12-01 Thread Hillf Danton
On Friday, December 02, 2016 8:23 AM Mel Gorman wrote: > Vlastimil Babka pointed out that commit 479f854a207c ("mm, page_alloc: > defer debugging checks of pages allocated from the PCP") will allow the > per-cpu list counter to be out of sync with the per-cpu list contents > if a struct page is

[PATCH 1/2] mm, page_alloc: Keep pcp count and list contents in sync if struct page is corrupted

2016-12-01 Thread Mel Gorman
Vlastimil Babka pointed out that commit 479f854a207c ("mm, page_alloc: defer debugging checks of pages allocated from the PCP") will allow the per-cpu list counter to be out of sync with the per-cpu list contents if a struct page is corrupted. This patch keeps the accounting in sync. Fixes:

[PATCH 1/2] mm, page_alloc: Keep pcp count and list contents in sync if struct page is corrupted

2016-12-01 Thread Mel Gorman
Vlastimil Babka pointed out that commit 479f854a207c ("mm, page_alloc: defer debugging checks of pages allocated from the PCP") will allow the per-cpu list counter to be out of sync with the per-cpu list contents if a struct page is corrupted. This patch keeps the accounting in sync. Fixes: