Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753728AbbLFCcu (ORCPT ); Sat, 5 Dec 2015 21:32:50 -0500 Received: from ozlabs.org ([103.22.144.67]:33445 "EHLO ozlabs.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753208AbbLFCct (ORCPT ); Sat, 5 Dec 2015 21:32:49 -0500 From: Rusty Russell To: Ingo Molnar , Steven Rostedt Cc: LKML , Peter Zijlstra , Andrew Morton , Sergey Senozhatsky , Xunlei Pang Subject: Re: [RFC][PATCH] Add __GFP_ZERO to alloc_cpumask_var_node() if ptr is zero In-Reply-To: <20151204073437.GA24827@gmail.com> References: <20151203172428.600f380a@gandalf.local.home> <87lh9b573j.fsf@rustcorp.com.au> <20151203213745.52f21886@gandalf.local.home> <20151204073437.GA24827@gmail.com> User-Agent: Notmuch/0.20.2 (http://notmuchmail.org) Emacs/24.5.1 (x86_64-pc-linux-gnu) Date: Sat, 05 Dec 2015 07:00:24 +1030 Message-ID: <877fku553z.fsf@rustcorp.com.au> MIME-Version: 1.0 Content-Type: text/plain Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1576 Lines: 40 Ingo Molnar writes: > * Steven Rostedt wrote: > >> On Fri, 04 Dec 2015 12:05:12 +1030 >> Rusty Russell wrote: >> >> > This is clever, but I would advise against such subtle code. We will never be >> > able to remove this code once it is in. >> > >> > Would suggest making the non-CPUMASK_OFFSTACK stubs write garbage into the >> > cpumasks instead, iff !(flags & __GFP_ZERO). >> >> I actually thought of the same thing, but thought it was a bit harsh. If others >> think that's a better solution, then I'll submit a patch to do that. > > That just makes things more fragile - 'garbage' will spread the breakage, and if > the breakage is subtle, it will spread subtle breakage. > > So why not use a kzmalloc_node() [equivalent] call instead of kmalloc_node(), to > make sure it's all zeroed instead of uninitialized? OTOH, why not make *every* kmalloc a kzmalloc? The issue here is not that the issue is subtle (not using a zeroing allocator is a pretty clear bug), it's that it's papered over by the normal config. If we had a config option already to garbage-fill allocations, it'd be a simple solution. I don't think there are great answers here. But adding more subtle zeroing semantics feels wrong, even if it will mostly Just Work. Cheers, Rusty. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/