From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail.openvz.org (mail.openvz.org [69.168.225.77]) by lore.virtuozzo.com (Postfix) with ESMTPS id 9D7268107E for ; Mon, 2 Nov 2026 20:07:46 +0000 (UTC) Received: from mail.openvz.org (localhost [127.0.0.1]) by mail.openvz.org (8.14.4/8.14.4) with ESMTP id 6A2K6VHi028623; Mon, 2 Nov 2026 23:06:32 +0300 DKIM-Filter: OpenDKIM Filter v2.11.0 mail.openvz.org 6A2K6VHi028623 Authentication-Results: mail.openvz.org; dkim=fail reason="signature verification failed" (2048-bit key) header.d=virtuozzo.com header.i=@virtuozzo.com header.b="osTM96J9" Received: from mail-wr1-f72.google.com (mail-wr1-f72.google.com [209.85.221.72]) by mail.openvz.org (8.14.4/8.14.4) with ESMTP id 6A2K6Prh028608 (version=TLSv1/SSLv3 cipher=AES128-GCM-SHA256 bits=128 verify=FAIL) for ; Mon, 2 Nov 2026 23:06:26 +0300 DKIM-Filter: OpenDKIM Filter v2.11.0 mail.openvz.org 6A2K6Prh028608 Received: by mail-wr1-f72.google.com with SMTP id ffacd0b85a97d-48b02d63407so2745709f8f.0 for ; Mon, 02 Nov 2026 12:06:26 -0800 (PST) X-Gm-Message-State: APuU4Z97IwU3Lo3Y/TmrJCJ8EOF107JhZyxkXiDtkG60oIpFxidKVNnW DxFvDW3V/lFtZOlb9HAOLT+/ixYAmEyodi+SPq7zBFbC+JoGnZrsN+J3OE95/LEGFDnQd0WGwUx ck/Tz3db1Kclb8nXq/mN55I14AaeHTQqw7pVHUzNDPamC2UR9buLjvw== X-Gm-Gg: AYBFou12xY9rqFav8YxSPZAYi4CleFl864bz4JKInDKFkfLOPPRpYlPSvyl6khBU2zI ik+36A0Dc8NhpbmiLK5eijgaW0ULDMbVIf3E48PlCyOIrqi2WpHibVIu08XnwVw3j+gK2y/bW+Y 88zoYPEUKIutY23iHRImtGnj6Wv2mlyxG0MpG9LvkFBZvMQPcYPfPlFCr7+auPRtT+DZrJzOrm0 OinQWbs0o9wkXKh4qr9wZryA5/ojukK8/mKFKA7PicG0dQkOqRkDupt5UK5O3u12BRhTbqzU2me MNN7qA+WxbPpmUIr4PXJ41Y0b22/p3ETwCnmh6sbyHrW6FwR424esh9hGOnwqbrCWeOVTAcM68f 51maDUV6ZlFIxCDSB8mbQD0qx X-Received: by 2002:a05:6000:4021:b0:48d:e6f6:21cf with SMTP id ffacd0b85a97d-48e6e306900mr25680831f8f.31.1793649985681; Mon, 02 Nov 2026 12:06:25 -0800 (PST) X-Received: by 2002:a05:6000:4021:b0:48d:e6f6:21cf with SMTP id ffacd0b85a97d-48e6e306900mr25680762f8f.31.1793649984903; Mon, 02 Nov 2026 12:06:24 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1793649984; cv=none; d=google.com; s=arc-20260327; b=FtePlFWiOFyvgr8rxaVzcGa66QE1LznH6QsViAFC0P965q/ER3QeWPXDBC+aN88cF7 MeZgF+pYT/CQbVksjpzSafZstvxXerqd7z40ymnSU5HZyxd0E+uNGj8p1oQ8/sxoewU2 /qCCtuSCieb2pU/HvEU8cm5W1uETyDlpFY1OZ9lWX7AH3SrG7M1YiRT5IXRhdPttCWMK +hksi1c1HWFjOcqzZYTi/IgLkIlUkL3CJb9W8iAxIt6/ROaLpuNTs2TVTCP2hrDdokSa o4M8TkeUtAowiGesL/Ji7x3RqvSwdB74TOiEO0okQvIGJ8A1ovJ29Qe2OBN/GRgp5AJ3 FRAw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20260327; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:dkim-signature; bh=95upkdUUP0OQhQp4JaKjfhKIDKWIXteiyludGxbA0q0=; fh=WpT6aB7RBAGHZeWZzqAr71yzRFbPTYkPWKsRagLn48Q=; b=BdNzbBrMXGN8TkcZlSaY7ddul/GYPbQjVsM+IYljX7x9uNj0IYKPDWD4K35r3p8CjL EiBYRdj80fT0qz6OpavnUCbvIUctYynNVY/NDQ0p6XAFxdfsmnEqGKXGqDY4rimdRDUC KNvfcwLfQ+4oiJ6I77o/EOP8JNhYwngLWXdmQhPfMQAtWSwuaD39GhGowH5xrZ/zb/Sg ywTx6qD2YG8TvZCOA3+g4L3++LVN5ph1XeZ0pBUjSQZ1H4Us+wXZsOMCTtEXACsFtFth ybRwmd+Mg3T3f6mtj5i76aEXFlx2egz0QZ7iytVQvi1H0Cm+dqmr/HzMP+ABkF9Wytko LECQ==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@virtuozzo.com header.s=relay header.b=osTM96J9; spf=pass (google.com: domain of eva.kurchatova@virtuozzo.com designates 130.117.225.111 as permitted sender) smtp.mailfrom=eva.kurchatova@virtuozzo.com; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=virtuozzo.com Received: from relay.virtuozzo.com (relay.virtuozzo.com. [130.117.225.111]) by mx.google.com with ESMTPS id ffacd0b85a97d-48e71bd8d94si24451629f8f.483.2026.11.02.12.06.24 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 02 Nov 2026 12:06:24 -0800 (PST) Received-SPF: pass (google.com: domain of eva.kurchatova@virtuozzo.com designates 130.117.225.111 as permitted sender) client-ip=130.117.225.111; Authentication-Results: mx.google.com; dkim=pass header.i=@virtuozzo.com header.s=relay header.b=osTM96J9; spf=pass (google.com: domain of eva.kurchatova@virtuozzo.com designates 130.117.225.111 as permitted sender) smtp.mailfrom=eva.kurchatova@virtuozzo.com; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=virtuozzo.com DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=virtuozzo.com; s=relay; h=MIME-Version:Message-ID:Date:Subject:From: Content-Type; bh=95upkdUUP0OQhQp4JaKjfhKIDKWIXteiyludGxbA0q0=; b=osTM96J9Zzj0 6cuXbszz5g3RSeeuS5/EfAUybtFB3ZJf4Xw0Iax62a+vvM1/ubFpyI7Tuy3QJH230CwY6cCN/j67c yoxV3Sd+i/HXlfe49khb6F2RVLxXnT0ESl7FPTKnEHvLIJSP9mvpbcCW4TE8juzibwDNYOeLyqq7V +x1CT+BDbbwQ5/6em2vsH2+Q/J+ls59AJEOm8D5R5R8e8eTB/U377TuUzEEB9QEFsQtk2XQJcuhao jvatFW9SGrFq2T04kN9w+FMCwv7u4Z+MphCgh4q8JYJ52gkzUVWOU76sOoY3I5WVutZHKs1LfZCCj 6350Oq1JgNq7Pqb+cQFrrQ==; Received: from ch-vpn.virtuozzo.com ([130.117.225.6] helo=LekKit-T14) by relay.virtuozzo.com with esmtp (Exim 4.96) (envelope-from ) id 1xNyEY-00552l-1B; Mon, 02 Nov 2026 21:06:15 +0100 From: Eva Kurchatova To: khorenko@virtuozzo.com Date: Mon, 2 Nov 2026 22:04:37 +0200 Message-ID: <20261102200610.2414832-2-eva.kurchatova@virtuozzo.com> X-Mailer: git-send-email 2.56.0 In-Reply-To: <20261102200610.2414832-1-eva.kurchatova@virtuozzo.com> References: <20261102200610.2414832-1-eva.kurchatova@virtuozzo.com> MIME-Version: 1.0 X-OZ-Fwd: true Cc: devel@openvz.org Subject: [Devel] [PATCH hci-8.1 1/2] selftests/futex: run futex_waitv argument checks with a valid waitv X-BeenThere: devel@openvz.org X-Mailman-Version: 2.1.12 Precedence: list List-Id: OpenVZ development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: devel-bounces@openvz.org Errors-To: devel-bounces@openvz.org The argument checks reuse the waitv[] the shared subtest leaves behind, whose entries point into detached memory, and the invalid clockid check passes NULL waiters. So the kernel can reject a call for a reason other than the one tested. This goes unnoticed while the checks accept any result. Reset waitv[] to valid private futexes before the checks and pass it to the clockid check. Fixes: 5e59c1d1c78c ("selftests: futex: Add sys_futex_waitv() test") https://virtuozzo.atlassian.net/browse/VSTOR-152660 Feature: fix selftests Signed-off-by: Eva Kurchatova --- .../selftests/futex/functional/futex_waitv.c | 26 ++++++++++++++----- 1 file changed, 19 insertions(+), 7 deletions(-) diff --git a/tools/testing/selftests/futex/functional/futex_waitv.c b/tools/testing/selftests/futex/functional/futex_waitv.c index 3706a32102c6..98edb25690d9 100644 --- a/tools/testing/selftests/futex/functional/futex_waitv.c +++ b/tools/testing/selftests/futex/functional/futex_waitv.c @@ -69,6 +69,18 @@ static int join_waiter(pthread_t waiter) return failed != NULL; } +static void set_private_waitv(void) +{ + int i; + + for (i = 0; i < NR_FUTEXES; i++) { + waitv[i].uaddr = (uintptr_t)&futexes[i]; + waitv[i].flags = FUTEX_32 | FUTEX_PRIVATE_FLAG; + waitv[i].val = 0; + waitv[i].__reserved = 0; + } +} + int main(int argc, char *argv[]) { pthread_t waiter; @@ -98,12 +110,7 @@ int main(int argc, char *argv[]) ksft_print_msg("%s: Test FUTEX_WAITV\n", basename(argv[0])); - for (i = 0; i < NR_FUTEXES; i++) { - waitv[i].uaddr = (uintptr_t)&futexes[i]; - waitv[i].flags = FUTEX_32 | FUTEX_PRIVATE_FLAG; - waitv[i].val = 0; - waitv[i].__reserved = 0; - } + set_private_waitv(); /* Private waitv */ if (pthread_create(&waiter, NULL, waiterfn, NULL)) @@ -165,6 +172,9 @@ int main(int argc, char *argv[]) for (i = 0; i < NR_FUTEXES; i++) shmdt(u64_to_ptr(waitv[i].uaddr)); + /* Each check below breaks one argument of an otherwise valid call */ + set_private_waitv(); + /* Testing a waiter without FUTEX_32 flag */ waitv[0].flags = FUTEX_PRIVATE_FLAG; @@ -237,12 +247,14 @@ int main(int argc, char *argv[]) } /* Testing an invalid clockid */ + waitv[0].uaddr = (uintptr_t)&futexes[0]; + if (clock_gettime(CLOCK_MONOTONIC, &to)) error("gettime64 failed\n", errno); to.tv_sec++; - res = futex_waitv(NULL, NR_FUTEXES, 0, &to, CLOCK_TAI); + res = futex_waitv(waitv, NR_FUTEXES, 0, &to, CLOCK_TAI); if (res == EINVAL) { ksft_test_result_fail("futex_waitv private returned: %d %s\n", res ? errno : res, -- 2.56.0 _______________________________________________ Devel mailing list Devel@openvz.org https://lists.openvz.org/mailman/listinfo/devel