From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755355AbcHBVzj (ORCPT ); Tue, 2 Aug 2016 17:55:39 -0400 Received: from mail-wm0-f66.google.com ([74.125.82.66]:32939 "EHLO mail-wm0-f66.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753757AbcHBVza (ORCPT ); Tue, 2 Aug 2016 17:55:30 -0400 Date: Tue, 2 Aug 2016 17:51:21 +0200 From: Michal Hocko To: Vladimir Davydov Cc: Andrew Morton , Johannes Weiner , linux-mm@kvack.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH 3/3] mm: memcontrol: add sanity checks for memcg->id.ref on get/put Message-ID: <20160802155120.GA28900@dhcp22.suse.cz> References: <01cbe4d1a9fd9bbd42c95e91694d8ed9c9fc2208.1470057819.git.vdavydov@virtuozzo.com> <20160802124503.GK12403@dhcp22.suse.cz> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20160802124503.GK12403@dhcp22.suse.cz> User-Agent: Mutt/1.6.0 (2016-04-01) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue 02-08-16 14:45:03, Michal Hocko wrote: > On Mon 01-08-16 16:26:26, Vladimir Davydov wrote: > [...] > > static struct mem_cgroup *mem_cgroup_id_get_active(struct mem_cgroup *memcg) > > { > > - while (!atomic_inc_not_zero(&memcg->id.ref)) > > + while (!atomic_inc_not_zero(&memcg->id.ref)) { > > + VM_BUG_ON(mem_cgroup_is_root(memcg)); > > memcg = parent_mem_cgroup(memcg); > > + } > > why is this BUG_ON ok? What if the root.use_hierarchy=true? Scratch that. I got it. root will never get its count down to 0. Sorry about the noise. -- Michal Hocko SUSE Labs