Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1463704

Re: [PATCH 1/3] mm: fix set pageblock migratetype in deferred struct page init

From Michal Hocko <mhocko@kernel.org>
Newsgroups linux.kernel
Subject Re: [PATCH 1/3] mm: fix set pageblock migratetype in deferred struct page init
Date 2016-08-16 13:20 +0200
Message-ID <s6Kzv-2mV-9@gated-at.bofh.it> (permalink)
References (1 earlier) <s2p0B-8g0-5@gated-at.bofh.it> <s6Iem-Nx-13@gated-at.bofh.it> <s6Io1-R5-13@gated-at.bofh.it> <s6IR4-1hW-13@gated-at.bofh.it> <s6JDr-1NW-15@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


On Tue 16-08-16 12:12:07, Vlastimil Babka wrote:
> On 08/16/2016 11:23 AM, Michal Hocko wrote:
> > On Tue 16-08-16 16:56:54, Xishi Qiu wrote:
> > > On 2016/8/16 16:41, Michal Hocko wrote:
> > > 
> > > > On Thu 04-08-16 19:25:03, Xishi Qiu wrote:
> > > > > MAX_ORDER_NR_PAGES is usually 4M, and a pageblock is usually 2M, so we only
> > > > > set one pageblock's migratetype in deferred_free_range() if pfn is aligned
> > > > > to MAX_ORDER_NR_PAGES.
> > > > 
> > > > Do I read the changelog correctly and the bug causes leaking unmovable
> > > > allocations into movable zones?
> > > 
> > > Hi Michal,
> > > 
> > > This bug will cause uninitialized migratetype, you can see from
> > > "cat /proc/pagetypeinfo", almost half blocks are Unmovable.
> > 
> > Please add that information to the changelog. Leaking unmovable
> > allocations to the movable zones defeats the whole purpose of the
> > movable zone so I guess we really want to mark this for stable.
> 
> Note that it's not as severe. Pageblock migratetype is just heuristic
> against fragmentation. It should not allow unmovable allocations from
> movable zones (although I can't find what really does govern it).

You are right! gfp_zone would disabllow movable zones from the zone
list. So we indeed cannot leak the unmovable allocation to the movable
zone and then this doesn't really sound all that important to bother
with stable backport. It would be really great to have this all in the
changelog. This code is far from straightforward so having some
assistance from the changelog is more than welcome.
-- 
Michal Hocko
SUSE Labs

Back to linux.kernel | Previous | NextPrevious in thread | Find similar | Unroll thread


Thread

Re: [PATCH 1/3] mm: fix set pageblock migratetype in deferred struct  page init Michal Hocko <mhocko@kernel.org> - 2016-08-16 10:50 +0200
  Re: [PATCH 1/3] mm: fix set pageblock migratetype in deferred struct  page init Xishi Qiu <qiuxishi@huawei.com> - 2016-08-16 11:00 +0200
    Re: [PATCH 1/3] mm: fix set pageblock migratetype in deferred struct  page init Michal Hocko <mhocko@kernel.org> - 2016-08-16 11:30 +0200
      [PATCH v2] mm: fix set pageblock migratetype in deferred struct page  init Xishi Qiu <qiuxishi@huawei.com> - 2016-08-16 12:10 +0200
      Re: [PATCH 1/3] mm: fix set pageblock migratetype in deferred struct  page init Vlastimil Babka <vbabka@suse.cz> - 2016-08-16 12:20 +0200
        Re: [PATCH 1/3] mm: fix set pageblock migratetype in deferred struct  page init Xishi Qiu <qiuxishi@huawei.com> - 2016-08-16 12:30 +0200
        Re: [PATCH 1/3] mm: fix set pageblock migratetype in deferred struct  page init Michal Hocko <mhocko@kernel.org> - 2016-08-16 13:20 +0200

csiph-web