Received: by 2002:a25:31c3:0:0:0:0:0 with SMTP id x186csp609653ybx; Wed, 30 Oct 2019 21:17:21 -0700 (PDT) X-Google-Smtp-Source: APXvYqzSg9OkPEVjYfskgncvUzSK8xYpb5sK/JkyJEjCaSrRxYRA4u8Ar/XPZ1X01WSmWGML9drj X-Received: by 2002:a17:906:e296:: with SMTP id gg22mr1747679ejb.211.1572495441568; Wed, 30 Oct 2019 21:17:21 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1572495441; cv=none; d=google.com; s=arc-20160816; b=vfWRWnBcb7NrbLBs1ncB1FXq3ny7xlbyJiW+Av0vkj3Ib1RVrY58Vzx7YoZeYNsXq5 9RBZdq+7qmqm2ecmzemNoIwdGuehQi6rNhOdhQr8xbiqnKTZXa2Xc3F7NmLzW0jNkKLk Al1RXQ+AGfVLPCgTmzOkXZ7oDlM8lymjNRme+DbJjw4pn9dhFnzWZy8qP5qNNfIolHBd tsbtGCOiRTjfvSRxCCoI/dgUrBDBiyWA4qF0dbPReMbHqIVBhfiDy++Ik5sAjZNdFcVo FPQvaovi/Xy8NAkv0QmoJtb9TPp30U1RRv4kARPtsV0n3Scw0CO+ilTE//D896tbt8V/ qE2w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:message-id:subject:cc:to:from:date :dkim-signature; bh=FJUa8Gce7usLxqFVZcsM9TcP9wR3yGwl+UxA+LRdFgk=; b=hxLr/B8u86dm5lcbfR5yrfotyDwE5Hypq6aRRvM/xIHY4s+bJwd+GHtTbuGme7GIgg oFhSr697oZo60x1e8WCDCwKLWnOqAi2+9rB9jbiTa1fCcpiomPcHJa9xYoB3MmDBTh2x AMDiivBrq4oS3AltaY1u7kflgWuJWPh/nHcF2HpQFrBXZYCSEnCamO9kzyagD9+BNwgF 8YeB7x+3uwBXzp6OpzRG3ifU+1K5SKgFLjgX+bCUytjN3Y/4ZQ1+hsIAbS6rDSqjgnAx IE9nOZE3sVd5vWXQcwV8r+hcisCfO1gdGF1ifK3wEdtydzHXaK7XKF6kV0i6UgTGIA+q V8+Q== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b="VoSZnYi/"; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id w25si2531672ejn.391.2019.10.30.21.16.55; Wed, 30 Oct 2019 21:17:21 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b="VoSZnYi/"; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726465AbfJaEQK (ORCPT + 99 others); Thu, 31 Oct 2019 00:16:10 -0400 Received: from mail.kernel.org ([198.145.29.99]:56206 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725816AbfJaEQK (ORCPT ); Thu, 31 Oct 2019 00:16:10 -0400 Received: from localhost.localdomain (c-73-231-172-41.hsd1.ca.comcast.net [73.231.172.41]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 154D42080F; Thu, 31 Oct 2019 04:16:09 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1572495369; bh=TdavWRFLS/Lxw3pvDBh+4n0ncIlxfulsj9NTk8R2yXI=; h=Date:From:To:Cc:Subject:In-Reply-To:References:From; b=VoSZnYi/gWQldgzmpcUHJGLjbfRmcYdaPHP34Y5dGR5XV6mJu4e957W3ZqXGMNqKF fNrFI2YZhZ7jZNYC64cOHe9j5ZK+g41EDaLanHfzBmmUGWCP10M8wGBq4Md6Da8HR7 nYngzYFUl3qkZ465PWWNcA0nOYGrB9GkzEzaSjOA= Date: Wed, 30 Oct 2019 21:16:08 -0700 From: Andrew Morton To: Roman Gushchin Cc: , Michal Hocko , Johannes Weiner , , , Vladimir Davydov , Daniel Jordan , Naoya Horiguchi Subject: Re: [PATCH v2] mm: slab: make page_cgroup_ino() to recognize non-compound slab pages properly Message-Id: <20191030211608.29f8fc92e07fd2ac2ef4d1d3@linux-foundation.org> In-Reply-To: <20191031012151.2722280-1-guro@fb.com> References: <20191031012151.2722280-1-guro@fb.com> X-Mailer: Sylpheed 3.5.1 (GTK+ 2.24.31; x86_64-pc-linux-gnu) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, 30 Oct 2019 18:21:51 -0700 Roman Gushchin wrote: > page_cgroup_ino() doesn't return a valid memcg pointer for non-compound > slab pages, because it depends on PgHead AND PgSlab flags to be set > to determine the memory cgroup from the kmem_cache. > It's correct for compound pages, but not for generic small pages. Those > don't have PgHead set, so it ends up returning zero. > > Fix this by replacing the condition to PageSlab() && !PageTail(). > > Before this patch: > [root@localhost ~]# ./page-types -c /sys/fs/cgroup/user.slice/user-0.slice/user@0.service/ | grep slab > 0x0000000000000080 38 0 _______S___________________________________ slab > > After this patch: > [root@localhost ~]# ./page-types -c /sys/fs/cgroup/user.slice/user-0.slice/user@0.service/ | grep slab > 0x0000000000000080 147 0 _______S___________________________________ slab > > Fixes: 4d96ba353075 ("mm: memcg/slab: stop setting page->mem_cgroup pointer for slab pages") > Signed-off-by: Roman Gushchin > Reviewed-by: Shakeel Butt > Cc: Vladimir Davydov > Cc: Daniel Jordan Affects /proc/kpagecgroup, but page_cgroup_ino() is also used in the memory-failure code - I wonder what effect this bug has there? IOW, should we backport this into -stable?