From patchwork Tue Sep 19 20:51:57 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Stefan Roesch X-Patchwork-Id: 142088 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a05:612c:172:b0:3f2:4152:657d with SMTP id h50csp3675379vqi; Tue, 19 Sep 2023 13:58:12 -0700 (PDT) X-Google-Smtp-Source: AGHT+IFUtPET6h4k3UTv+meQoYgBG9X1sggtSJmVjHN+jmo8DNKhzWms//D9muMhJA6OIVRUZBxK X-Received: by 2002:a05:6a20:8f29:b0:135:bf8d:b758 with SMTP id b41-20020a056a208f2900b00135bf8db758mr4476990pzk.16.1695157092499; Tue, 19 Sep 2023 13:58:12 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1695157092; cv=none; d=google.com; s=arc-20160816; b=XZON+DmyHJsad1K0JPNhecxkHYpm2yOyVbzdZoYOklKtxNwn3nXqXJYOEsOmqJybsa 5xUOPfx0caNaCyCsaIqHM1ChStAe9foWgNfhewn4fO4S6DlO4IqmVq5bmbecMtQYLbyh 2Oe8uswvoIUA5k9pDNGs++NGbXkKFya262tPwVBPsGttoVoL+e+JCOxaxXXPc9gntKh5 fdMwy/zpR1FGDP6p+F+HP6oOqAs1L75X9XREBAXNTIFb8p+Og5qpfMyCzgb16MwESR8F FlXbKJXv6k4Yjg5fSjGg6XLtyEGF54vdMcc5o0kTaTftWEUeF+iDM3zRmbkuHYJD27rv ot6g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from; bh=3lEmbQKIShknOwu0d4x/n3fyPteL3kdNeGzeCybOtVA=; fh=trQN94Iqca1GMQF1AkSOofuqg8pe0AKHPTTlJaXdYFw=; b=X7RayyplaTdMFo6kBEp4eH14ZxJQVQqs2pbAu39wgCaGpBV1K+f8JfAUVE506BL8ET 6WEix90A5xoIzGtvbZ6RmnYr6gEObllcaBk9IvcSOt+qB2sXFDSF5gLaAY7BFcfSN2YN orw7p/KQDnjlLCi/5QFWGz8WbjvqGY/2r4V4hJ4YLIq30FAyD1OUlhGMo+Kffs2drJ5q CY8OiV62TgjsRvjjEgmAJePKUP98laCzmH/Lq2gjuLtmgCThmvkdr4LusKxQcZd44KHV XZkndGhid1snZFQf0RiNfjLOBOIwMGoKDmbVz4Ma3ZlonCmKNMTaRfvsycgdJdphA1ca JwkA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:7 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: from snail.vger.email (snail.vger.email. [2620:137:e000::3:7]) by mx.google.com with ESMTPS id l20-20020a637014000000b00578d3f8d4d2si537541pgc.639.2023.09.19.13.58.12 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 19 Sep 2023 13:58:12 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:7 as permitted sender) client-ip=2620:137:e000::3:7; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:7 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by snail.vger.email (Postfix) with ESMTP id 7E6CD81410DF; Tue, 19 Sep 2023 13:52:30 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.10 at snail.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233267AbjISUwY (ORCPT + 26 others); Tue, 19 Sep 2023 16:52:24 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:48284 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229690AbjISUwV (ORCPT ); Tue, 19 Sep 2023 16:52:21 -0400 Received: from 66-220-144-178.mail-mxout.facebook.com (66-220-144-178.mail-mxout.facebook.com [66.220.144.178]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 3A50FBD for ; Tue, 19 Sep 2023 13:52:14 -0700 (PDT) Received: by devbig1114.prn1.facebook.com (Postfix, from userid 425415) id 51999C361C1D; Tue, 19 Sep 2023 13:51:59 -0700 (PDT) From: Stefan Roesch To: kernel-team@fb.com Cc: shr@devkernel.io, akpm@linux-foundation.org, david@redhat.com, hannes@cmpxchg.org, riel@surriel.com, linux-kernel@vger.kernel.org, linux-mm@kvack.org, Carl Klemm Subject: [PATCH v1 1/2] mm/ksm: support fork/exec for prctl Date: Tue, 19 Sep 2023 13:51:57 -0700 Message-Id: <20230919205158.1897353-2-shr@devkernel.io> X-Mailer: git-send-email 2.39.3 In-Reply-To: <20230919205158.1897353-1-shr@devkernel.io> References: <20230919205158.1897353-1-shr@devkernel.io> MIME-Version: 1.0 X-Spam-Status: No, score=-0.1 required=5.0 tests=BAYES_00, RCVD_IN_DNSWL_BLOCKED,RDNS_DYNAMIC,SPF_HELO_PASS,SPF_NEUTRAL, TVD_RCVD_IP autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (snail.vger.email [0.0.0.0]); Tue, 19 Sep 2023 13:52:30 -0700 (PDT) X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1777501043283433289 X-GMAIL-MSGID: 1777501043283433289 A process can enable KSM with the prctl system call. When the process is forked the KSM flag is inherited by the child process. However if the process is executing an exec system call directly after the fork, the KSM setting is cleared. This patch addresses this problem. Signed-off-by: Stefan Roesch Reported-by: Carl Klemm Tested-by: Carl Klemm Reviewed-by: David Hildenbrand --- include/linux/sched/coredump.h | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/include/linux/sched/coredump.h b/include/linux/sched/coredump.h index 0ee96ea7a0e9..205aa9917394 100644 --- a/include/linux/sched/coredump.h +++ b/include/linux/sched/coredump.h @@ -87,8 +87,11 @@ static inline int get_dumpable(struct mm_struct *mm) #define MMF_DISABLE_THP_MASK (1 << MMF_DISABLE_THP) +#define MMF_VM_MERGE_ANY 29 +#define MMF_VM_MERGE_ANY_MASK (1 << MMF_VM_MERGE_ANY) + #define MMF_INIT_MASK (MMF_DUMPABLE_MASK | MMF_DUMP_FILTER_MASK |\ - MMF_DISABLE_THP_MASK | MMF_HAS_MDWE_MASK) + MMF_DISABLE_THP_MASK | MMF_HAS_MDWE_MASK |\ + MMF_VM_MERGE_ANY_MASK) -#define MMF_VM_MERGE_ANY 29 #endif /* _LINUX_SCHED_COREDUMP_H */