From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Google-Smtp-Source: AH8x225QmJYZYMCZ6WhmBMMS36beW8QVAUA6cGRy2CjmPlkBDGNhCC2rZ9atkvuiN0z4rmTYFnhL ARC-Seal: i=1; a=rsa-sha256; t=1517049085; cv=none; d=google.com; s=arc-20160816; b=eZj0Ctghun3Y3QUQtGjduAhbTPxiPIKMQbCYSXpCmp5yFzkxH4zcS9k3q+IaWEOcHT KdthCqU2QN4JbvXOQaaDqx1ytp20TB9jTD5uPvwToEooTGUIa70EP615qXSC6LQoVf5A W4MJE8PeRcDmCUjN2tFkMobLUjaTnVXmdPmSYmcbjtsiv0/PcoVXMgifHB9UNJiDzAta gYog3k+3rXmr6tnO+vfp+Ip/CxJ663eoH/kfyM7JfeqMdkU9leEie3yyJ2iTTvhk05HI OwKJBSbJCMOzh2GBubf0JGx6pmW1IoqibhoZVjH9NYmMKZqjD36g6AeUkFin3aQOsDTW j/sA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=subject:mime-version:user-agent:references:message-id:in-reply-to :cc:to:from:date:delivered-to:delivered-to:list-id:list-subscribe :list-unsubscribe:list-help:list-post:precedence:mailing-list :arc-authentication-results; bh=rioieSWwno7CTNvQPXDjuM6yfjrWWKStGH+gwG1KQrA=; b=xcQdMGzBcON8fSE/WGtAfKWgwIp6jYzzvCosvGGFHNpeUvrjzxhRc9IIUvHe8OAygp SHX5jd9DSuixWv0b1fhEcMLVYJJoANvmi0bVMkjODxdGqvyIv+wl/5qbDq/TTNi/dzTl lECGVfxuHKAuaFOgcc3c28DrGzDYqzpThHngg58jm16ESmfguTW0AMLfrHRpRXCvh/LL V4JxjVNoeRIsq2Vu7AF3AUOEEidCIeZ1Cahu4BojGOdPP9rJ1LfDqGK/nqcDMMEoka5k cYKojewmCtOPlrtHoLNfKFxP6fM0lkh+fdrR78tUdhU+O6uCfcGuSlbkcYWpxPGvIMJt u18Q== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of kernel-hardening-return-11472-gregkh=linuxfoundation.org@lists.openwall.com designates 195.42.179.200 as permitted sender) smtp.mailfrom=kernel-hardening-return-11472-gregkh=linuxfoundation.org@lists.openwall.com Authentication-Results: mx.google.com; spf=pass (google.com: domain of kernel-hardening-return-11472-gregkh=linuxfoundation.org@lists.openwall.com designates 195.42.179.200 as permitted sender) smtp.mailfrom=kernel-hardening-return-11472-gregkh=linuxfoundation.org@lists.openwall.com Mailing-List: contact kernel-hardening-help@lists.openwall.com; run by ezmlm List-Post: List-Help: List-Unsubscribe: List-Subscribe: Date: Fri, 26 Jan 2018 23:31:01 +0100 (CET) From: Jiri Kosina To: Kees Cook cc: Andrew Morton , Andy Lutomirski , Jann Horn , Ingo Molnar , Laura Abbott , Thomas Gleixner , Al Viro , Sahara , "Levin, Alexander (Sasha Levin)" , Michal Hocko , Andrea Arcangeli , "Kirill A. Shutemov" , linux-kernel@vger.kernel.org, kernel-hardening@lists.openwall.com In-Reply-To: Message-ID: References: <20180117055015.GA15256@beast> User-Agent: Alpine 2.00 (LRH 1167 2008-08-23) MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Subject: [kernel-hardening] Re: [PATCH] fork: Allow stack to be wiped on fork X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: =?utf-8?q?1589817624643319879?= X-GMAIL-MSGID: =?utf-8?q?1590741262040644525?= X-Mailing-List: linux-kernel@vger.kernel.org List-ID: On Fri, 26 Jan 2018, Jiri Kosina wrote: > > diff --git a/include/linux/thread_info.h b/include/linux/thread_info.h > > index 34f053a150a9..091f53fe31cc 100644 > > --- a/include/linux/thread_info.h > > +++ b/include/linux/thread_info.h > > @@ -43,7 +43,9 @@ enum { > > #define THREAD_ALIGN THREAD_SIZE > > #endif > > > > -#if IS_ENABLED(CONFIG_DEBUG_STACK_USAGE) || IS_ENABLED(CONFIG_DEBUG_KMEMLEAK) > > +#if IS_ENABLED(CONFIG_DEBUG_STACK_USAGE) || \ > > + IS_ENABLED(CONFIG_DEBUG_KMEMLEAK) || \ > > + IS_ENABLED(CONFIG_CLEAR_STACK_FORK) > > # define THREADINFO_GFP (GFP_KERNEL_ACCOUNT | __GFP_ZERO) > > #else > > # define THREADINFO_GFP (GFP_KERNEL_ACCOUNT) > > diff --git a/kernel/fork.c b/kernel/fork.c > > index 2295fc69717f..215b1ce2b2cd 100644 > > --- a/kernel/fork.c > > +++ b/kernel/fork.c > > @@ -215,7 +215,7 @@ static unsigned long *alloc_thread_stack_node(struct task_struct *tsk, int node) > > if (!s) > > continue; > > > > -#ifdef CONFIG_DEBUG_KMEMLEAK > > +#if IS_ENABLED(CONFIG_DEBUG_KMEMLEAK) || IS_ENABLED(CONFIG_CLEAR_STACK_FORK) > > /* Clear stale pointers from reused stack. */ > > memset(s->addr, 0, THREAD_SIZE); > > #endif > > Is there any good reason not to do it symmetricaly also for non-vmapped > stacks? (by passing __GFP_ZERO to alloc_pages_node())? Ah, of course you already do by extending THREADINFO_GFP, sorry for the noise. -- Jiri Kosina