From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-pl1-f179.google.com (mail-pl1-f179.google.com [209.85.214.179]) (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 3FD5C2857FC for ; Mon, 26 Jan 2026 03:10:48 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.179 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1769397049; cv=none; b=Lru2naIrA7cAjiIGsvg0/rH2mSIGpTL9D3tT7CFj+8ivowhVBXpGTkaMCVKaXmowDmo67RZjd5DCJW3Hn65qrTVxVszibSne4e6bZwmmS5Iq69F/abIb1T8rTP1Wa0UIGcw6JtMYsXGrxu5kOeXwSrSNrX0blruYrrdnGlU5sMQ= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1769397049; c=relaxed/simple; bh=0a+mtHiT/HN4LxOPM+eq1PFI0G53JekXAvcDIduLZ+k=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=aNJof7urKoUShECy42Yv0KE89IOw07PoNV8bQ/wzIXjcr+z9C5Q6jfYt7AbxVoKvuR6wx5Qx+oskdbXxpP/CrbwQ6xuWyfX6NtxSCug/ALuA+81mPalBU9G9ttz5PYO2rHEX6DmxrliCTbATeXtGeGS9gZvX5r6SN/u6MtOMN0M= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=gaMW00OO; arc=none smtp.client-ip=209.85.214.179 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="gaMW00OO" Received: by mail-pl1-f179.google.com with SMTP id d9443c01a7336-2a743050256so27208845ad.3 for ; Sun, 25 Jan 2026 19:10:48 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1769397047; x=1770001847; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=U2iggWff8STcSkadgik0qpzRMTV1v34yYhVtCkHvDxE=; b=gaMW00OO9Bj9jabGnypl746SwJofW+Y9ESGfBvHuf1Qtx/DNg3O+RY7WlCMuEvmzJJ 0zdJVbJdZgNnaEkxkce5NNwdI0HkQwHMKmadoEoHR12e35TBtrG85C2bOTE3KwJVXTdI HQktgtN1bElkjbzWZajxVBUvSqlpogDsFkxXhtI/OYrvk5wRJ5Oh/2ayE2zhhcXRXm+U /6+Hm8wT2rMIRBPlrnWpVS7IAFyFR6FXKXc3JcoIO5lXn34+ANKgyHq93+KfQTGwQPOi DVaInPxw5Tjito+7Xa4xsD0s3NvRbYa+ELbHKPusuTdLiMyJoWAaruOZpTb9fAfYdYzV BNrQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1769397047; x=1770001847; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=U2iggWff8STcSkadgik0qpzRMTV1v34yYhVtCkHvDxE=; b=aj1igSmVW0t0yJifToHHmkCLz/YND7pWpXjoEcWWr3FPcmLs6Sn7DFctaASUF/7TyE HB+xl4yo3DbiQOVsFSW3ABwNYWYZMzlxcsxomDSg50WuVX1gzfJt/vPslOOmeY/LyKxw sSS8m8Jgv3Vhx5cmVhsAJ8K1lScMw4BxA/Vy0derY8l3ifv61bupdJNCk5RlY3/uZupD jcjgyGg1JeMUwXiU4yTnw3pc0X/Nm6xvCAGyfOuTwfudnPjuMbgXA3Is69qRBB0ktkz6 agkpq0FPnjm+pcqZGjolR2uv2QuxNeb/aqMq0e+FXxkKED8GGUlYoe7H7T11jn4iFZGW egvw== X-Forwarded-Encrypted: i=1; AJvYcCVRDo2SSpjae6Li00pbJ5ECOZlLNPUhvTPXoAXHTYlhzrdl6u0fyrIpRKenSEGfhuuylwxpfwcxqhQtimg=@vger.kernel.org X-Gm-Message-State: AOJu0Yx1ZXBUiI+snbIYkD8bcFucLqWs8mPFx8ix3wT93uiZ2DPdBun8 Ww4dxp9bU7FkynnT033sC0lgTDW+hIcP44LADbv9aiUWkP2OQRSif5SS X-Gm-Gg: AZuq6aIoG733pv/8ftV+bVL+4v7i0fsZzSBsNIHr9h6liyo4Am/2TovbkapOvltBhDn NHu+0V5eSyQiUamNKw2UWngG3TTdd//cGGNSvCBKLlIz0DoP+zV34wQF3T0Cl/dyXJaVf3NYory XYoVd4IquHXG6H+rwUwo5+e1Fi5Z+0tJzgvXmTl8YA2PeTMOX8wsmETY2SwDgdj13ko0HkZj3jI 6BdpU8i/PMzt7VFXkaE4TbX/3ySFfAeetuLKXpdVZP4hfqK+gBmxcpG6z8XMjkcVqyrY2C3FowM 5683BQeURSJjsKahG9Xze7re3YyYnb3sxNe1T9z7CRtZ4KTNlDMXNQI8RAKgdZM1tawcg9fRQ+v XEhn4C420NR784rGkeWDpdD9rh6ycqTQydRMy91R3H22J7pRVtYUtBkENkBR4gOSNXSlzl8zeYn P6c7szrJbAsQUwkkX1uVYCntBMLvkTCKuOr5JLgr9hN8g3ee9CUQE0iOS/uS1777VMRC6GzWHNU elxQR7kvwX3Qmz5WHhD X-Received: by 2002:a17:902:ceca:b0:295:5da6:600c with SMTP id d9443c01a7336-2a8451f9260mr32870785ad.2.1769397047517; Sun, 25 Jan 2026 19:10:47 -0800 (PST) Received: from LAPTOP-UKI113GK.localdomain ([61.141.65.103]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-82318646cc4sm7952920b3a.7.2026.01.25.19.10.45 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 25 Jan 2026 19:10:47 -0800 (PST) From: "licheng.li" To: Willy Tarreau Cc: =?UTF-8?q?Thomas=20Wei=C3=9Fschuh?= , linux-kernel@vger.kernel.org, im.lechain@gmail.com Subject: [PATCH 2/2] selftests/nolibc: add tests for printf left alignment Date: Mon, 26 Jan 2026 11:10:38 +0800 Message-ID: <20260126031038.35387-2-im.lechain@gmail.com> X-Mailer: git-send-email 2.52.0 In-Reply-To: <20260126031038.35387-1-im.lechain@gmail.com> References: <20260126031038.35387-1-im.lechain@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: Cheng Li This patch adds validation for the recently added '-' flag support in printf(). It ensures that strings and numbers are correctly padded with spaces on the right side when the left-alignment flag is used. The test adds minimal overhead to the test binary size. On x86_64: text data bss dec hex filename 43677 248 112 44037 ac05 nolibc-test (before) 43761 248 112 44121 ac59 nolibc-test (after) The test logic adds 84 bytes. Signed-off-by: Cheng Li --- tools/testing/selftests/nolibc/nolibc-test.c | 1 + 1 file changed, 1 insertion(+) diff --git a/tools/testing/selftests/nolibc/nolibc-test.c b/tools/testing/selftests/nolibc/nolibc-test.c index 3c5a226dad3a..3d47711cad8f 100644 --- a/tools/testing/selftests/nolibc/nolibc-test.c +++ b/tools/testing/selftests/nolibc/nolibc-test.c @@ -1723,6 +1723,7 @@ static int run_printf(int min, int max) CASE_TEST(truncation); EXPECT_VFPRINTF(25, "01234567890123456789", "%s", "0123456789012345678901234"); break; CASE_TEST(string_width); EXPECT_VFPRINTF(10, " 1", "%10s", "1"); break; CASE_TEST(number_width); EXPECT_VFPRINTF(10, " 1", "%10d", 1); break; + CASE_TEST(left_align); EXPECT_VFPRINTF(10, "foo |", "%-9s|", "foo"); break; CASE_TEST(width_trunc); EXPECT_VFPRINTF(25, " ", "%25d", 1); break; CASE_TEST(scanf); EXPECT_ZR(1, test_scanf()); break; CASE_TEST(strerror); EXPECT_ZR(1, test_strerror()); break; -- 2.52.0