[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20170821130218.GA1371@cmpxchg.org>
Date: Mon, 21 Aug 2017 09:02:18 -0400
From: Johannes Weiner <hannes@...xchg.org>
To: Michal Hocko <mhocko@...nel.org>
Cc: Brad Bolen <bradleybolen@...il.com>,
Jaegeuk Kim <jaegeuk@...nel.org>,
Andrew Morton <akpm@...ux-foundation.org>,
Vladimir Davydov <vdavydov.dev@...il.com>, linux-mm@...ck.org,
cgroups@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: kernel panic on null pointer on page->mem_cgroup
On Thu, Aug 10, 2017 at 01:56:05PM +0200, Michal Hocko wrote:
> On Wed 09-08-17 14:38:25, Johannes Weiner wrote:
> > The issue is that writeback doesn't hold a page reference and the page
> > might get freed after PG_writeback is cleared (and the mapping is
> > unlocked) in test_clear_page_writeback(). The stat functions looking
> > up the page's node or zone are safe, as those attributes are static
> > across allocation and free cycles. But page->mem_cgroup is not, and it
> > will get cleared if we race with truncation or migration.
>
> Is there anything that prevents us from holding a reference on a page
> under writeback?
Hm, I'm hesitant to add redundant life-time management to the page
there just for memcg, which is not always configured in.
Pinning the memcg instead is slightly more complex, but IMO has the
complexity in a preferrable place.
Would you agree?
Powered by blists - more mailing lists