Received: by 2002:a25:4158:0:0:0:0:0 with SMTP id o85csp2530130yba; Sun, 7 Apr 2019 22:05:27 -0700 (PDT) X-Google-Smtp-Source: APXvYqzpT2XAUIWO1lvL3w/qgH1hqzEtt+A3Z4iSPfK4XGFq2mY8yTaIryLPOLtpfgOTPnC7LFEm X-Received: by 2002:a65:6150:: with SMTP id o16mr26231226pgv.285.1554699927058; Sun, 07 Apr 2019 22:05:27 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1554699927; cv=none; d=google.com; s=arc-20160816; b=PxPnZXWZH21w+KJoEKXFxQoR27sKhagH7s4fwAnIomQbFZfoNUwxTrtY67WCXTVXW+ 2fI00z6bwzGzZLx3awMhjTOtEpN1loJxdqnauDId5sD+pswDKjyPEHjHaNYKpsLQXf7/ qPR4jNJ7UhXW0PxhGmDNuZkNGTr0bybxieICJlVBxqhlc9FGro8Srl/LFpTUO43UUa+j EyYeb76Gr80xnmyuDbZPqP7VhP7XA5A9+Nj4kxy/cujIrpF12BJHNkjgp4UF/uT1kCKv KZi/Owi/qelqm1D0N/5G3uL9gPBV2YxV7DgT/gfa+A2y2Jg/sXIaY4hZXAtbGq6LKZpB dgzg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:in-reply-to :content-disposition:mime-version:references:message-id:subject:cc :to:from:date:dkim-signature:dkim-signature; bh=hE/ilqrmaBWBrc9SZREc/D/cYwcvR1SyLzOeCz+R+CA=; b=W8RbcDW9bKN2tKj1sA9YO/vit+PsdW1EtCt/HRfjY1Rw4hwkCyFZOYHm5uX+9cVaAl 0jFVpzLfSmjaEaa6CnXTTcEN6Ymlht7d+1TNYeWWXbCP926K/8h5qGQGMOMBw3vFHwjf 7ub71ZIlZNAiU3yhZaYaS7NOQVb2J50PYrEM8wOATV3UNBLlUU4PS+s4GE2pGRUNH/B1 EdKOiPADebYWZbk9/tpQX4WfI4jyGsmFoRVFCjpn2eU39gFHlwLIES24phVISFticSRY vVrS7hD4SgSk7eRn0neiH4o+ziAjPh+8HkAF5mBK566U/OzEtMMVkRAw2E7khvCZempF BNDg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@tobin.cc header.s=fm2 header.b=HyhogeWZ; dkim=pass header.i=@messagingengine.com header.s=fm2 header.b=xjTLQQUD; 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 q61si26619281plb.245.2019.04.07.22.05.09; Sun, 07 Apr 2019 22:05:27 -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=@tobin.cc header.s=fm2 header.b=HyhogeWZ; dkim=pass header.i=@messagingengine.com header.s=fm2 header.b=xjTLQQUD; 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 S1726068AbfDHFE0 (ORCPT + 99 others); Mon, 8 Apr 2019 01:04:26 -0400 Received: from out4-smtp.messagingengine.com ([66.111.4.28]:51777 "EHLO out4-smtp.messagingengine.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725877AbfDHFEZ (ORCPT ); Mon, 8 Apr 2019 01:04:25 -0400 Received: from compute5.internal (compute5.nyi.internal [10.202.2.45]) by mailout.nyi.internal (Postfix) with ESMTP id 8414D21BF4; Mon, 8 Apr 2019 01:04:24 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute5.internal (MEProxy); Mon, 08 Apr 2019 01:04:24 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=tobin.cc; h=date :from:to:cc:subject:message-id:references:mime-version :content-type:in-reply-to; s=fm2; bh=hE/ilqrmaBWBrc9SZREc/D/cYwc vR1SyLzOeCz+R+CA=; b=HyhogeWZnD8yWEIQknvyT1SZOB03vFgHKf0YM4TEvKB ow4G6H2/eZ7U3U3FNtqrcxUlaRhND4Ww/6yWCXXOX5Gts49b+TL4c+jSvT8c5JM8 e7jUZaZkCiRHQgqf/Fo+NC2VlK0lpPw87Zfa6UicQ/ztfazPe9BO5lAb5ePZ5lZL B2eFZEsfHaJ2NeCE6BrTfhc8HjbGadVAr3ckqvXK6mlx05mMNRwaiMrkxemc+fsn Mt+bTsM6Yf0ArfrIoXFypKmUw7JWwNp99xs8LPeoalfYJQUetTifBgyhTzbMdKSs gxgaTiwJr+FDLjr8Ij+ZqbEmwIwtyJCJI9VMEKph8Qw== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to:x-me-proxy :x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm2; bh=hE/ilq rmaBWBrc9SZREc/D/cYwcvR1SyLzOeCz+R+CA=; b=xjTLQQUDJ69DcUCKDOYLB/ ZNqQToz4JG5wXILgejFTmOnPuGr6O6x9kweZxzao2qr8eZGlO4N4NOKyGyqW+J/s DqE+Kg0Nw8QpUN0IbRb3wINS1LbxtPK695ulSW7yRtZp3ljT3CeSxkdvvIpAAbW6 m0gQVXk+D7xpRw8AFWO2gcQuWxJ76xxSXDOnL3gke2eJPoLOG+FBLHG2AQUc7heZ bzhtMw7/gBBtiHpr7ug11ZQwGBIu9Ej6OhW0AuH2XO72KAcbo/UOXKv2uCUOBC16 LgqGnZL3PWsjCKXaDFaeTb5Rp/ybgOIXt/oa+31Od7TM6nkXcpKF0J+gMoJZFlAA == X-ME-Sender: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeduuddruddvgdelvdcutefuodetggdotefrodftvf curfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfghnecu uegrihhlohhuthemuceftddtnecufghrlhcuvffnffculddvtddmnecujfgurhepfffhvf fukfhfgggtuggjofgfsehttdertdforedvnecuhfhrohhmpedfvfhosghinhcuvedrucfj rghrughinhhgfdcuoehmvgesthhosghinhdrtggtqeenucfkphepuddvgedrudeiledrud ehvddrvddvleenucfrrghrrghmpehmrghilhhfrhhomhepmhgvsehtohgsihhnrdgttgen ucevlhhushhtvghrufhiiigvpedt X-ME-Proxy: Received: from localhost (124-169-152-229.dyn.iinet.net.au [124.169.152.229]) by mail.messagingengine.com (Postfix) with ESMTPA id AED3CE460B; Mon, 8 Apr 2019 01:04:21 -0400 (EDT) Date: Mon, 8 Apr 2019 15:03:52 +1000 From: "Tobin C. Harding" To: Qian Cai Cc: akpm@linux-foundation.org, cl@linux.com, penberg@kernel.org, rientjes@google.com, iamjoonsoo.kim@lge.com, tj@kernel.org, linux-mm@kvack.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH] slab: fix a crash by reading /proc/slab_allocators Message-ID: <20190408050352.GA8889@eros.localdomain> References: <20190406225901.35465-1-cai@lca.pw> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20190406225901.35465-1-cai@lca.pw> X-Mailer: Mutt 1.11.4 (2019-03-13) User-Agent: Mutt/1.11.4 (2019-03-13) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Sat, Apr 06, 2019 at 06:59:01PM -0400, Qian Cai wrote: > The commit 510ded33e075 ("slab: implement slab_root_caches list") > changes the name of the list node within "struct kmem_cache" from > "list" to "root_caches_node", but leaks_show() still use the "list" > which causes a crash when reading /proc/slab_allocators. > > BUG: unable to handle kernel NULL pointer dereference at > 00000000000000aa > PGD 0 P4D 0 > Oops: 0000 [#1] SMP DEBUG_PAGEALLOC PTI > CPU: 3 PID: 5925 Comm: ldd Not tainted 5.1.0-rc3-mm1+ #6 > RIP: 0010:__lock_acquire.isra.14+0x4b4/0xa50 > Call Trace: > > lock_acquire+0xa3/0x180 > _raw_spin_lock+0x2f/0x40 > do_drain+0x61/0xc0 > flush_smp_call_function_queue+0x3a/0x110 > generic_smp_call_function_single_interrupt+0x13/0x2b > smp_call_function_interrupt+0x66/0x1a0 > call_function_interrupt+0xf/0x20 > > RIP: 0010:__tlb_remove_page_size+0x8c/0xe0 > zap_pte_range+0x39f/0xc80 > unmap_page_range+0x38a/0x550 > unmap_single_vma+0x7d/0xe0 > unmap_vmas+0xae/0xd0 > exit_mmap+0xae/0x190 > mmput+0x7a/0x150 > do_exit+0x2d9/0xd40 > do_group_exit+0x41/0xd0 > __x64_sys_exit_group+0x18/0x20 > do_syscall_64+0x68/0x381 > entry_SYSCALL_64_after_hwframe+0x44/0xa9 > > Fixes: 510ded33e075 ("slab: implement slab_root_caches list") > Signed-off-by: Qian Cai > --- > mm/slab.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/mm/slab.c b/mm/slab.c > index 46a6e084222b..9142ee992493 100644 > --- a/mm/slab.c > +++ b/mm/slab.c > @@ -4307,7 +4307,8 @@ static void show_symbol(struct seq_file *m, unsigned long address) > > static int leaks_show(struct seq_file *m, void *p) > { > - struct kmem_cache *cachep = list_entry(p, struct kmem_cache, list); > + struct kmem_cache *cachep = list_entry(p, struct kmem_cache, > + root_caches_node); > struct page *page; > struct kmem_cache_node *n; > const char *name; > -- > 2.17.2 (Apple Git-113) > For what its worth Reviewed-by: Tobin C. Harding thanks, Tobin.