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


Groups > linux.kernel > #1451787

Re: [Question]page allocation failure: order:2, mode:0x2000d1

Path csiph.com!news.redatomik.org!newsfeed.datemas.de!weretis.net!feeder4.news.weretis.net!news.unit0.net!news.panservice.it!bofh.it!news.nic.it!robomod
From Michal Hocko <mhocko@kernel.org>
Newsgroups linux.kernel
Subject Re: [Question]page allocation failure: order:2, mode:0x2000d1
Date Thu, 28 Jul 2016 10:20:01 +0200
Message-ID <rZOHT-3yL-9@gated-at.bofh.it> (permalink)
References <rWCDg-44x-39@gated-at.bofh.it> <rWD6h-4u7-3@gated-at.bofh.it> <rWDzk-4Fv-27@gated-at.bofh.it> <rWE2l-54D-13@gated-at.bofh.it> <rWOEq-3d3-1@gated-at.bofh.it> <rWUqt-6WG-3@gated-at.bofh.it> <rZOoy-39Z-27@gated-at.bofh.it>
X-Original-To Xishi Qiu <qiuxishi@huawei.com>
X-Google-Dkim-Signature v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to:user-agent; bh=XxCdiKK46OjprFlL0cFEUTrtco5MW35w8iMrYDgZ0rM=; b=Qx3aQ8Mc616rtSAKwC+ARWxBbSthGvwGYrUYLyxpLdZld4W7xCDoh0Hxhift4658tU gQpEWn3bFVV9M8P6uuiJVvb+zyqBMjfACsuXiyXgltw2S7rF8EcHmX5QTLOkbScAGBGW Mv9LEJqLuIg3sdSJxlqo3kngTeoOgXGQZMzD35oAmhbZvO+twZMy42TlKKzFi3Kp+uCY Zw7VUxdeFRFP0VXwIMOD2CCIgoeQ9QSIZNj9EemVE4C2oCYTES1XQOq2une/+SgPO9dO F3yzD4fJ0DSOrxRh6FGEeRjos4dmj0zk60w/DyU93AGfrMC9wwSA51jI3J7tpZqNWNn0 Amew==
X-Gm-Message-State AEkoous2ULTbKgxERpW9sHOnhvkCHNalANYCHJuzXsXyHXJeh15hJD7q6BlLGRsWnDG4dw==
X-Received by 10.28.44.193 with SMTP id s184mr37832182wms.73.1469693452717; Thu, 28 Jul 2016 01:10:52 -0700 (PDT)
MIME-Version 1.0
Content-Type text/plain; charset=us-ascii
Content-Disposition inline
User-Agent Mutt/1.6.0 (2016-04-01)
Sender robomod@news.nic.it
List-ID <linux-kernel.vger.kernel.org>
X-Mailing-List linux-kernel@vger.kernel.org
Approved robomod@news.nic.it
Lines 45
Organization linux.* mail to news gateway
X-Original-Cc Yisheng Xie <xieyisheng1@huawei.com>, Vlastimil Babka <vbabka@suse.cz>, minchan@kernel.org, mgorman@suse.de, iamjoonsoo.kim@lge.com, mina86@mina86.com, Naoya Horiguchi <n-horiguchi@ah.jp.nec.com>, cl@linux.com, David Rientjes <rientjes@google.com>, linux-kernel@vger.kernel.org, linux-mm@kvack.org, Hanjun Guo <guohanjun@huawei.com>
X-Original-Date Thu, 28 Jul 2016 10:10:51 +0200
X-Original-Message-ID <20160728081051.GA1000@dhcp22.suse.cz>
X-Original-References <b3127e70-4fca-9e11-62e5-7a8f3da9d044@huawei.com> <5d0d3274-a893-8453-fb3d-87981dd38cfa@suse.cz> <578E2FBF.2080405@huawei.com> <2c8255c9-e449-d245-8554-0ed258d594ed@suse.cz> <7d9da183-38bf-96ef-a30c-db8b7dc9aafb@huawei.com> <20160720074723.GA11256@dhcp22.suse.cz> <5799B948.6080308@huawei.com>
X-Original-Sender linux-kernel-owner@vger.kernel.org
Xref csiph.com linux.kernel:1451787

Show key headers only | View raw


On Thu 28-07-16 15:50:32, Xishi Qiu wrote:
> On 2016/7/20 15:47, Michal Hocko wrote:
> 
> > On Wed 20-07-16 09:33:30, Yisheng Xie wrote:
> >>
> >>
> >> On 2016/7/19 22:14, Vlastimil Babka wrote:
> >>> On 07/19/2016 03:48 PM, Xishi Qiu wrote:
> > [...]
> >>>> mode:0x2000d1 means it expects to alloc from zone_dma, (on arm64 zone_dma is 0-4G)
> >>>
> >>> Yes, but I don't see where the __GFP_DMA comes from. The backtrace
> >>> suggests it's alloc_thread_info_node() which uses THREADINFO_GFP
> >>> which is GFP_KERNEL | __GFP_NOTRACK. There shouldn't be __GFP_DMA,
> >>> even on arm64. Are there some local modifications to the kernel
> >>> source?
> >>>
> >>>> The page cache is very small(active_file:292kB inactive_file:240kB),
> >>>> so did_some_progress may be zero, and will not retry, right?
> >>>
> >>> Could be, and then __alloc_pages_may_oom() has this:
> >>>
> >>>         /* The OOM killer does not needlessly kill tasks for lowmem */
> >>>         if (ac->high_zoneidx < ZONE_NORMAL)
> >>>                 goto out;
> >>>
> >>> So no oom and no faking progress for non-costly order that would
> >>> result in retry, because of that mysterious __GFP_DMA...
> >>
> >> hi Vlastimil,
> >> We do make change and add __GFP_DMA flag here for our platform driver's problem.
> > 
> > Why would you want to force thread_info to the DMA zone?
> > 
> 
> Hi Michal,
> 
> Because of our platform driver's problem, so we change the code(add GFP_DMA) to let
> it alloc from zone_dma. (on arm64 zone_dma is 0-4G)

Why would any platform driver need to access kernel thread in the DMA
zone?
-- 
Michal Hocko
SUSE Labs

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


Thread

Re: [Question]page allocation failure: order:2, mode:0x2000d1 Xishi Qiu <qiuxishi@huawei.com> - 2016-07-28 10:00 +0200
  Re: [Question]page allocation failure: order:2, mode:0x2000d1 Michal Hocko <mhocko@kernel.org> - 2016-07-28 10:20 +0200

csiph-web