From patchwork Tue Mar 11 13:18:12 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Brendan Jackman X-Patchwork-Id: 14011849 Received: from mail-wm1-f74.google.com (mail-wm1-f74.google.com [209.85.128.74]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id F088F199237 for ; Tue, 11 Mar 2025 13:18:21 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.74 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1741699103; cv=none; b=SoHVucKibhQJprpZwE1FW+oDHQzWyjhmTYN6WFhCNYrtIuCxXMcbZUxMr7FWttUTELzMTkuthZ374z3ZDtD8hX85QFUGEWQVRIL5TUNEh8ZgZ7BiytTOvx1h9MlLLPwS5P5tCDtadu6LjjgC8GxhFfx/hhI7RYqQwdwxevO0GG4= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1741699103; c=relaxed/simple; bh=JQhRr6deSyIwx2zw/NuSPazbVfMmtvtNqOIabeeTs8Q=; h=Date:In-Reply-To:Mime-Version:References:Message-ID:Subject:From: To:Cc:Content-Type; b=VPvM+oIv6CxmpbuXxl9LqhLAbxYZCQmaS9p5GlPMDrYOyKrT+hHOoEiA8j2UpRRVTuuGY8n7VBfGA9SxjXk7UzoIW2TsWj6Mv7BN1Ep/eFG0FwniNZpXBSCFvA3KVlHrKaMMvOY2svCbnEhBdLw06ZblOR0bHWXMqpOjuEqLVsU= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com; spf=pass smtp.mailfrom=flex--jackmanb.bounces.google.com; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b=GqgZKTOz; arc=none smtp.client-ip=209.85.128.74 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=flex--jackmanb.bounces.google.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b="GqgZKTOz" Received: by mail-wm1-f74.google.com with SMTP id 5b1f17b1804b1-43947a0919aso46334985e9.0 for ; Tue, 11 Mar 2025 06:18:21 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1741699100; x=1742303900; darn=vger.kernel.org; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:from:to:cc:subject:date:message-id:reply-to; bh=q3kjR3e+tUhw3L1FQAPtkpKMwUmzOI7e4dVWjhqVqwM=; b=GqgZKTOzQfPAi905c5YmvBCypQts0zgmtYFsl1TJpL5IEjPvx0l2LKgyd7njdeK92I DaDODI5yt2UwldUS0iWgen9/R5rjcRaTRgFSBAadwCZ2fXAmzBWq8h3wPCeNgmZrHR2d SoWQBObMopX6qhlYXtxyUaZSJqdaCxUFiNm1vHQm6qjqyKkz8TQ6PZhDTnbHeIDLTKdQ 4vD3RthaJfMTAydVeBc8bZ6oxxqYsE7dCsCJzmkJXQa55JZUkiYPHA+uC2d/i4jk9MoD EXvifftU5AwbZvOJuUGhvvw/Er3MHm179Q4lvlWN9wnTwcNOYKrg2ohWah9JzogTZZM4 9BFQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741699100; x=1742303900; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=q3kjR3e+tUhw3L1FQAPtkpKMwUmzOI7e4dVWjhqVqwM=; b=ZqaUuTvujdqZkYP9xmNubYIL2FfKiIfYLAdEjCMu/9W6I0e/LXYxDGl6WhdmrNbwpP 1DxSUfOnt/BKd086swoqtwp5eAaSZtBROjqI5SL0vIyW6P78eSC64WeA4ggWn0Bn74rt Ma8gvKRaFIn1bZzUbrQ3QoQd/nbuWG2hiC7LnC7+XTIfe56hTLk0Hl27qYaCHtKX7qlr xKx7+/eqlxKjQPgubb4vSW0xFSzrkkgbeW7O/y8wv6Kr4BApOWBON6WkkAzmCM/IPDGe AURIXi0RcokkaoGF2UNB6ApeOcAzSKdyUAXgwDtI81YRL726hamcQLI/ri+oaDdLpoQg /ZRw== X-Forwarded-Encrypted: i=1; AJvYcCWpnI6MdLtGA27CxdbCAEl1hGRcqKyDJfYXGWcMVf7MNp+exBNSk5nvQpGDXTU1GuQ0ZMqE/81D1gY0z4/XoxM=@vger.kernel.org X-Gm-Message-State: AOJu0YyC1bF/zSjktNfPOk8IRUsRAf0M54ZoQq31w2hnnwyLGU4pg0yu AfvSysiibmxqWsE6UXYsfL9yJKXyB1/j6uHelLgJI4LhURWGs9sFp1GzFO+KAkN9K3LrPjSqMbh ao0lihlA8kw== X-Google-Smtp-Source: AGHT+IFvDSGF/OHbPFKrTNFDJv2bYNbhXrjsIZlG+nsyMMEqyV04VNqP84+SWfbxxSYLZ4nKYbR3gmw1XGhYsg== X-Received: from wmpz16.prod.google.com ([2002:a05:600c:a10:b0:43c:ee49:c14d]) (user=jackmanb job=prod-delivery.src-stubby-dispatcher) by 2002:a05:600c:3ba3:b0:43c:fcbc:968c with SMTP id 5b1f17b1804b1-43cfcbc97d3mr87744455e9.7.1741699100416; Tue, 11 Mar 2025 06:18:20 -0700 (PDT) Date: Tue, 11 Mar 2025 13:18:12 +0000 In-Reply-To: <20250311-mm-selftests-v4-0-dec210a658f5@google.com> Precedence: bulk X-Mailing-List: linux-kselftest@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: Mime-Version: 1.0 References: <20250311-mm-selftests-v4-0-dec210a658f5@google.com> X-Mailer: b4 0.14.2 Message-ID: <20250311-mm-selftests-v4-1-dec210a658f5@google.com> Subject: [PATCH v4 01/12] selftests/mm: Report errno when things fail in gup_longterm From: Brendan Jackman To: Lorenzo Stoakes , Andrew Morton , Shuah Khan Cc: Dev Jain , linux-mm@kvack.org, linux-kselftest@vger.kernel.org, linux-kernel@vger.kernel.org, Brendan Jackman Just reporting failure doesn't tell you what went wrong. This can fail in different ways so report errno to help the reader get started debugging. Reviewed-by: Dev Jain Signed-off-by: Brendan Jackman --- tools/testing/selftests/mm/gup_longterm.c | 37 ++++++++++++++++++------------- 1 file changed, 21 insertions(+), 16 deletions(-) diff --git a/tools/testing/selftests/mm/gup_longterm.c b/tools/testing/selftests/mm/gup_longterm.c index 9423ad439a6140163bdef2974615bb86406a8c14..15335820656b1c143b440b8a1065a025378e22a2 100644 --- a/tools/testing/selftests/mm/gup_longterm.c +++ b/tools/testing/selftests/mm/gup_longterm.c @@ -96,13 +96,13 @@ static void do_test(int fd, size_t size, enum test_type type, bool shared) int ret; if (ftruncate(fd, size)) { - ksft_test_result_fail("ftruncate() failed\n"); + ksft_test_result_fail("ftruncate() failed (%s)\n", strerror(errno)); return; } if (fallocate(fd, 0, 0, size)) { if (size == pagesize) - ksft_test_result_fail("fallocate() failed\n"); + ksft_test_result_fail("fallocate() failed (%s)\n", strerror(errno)); else ksft_test_result_skip("need more free huge pages\n"); return; @@ -112,7 +112,7 @@ static void do_test(int fd, size_t size, enum test_type type, bool shared) shared ? MAP_SHARED : MAP_PRIVATE, fd, 0); if (mem == MAP_FAILED) { if (size == pagesize || shared) - ksft_test_result_fail("mmap() failed\n"); + ksft_test_result_fail("mmap() failed (%s)\n", strerror(errno)); else ksft_test_result_skip("need more free huge pages\n"); return; @@ -130,7 +130,7 @@ static void do_test(int fd, size_t size, enum test_type type, bool shared) */ ret = mprotect(mem, size, PROT_READ); if (ret) { - ksft_test_result_fail("mprotect() failed\n"); + ksft_test_result_fail("mprotect() failed (%s)\n", strerror(errno)); goto munmap; } /* FALLTHROUGH */ @@ -165,18 +165,20 @@ static void do_test(int fd, size_t size, enum test_type type, bool shared) args.flags |= rw ? PIN_LONGTERM_TEST_FLAG_USE_WRITE : 0; ret = ioctl(gup_fd, PIN_LONGTERM_TEST_START, &args); if (ret && errno == EINVAL) { - ksft_test_result_skip("PIN_LONGTERM_TEST_START failed\n"); + ksft_test_result_skip("PIN_LONGTERM_TEST_START failed (EINVAL)n"); break; } else if (ret && errno == EFAULT) { ksft_test_result(!should_work, "Should have failed\n"); break; } else if (ret) { - ksft_test_result_fail("PIN_LONGTERM_TEST_START failed\n"); + ksft_test_result_fail("PIN_LONGTERM_TEST_START failed (%s)\n", + strerror(errno)); break; } if (ioctl(gup_fd, PIN_LONGTERM_TEST_STOP)) - ksft_print_msg("[INFO] PIN_LONGTERM_TEST_STOP failed\n"); + ksft_print_msg("[INFO] PIN_LONGTERM_TEST_STOP failed (%s)\n", + strerror(errno)); /* * TODO: if the kernel ever supports long-term R/W pinning on @@ -202,7 +204,8 @@ static void do_test(int fd, size_t size, enum test_type type, bool shared) /* Skip on errors, as we might just lack kernel support. */ ret = io_uring_queue_init(1, &ring, 0); if (ret < 0) { - ksft_test_result_skip("io_uring_queue_init() failed\n"); + ksft_test_result_skip("io_uring_queue_init() failed (%s)\n", + strerror(-ret)); break; } /* @@ -215,13 +218,15 @@ static void do_test(int fd, size_t size, enum test_type type, bool shared) /* Only new kernels return EFAULT. */ if (ret && (errno == ENOSPC || errno == EOPNOTSUPP || errno == EFAULT)) { - ksft_test_result(!should_work, "Should have failed\n"); + ksft_test_result(!should_work, "Should have failed (%s)\n", + strerror(errno)); } else if (ret) { /* * We might just lack support or have insufficient * MEMLOCK limits. */ - ksft_test_result_skip("io_uring_register_buffers() failed\n"); + ksft_test_result_skip("io_uring_register_buffers() failed (%s)\n", + strerror(-ret)); } else { ksft_test_result(should_work, "Should have worked\n"); io_uring_unregister_buffers(&ring); @@ -249,7 +254,7 @@ static void run_with_memfd(test_fn fn, const char *desc) fd = memfd_create("test", 0); if (fd < 0) { - ksft_test_result_fail("memfd_create() failed\n"); + ksft_test_result_fail("memfd_create() failed (%s)\n", strerror(errno)); return; } @@ -266,13 +271,13 @@ static void run_with_tmpfile(test_fn fn, const char *desc) file = tmpfile(); if (!file) { - ksft_test_result_fail("tmpfile() failed\n"); + ksft_test_result_fail("tmpfile() failed (%s)\n", strerror(errno)); return; } fd = fileno(file); if (fd < 0) { - ksft_test_result_fail("fileno() failed\n"); + ksft_test_result_fail("fileno() failed (%s)\n", strerror(errno)); goto close; } @@ -290,12 +295,12 @@ static void run_with_local_tmpfile(test_fn fn, const char *desc) fd = mkstemp(filename); if (fd < 0) { - ksft_test_result_fail("mkstemp() failed\n"); + ksft_test_result_fail("mkstemp() failed (%s)\n", strerror(errno)); return; } if (unlink(filename)) { - ksft_test_result_fail("unlink() failed\n"); + ksft_test_result_fail("unlink() failed (%s)\n", strerror(errno)); goto close; } @@ -317,7 +322,7 @@ static void run_with_memfd_hugetlb(test_fn fn, const char *desc, fd = memfd_create("test", flags); if (fd < 0) { - ksft_test_result_skip("memfd_create() failed\n"); + ksft_test_result_skip("memfd_create() failed (%s)\n", strerror(errno)); return; } From patchwork Tue Mar 11 13:18:13 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Brendan Jackman X-Patchwork-Id: 14011850 Received: from mail-wm1-f73.google.com (mail-wm1-f73.google.com [209.85.128.73]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 10A321BD517 for ; Tue, 11 Mar 2025 13:18:23 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.73 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1741699105; cv=none; b=Imr+LPv0Pd8YCx50X8OCip9kwZuizgSPZIqzkR0q4F6iHxlsr10RFWbykFIPoZ+RN4BKJh0MywEQNJjgbPoeU1c4HwygIWNNkd9NFG1vJID18nn1ovE3MFxhIAA4R4sGFplQbvM+P3nmsYqtlDelaGjch6CUhiTGQlcLnZm9i4M= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1741699105; c=relaxed/simple; bh=epdKFY+uVF/7PgVLHKRyqByV9Sxbc8LmSXgVAXlQ4wM=; h=Date:In-Reply-To:Mime-Version:References:Message-ID:Subject:From: To:Cc:Content-Type; b=RRv3X+R/FstQo01p3hp03oKA5981pbJnIh2lJ3cKmlcgoK9qRFdrQi0rGPd9Nkq7I0MR9xceQAm2NTZSzaPp7JgmkfIJscO21BWv13YpPMnTzjjsChHF3I0j3Ce+xvTNYUfJrq3xvXGSileGGMn9X7UVGqCKeGJkc0Mr65kHhw4= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com; spf=pass smtp.mailfrom=flex--jackmanb.bounces.google.com; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b=oS7wC3oS; arc=none smtp.client-ip=209.85.128.73 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=flex--jackmanb.bounces.google.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b="oS7wC3oS" Received: by mail-wm1-f73.google.com with SMTP id 5b1f17b1804b1-43d025a52c2so5583005e9.0 for ; Tue, 11 Mar 2025 06:18:23 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1741699102; x=1742303902; darn=vger.kernel.org; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:from:to:cc:subject:date:message-id:reply-to; bh=eNnWwlE7ZfA4njYaSa6+RHThvRYMfszFV0jljda2YI4=; b=oS7wC3oSPKVKVSYi9w/ORJ7KYQZjiNZv+3fM72dRJr13uKfg0uEd5+jLFVWL7fsJVr MSGW0KYM11lbtGGfCUpobD9HvTJtcneT9ylP1Nh9qAf3MGMIZ8gYPQbbJS/S1/0Zrjwm tEM2J8VG6xKZ+YowwX6qMfDkAgv6lbEnwc1jS4ewqQDl2UvWLiuUxqGf0lwCWyt8s+Rv Uj+6/HER2lsE+t+hSUqGNMrpgd0cbsZ/Gtq7eVLVrrYKC2+EKKD9f0OPkvNSjqHWMjHs 1gzy0fOpsbUe/P9X3liFZ16+Xbi7femne/lgeWAa2ZpRWinY4iBgzhUCEP/E/w8PYDbo AnPQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741699102; x=1742303902; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=eNnWwlE7ZfA4njYaSa6+RHThvRYMfszFV0jljda2YI4=; b=nZm4kPei9EQ0R64SjMZggyRhr1gUJ64QAem8EhbBFMVy9GK0CwT034f7GJ/NvvZCIG oZ9Gen9O8VMV/9ESJB+JDiDvccbt8mCjePnsPu5ycfkqE8AaWnP1qLTxS3sJaov6WCDK 1iYjgn9NIMb5AOtTFWYkjDOlnNibGvi5sEkLqmq1ugyATdboQ6A5bsewGW3ZaU0cewJp 5620ugXVWVDJ4oCCq5LEsMKQG2AkBHNWC1rluU/lhM+sM/nATIVib/AYR3Q2u4JpimzN 88vHNhuBBGHug046fZ/mANv84Dj0pgvHjeE9uGH6Yc+o2ojeiS0a3H9c4+QnoeT+Zt4z O1gA== X-Forwarded-Encrypted: i=1; AJvYcCVRVfjAqlWxIhzoFtcTFdD7u3iUlr5iMEqjaZ6amywW0jlaWD8QCBo+USMLFUslyfpnldRknn6M+uNzXuljz64=@vger.kernel.org X-Gm-Message-State: AOJu0YzliJWaT5MslZuA/2BKDiFr0s6kxIssrwkQd7w3I3T7iLdFMBPa L4VThXGCycgHIflaifwREXEz0Y8Zi599v/be/mAt7EYpZKlw+pY213jTw88q8svH9c574BbDWcQ 4Vks6jciUMQ== X-Google-Smtp-Source: AGHT+IF00DB9vxEjSFZYMwiT0cUkAqXFwWmkRj0Y1btbCtCISAk52bWxBSSNcRq9+pCP65pccsXXfMuEUhHyLQ== X-Received: from wmbfk3.prod.google.com ([2002:a05:600c:cc3:b0:43b:c336:7b29]) (user=jackmanb job=prod-delivery.src-stubby-dispatcher) by 2002:a05:600c:3512:b0:43c:fded:9654 with SMTP id 5b1f17b1804b1-43cfded98b3mr57431755e9.19.1741699102457; Tue, 11 Mar 2025 06:18:22 -0700 (PDT) Date: Tue, 11 Mar 2025 13:18:13 +0000 In-Reply-To: <20250311-mm-selftests-v4-0-dec210a658f5@google.com> Precedence: bulk X-Mailing-List: linux-kselftest@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: Mime-Version: 1.0 References: <20250311-mm-selftests-v4-0-dec210a658f5@google.com> X-Mailer: b4 0.14.2 Message-ID: <20250311-mm-selftests-v4-2-dec210a658f5@google.com> Subject: [PATCH v4 02/12] selftests/mm: Skip uffd-stress if userfaultfd not available From: Brendan Jackman To: Lorenzo Stoakes , Andrew Morton , Shuah Khan Cc: Dev Jain , linux-mm@kvack.org, linux-kselftest@vger.kernel.org, linux-kernel@vger.kernel.org, Brendan Jackman It's pretty obvious that the test wouldn't work if you don't have the feature enabled. But, it's still useful to SKIP instead of failing so the reader can immediately tell that this is the reason why. Reviewed-by: Dev Jain Signed-off-by: Brendan Jackman --- tools/testing/selftests/mm/uffd-stress.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tools/testing/selftests/mm/uffd-stress.c b/tools/testing/selftests/mm/uffd-stress.c index 944d559ade21f255404eb38557660e54e81d46b8..91174e9425cde2500b459db78cb27adda6647b55 100644 --- a/tools/testing/selftests/mm/uffd-stress.c +++ b/tools/testing/selftests/mm/uffd-stress.c @@ -412,8 +412,8 @@ static void parse_test_type_arg(const char *raw_type) * feature. */ - if (uffd_get_features(&features)) - err("failed to get available features"); + if (uffd_get_features(&features) && errno == ENOENT) + ksft_exit_skip("failed to get available features (%d)\n", errno); test_uffdio_wp = test_uffdio_wp && (features & UFFD_FEATURE_PAGEFAULT_FLAG_WP); From patchwork Tue Mar 11 13:18:14 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Brendan Jackman X-Patchwork-Id: 14011851 Received: from mail-wm1-f73.google.com (mail-wm1-f73.google.com [209.85.128.73]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id C221B1C3BEA for ; Tue, 11 Mar 2025 13:18:25 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.73 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1741699107; cv=none; b=oiQS1qbC6PwfYfDiC/O0IG3qh5Gxw0f9h9MiixbdFNqHF5RJg81MKhksFbDiAbGNGpYO+0sPDeI2DNUetGWG/4uptDRqEJ/n7l3EgSfIvYJ0Crrp4Ro8CL6O8TThpcAwFAt6OWpM/ORJePn5H1jN6QtXy7ww963TKgfE65v8geo= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1741699107; c=relaxed/simple; bh=YI+QfZYo+Ua4IptGRz3TLf+pOBqxcgMjursiHKuuqQg=; h=Date:In-Reply-To:Mime-Version:References:Message-ID:Subject:From: To:Cc:Content-Type; b=nuX+3dq64WD5qXLLjPH7aT1Fs1bSOKB3cJq8M5UD2FJnbdH1B7ODgn5GoXjWvM2BdvzZFt3Fqir4B2lobDMBFai7Vm6Pud3n3tMKcGFd2NdRnCqYi5TWqQpY/l3zRkO5HWNFLu6vbXwOkaKvdP/8OO4NSjqehtjrDheJdinfZ1Q= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com; spf=pass smtp.mailfrom=flex--jackmanb.bounces.google.com; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b=EsN2Npuv; arc=none smtp.client-ip=209.85.128.73 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=flex--jackmanb.bounces.google.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b="EsN2Npuv" Received: by mail-wm1-f73.google.com with SMTP id 5b1f17b1804b1-43943bd1409so37916685e9.3 for ; Tue, 11 Mar 2025 06:18:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1741699104; x=1742303904; darn=vger.kernel.org; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:from:to:cc:subject:date:message-id:reply-to; bh=mU0cRsNzbsuSP1E5sjoXt0xKYtlq+gxz63wOE52l3IA=; b=EsN2NpuvnZRBWPwHVjVhZUlAvWVacGYo/2PJwIenfRAOgHz1eyNNJMdMDLqHzqyvA0 aU469XLW91EJUqiyViSiO5yqrPIHoVG2eir/YAB2TkteKxe5xEFRH9Hhzbd+vcsVVbQ7 lr9cqyBPkHCSLnCzR08Fb/BDQcZarXiwL+iU90qkbMGeh3LYivhVc+BwbexhFUN+SvRz u62+uvLEmD/0hHvoO5Amfh99qGA6z4JU+zdeEFCTKfYmYvKk4NyKA0NzHMjPTCSU1ZaN BTXKoAJUkvsfUL16UdFuJeQH9WBQgwo1ZeCcTCdwqO37+B1ZAHsqkXSeqfB59Tfwi9TK dpEg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741699104; x=1742303904; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=mU0cRsNzbsuSP1E5sjoXt0xKYtlq+gxz63wOE52l3IA=; b=laqzFSWdFYYLn49n1WWBLMvUTQT+v5bOJY25rn5rRZDveig6oLRy/Udk304Z+K9gVb O3kiowBoc+iQz2IXBxDM/ASwNFyuh4kq7svPzxcxBrcklmlX7t+BSp8vLxZEyGAuZlSp g3nwumknmXKN8cq1Fi1X9F4MqC6ZOsQNQSVkhHVOGbL8ogK9jCitckHUEpTwAcQX5myE +wIIFpbmK8f0LjKq/Tv240/TB1YfUG8fT7geo9aJ+iCIBeVDZ6HtwywL49cVju/m+rfv z2xkpwQD59yUstx7OGE24qi5LebKoNa7225K0iJo/Tzdnn/P20tJrMWwdRbIsUBa+9/Z Wetw== X-Forwarded-Encrypted: i=1; AJvYcCXVRBg7mSHMN6BskkPff3wnWsbuoWvrYtqds350888/WOmx0TgEUN04tG9dj3raTz2YwSRCst6aGiwiN3biJ/o=@vger.kernel.org X-Gm-Message-State: AOJu0YzyfrF/5wS98ynYIkuK4YCDNqlUANuquhyn3uRzXrC6TCwCYlr0 UaH64k4ZKz4Y38B9xiLLqNEx4AIc0j+RiP/B1IaHDP/hQp7JrRRqh3wUi9LPo9kosX9tYF2bhOG a9qP/lXxfRQ== X-Google-Smtp-Source: AGHT+IGSV21QBYLlvs34tFS6Vj4C4TFSxgnu4bOOKFjZdG2VcNI1hO3z4RNOQPjlkVLg4FfQFOtvmKJGtJlrQA== X-Received: from wmpz16.prod.google.com ([2002:a05:600c:a10:b0:43c:ee49:c14d]) (user=jackmanb job=prod-delivery.src-stubby-dispatcher) by 2002:a05:600c:46cd:b0:43c:ee3f:2c3 with SMTP id 5b1f17b1804b1-43cee3f0578mr100814485e9.7.1741699104325; Tue, 11 Mar 2025 06:18:24 -0700 (PDT) Date: Tue, 11 Mar 2025 13:18:14 +0000 In-Reply-To: <20250311-mm-selftests-v4-0-dec210a658f5@google.com> Precedence: bulk X-Mailing-List: linux-kselftest@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: Mime-Version: 1.0 References: <20250311-mm-selftests-v4-0-dec210a658f5@google.com> X-Mailer: b4 0.14.2 Message-ID: <20250311-mm-selftests-v4-3-dec210a658f5@google.com> Subject: [PATCH v4 03/12] selftests/mm: Skip uffd-wp-mremap if userfaultfd not available From: Brendan Jackman To: Lorenzo Stoakes , Andrew Morton , Shuah Khan Cc: Dev Jain , linux-mm@kvack.org, linux-kselftest@vger.kernel.org, linux-kernel@vger.kernel.org, Brendan Jackman It's obvious that this should fail in that case, but still, save the reader the effort of figuring out that they've run into this by just SKIPping Reviewed-by: Dev Jain Signed-off-by: Brendan Jackman --- tools/testing/selftests/mm/uffd-wp-mremap.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/tools/testing/selftests/mm/uffd-wp-mremap.c b/tools/testing/selftests/mm/uffd-wp-mremap.c index 2c4f984bd73caa17e12b9f4a5bb71e7fdf5d8554..c2ba7d46c7b4581a3c32a6b6acd148e3e89c2172 100644 --- a/tools/testing/selftests/mm/uffd-wp-mremap.c +++ b/tools/testing/selftests/mm/uffd-wp-mremap.c @@ -182,7 +182,10 @@ static void test_one_folio(size_t size, bool private, bool swapout, bool hugetlb /* Register range for uffd-wp. */ if (userfaultfd_open(&features)) { - ksft_test_result_fail("userfaultfd_open() failed\n"); + if (errno == ENOENT) + ksft_test_result_skip("userfaultfd not available\n"); + else + ksft_test_result_fail("userfaultfd_open() failed\n"); goto out; } if (uffd_register(uffd, mem, size, false, true, false)) { From patchwork Tue Mar 11 13:18:15 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Brendan Jackman X-Patchwork-Id: 14011852 Received: from mail-wm1-f74.google.com (mail-wm1-f74.google.com [209.85.128.74]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id BCF2E1C9DC6 for ; Tue, 11 Mar 2025 13:18:27 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.74 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1741699109; cv=none; b=rdoF/GFS7KJ7Bf+eTmG928uhGIXiio3V3mQjCsqzPkv2RCe8D779zJ+TZX8HkpYoRt+3b67GMa3q5v6MQ9uK1EYLQaLvBhrdxI4LmidWYuaVwTpa4cAyTOx0I1VY3gWFczWfv7FDPBBb+2fX1JND3qgsVlKxythqnCJ/Omg+8fo= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1741699109; c=relaxed/simple; bh=7cu9Mo5jePwqRqrQo8QLwmI2cqs8fPM09Kmi4kZUvjs=; h=Date:In-Reply-To:Mime-Version:References:Message-ID:Subject:From: To:Cc:Content-Type; b=jnY9dH5T723J9ody4uWdYv8uk2q+rwn7XlFXQBfMaSA/TJClCoKNhlslTrMjONLbK4QTZ/Nkxtm/iGjjOaz6D8nmmoJOP2RCz0SYpqSFOKNoSs0HX1v/Qccz8RNa+S47vBq4ay26drNdl5BK0jCp3VfjeTXsuV1dEsh8TQRivww= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com; spf=pass smtp.mailfrom=flex--jackmanb.bounces.google.com; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b=n7rBrxT2; arc=none smtp.client-ip=209.85.128.74 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=flex--jackmanb.bounces.google.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b="n7rBrxT2" Received: by mail-wm1-f74.google.com with SMTP id 5b1f17b1804b1-43cf172ffe1so21726945e9.3 for ; Tue, 11 Mar 2025 06:18:27 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1741699106; x=1742303906; darn=vger.kernel.org; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:from:to:cc:subject:date:message-id:reply-to; bh=5QUtJ68S5WVMBdPVxDoGekz8XvAVXh0h8UUq5TqoFAw=; b=n7rBrxT2Yk8Ff/HuAbhiwpQDQKDuYlr7cRXL7aJjI61NU3ZU734PgVzJSawdaxQRdJ blvMsdcYwwUzdtosHTMe9ywU+Tcsk/mlYq/n6/4lO1TeY8FvOyXLKhBGZKQpnqflEf6s slXmCM1byGNUDvZYm0opb8lh2Bl/uUzlDrcuMWdicbJKNTMzKc/ZhSbc5zU5lwuwBcDN d+OrCMqqVz18FN/MfKZgQFX+CEwcyEIyiKkgldDSXLMa6hv8y6fzLArN1VwqAthWLdbX Yd32i2kq50JBSvAz92bF3U8u/dW66B9uA2cNqSR8Z63OA9WDpAcNG2uPv5F5rH0EAao+ HCWg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741699106; x=1742303906; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=5QUtJ68S5WVMBdPVxDoGekz8XvAVXh0h8UUq5TqoFAw=; b=fdxTZrY9lxG4jF0lp701IcrphWj2pnrlylWxJPksqHswo74HTmQNFiNtbiEVoEvGif iCFHUxjIWiv0uK5t01uO6ANBibpNH2cTM/kA7yUtJQjNS61lM/H1DSPeC4yCt9w70E8m KiN/cYOLYHvm6txQwQTNg3Q50C9yiE0MbkWlWZ7ifIlCHqdQILUeXxxo4xahKvMeOiTx ZMb4Gk7bPRCs+9/zgDhLpVeJpscs4flaUcepl7z7+0DdaMmjWH7WSFhLJNE8OrHMPyLZ y6Ex6y9Pxjoa9tDAexFNN5WurrI4CxLsB3iqWzwrN52zsZlYt3e7Nra0mLr2LHAZDqLn pgXA== X-Forwarded-Encrypted: i=1; AJvYcCX68BCH3bX7Q1O4t1Ig2p3iYZgQSaGuqQXJslKEwJ0nFuN4OA7TylA7DvJwZUsEzbJIp+eYOT7gRUYc+lNEmww=@vger.kernel.org X-Gm-Message-State: AOJu0Yxs3JKPt92RpCZkWdKaMSScolsnVEwdCSZbpSzAnio81hMbURVy p36lLyymbid12Gzv3JAsZWvmD9408LmeLnggUGB5/g047nWpRZi6kDfLph35TFDV60ZQOj1a+HS FSAhqABqAgQ== X-Google-Smtp-Source: AGHT+IHToyTOs3PPNxoBJUiCtaIlgO3ErHmKsYxSiQO/bRF9eUGsPTje1OCUomarBDaBQGTLwh5n+zuKNOR9zw== X-Received: from wmbet7.prod.google.com ([2002:a05:600c:8187:b0:43c:fad4:7595]) (user=jackmanb job=prod-delivery.src-stubby-dispatcher) by 2002:a05:600c:3554:b0:43c:fffc:787b with SMTP id 5b1f17b1804b1-43cfffc7b0fmr77724175e9.12.1741699106174; Tue, 11 Mar 2025 06:18:26 -0700 (PDT) Date: Tue, 11 Mar 2025 13:18:15 +0000 In-Reply-To: <20250311-mm-selftests-v4-0-dec210a658f5@google.com> Precedence: bulk X-Mailing-List: linux-kselftest@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: Mime-Version: 1.0 References: <20250311-mm-selftests-v4-0-dec210a658f5@google.com> X-Mailer: b4 0.14.2 Message-ID: <20250311-mm-selftests-v4-4-dec210a658f5@google.com> Subject: [PATCH v4 04/12] selftests/mm/uffd: Rename nr_cpus -> nr_parallel From: Brendan Jackman To: Lorenzo Stoakes , Andrew Morton , Shuah Khan Cc: Dev Jain , linux-mm@kvack.org, linux-kselftest@vger.kernel.org, linux-kernel@vger.kernel.org, Brendan Jackman A later commit will bound this variable so it no longer necessarily matches the number of CPUs. Rename it appropriately. Reviewed-by: Dev Jain Signed-off-by: Brendan Jackman --- tools/testing/selftests/mm/uffd-common.c | 8 ++++---- tools/testing/selftests/mm/uffd-common.h | 2 +- tools/testing/selftests/mm/uffd-stress.c | 28 ++++++++++++++-------------- tools/testing/selftests/mm/uffd-unit-tests.c | 2 +- 4 files changed, 20 insertions(+), 20 deletions(-) diff --git a/tools/testing/selftests/mm/uffd-common.c b/tools/testing/selftests/mm/uffd-common.c index 7ad6ba660c7d6f1f5762d0b231b92b05e971a3c5..dd01d2c95175b0329a75e220d2f43c915261090c 100644 --- a/tools/testing/selftests/mm/uffd-common.c +++ b/tools/testing/selftests/mm/uffd-common.c @@ -10,7 +10,7 @@ #define BASE_PMD_ADDR ((void *)(1UL << 30)) volatile bool test_uffdio_copy_eexist = true; -unsigned long nr_cpus, nr_pages, nr_pages_per_cpu, page_size; +unsigned long nr_parallel, nr_pages, nr_pages_per_cpu, page_size; char *area_src, *area_src_alias, *area_dst, *area_dst_alias, *area_remap; int uffd = -1, uffd_flags, finished, *pipefd, test_type; bool map_shared; @@ -269,7 +269,7 @@ void uffd_test_ctx_clear(void) size_t i; if (pipefd) { - for (i = 0; i < nr_cpus * 2; ++i) { + for (i = 0; i < nr_parallel * 2; ++i) { if (close(pipefd[i])) err("close pipefd"); } @@ -365,10 +365,10 @@ int uffd_test_ctx_init(uint64_t features, const char **errmsg) */ uffd_test_ops->release_pages(area_dst); - pipefd = malloc(sizeof(int) * nr_cpus * 2); + pipefd = malloc(sizeof(int) * nr_parallel * 2); if (!pipefd) err("pipefd"); - for (cpu = 0; cpu < nr_cpus; cpu++) + for (cpu = 0; cpu < nr_parallel; cpu++) if (pipe2(&pipefd[cpu * 2], O_CLOEXEC | O_NONBLOCK)) err("pipe"); diff --git a/tools/testing/selftests/mm/uffd-common.h b/tools/testing/selftests/mm/uffd-common.h index a70ae10b5f6206daecc8e19ed3e3bbb388e265aa..7700cbfa397563d2f2bc82be45f96f2fc2032bbe 100644 --- a/tools/testing/selftests/mm/uffd-common.h +++ b/tools/testing/selftests/mm/uffd-common.h @@ -98,7 +98,7 @@ struct uffd_test_case_ops { }; typedef struct uffd_test_case_ops uffd_test_case_ops_t; -extern unsigned long nr_cpus, nr_pages, nr_pages_per_cpu, page_size; +extern unsigned long nr_parallel, nr_pages, nr_pages_per_cpu, page_size; extern char *area_src, *area_src_alias, *area_dst, *area_dst_alias, *area_remap; extern int uffd, uffd_flags, finished, *pipefd, test_type; extern bool map_shared; diff --git a/tools/testing/selftests/mm/uffd-stress.c b/tools/testing/selftests/mm/uffd-stress.c index 91174e9425cde2500b459db78cb27adda6647b55..d6b57e5a2e1d7611aa1588ee41601ce16117a574 100644 --- a/tools/testing/selftests/mm/uffd-stress.c +++ b/tools/testing/selftests/mm/uffd-stress.c @@ -180,12 +180,12 @@ static void *background_thread(void *arg) static int stress(struct uffd_args *args) { unsigned long cpu; - pthread_t locking_threads[nr_cpus]; - pthread_t uffd_threads[nr_cpus]; - pthread_t background_threads[nr_cpus]; + pthread_t locking_threads[nr_parallel]; + pthread_t uffd_threads[nr_parallel]; + pthread_t background_threads[nr_parallel]; finished = 0; - for (cpu = 0; cpu < nr_cpus; cpu++) { + for (cpu = 0; cpu < nr_parallel; cpu++) { if (pthread_create(&locking_threads[cpu], &attr, locking_thread, (void *)cpu)) return 1; @@ -203,7 +203,7 @@ static int stress(struct uffd_args *args) background_thread, (void *)cpu)) return 1; } - for (cpu = 0; cpu < nr_cpus; cpu++) + for (cpu = 0; cpu < nr_parallel; cpu++) if (pthread_join(background_threads[cpu], NULL)) return 1; @@ -219,11 +219,11 @@ static int stress(struct uffd_args *args) uffd_test_ops->release_pages(area_src); finished = 1; - for (cpu = 0; cpu < nr_cpus; cpu++) + for (cpu = 0; cpu < nr_parallel; cpu++) if (pthread_join(locking_threads[cpu], NULL)) return 1; - for (cpu = 0; cpu < nr_cpus; cpu++) { + for (cpu = 0; cpu < nr_parallel; cpu++) { char c; if (bounces & BOUNCE_POLL) { if (write(pipefd[cpu*2+1], &c, 1) != 1) @@ -246,11 +246,11 @@ static int userfaultfd_stress(void) { void *area; unsigned long nr; - struct uffd_args args[nr_cpus]; + struct uffd_args args[nr_parallel]; uint64_t mem_size = nr_pages * page_size; int flags = 0; - memset(args, 0, sizeof(struct uffd_args) * nr_cpus); + memset(args, 0, sizeof(struct uffd_args) * nr_parallel); if (features & UFFD_FEATURE_WP_UNPOPULATED && test_type == TEST_ANON) flags = UFFD_FEATURE_WP_UNPOPULATED; @@ -325,7 +325,7 @@ static int userfaultfd_stress(void) */ uffd_test_ops->release_pages(area_dst); - uffd_stats_reset(args, nr_cpus); + uffd_stats_reset(args, nr_parallel); /* bounce pass */ if (stress(args)) { @@ -359,7 +359,7 @@ static int userfaultfd_stress(void) swap(area_src_alias, area_dst_alias); - uffd_stats_report(args, nr_cpus); + uffd_stats_report(args, nr_parallel); } uffd_test_ctx_clear(); @@ -453,9 +453,9 @@ int main(int argc, char **argv) return KSFT_SKIP; } - nr_cpus = sysconf(_SC_NPROCESSORS_ONLN); + nr_parallel = sysconf(_SC_NPROCESSORS_ONLN); - nr_pages_per_cpu = bytes / page_size / nr_cpus; + nr_pages_per_cpu = bytes / page_size / nr_parallel; if (!nr_pages_per_cpu) { _err("invalid MiB"); usage(); @@ -466,7 +466,7 @@ int main(int argc, char **argv) _err("invalid bounces"); usage(); } - nr_pages = nr_pages_per_cpu * nr_cpus; + nr_pages = nr_pages_per_cpu * nr_parallel; printf("nr_pages: %lu, nr_pages_per_cpu: %lu\n", nr_pages, nr_pages_per_cpu); diff --git a/tools/testing/selftests/mm/uffd-unit-tests.c b/tools/testing/selftests/mm/uffd-unit-tests.c index 74c8bc02b5063f4667c4284c432edc7dee7ba3a5..24ea82ee223184612781adc852460138c4fe28f0 100644 --- a/tools/testing/selftests/mm/uffd-unit-tests.c +++ b/tools/testing/selftests/mm/uffd-unit-tests.c @@ -198,7 +198,7 @@ uffd_setup_environment(uffd_test_args_t *args, uffd_test_case_t *test, nr_pages = UFFD_TEST_MEM_SIZE / page_size; /* TODO: remove this global var.. it's so ugly */ - nr_cpus = 1; + nr_parallel = 1; /* Initialize test arguments */ args->mem_type = mem_type; From patchwork Tue Mar 11 13:18:16 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Brendan Jackman X-Patchwork-Id: 14011853 Received: from mail-wm1-f73.google.com (mail-wm1-f73.google.com [209.85.128.73]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 6E1B01BD01F for ; Tue, 11 Mar 2025 13:18:29 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.73 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1741699111; cv=none; b=Mr9NvTwXDiloc21vU0fftRlf2xnMYeZDRGixfuo1EMZOomKZT8j+6d6QRtQShX1Anlma1kAH8dCzMjbU318++SbLyjHz2588xlvWTCGGBJBL7L72NXGL2x3eDE5zkK9YZ8yrI/dMz7c1dn9aQWawgUBa9eo0G22ZhL9zzZbx59s= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1741699111; c=relaxed/simple; bh=ZAXSMCvr+IvZnGOVJS0yA66QSG3JhZXcjwBrekeGfBs=; h=Date:In-Reply-To:Mime-Version:References:Message-ID:Subject:From: To:Cc:Content-Type; b=HaMIoQBNnBEn+N/LnDn1eefrT6IGInb/qa9iqparaKEIUWVq2ZAdvoAwJlYaAbdfpBDfeUbc8XmWSl/jOamt6gNP/bge4ENfGlYhENeYFmjya287pHJIF7tfXdg2D6wTGK0JjYJxiDzlKlROD0emtsfE0GXNZw22yFHi+FYMqeI= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com; spf=pass smtp.mailfrom=flex--jackmanb.bounces.google.com; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b=nGHkQ7zB; arc=none smtp.client-ip=209.85.128.73 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=flex--jackmanb.bounces.google.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b="nGHkQ7zB" Received: by mail-wm1-f73.google.com with SMTP id 5b1f17b1804b1-43cf327e9a2so18475365e9.3 for ; Tue, 11 Mar 2025 06:18:29 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1741699108; x=1742303908; darn=vger.kernel.org; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:from:to:cc:subject:date:message-id:reply-to; bh=LGBb/Y6S3RxkI/6vwf1UwhFj4ViFPcNM6Jmgh/1tpM4=; b=nGHkQ7zBfBAh0E2oqdVC8DoeXRBzDb5o6fd/qxgNVftEh5BfS8V8XMefPQupXWT6Cw OoQww4SZpH+2vtD0gKBju3YWOhP/JOvNWxnjtmAX5s+LhY3ahfCfVTWaSFD+yjeyK9lF ADOR8NupGkadboMHeDH0b4p0zjHiLs06Z4MNs4l9kHO0Ko6F01ojAkRgm4xdYJWq1M6K 6ORviiK+WXuyCoAXtM06rvSCk66nKR7C++Xlk5Ct5ruvb8JE8RGCaP1ehJ6fteyireFt gqsgKZcmBi23+CC4RMepurGCXka1zQ3mGBvEO2HUgqiN53E/O4MNM6yn3WgURyFj0DzD V4Kw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741699108; x=1742303908; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=LGBb/Y6S3RxkI/6vwf1UwhFj4ViFPcNM6Jmgh/1tpM4=; b=kc6g8WlWPznBCcwrW6PJAsDUCqWj/yaeOlTJhHtsGQYRvqFCx3RtFd8zODCPXRsGTR UALjOEafVxw/vcywGc3YEQlYqRW8JsdAxCt3teN68NWPJW9CY64gUnUifngnTVqPjb9Y k9itTBzKbD1rLhwZvN9zwLsQn0nQGknnRrE1x7Kf/jVuhmph1lmP/MQs1X/K97nwZucq Zw3Fp+F/f5774IqgexL6QLOG/4XWEH4iu59rfy1TZ6bCR+ecFy6tkj1VAXWSr1xgZXst O9C8luthWlmPiWnnGgOkvprr3AYMpHQV6p2u8IAItErKEZutbIUq5gEwZccwqaEZhcXB 1H5A== X-Forwarded-Encrypted: i=1; AJvYcCXDdSfQC08oQYdo0SHOZpzTZBr5GjbCyWs08J5Iged1jIAym33w9Pu4dBd3B9qYT+P/viY5jSrI6RdjseBhhCs=@vger.kernel.org X-Gm-Message-State: AOJu0YwzaC8YiWxoB9wvSSeDROSWhyIhhNLpYNcrpI9UxjASvWEs88zj es6Mh3nbFs8zvue1uQGTEf7BTyfyvFPufvkw6lVX33YeioBqYuNfQMMckPX7FwhFAiJov0h5kX3 DYmF1hdknAA== X-Google-Smtp-Source: AGHT+IEB4Ugao+9oG4PoYlVLqRx0MnCh6L1DYai8LwtyRUN8s3dqA+kO7+QszcVXjAFc8ZgqGgWa+WHaCnWckQ== X-Received: from wmbhc25.prod.google.com ([2002:a05:600c:8719:b0:43c:fce2:1db2]) (user=jackmanb job=prod-delivery.src-stubby-dispatcher) by 2002:a05:600c:4e8f:b0:43c:f184:2e16 with SMTP id 5b1f17b1804b1-43d01bd2167mr54372315e9.5.1741699108122; Tue, 11 Mar 2025 06:18:28 -0700 (PDT) Date: Tue, 11 Mar 2025 13:18:16 +0000 In-Reply-To: <20250311-mm-selftests-v4-0-dec210a658f5@google.com> Precedence: bulk X-Mailing-List: linux-kselftest@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: Mime-Version: 1.0 References: <20250311-mm-selftests-v4-0-dec210a658f5@google.com> X-Mailer: b4 0.14.2 Message-ID: <20250311-mm-selftests-v4-5-dec210a658f5@google.com> Subject: [PATCH v4 05/12] selftests/mm: Print some details when uffd-stress gets bad params From: Brendan Jackman To: Lorenzo Stoakes , Andrew Morton , Shuah Khan Cc: Dev Jain , linux-mm@kvack.org, linux-kselftest@vger.kernel.org, linux-kernel@vger.kernel.org, Brendan Jackman So this can be debugged more easily. Signed-off-by: Brendan Jackman --- tools/testing/selftests/mm/uffd-stress.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/tools/testing/selftests/mm/uffd-stress.c b/tools/testing/selftests/mm/uffd-stress.c index d6b57e5a2e1d7611aa1588ee41601ce16117a574..4ba5bf13a0108435ce8b53340b9e17ccd47e859e 100644 --- a/tools/testing/selftests/mm/uffd-stress.c +++ b/tools/testing/selftests/mm/uffd-stress.c @@ -457,7 +457,8 @@ int main(int argc, char **argv) nr_pages_per_cpu = bytes / page_size / nr_parallel; if (!nr_pages_per_cpu) { - _err("invalid MiB"); + _err("pages_per_cpu = 0, cannot test (%lu / %lu / %lu)", + bytes, page_size, nr_parallel); usage(); } From patchwork Tue Mar 11 13:18:17 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Brendan Jackman X-Patchwork-Id: 14011854 Received: from mail-wm1-f74.google.com (mail-wm1-f74.google.com [209.85.128.74]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 8442C1D5ABA for ; Tue, 11 Mar 2025 13:18:31 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.74 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1741699113; cv=none; b=uFLOkfl2qF9j0UfcHs9B5y7T8mRIlbX/trE6mgn+XMPOjvUzkzkejlL8gzAvqxjEgewOyU2dYvmBr2NhDQH2qV+Ljwc8TBoNWFGmyXQdupkt8D91VsqxWobtiM1qoE5PI0UNo0yXPc50MkM92u/DxSfQqwoJglTxhQdcoV2AUcc= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1741699113; c=relaxed/simple; bh=WQLjLeaas6WAwWHU6F3llD+u+5uqTYbAeh753X/DebM=; h=Date:In-Reply-To:Mime-Version:References:Message-ID:Subject:From: To:Cc:Content-Type; b=KSmJh8ykMwAx3VJraBD91NOh7nzHMjfPrBI7h28zNJKBCd9Qw6ayjZlyIlHI1CojoaWGay/nXVwzX+5B2JvjwZ2UNsdoK8x3AVbjqQ6FzvlU8aQOTdWpg/GTGPkvxKrIwgtzce5Nh4Y/vHn40nzG7SZSUFbfX6n/dGuWmDyMnBk= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com; spf=pass smtp.mailfrom=flex--jackmanb.bounces.google.com; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b=wJkL+yO3; arc=none smtp.client-ip=209.85.128.74 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=flex--jackmanb.bounces.google.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b="wJkL+yO3" Received: by mail-wm1-f74.google.com with SMTP id 5b1f17b1804b1-4394c489babso27387615e9.1 for ; Tue, 11 Mar 2025 06:18:31 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1741699110; x=1742303910; darn=vger.kernel.org; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:from:to:cc:subject:date:message-id:reply-to; bh=E6JjfJOQBkddVu8mbUCQ3JSQzc9s8ZEC60spagx9Tws=; b=wJkL+yO3fIf93hkxRU4CwbWrCDY5tFDTWFNH6DBMUqPtX7rKwvOgdqCAngYBtCNlng //5MUduIipEG+b2DFVYOxnw0VBrABqm6/i3pe3da5sSdbssLKWKHedQ2GLcwyAznD1Lw LOjkPWj0d+EpmzVC4bSoEuA/xMzAQQ2K95WADFDbFIPQ+YFIH/guvc5vQvhrHSGhx5Dv efLIy4K0NukjDKXvA4nEKXGhd/Sbe5mDJQ6BFJzkuqVUtNB4Pnz3D4L/s4li+YHCMUhq bqSzsW7qQNSLlzkqf5AZO6j/VJCoCMvAyUJavYLrR3ZvTC7T8YuO9WyJFziS5jUa3Wgu s6/w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741699110; x=1742303910; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=E6JjfJOQBkddVu8mbUCQ3JSQzc9s8ZEC60spagx9Tws=; b=FZ8SbKi94oRiTx8EWUuaJ2Hn4ZmAlPb6xja52CIuvAPrh/NUUvT3XFDXgs86M+PCKb nOIQ9lFROIiiXEoCb++GqMJCp/4gUBVvHow+INnBvlfycuaKhsL3o5lI2iFeNV4UCA9Q 2+shDZE/EIw1pvZGKKDg5bNI9wF1/J9rkT1Q6m7NEkiXBBj6YTCqaEIh8xgTybjcnt4c dGXP4Ah4Btj0/v9cBawlmBDRR0PPu76kaJhi/KEY3VYPsCtjq3lXVKtRIHVy7uz1n7qo iUqAuvXd3+RudqXLBP8P8ABmAdYAnYU/ErqxzltUPDoVJ6qFI/fZkEYwoyg+e0s0lLgp d6Xg== X-Forwarded-Encrypted: i=1; AJvYcCUGSoDxLGby5a7/pV0DEX0wu6fzt+GKmME62mZRoUmWJUKNvoRM1I5caqDTSwC+KUkAu9/vmdhUxJ251wm2Rbo=@vger.kernel.org X-Gm-Message-State: AOJu0Yw+U3fjyRclZV6ySH1CInnSKgb32YdFGbCPQ3e5/sBkDfvlPa6e LcaDyki4xhRgNjiUOKeG/Duugs7WhQgTNfCFdu/lwKXDmaSU7lYu1hQkGFD0CVgorDCYakgReo1 IfoWNfH8aNA== X-Google-Smtp-Source: AGHT+IEIWvgrPAdW1aYeAn80KnMmveyrFiqXf2KEYlIp8fmgFPw+5h8vHeMIpGYZnJb/sky5I2oxhtfkiMAT0Q== X-Received: from wmbbe8.prod.google.com ([2002:a05:600c:1e88:b0:43c:faa1:bb58]) (user=jackmanb job=prod-delivery.src-stubby-dispatcher) by 2002:a05:600c:4316:b0:43c:e70d:44f9 with SMTP id 5b1f17b1804b1-43ce70d46f4mr104149745e9.18.1741699110016; Tue, 11 Mar 2025 06:18:30 -0700 (PDT) Date: Tue, 11 Mar 2025 13:18:17 +0000 In-Reply-To: <20250311-mm-selftests-v4-0-dec210a658f5@google.com> Precedence: bulk X-Mailing-List: linux-kselftest@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: Mime-Version: 1.0 References: <20250311-mm-selftests-v4-0-dec210a658f5@google.com> X-Mailer: b4 0.14.2 Message-ID: <20250311-mm-selftests-v4-6-dec210a658f5@google.com> Subject: [PATCH v4 06/12] selftests/mm: Don't fail uffd-stress if too many CPUs From: Brendan Jackman To: Lorenzo Stoakes , Andrew Morton , Shuah Khan Cc: Dev Jain , linux-mm@kvack.org, linux-kselftest@vger.kernel.org, linux-kernel@vger.kernel.org, Brendan Jackman , Mateusz Guzik This calculation divides a fixed parameter by an environment-dependent parameter i.e. the number of CPUs. The simple way to avoid machine-specific failures here is to just put a cap on the max value of the latter. Suggested-by: Mateusz Guzik Signed-off-by: Brendan Jackman --- tools/testing/selftests/mm/uffd-stress.c | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/tools/testing/selftests/mm/uffd-stress.c b/tools/testing/selftests/mm/uffd-stress.c index 4ba5bf13a0108435ce8b53340b9e17ccd47e859e..40af7f67c4074d901be6608e5d64bd0490026dae 100644 --- a/tools/testing/selftests/mm/uffd-stress.c +++ b/tools/testing/selftests/mm/uffd-stress.c @@ -435,6 +435,7 @@ static void sigalrm(int sig) int main(int argc, char **argv) { + unsigned long nr_cpus; size_t bytes; if (argc < 4) @@ -453,7 +454,15 @@ int main(int argc, char **argv) return KSFT_SKIP; } - nr_parallel = sysconf(_SC_NPROCESSORS_ONLN); + nr_cpus = sysconf(_SC_NPROCESSORS_ONLN); + if (nr_cpus > 32) { + /* Don't let calculation below go to zero. */ + ksft_print_msg("_SC_NPROCESSORS_ONLN (%lu) too large, capping nr_threads to 32\n", + nr_cpus); + nr_parallel = 32; + } else { + nr_parallel = nr_cpus; + } nr_pages_per_cpu = bytes / page_size / nr_parallel; if (!nr_pages_per_cpu) { From patchwork Tue Mar 11 13:18:18 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Brendan Jackman X-Patchwork-Id: 14011855 Received: from mail-wm1-f73.google.com (mail-wm1-f73.google.com [209.85.128.73]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 835471D9688 for ; Tue, 11 Mar 2025 13:18:33 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.73 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1741699115; cv=none; b=QBVQjQkmv/lv5S1/7iUJQ4cqOnxEvU9hzs/bs9RMX4+6Oz1M2aqvWesP68MTvZ1d1fK9t1L3Rp3xfELulKIW9w2EYphOaJ4y+ZQR0nwtdhph26oHqpSSf/tiMRj77Oa4PA6V8Z6Hh4zaQ96BIZgEXV+pevM3fpDyhDObX3wZm2w= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1741699115; c=relaxed/simple; bh=oSXuPp+IUOl5G2aP9gTCdmTe3j7rVMOxHg2aJoo6Efg=; h=Date:In-Reply-To:Mime-Version:References:Message-ID:Subject:From: To:Cc:Content-Type; b=a2YC6HhZxZ3FXYSmYb/pkDLvhPcsfhAh7PY1vJ2FpCBQqZPS+GPHo5CT5nUayxzs+YbABsymZAHst9R9NYNGytBaQ5CGcUZuyf3O79rA46CbMjqvKWhPE9jFEabvpTG50GxaS9T6DaIQt9Oc2I49PWrU2976gpsYDXOdthFvrLE= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com; spf=pass smtp.mailfrom=flex--jackmanb.bounces.google.com; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b=k2yLkTxQ; arc=none smtp.client-ip=209.85.128.73 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=flex--jackmanb.bounces.google.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b="k2yLkTxQ" Received: by mail-wm1-f73.google.com with SMTP id 5b1f17b1804b1-43941ad86d4so26659495e9.2 for ; Tue, 11 Mar 2025 06:18:33 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1741699112; x=1742303912; darn=vger.kernel.org; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:from:to:cc:subject:date:message-id:reply-to; bh=Vce7eh8mPMitMWqdtTQW3Xgxbt0OG8W7iuQCUiRo4Hc=; b=k2yLkTxQ2K7t2n59+V3hFbYpdZD6A/EB8ugtx/QgGx4dtG91o0lsNwbTBFftlyrDcG ePsgnqUCvkeAkHYrhj6BwgbSa1fWnDN+qRvKnxU9L6jlBvk3otMVj1HvPhoXhtWyXQ2i VnNoWZWUXpyDWrhcPhsM7OZgIqBeGCdoRw6VENCQQ+HI2VtPi8iGMoaeHQQxj1iSlLDS DlyBQHd70iZw9jkzdb4vocACpbwwOi1JEoZl5ogskJJeLzl5L4ANuY7D/R5CreBMEvnl GeuBxaep58xgXsyCeYvf+UsrFyfl8qKBcDJDNLNEn9iJQQw6u45ttvXHX9FzaUvz7aOB lXRg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741699112; x=1742303912; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=Vce7eh8mPMitMWqdtTQW3Xgxbt0OG8W7iuQCUiRo4Hc=; b=Lm0mMTVOCowIvfXiqZTuxZKe7cZMHNyWmg7SOjGE70s7r5404qGC+UftZpyyXnAhvN V+79N4tXNUTvht6fC3TNPGWTNCs5TJdaWrvuYeDGxK6kEmYS0rbvQlMXelWX2XB5IT5y L3FdexeK9Gy9DEhUDylS5vwc3xz9j9/mdtv7PaH4rO6CUYtySrmnWT2JmIjRerdmOp5l ZJLPFpxqxZD5/r9pKbbZ+hQje/ONDPzUU6evupfDrUn17IABh0y4RxdxFn0CNO5fkcC7 YWDUckgCgtnjQBtFL25OPF52j+xzcCXfv8z9CroC4tvIIj0Zp9TxR0IUahK6PKKA+HyL DC3w== X-Forwarded-Encrypted: i=1; AJvYcCW7OsNKf8jmUHMJ72clMscPkOEvVyMXBpik9jyJAi0L2ePizCYUafrgFWGDVL+OW7uyyBkY9oQBjF69QhtxtzY=@vger.kernel.org X-Gm-Message-State: AOJu0Yyj/rPsb1yZ6AIPHpeiOEJRpU5nkSMgaZC320crfFFFhKOTH+KQ NBP9poYBNkl8NSP42sc9HOJ64JbJzE1Eb2d5wIiirnzeph4tcGmL8A9SvXVp3wCqV3+SNLEtjIL XXEvceNRhBw== X-Google-Smtp-Source: AGHT+IH0f6ArUDAT+Z1aqU0gEtWgWP4WVJVxUFx2+ko5jUv3CK2PIBB6GlZGbkJUJj1SHrJwdvtnC7ZX3WPGDQ== X-Received: from wmbbi10.prod.google.com ([2002:a05:600c:3d8a:b0:43d:7e5:30f0]) (user=jackmanb job=prod-delivery.src-stubby-dispatcher) by 2002:a05:600c:45c6:b0:43c:e7ae:4bcf with SMTP id 5b1f17b1804b1-43ce7ae4f6cmr119062035e9.0.1741699112009; Tue, 11 Mar 2025 06:18:32 -0700 (PDT) Date: Tue, 11 Mar 2025 13:18:18 +0000 In-Reply-To: <20250311-mm-selftests-v4-0-dec210a658f5@google.com> Precedence: bulk X-Mailing-List: linux-kselftest@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: Mime-Version: 1.0 References: <20250311-mm-selftests-v4-0-dec210a658f5@google.com> X-Mailer: b4 0.14.2 Message-ID: <20250311-mm-selftests-v4-7-dec210a658f5@google.com> Subject: [PATCH v4 07/12] selftests/mm: Skip map_populate on weird filesystems From: Brendan Jackman To: Lorenzo Stoakes , Andrew Morton , Shuah Khan Cc: Dev Jain , linux-mm@kvack.org, linux-kselftest@vger.kernel.org, linux-kernel@vger.kernel.org, Brendan Jackman It seems that 9pfs does not allow truncating unlinked files, Mark Brown has noted that NFS may also behave this way. It doesn't seem quite right to call this a "bug" but it's probably a special enough case that it makes sense for the test to just SKIP if it happens. Signed-off-by: Brendan Jackman --- tools/testing/selftests/mm/map_populate.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/tools/testing/selftests/mm/map_populate.c b/tools/testing/selftests/mm/map_populate.c index 5c8a53869b1bd287b09a250edf628a66c25c2439..433e54fb634f793f2eb4c53ba6b791045c9f4986 100644 --- a/tools/testing/selftests/mm/map_populate.c +++ b/tools/testing/selftests/mm/map_populate.c @@ -87,6 +87,13 @@ int main(int argc, char **argv) BUG_ON(!ftmp, "tmpfile()"); ret = ftruncate(fileno(ftmp), MMAP_SZ); + if (ret < 0 && errno == ENOENT) { + /* + * This probably means tmpfile() made a file on a filesystem + * that doesn't handle temporary files the way we want. + */ + ksft_exit_skip("ftruncate(fileno(tmpfile())) gave ENOENT, weird filesystem?\n"); + } BUG_ON(ret, "ftruncate()"); smap = mmap(0, MMAP_SZ, PROT_READ | PROT_WRITE, From patchwork Tue Mar 11 13:18:19 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Brendan Jackman X-Patchwork-Id: 14011856 Received: from mail-wm1-f73.google.com (mail-wm1-f73.google.com [209.85.128.73]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id C19FE2222BD for ; Tue, 11 Mar 2025 13:18:35 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.73 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1741699117; cv=none; b=nCLaUjAuf5lEWsMa0SQ4aeovvp7FteOmtAFN0G4J95BDCv7wtj78+KtG+ZJl1867cmvy2mt0ojQ8BAuQy9t0SvbE1Hv2mteIZDejn8vsfspoNOdWFvthZmAklOIY0mjY9mIClA0wMK/pE5CPbsBusdlhlEtHAGJOaAn7DuFJtQc= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1741699117; c=relaxed/simple; bh=0ffvNk6pyNEvDSJ71JGiz95WEqGo3Pzu7Vx603nXPak=; h=Date:In-Reply-To:Mime-Version:References:Message-ID:Subject:From: To:Cc:Content-Type; b=Da94of0uo1eLjB5KQt70zmEaf/29txrscNSQPswrzb6o17x0UD4wMqU1RzwWLLilDvOzeseS6haAQbMGdnVgn4lEneMEeodQfUxuvDnBQdF48DGzklZLN83UauoPqd0e3CrLj5ZXNPVAReiTUoATX8p4DLtL5PFJ6w/joSldYbc= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com; spf=pass smtp.mailfrom=flex--jackmanb.bounces.google.com; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b=yu471ND5; arc=none smtp.client-ip=209.85.128.73 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=flex--jackmanb.bounces.google.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b="yu471ND5" Received: by mail-wm1-f73.google.com with SMTP id 5b1f17b1804b1-43bd0586b86so38647005e9.3 for ; Tue, 11 Mar 2025 06:18:35 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1741699114; x=1742303914; darn=vger.kernel.org; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:from:to:cc:subject:date:message-id:reply-to; bh=vEpPGTTI1xwsz2Fyvp18/EwqSXfTpjR75q3+Kl9ryQ0=; b=yu471ND5enBTBqHrJbxY8o/M7TppQgg9d+D0V12Zxwykl9xD1ialBSGin3kbi5NWpd 2b23svAeQEQY/mP1iC1+pahEfXx/nvQUHMnK+A0gquSZwGApqdNXkbmW88P1qmHJhbw4 uGTtn1MNsoS5GGwlfPVxJO49kirfmqg9/3hTVTbeCfsFsaSUYiYmJ21EpS2ikFg0a7+9 mlssHdfiimWgVZNzWf8Uv2QxYhmt6T6CvkczgNFacudosMfBLVlopW+6SuJCznZJ8ZwV oP/6rKQdZnhE2oqTJsnhv8qkJq6wAl/I8eL6ie8eIACrvrYd2Q+83gdmoY9yUX4h6pDm j/gQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741699114; x=1742303914; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=vEpPGTTI1xwsz2Fyvp18/EwqSXfTpjR75q3+Kl9ryQ0=; b=lgqBjthPQDu9QB1HeZwar1SsGe67T6pSZbZpWXnpg86/nBm8DojWXTTwr56nFzP3Nv oR/hVwNDW/TWtqMN2CKRLplbIYO0Y2zzsxxJNyFenfRlR7HKsCtvIJC4AHOiTSCQmsC3 LFJErHTOZ9pxNB3Onx1nWZY04eqSBet/JOTDjEo9Gm3OrgFdUTi/VW/UrdWoB16f4viT any6+cQQHHKADrKRshDtvy1X2kDsTLhB18nbCaMiQSL9nlgmPg+dyK+xE/4BVWrDAxD4 J4/3gP7NhY4Br3pUOCalyoieGF4eA9oAzwGdnPoMYg9p4dYfP9QgQZNaeZFgmqk2XsRX FY2A== X-Forwarded-Encrypted: i=1; AJvYcCWy5XnHT9/E0LMvuufBtO/ICH4S0YTWklVv0z3eMYzkdE/gQ+nQEfv/VSYKOxZwdty1wv5PODtvt1sIDwZWl6o=@vger.kernel.org X-Gm-Message-State: AOJu0YyyarUFJWj+qQJ9d/BIRNWyEcdcY8C6sw++6j+sayqdmtl786eM lwEPkHLDqIWuWCzKUl+qN85tlwqaVL8FHEg4Nn5TdNX4K7BuS47R5voxAIxAoVnqUTT4rC7Y9yC gASzk4AckhA== X-Google-Smtp-Source: AGHT+IF4wKnonit+EpSv5UW7OYNEJNWqpKGUxuJH1HQv+WZ5yf0iB3xBzk58+Z6A+0FjREeEmIvwD2nZ9cCRYA== X-Received: from wmgg10.prod.google.com ([2002:a05:600d:a:b0:43d:10b:2c42]) (user=jackmanb job=prod-delivery.src-stubby-dispatcher) by 2002:a05:600c:1547:b0:43c:fceb:91f with SMTP id 5b1f17b1804b1-43cfceb0aedmr83968355e9.11.1741699114176; Tue, 11 Mar 2025 06:18:34 -0700 (PDT) Date: Tue, 11 Mar 2025 13:18:19 +0000 In-Reply-To: <20250311-mm-selftests-v4-0-dec210a658f5@google.com> Precedence: bulk X-Mailing-List: linux-kselftest@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: Mime-Version: 1.0 References: <20250311-mm-selftests-v4-0-dec210a658f5@google.com> X-Mailer: b4 0.14.2 Message-ID: <20250311-mm-selftests-v4-8-dec210a658f5@google.com> Subject: [PATCH v4 08/12] selftests/mm: Skip gup_longterm tests on weird filesystems From: Brendan Jackman To: Lorenzo Stoakes , Andrew Morton , Shuah Khan Cc: Dev Jain , linux-mm@kvack.org, linux-kselftest@vger.kernel.org, linux-kernel@vger.kernel.org, Brendan Jackman Some filesystems don't support ftruncate()ing unlinked files. They return ENOENT. In that case, skip the test. Signed-off-by: Brendan Jackman --- tools/testing/selftests/mm/gup_longterm.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/tools/testing/selftests/mm/gup_longterm.c b/tools/testing/selftests/mm/gup_longterm.c index 15335820656b1c143b440b8a1065a025378e22a2..03271442aae5aed060fd44010df552a2eedcdafc 100644 --- a/tools/testing/selftests/mm/gup_longterm.c +++ b/tools/testing/selftests/mm/gup_longterm.c @@ -96,7 +96,15 @@ static void do_test(int fd, size_t size, enum test_type type, bool shared) int ret; if (ftruncate(fd, size)) { - ksft_test_result_fail("ftruncate() failed (%s)\n", strerror(errno)); + if (errno == ENOENT) { + /* + * This can happen if the file has been unlinked and the + * filesystem doesn't support truncating unlinked files. + */ + ksft_test_result_skip("ftruncate() failed with ENOENT\n"); + } else { + ksft_test_result_fail("ftruncate() failed (%s)\n", strerror(errno)); + } return; } From patchwork Tue Mar 11 13:18:20 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Brendan Jackman X-Patchwork-Id: 14011857 Received: from mail-wm1-f73.google.com (mail-wm1-f73.google.com [209.85.128.73]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 906E4255E37 for ; Tue, 11 Mar 2025 13:18:37 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.73 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1741699119; cv=none; b=HmDIlmPj9KOoN/c8p0opsjgvsDlKxc0KFHrjvnLfd2i08569/62FhOjVFoMCIQXBVZlqKauqioP+6RWxa0JkhFMfwDVGJqt9N4LnKbk18KBv0Dk8JRSbC6qrY6LQ5zjOCJ3/uFRr7vpnD9d+xE7/WmrAMoND/T5WjI9RLLnIo/w= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1741699119; c=relaxed/simple; bh=TZCEoOVscJhi1eVQtBkTLxAR5uWerpL1QhTHsmZs710=; h=Date:In-Reply-To:Mime-Version:References:Message-ID:Subject:From: To:Cc:Content-Type; b=HVnqYuSM6volUkMRmzGgDAOgdHqA9LbNwICLwU8UyhCNwDRfBhwitZEfLmbxGFQPIqCVk/e2BmiPQHEMbvjZoclrwDx0iGxEawq22mO/TESHi+pO5XLwIiSiVzrojuyApKbHnyq+h0Y15AeDyusqm7YuS0YTxLDNzFVYVDnwzc4= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com; spf=pass smtp.mailfrom=flex--jackmanb.bounces.google.com; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b=gPIargED; arc=none smtp.client-ip=209.85.128.73 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=flex--jackmanb.bounces.google.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b="gPIargED" Received: by mail-wm1-f73.google.com with SMTP id 5b1f17b1804b1-43cf64f1dc5so12735565e9.2 for ; Tue, 11 Mar 2025 06:18:37 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1741699116; x=1742303916; darn=vger.kernel.org; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:from:to:cc:subject:date:message-id:reply-to; bh=ezfRKweWcsi8VDsOy21QFyFbC65YGuaZroNiYeoxlPc=; b=gPIargED1npa5FTeBubhvT9SAcepTZ61BqJzmsJ7P3EGcVoCvbdkmQqKt5UtgCZMbB yc3yrxi33zkJH/OhaugWuqtxrs4VLF9cj8UNB8Pu2xWgpmPOPGvyGgwAE9rcVIw39hBH yw1Gi/rHxoq6c9ajpxKuS61ZFgKu6PH8pWBGo5rXFdteiCx6O32eKUPyz44xVXB2YsNC r0OxccIIXrQijIFVSuJxr1PY1XbexowNrwCWG8izUr4Wn+rmqp5vxRb+qgohgBEPUQc8 Kh02e+nax9M/bJBOCjRmbnNu6MYAJc3e7DTmQYMzjz1WOyqsJsxcSLlJ0NbOvbwhZK4p tW7Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741699116; x=1742303916; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=ezfRKweWcsi8VDsOy21QFyFbC65YGuaZroNiYeoxlPc=; b=HHeZN0W+tF6S1pAZ+EQt/EJ9pNoqCK33ffRcaWHzOQ7dLWq1BXN1WScDl8c0yPYNoK +WjlACOyrW7wlFAY8j2NMLGU87hR3v8a9uEnscsfEl6EI0n7QzO1+6v0TCkkfcc/SXoC Mj4oK3mGo0IV6DkP9UIY3QRG1UQbM3MLo32vW3lCeaG58Y/BoaO1ZqB2NNqQ68PHbvHm t14+EseLc6PO7pTCm6aXL9e9NsB9LDpcXr5Yhnfwo6gdIuyFFRd9Ut84++bEc5VAhPo6 EF56nDteF8LQ6WqICBjPUGFjO1B707X7QBLkA4xWJ6i6VWEXJXPb5w8LB0dMfzewz2es 2fJA== X-Forwarded-Encrypted: i=1; AJvYcCXN8G5tFbJh8wgvtW02ybW6boJvV5xpj3OuCA2eYrziim4VErE24gCu4dK27h/MelIlqSeGwyI3TnNamGhC6no=@vger.kernel.org X-Gm-Message-State: AOJu0YzcHsGYZKgO3wVbNVQu8ZBZy5X5dwWsTQZa3y4duWY0/M/XG676 c45nFAYhITkzRUebwQfwL8BVugHCuG+dRk7CutRmE9RwOS71g/43g+LUJGYLGQr0cGV9iQfwiKz WXiXPfMNyKA== X-Google-Smtp-Source: AGHT+IGM8dDbafePeprrNK04mscqi9s1n3LRsj1p3n0Stvsl5Ct+lcHP80x8iiWL53VzzL0Jri/DkBOybzhFEg== X-Received: from wmbet7.prod.google.com ([2002:a05:600c:8187:b0:43c:fad4:7595]) (user=jackmanb job=prod-delivery.src-stubby-dispatcher) by 2002:a05:600c:35d1:b0:43d:53c:1ad6 with SMTP id 5b1f17b1804b1-43d053c1decmr18085815e9.26.1741699116150; Tue, 11 Mar 2025 06:18:36 -0700 (PDT) Date: Tue, 11 Mar 2025 13:18:20 +0000 In-Reply-To: <20250311-mm-selftests-v4-0-dec210a658f5@google.com> Precedence: bulk X-Mailing-List: linux-kselftest@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: Mime-Version: 1.0 References: <20250311-mm-selftests-v4-0-dec210a658f5@google.com> X-Mailer: b4 0.14.2 Message-ID: <20250311-mm-selftests-v4-9-dec210a658f5@google.com> Subject: [PATCH v4 09/12] selftests/mm: Drop unnecessary sudo usage From: Brendan Jackman To: Lorenzo Stoakes , Andrew Morton , Shuah Khan Cc: Dev Jain , linux-mm@kvack.org, linux-kselftest@vger.kernel.org, linux-kernel@vger.kernel.org, Brendan Jackman This script must be run as root anyway (see all the writing to privileged files in /proc etc). Remove the unnecessary use of sudo to avoid breaking on single-user systems that don't have sudo. This also avoids confusing readers. Reviewed-by: Dev Jain Signed-off-by: Brendan Jackman --- tools/testing/selftests/mm/run_vmtests.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/testing/selftests/mm/run_vmtests.sh b/tools/testing/selftests/mm/run_vmtests.sh index da7e266681031d2772fb0c4139648904a18e0bf9..0f9fe757c3320a6551e39b6d4552fd4874b0bf43 100755 --- a/tools/testing/selftests/mm/run_vmtests.sh +++ b/tools/testing/selftests/mm/run_vmtests.sh @@ -386,7 +386,7 @@ CATEGORY="madv_populate" run_test ./madv_populate if [ -x ./memfd_secret ] then -(echo 0 | sudo tee /proc/sys/kernel/yama/ptrace_scope 2>&1) | tap_prefix +(echo 0 > /proc/sys/kernel/yama/ptrace_scope 2>&1) | tap_prefix CATEGORY="memfd_secret" run_test ./memfd_secret fi From patchwork Tue Mar 11 13:18:21 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Brendan Jackman X-Patchwork-Id: 14011858 Received: from mail-wm1-f73.google.com (mail-wm1-f73.google.com [209.85.128.73]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id B46802222BD for ; Tue, 11 Mar 2025 13:18:39 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.73 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1741699121; cv=none; b=PAhw86UrjqpEgzZEVxOxFLX39KVwlf65A8nHQ3cemYJdwMaCE1iHtKoPOo9AG2v/MmNIKpwuDc7Rg2jBmHhqMiB/1c5Gw/b9ows5rIYZK6WD0yUcqP3CPdlicGKfq7LAYKMojegXIk4KDHzSew1m3a9Fg/03y3agieTbEV0i6y0= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1741699121; c=relaxed/simple; bh=keuqAf1Yd7pMC60Jehq/im4QvYhNmbzI5DqGZpBJqLI=; h=Date:In-Reply-To:Mime-Version:References:Message-ID:Subject:From: To:Cc:Content-Type; b=B6ZlPmAlgJMOvuuNEFDRN2+My/3OCboNuv8mGR545AT2Te/W0Mt6pURRQ9tfPtOVI3+HTnIkQGXusw2T6GPzISsXywhBLZu8xsXWu3Ge3lvuBtr4tqk3eD7Q4aCDEqWWPDu/77qLCxRgoJYrqlFtsi7jsMdVMrsCdMrY2+PkCt8= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com; spf=pass smtp.mailfrom=flex--jackmanb.bounces.google.com; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b=r8u+PQK9; arc=none smtp.client-ip=209.85.128.73 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=flex--jackmanb.bounces.google.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b="r8u+PQK9" Received: by mail-wm1-f73.google.com with SMTP id 5b1f17b1804b1-43bd8fd03a2so26655355e9.3 for ; Tue, 11 Mar 2025 06:18:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1741699118; x=1742303918; darn=vger.kernel.org; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:from:to:cc:subject:date:message-id:reply-to; bh=h7ic2pHOinjRIlh+O43kggDBsm61b3OXoKlUUGdMcQQ=; b=r8u+PQK9GbqRfxVUanAZh6A/XMo4EDT2oMZ1q8Uo/0jpRjQuNHIxczEEHPIm9oPzgu c3yIthtIbM+U8OMSBHSotcuAfucj6NmSybVqopKRA+qM3dCPhgcJKO8jxGnOiAU3PqR9 J9Xr+kdubXkcNeLEeNXf8NoRE7dK+gVMblUPc4PrS2yqHmzwIriUFFFnko5gDmv0vYPM VdWX6OK6oV/yMIwc0Cs5TUeyYCg6qi9MvV7kalpzmQIcaK5Omk1ClmiW4LE4LTsUbGHz JIsOXoOo2vnLtzrO/w9C72qZ+RUC/2UiWcX5+aPpYzN9WXwq9KnmNuMxNNQ+rr9X5Z4S nCBA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741699118; x=1742303918; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=h7ic2pHOinjRIlh+O43kggDBsm61b3OXoKlUUGdMcQQ=; b=LJoHE2vNjix3ZhmetMnJOwmARETgq0nO4blC5q9DNvnW1qbv7MHS7Ur+vlPCgdHjNH v2Zb5Fu3JxuUjLCq+8NqeVxO2+OgaD8/XrP6hZAuNlYOUX8dd3nyr1H5nCDXYnxVLV7Q tqfq9Lj70VHgY1Lc+2gvy+6MDBUuDKCUvcziyU4+vAVPWX7mqbBa+iHd+S+PKH5LpIDp UotHe4s5ttq7Pnmj+Q2tqxFjT8pZ7dDpV3PygUCrSkqUPKRy3KdZQNGYGtuSxxz2B61A X4rBv9G7BDv/it7piyO0HMQFIMWLhYaTBB9th40hxfOztfmF80AT5anAUMaKBcIaSYbe QUvw== X-Forwarded-Encrypted: i=1; AJvYcCUSQQJ//M1GRQM6u0UElrhZEYsbw0/ruaZQhmb28j1faaX65s9qWZSbg2ewLPi/YQt+ct758fQrdl7x5IWHYSQ=@vger.kernel.org X-Gm-Message-State: AOJu0YwKLI7NxDLQIZOAcHqYCo6FT2+lncUlg3Po923l65WxFYN6yQvo HnGLANbSJwN7WnKMmR4OGAKowy73FgqisBG8ce5NtagX87FBv/x6IYr3AVoY+fnjGU9x/mWqf9+ 3iU+sWcMgOg== X-Google-Smtp-Source: AGHT+IHZlMGTcKX5RZ/uPw4+acv8n0aHStFuR6vrPyvpA6CiIDxxzLWRCjz5dgJEeQYAtTRRHyrT3C1VMcyAzA== X-Received: from wmbea7.prod.google.com ([2002:a05:600c:6747:b0:43c:f8e5:6033]) (user=jackmanb job=prod-delivery.src-stubby-dispatcher) by 2002:a05:600c:3586:b0:43c:ec4c:25b1 with SMTP id 5b1f17b1804b1-43cec4c26d2mr91373805e9.23.1741699118100; Tue, 11 Mar 2025 06:18:38 -0700 (PDT) Date: Tue, 11 Mar 2025 13:18:21 +0000 In-Reply-To: <20250311-mm-selftests-v4-0-dec210a658f5@google.com> Precedence: bulk X-Mailing-List: linux-kselftest@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: Mime-Version: 1.0 References: <20250311-mm-selftests-v4-0-dec210a658f5@google.com> X-Mailer: b4 0.14.2 Message-ID: <20250311-mm-selftests-v4-10-dec210a658f5@google.com> Subject: [PATCH v4 10/12] selftests/mm: Ensure uffd-wp-mremap gets pages of each size From: Brendan Jackman To: Lorenzo Stoakes , Andrew Morton , Shuah Khan Cc: Dev Jain , linux-mm@kvack.org, linux-kselftest@vger.kernel.org, linux-kernel@vger.kernel.org, Brendan Jackman This test allocates a page of every available size and doesn't have any SKIP logic if the allocation fails. So, ensure it's available and skip the test if we can't do so. Signed-off-by: Brendan Jackman --- tools/testing/selftests/mm/run_vmtests.sh | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/tools/testing/selftests/mm/run_vmtests.sh b/tools/testing/selftests/mm/run_vmtests.sh index 0f9fe757c3320a6551e39b6d4552fd4874b0bf43..e86ef8cb37d00e572be8cf0ea9cc8246d4eecd7e 100755 --- a/tools/testing/selftests/mm/run_vmtests.sh +++ b/tools/testing/selftests/mm/run_vmtests.sh @@ -309,9 +309,30 @@ CATEGORY="userfaultfd" run_test ${uffd_stress_bin} hugetlb "$half_ufd_size_MB" 3 CATEGORY="userfaultfd" run_test ${uffd_stress_bin} hugetlb-private "$half_ufd_size_MB" 32 CATEGORY="userfaultfd" run_test ${uffd_stress_bin} shmem 20 16 CATEGORY="userfaultfd" run_test ${uffd_stress_bin} shmem-private 20 16 -CATEGORY="userfaultfd" run_test ./uffd-wp-mremap +# uffd-wp-mremap requires at least one page of each size. +have_all_size_hugepgs=true +declare -A nr_size_hugepgs +for f in /sys/kernel/mm/hugepages/**/nr_hugepages; do + old=$(cat $f) + nr_size_hugepgs["$f"]="$old" + if [ "$old" == 0 ]; then + echo 1 > "$f" + fi + if [ $(cat "$f") == 0 ]; then + have_all_size_hugepgs=false + break + fi +done +if $have_all_size_hugepgs; then + CATEGORY="userfaultfd" run_test ./uffd-wp-mremap +else + echo "# SKIP ./uffd-wp-mremap" +fi #cleanup +for f in "${!nr_size_hugepgs[@]}"; do + echo "${nr_size_hugepgs["$f"]}" > "$f" +done echo "$nr_hugepgs" > /proc/sys/vm/nr_hugepages CATEGORY="compaction" run_test ./compaction_test From patchwork Tue Mar 11 13:18:22 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Brendan Jackman X-Patchwork-Id: 14011859 Received: from mail-wm1-f74.google.com (mail-wm1-f74.google.com [209.85.128.74]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 7C0F525743F for ; Tue, 11 Mar 2025 13:18:41 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.74 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1741699123; cv=none; b=Xe8wSrdF0gBAaBm5dw7rcyWuRXOOTBGBdwns1J7fpUM0vMEXnAtUE/W9vCLwuba22Vg7pSNFP84CEdLQopkgix+1tBH0qcxMcWvjgudPX9vKhc87DQeOL3DY9IX5AAnZVIO4JVMIfnDQPPOEoktjPeHX02kHrcvoG5aA45DCA4g= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1741699123; c=relaxed/simple; bh=cpB8G5qu+8qB5CaAmCrhUFZfkRWT/4ipT85Ja0ySsMc=; h=Date:In-Reply-To:Mime-Version:References:Message-ID:Subject:From: To:Cc:Content-Type; b=lMkAxjZ9ghAjr/MxBNdj5hZgsuYauurmauIWrpDjuDZ4Cudw9IPDlg3TWVyeL90TxAcfmVQiKIuZmqazohumLXgVIQUZj8QCC1XTZce3RVS6Hramj3XMJDQYkKYndJncY/2fveRvjBcmrIuZJQTX9j4AVhwrzDsTun5fAQIBO/U= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com; spf=pass smtp.mailfrom=flex--jackmanb.bounces.google.com; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b=RVRagUag; arc=none smtp.client-ip=209.85.128.74 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=flex--jackmanb.bounces.google.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b="RVRagUag" Received: by mail-wm1-f74.google.com with SMTP id 5b1f17b1804b1-43ced8c2eb7so20519665e9.1 for ; Tue, 11 Mar 2025 06:18:41 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1741699120; x=1742303920; darn=vger.kernel.org; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:from:to:cc:subject:date:message-id:reply-to; bh=AK0S7bcFsX0odpC5RGhRJMkWaOy0j3srCbmbQDGiiBc=; b=RVRagUag7pOLcuZaLduo9a8ik0O+cCOy+ksP98v6w3foNhEejsY7lomibuB1dOzPOv B/2agTO6Xv4f1UceU8u22GOEDCt/Su0ToFd7fmHZyF3Nou/aO8TLUBG0X36O4LsyBEwD W7IuGpdsAqr3L9LIQMBlQbZcnS9Kn4RjO9Fu/aosnt4oxl0rZN3Tko99wdB9hCnO+2nF lqYq1Ep96mzpxVctBwGmPrCkM9RjlWIb9IA4JjE1jOGMi5Z1WXqy6ky54EYv/3aaCIJe Jy1XItIpCxdFSnyHE0XAPHLlRRTQ9YA0B1r3cViip5l73r0lYlwHO8Vkm4zhp9sy9lnd P7CQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741699120; x=1742303920; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=AK0S7bcFsX0odpC5RGhRJMkWaOy0j3srCbmbQDGiiBc=; b=AhjIz9Iy81pNccl/IovKk8R0lQAUt8SsZTuDEdMbHHBjDem5fvJBw4fjhB+i0wconF 6BLQwuKrMVJ6JwiI06mHMu/WMX6MttXuzWABxDAo6uO1HRiKTB29x6lSkvvxvFVSClce zuXHbRfacFQeUdIkegTGBN02bajRDNTLroRctgfjHcQbxERLzuNYfQcCyTxYmipmuiA/ fAJuUVCKd5vNVfnTdb9ml4bIe/5Xo9wCcCQxkMnWFmGew0ONG70mSkMCSGIX1NxuSrEF s6U13uOLpY9T5DRF4HD7DMpESh7X2D9rCs7YEZtqOIXXa+G6fkjISJamyJ4oQ2gTg24u SE5g== X-Forwarded-Encrypted: i=1; AJvYcCWwxQ4xM9lE+kteznzv5EvBesYy9T0X3AMzLymH6kfJKPtwn9zm1B389Y5gjKgtxIex1jML3fK0Q2waMh1QS10=@vger.kernel.org X-Gm-Message-State: AOJu0Yyi4Z5v/WnX8KBCmQf+ERmVXM7KNF3TSiAXr7xy3hDrlYjCSjWL tKe+WyGF+DNSXv/XvTkM9yJc2MoFwtrWR9jJA4KzvDi02QUG6CTH8uGKWZ18JOSSeY8E2NVoL5j 5HIwRjQ54Lw== X-Google-Smtp-Source: AGHT+IFnEky9E+WTZ67n4oDhD85FHBGvf1ZaUlsC4CSzVhw94LW+c4vdMdF17ZTVjJHaNu8o0hoGt9vNnRMLVA== X-Received: from wmpz18.prod.google.com ([2002:a05:600c:a12:b0:43c:ebbe:4bce]) (user=jackmanb job=prod-delivery.src-stubby-dispatcher) by 2002:a05:600c:444d:b0:43c:fe15:41cb with SMTP id 5b1f17b1804b1-43cfe154379mr72788015e9.15.1741699119995; Tue, 11 Mar 2025 06:18:39 -0700 (PDT) Date: Tue, 11 Mar 2025 13:18:22 +0000 In-Reply-To: <20250311-mm-selftests-v4-0-dec210a658f5@google.com> Precedence: bulk X-Mailing-List: linux-kselftest@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: Mime-Version: 1.0 References: <20250311-mm-selftests-v4-0-dec210a658f5@google.com> X-Mailer: b4 0.14.2 Message-ID: <20250311-mm-selftests-v4-11-dec210a658f5@google.com> Subject: [PATCH v4 11/12] selftests/mm: Skip mlock tests if nobody user can't read it From: Brendan Jackman To: Lorenzo Stoakes , Andrew Morton , Shuah Khan Cc: Dev Jain , linux-mm@kvack.org, linux-kselftest@vger.kernel.org, linux-kernel@vger.kernel.org, Brendan Jackman If running from a directory that can't be read by unprivileged users, executing on-fault-test via the nobody user will fail. The kselftest build does give the file the correct permissions, but after being installed it might be in a directory without global execute permissions. Since the script can't safely fix that, just skip if it happens. Note that the stderr of the `ls` command is unfiltered meaning the user sees a "permission denied" error that can help inform them why the test was skipped. Signed-off-by: Brendan Jackman --- tools/testing/selftests/mm/run_vmtests.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/testing/selftests/mm/run_vmtests.sh b/tools/testing/selftests/mm/run_vmtests.sh index e86ef8cb37d00e572be8cf0ea9cc8246d4eecd7e..1467594b594c4fb1dceae875fe7616ecc3cd9382 100755 --- a/tools/testing/selftests/mm/run_vmtests.sh +++ b/tools/testing/selftests/mm/run_vmtests.sh @@ -337,7 +337,7 @@ echo "$nr_hugepgs" > /proc/sys/vm/nr_hugepages CATEGORY="compaction" run_test ./compaction_test -if command -v sudo &> /dev/null; +if command -v sudo &> /dev/null && sudo -u nobody ls ./on-fault-limit >/dev/null; then CATEGORY="mlock" run_test sudo -u nobody ./on-fault-limit else From patchwork Tue Mar 11 13:18:23 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Brendan Jackman X-Patchwork-Id: 14011860 Received: from mail-wm1-f74.google.com (mail-wm1-f74.google.com [209.85.128.74]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 796B71ADC94 for ; Tue, 11 Mar 2025 13:18:43 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.74 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1741699125; cv=none; b=lLFzpsLskwpVuhGL5jkr5dpVAnvzxIphm4O9UQwgWqzt6Y44HBaFIt5IhdfjoOe7w7bripZwXf79gE0OcT3NVk00eqWPEM1BZhMmudfptSJGOY+C7J/24rCr3ogTUH9IGalUx6RFBS6Th+LrbiyM/UI4RxwnVcSkLRscjZnGI2U= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1741699125; c=relaxed/simple; bh=Bvrdg6/K54PEW5JZWuRIH9o+4LbgcalZobFw2iLsFJc=; h=Date:In-Reply-To:Mime-Version:References:Message-ID:Subject:From: To:Cc:Content-Type; b=roJInCrHb2uIXIHpI9UETBE9UrUmfsiubt4y7guzbG4kzCFRaYfRBWqWpcNZX/pcxhAgQ149g+O0S/fcivSGSRMF/uofSD5bTW1r41G5SBGo04wDEeapqLYr27PpOrBRugOmU6CbFTzUZrgS+mpKTBY8uJikdnC3ahb9OeudcRc= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com; spf=pass smtp.mailfrom=flex--jackmanb.bounces.google.com; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b=ZLLQP4AQ; arc=none smtp.client-ip=209.85.128.74 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=flex--jackmanb.bounces.google.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b="ZLLQP4AQ" Received: by mail-wm1-f74.google.com with SMTP id 5b1f17b1804b1-43d0830c3f7so1719315e9.2 for ; Tue, 11 Mar 2025 06:18:43 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1741699122; x=1742303922; darn=vger.kernel.org; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:from:to:cc:subject:date:message-id:reply-to; bh=YKUi+ss9u14qyT/Zwiy2mGBFpcrhT9F3tYQ4X8eVY2g=; b=ZLLQP4AQ/86m29e6rCRtWMtTeJ4eEWH/rlCpuDIVCXqMbKe8fNV+q1YlPeFtxuxIe+ lAr8koA09fyMkn8vlutvIDmUd/99XooEfmYR9a0regP8NemB1GH4ktvpygDyoIYuODsj AFl4V8pwzyMqeK4ZCKYmKEnypV9+1BEKgQTBL5ACML5k8SWU+6u5ExAQnh2n+S7R5R9j xyG7Jv1ypj29SGit1zzZFooCWJY6vRo69jZyCQjHui9JVoa6TQCaH5oKRb+dUCORjpTP xvjiCOnEHtljnCeJWwENRqkIP869oshjj3KTJQBrP+g4v5vM2Pf7ywFYKd9wuh//0Hq/ DobQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741699122; x=1742303922; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=YKUi+ss9u14qyT/Zwiy2mGBFpcrhT9F3tYQ4X8eVY2g=; b=n/U8inB64nhcJB2c1Ofa6pcADrnY+m6lgnkCqTHJvw6TOpUs0WPgu+07qiQv1KJJfG 9Xd1k/YK3Ryz6JHnPlrbk4OKOARhWqGF1lGShkQjWSwJ5hN2f40cH/v4Yr3zF6IZqJ0X 3IK3gkqHq62Vb7eFKkeR19ST1uPvRnxXMAdRvr6It+11azwCikj3ei1NOJtHeVOMza9z Wqbnnf9MpU1RDXCYfc4AxlcwGucmarL0pxB7rklYbPyTCNT5R9BxYNyUAjrQRmZDRkZJ R1qRnc8eZN5+grhfdQkTcNBEOaxgN4mtVKYY0sUJunpAZqa4ZTiXY227zCVoUIXeZ4Oq RyJw== X-Forwarded-Encrypted: i=1; AJvYcCVlW/i+zoURPSlc2Rx5qc+i5r3MVG2FaVGmyX+L25Hwf9gOQGBYzkIKWHWen7sYbUsMrehCjNN4t6i1AKQrXC0=@vger.kernel.org X-Gm-Message-State: AOJu0YzFTdm6AR3A7PxWa+qX0nTyamayAKUvEKONFNYLfMZVcPWwg0K0 yvl5pepW23vwf+9Gh7tox1E+gdlS1Es/IVVdExB03ImC//l1e7DVSmLIcPFpaKR+AbJDN38/7PW r806RdEv3zg== X-Google-Smtp-Source: AGHT+IFEGPTY7Ml+tuTOynefjzLO+UpkB6moVI+rzTawpqu6Ohcjxyu/ir2TjMNVGvCGq6alb9Lb1cZqdGxcFw== X-Received: from wmpz18.prod.google.com ([2002:a05:600c:a12:b0:43c:ebbe:4bce]) (user=jackmanb job=prod-delivery.src-stubby-dispatcher) by 2002:a05:600c:6d9a:b0:43c:ef55:f1e8 with SMTP id 5b1f17b1804b1-43cef55f398mr97810345e9.13.1741699121899; Tue, 11 Mar 2025 06:18:41 -0700 (PDT) Date: Tue, 11 Mar 2025 13:18:23 +0000 In-Reply-To: <20250311-mm-selftests-v4-0-dec210a658f5@google.com> Precedence: bulk X-Mailing-List: linux-kselftest@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: Mime-Version: 1.0 References: <20250311-mm-selftests-v4-0-dec210a658f5@google.com> X-Mailer: b4 0.14.2 Message-ID: <20250311-mm-selftests-v4-12-dec210a658f5@google.com> Subject: [PATCH v4 12/12] selftests/mm/mlock: Print error on failure From: Brendan Jackman To: Lorenzo Stoakes , Andrew Morton , Shuah Khan Cc: Dev Jain , linux-mm@kvack.org, linux-kselftest@vger.kernel.org, linux-kernel@vger.kernel.org, Brendan Jackman It's not really possible to start diagnosing this without knowing the actual error. Also update the mlock2 helper to behave like libc would by setting errno and returning -1. Signed-off-by: Brendan Jackman --- tools/testing/selftests/mm/mlock-random-test.c | 4 ++-- tools/testing/selftests/mm/mlock2.h | 8 +++++++- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/tools/testing/selftests/mm/mlock-random-test.c b/tools/testing/selftests/mm/mlock-random-test.c index 1cd80b0f76c33f04ef01f4dee6602f28b6a7c991..b8d7e966f44c67e5606d384bd660e5a4e5e8fda9 100644 --- a/tools/testing/selftests/mm/mlock-random-test.c +++ b/tools/testing/selftests/mm/mlock-random-test.c @@ -161,9 +161,9 @@ static void test_mlock_within_limit(char *p, int alloc_size) MLOCK_ONFAULT); if (ret) - ksft_exit_fail_msg("%s() failure at |%p(%d)| mlock:|%p(%d)|\n", + ksft_exit_fail_msg("%s() failure (%s) at |%p(%d)| mlock:|%p(%d)|\n", is_mlock ? "mlock" : "mlock2", - p, alloc_size, + strerror(errno), p, alloc_size, p + start_offset, lock_size); } diff --git a/tools/testing/selftests/mm/mlock2.h b/tools/testing/selftests/mm/mlock2.h index 4417eaa5cfb78ba2bb0f51d3418c9b768ff0fe90..81e77fa41901a095cc041e05d01da7dffbf2f4fe 100644 --- a/tools/testing/selftests/mm/mlock2.h +++ b/tools/testing/selftests/mm/mlock2.h @@ -6,7 +6,13 @@ static int mlock2_(void *start, size_t len, int flags) { - return syscall(__NR_mlock2, start, len, flags); + int ret = syscall(__NR_mlock2, start, len, flags); + + if (ret) { + errno = ret; + return -1; + } + return 0; } static FILE *seek_to_smaps_entry(unsigned long addr)