From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 015A1C54E66 for ; Wed, 13 Mar 2024 14:58:22 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 8EFDF940021; Wed, 13 Mar 2024 10:58:22 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 89FDB940010; Wed, 13 Mar 2024 10:58:22 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 7B66F940021; Wed, 13 Mar 2024 10:58:22 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0015.hostedemail.com [216.40.44.15]) by kanga.kvack.org (Postfix) with ESMTP id 6C97E940010 for ; Wed, 13 Mar 2024 10:58:22 -0400 (EDT) Received: from smtpin21.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay01.hostedemail.com (Postfix) with ESMTP id CAA541C0EF8 for ; Wed, 13 Mar 2024 14:58:21 +0000 (UTC) X-FDA: 81892321602.21.35061DE Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by imf01.hostedemail.com (Postfix) with ESMTP id 46D2940014 for ; Wed, 13 Mar 2024 14:58:19 +0000 (UTC) Authentication-Results: imf01.hostedemail.com; dkim=none; spf=pass (imf01.hostedemail.com: domain of joey.gouly@arm.com designates 217.140.110.172 as permitted sender) smtp.mailfrom=joey.gouly@arm.com; dmarc=pass (policy=none) header.from=arm.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1710341899; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=SX8ccgDO/Ui84bL878+12q3n0HgyOtEKhBopQ/x+xgU=; b=8e5AcOl7/1rYqKf4hOG9fC+2HsRAqrXDq47sxgBxu0Ra+kkvzWiXC70bSahnDL8th04aHO lsJeJrj4fi+/nr8ukfyjV2woLDG/90gsCKgrRzEqZ2/Q+h/71RB41NjkVX/Efh1jk0Ya5X Us6c5J4X4C0h4WPPaaqmsLL/1geqUsE= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1710341899; a=rsa-sha256; cv=none; b=RBKhyN6jMzikcWLYGBt8qixn/j/5jujXPc9fhOC+Ut5wsNd43ah9kZBmEO2myN42Z9YDIr 1bZ8DaoyO3rfnAT62p5vWSF3ooKCIBHn+kYbu0OwkYBpdmtAvMDBcXPpmhqVix9HkX2iP+ m0HFOhiz11DwglR4TmPAmT1Zt0d260U= ARC-Authentication-Results: i=1; imf01.hostedemail.com; dkim=none; spf=pass (imf01.hostedemail.com: domain of joey.gouly@arm.com designates 217.140.110.172 as permitted sender) smtp.mailfrom=joey.gouly@arm.com; dmarc=pass (policy=none) header.from=arm.com Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id C98AF1007; Wed, 13 Mar 2024 07:58:54 -0700 (PDT) Received: from e124191.cambridge.arm.com (e124191.cambridge.arm.com [10.1.197.45]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id C6FFD3F73F; Wed, 13 Mar 2024 07:58:16 -0700 (PDT) Date: Wed, 13 Mar 2024 14:58:11 +0000 From: Joey Gouly To: Muhammad Usama Anjum Cc: Andrew Morton , Shuah Khan , kernel@collabora.com, Ryan Roberts , linux-mm@kvack.org, linux-kselftest@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH v3 4/5] selftests/mm: protection_keys: save/restore nr_hugepages settings Message-ID: <20240313145811.GA2896554@e124191.cambridge.arm.com> References: <20240125154608.720072-1-usama.anjum@collabora.com> <20240125154608.720072-5-usama.anjum@collabora.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20240125154608.720072-5-usama.anjum@collabora.com> X-Rspamd-Queue-Id: 46D2940014 X-Rspam-User: X-Rspamd-Server: rspam11 X-Stat-Signature: m6go11r8y3nmtiea559zjkckz5pgu7gi X-HE-Tag: 1710341899-295888 X-HE-Meta: U2FsdGVkX1+WlpRh07FBELAexgXPMk7pkwnw1K0wNaAH1IM/8dfncaIFBhrWRmBF14OSsOB7JfEF22A/vMn/AWWNs0nRiKpokximFTkOXb4mu0AJoD/BTYoC519zePzb0tC4WT2V75WOSrZJ0dRe3qQdSsGSNqM98Nn3plH1TQ93x1Tyoy9Xm2/OauQt/Zb1rM4YR/9noEyHI+yTx9BlLNR8j+Qa2+MRq46l3fh3VTPrbwRaNsHszOiC1eDFsysH5+C4XvQJL3lxe1aK8ViSU5RmD7ZvgBjWWqGki0OX5MAL66mxd8SeZgBJ2Tw+Zdw2MzvutoCzYsKyTheQMg33u9coRC6fg0Ja6u6hfM3mpe9sJdcFvTlWyKZnaxU/Lmal4sFxfjNhNa1zaUJtMP5LkMaKEg4MYp8PbvqAa3DUI1rhPXiuBC6NMPU4XO1fguDq0TQLexvvmejiMjXXFiWYP4MAz1WaciD+GzepJIcM39Gg1+uMSCWPP7ATd48z5CNwhZFmkCn9LCu2cIKgugPVBwBFiTJK0u1VMbmJR6Epr1L6Tr8BTcfY3yvUbtvPyflYBxWvqkm2n07cD/tVcgyERx0l5FIKFBVk1W+QyqXf29+yE/H7pF8ShNHeX3hj7KZ7TK/rnyrUhbsRfxT4Ybd2zQ4xlsvPyO+NCO3cwx7uZoeR7QIWy7VsUoxY49q6m/TZaY3L4WWp0ZCVkvVoDiYK5ctv0JfhXCqKfP0GTuugpgJk8I34/9g57pNUwXA2vvfzrSm04AlSCZIQs8GZ1glinqYqtw8qhAqMsWA0L6F6Seg+TkVapuDXFXp3LxGN9DfJb4WWGuvz5IXcg9+v6/BBQJ1EdWLJLEoBiIJ3ifqMV+0= X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: Hi Muhammad, On Thu, Jan 25, 2024 at 08:46:07PM +0500, Muhammad Usama Anjum wrote: > Save and restore nr_hugepages before changing it during the test. A test > should not change system wide settings. > > Fixes: 5f23f6d082a9 ("x86/pkeys: Add self-tests") > Signed-off-by: Muhammad Usama Anjum > --- > tools/testing/selftests/mm/protection_keys.c | 34 ++++++++++++++++++++ > 1 file changed, 34 insertions(+) > > diff --git a/tools/testing/selftests/mm/protection_keys.c b/tools/testing/selftests/mm/protection_keys.c > index 48dc151f8fca8..f822ae31af22e 100644 > --- a/tools/testing/selftests/mm/protection_keys.c > +++ b/tools/testing/selftests/mm/protection_keys.c > @@ -54,6 +54,7 @@ int test_nr; > u64 shadow_pkey_reg; > int dprint_in_signal; > char dprint_in_signal_buffer[DPRINT_IN_SIGNAL_BUF_SIZE]; > +char buf[256]; > > void cat_into_file(char *str, char *file) > { > @@ -1744,6 +1745,38 @@ void pkey_setup_shadow(void) > shadow_pkey_reg = __read_pkey_reg(); > } > > +void restore_settings_atexit(void) > +{ > + cat_into_file(buf, "/proc/sys/vm/nr_hugepages"); > +} > + > +void save_settings(void) > +{ > + int fd; > + int err; > + > + if (geteuid()) > + return; > + > + fd = open("/proc/sys/vm/nr_hugepages", O_RDONLY); > + if (fd < 0) { > + fprintf(stderr, "error opening\n"); > + perror("error: "); > + exit(__LINE__); > + } > + > + /* -1 to guarantee leaving the trailing \0 */ > + err = read(fd, buf, sizeof(buf)-1); > + if (err < 0) { > + fprintf(stderr, "error reading\n"); > + perror("error: "); > + exit(__LINE__); > + } > + > + atexit(restore_settings_atexit); > + close(fd); > +} > + > int main(void) > { > int nr_iterations = 22; > @@ -1751,6 +1784,7 @@ int main(void) > > srand((unsigned int)time(NULL)); > > + save_settings(); > setup_handlers(); > > printf("has pkeys: %d\n", pkeys_supported); > -- > 2.42.0 > This break the tests for me: assert() at protection_keys.c::812 test_nr: 19 iteration: 1 running abort_hooks()... This is because some of the tests fork, so on their atexit() they will set the nr_hugepages back to the previous setting. Specifically the test_pkey_alloc_exhaust() test. Thanks, Joey