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 4EE9FC43334 for ; Mon, 4 Jul 2022 17:33:56 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id C6B5E6B0072; Mon, 4 Jul 2022 13:33:55 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id C1AF26B0073; Mon, 4 Jul 2022 13:33:55 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id AE28D6B0074; Mon, 4 Jul 2022 13:33:55 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0013.hostedemail.com [216.40.44.13]) by kanga.kvack.org (Postfix) with ESMTP id 9CFD26B0072 for ; Mon, 4 Jul 2022 13:33:55 -0400 (EDT) Received: from smtpin13.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id 6FDA020C13 for ; Mon, 4 Jul 2022 17:33:55 +0000 (UTC) X-FDA: 79650115230.13.15A663C Received: from mail-wm1-f43.google.com (mail-wm1-f43.google.com [209.85.128.43]) by imf31.hostedemail.com (Postfix) with ESMTP id EF19B20046 for ; Mon, 4 Jul 2022 17:33:54 +0000 (UTC) Received: by mail-wm1-f43.google.com with SMTP id h14-20020a1ccc0e000000b0039eff745c53so6024115wmb.5 for ; Mon, 04 Jul 2022 10:33:54 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=wowsignal-io.20210112.gappssmtp.com; s=20210112; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=YtuFqxU9YLyyNioeHhEjmKYQtayJW6UTS2/meW1hZB8=; b=HQOiIhHnpxDmFGZ4xva4gbVYw52PD+Y7Aiy73fWSHNdJx/WcPCkmwQ00TC6Pcb1kAt qX4TPU3chzKy0n82m14Mo9pcsMo5krnLbEnKbzzJ/KYhv4g9gWiCqGs4YSWcswEgWdNb SRmyrQo0Z+tFzTpKLR+co9PFaXFVPnFW7dIlULo41TmIK9dwoO7M/IN25pFU0QhZJ66+ 89zujPwjcGOrn7MuzAkhlpiO5LMOOfTdTwWnSxGJTuj8HKyKTcw9w67bxsjAeGDBZXJc EkCN+V5jbYH8QIDsVk7hxh3SNBIPVaIgJyLTWyCzs4V+KYeTcV1bo91P4Vku7tMGu0CP wsCg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=YtuFqxU9YLyyNioeHhEjmKYQtayJW6UTS2/meW1hZB8=; b=h6l60HsjUAq4ZqH8Y0aNCG2a69fQbkywXs7G7KexDmMoZogIg/rAyblrBe6G/ruVBq DFO2LlH3UqPXUcf7KXrkAtBmSpqRj6hioB8nMofv1l2Uj+QzpneMYEe4Suu/RfNukiMb AAQiP+rcdgYLN9G711fHi8QEc4M9mdUrtqwPskvajoFcnP3XLrF/EqG3AIDkQm8mrXHn D4kqBWshPKDVBK1mvX2msOv/EAtvcKwFzih/+atm+1tXLQtw7slyKXh0+8F8dtxXrGiB K2B/Jj4xnk/hNwtaSdh5SEkUQnemVDrPf7L02fOBnxaSNQvJsdKbrwof/lMeDpFZOSc5 +CMQ== X-Gm-Message-State: AJIora9V3xNpK0lTSgMcon2V2+E9O/gmhtRL/3ElVTDYRBrOEpv8+K4V EBnS2J/CE1FyLh0HoidLLkPcug== X-Google-Smtp-Source: AGRyM1vW9cw3jj/DUmBc2S5T/KlgQKWbRe/QAWGuTa/xL0FNRqeWIFyF9llVcxgPJxpRzVp8pBi40w== X-Received: by 2002:a1c:6a06:0:b0:3a0:5099:f849 with SMTP id f6-20020a1c6a06000000b003a05099f849mr32542391wmc.14.1656956033747; Mon, 04 Jul 2022 10:33:53 -0700 (PDT) Received: from localhost (212-51-140-210.fiber7.init7.net. [212.51.140.210]) by smtp.gmail.com with ESMTPSA id bq12-20020a5d5a0c000000b0021d54a16344sm7034163wrb.92.2022.07.04.10.33.53 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 04 Jul 2022 10:33:53 -0700 (PDT) From: Adam Sindelar To: Andrew Morton Cc: linux-mm@kvack.org, Adam Sindelar , Adam Sindelar , David Vernet , kernel-team@fb.com Subject: [PATCH v2] selftests/vm: fix errno handling in mrelease_test Date: Mon, 4 Jul 2022 19:33:51 +0200 Message-Id: <20220704173351.19595-1-adam@wowsignal.io> X-Mailer: git-send-email 2.35.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1656956035; 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-transfer-encoding:content-transfer-encoding: in-reply-to:references:dkim-signature; bh=YtuFqxU9YLyyNioeHhEjmKYQtayJW6UTS2/meW1hZB8=; b=UE8+XA7EkQcnFMWf9NP+7ekQLpvpdfccvLNgjxLs4hir+S25V/lyh9uFgNIQPxNxdg0KM7 UefRgy1/N8ZzC0sj6Gbz4zaUqguj4CRp2TN176ciRruCRyzVIuDXlcwN59e2zkXSq/wqtk PXDBgUdmx0qqcilC155JC+tMwV/QILs= ARC-Authentication-Results: i=1; imf31.hostedemail.com; dkim=pass header.d=wowsignal-io.20210112.gappssmtp.com header.s=20210112 header.b=HQOiIhHn; spf=none (imf31.hostedemail.com: domain of adam@wowsignal.io has no SPF policy when checking 209.85.128.43) smtp.mailfrom=adam@wowsignal.io; dmarc=none ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1656956035; a=rsa-sha256; cv=none; b=VkITM0UUsobiHmVGWecgdTAPXXV0ynbnKAk3NSIKshD+RPy3Q8RVhN7fWs9KMWu2yUzxDS 1ghacRUWTyW8RAEiz1fRdRaW3+X0i4qpyhzHOaA7EloIOsVdIztPAzjhVsiQ7RY5hE5PC9 nsUwt0CukgCPfUtx90vuwuLoexl+/Bw= X-Stat-Signature: kb1g6rgfbhhenoje5pwg9zee4i4ugio3 X-Rspamd-Queue-Id: EF19B20046 Authentication-Results: imf31.hostedemail.com; dkim=pass header.d=wowsignal-io.20210112.gappssmtp.com header.s=20210112 header.b=HQOiIhHn; spf=none (imf31.hostedemail.com: domain of adam@wowsignal.io has no SPF policy when checking 209.85.128.43) smtp.mailfrom=adam@wowsignal.io; dmarc=none X-Rspam-User: X-Rspamd-Server: rspam02 X-HE-Tag: 1656956034-67567 X-Bogosity: Ham, tests=bogofilter, spamicity=0.000694, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: mrelease_test should return KSFT_SKIP when process_mrelease is not defined, but due to a perror call consuming the errno, it returns KSFT_FAIL. This patch decides the exit code before calling perror. Signed-off-by: Adam Sindelar --- v1->v2: Fixed second instance in the same file tools/testing/selftests/vm/mrelease_test.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/tools/testing/selftests/vm/mrelease_test.c b/tools/testing/selftests/vm/mrelease_test.c index 96671c2f7d48..e8b17258579b 100644 --- a/tools/testing/selftests/vm/mrelease_test.c +++ b/tools/testing/selftests/vm/mrelease_test.c @@ -100,8 +100,10 @@ int main(void) /* Test a wrong pidfd */ if (!syscall(__NR_process_mrelease, -1, 0) || errno != EBADF) { + /* perror overwrites errno, so this line must be first */ + res = (errno == ENOSYS ? KSFT_SKIP : KSFT_FAIL); perror("process_mrelease with wrong pidfd"); - exit(errno == ENOSYS ? KSFT_SKIP : KSFT_FAIL); + exit(res); } /* Start the test with 1MB child memory allocation */ @@ -156,8 +158,9 @@ int main(void) run_negative_tests(pidfd); if (kill(pid, SIGKILL)) { + res = (errno == ENOSYS ? KSFT_SKIP : KSFT_FAIL); perror("kill"); - exit(errno == ENOSYS ? KSFT_SKIP : KSFT_FAIL); + exit(res); } success = (syscall(__NR_process_mrelease, pidfd, 0) == 0); -- 2.35.1