From patchwork Mon Oct 9 10:28:28 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Maciej Wieczor-Retman X-Patchwork-Id: 13413345 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 383C8E95A97 for ; Mon, 9 Oct 2023 10:30:31 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id BCDE28D004D; Mon, 9 Oct 2023 06:30:30 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id B569B8D0031; Mon, 9 Oct 2023 06:30:30 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 9F7EC8D004D; Mon, 9 Oct 2023 06:30:30 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0014.hostedemail.com [216.40.44.14]) by kanga.kvack.org (Postfix) with ESMTP id 8923B8D0031 for ; Mon, 9 Oct 2023 06:30:30 -0400 (EDT) Received: from smtpin03.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id 64CF6B46D7 for ; Mon, 9 Oct 2023 10:30:30 +0000 (UTC) X-FDA: 81325553820.03.B0D9C8B Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.9]) by imf24.hostedemail.com (Postfix) with ESMTP id DE917180016 for ; Mon, 9 Oct 2023 10:30:27 +0000 (UTC) Authentication-Results: imf24.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b=ktTDWCDH; dmarc=pass (policy=none) header.from=intel.com; spf=pass (imf24.hostedemail.com: domain of maciej.wieczor-retman@intel.com designates 198.175.65.9 as permitted sender) smtp.mailfrom=maciej.wieczor-retman@intel.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1696847428; a=rsa-sha256; cv=none; b=ownwAiPJvQOf4QEee+lWTAvvvv7kghPOdgHS/u+lTBbocuQxlV2VMU4pTwoFsNKN8mSFGM lCDOFALWlDvP2J2oYIg3YgW+o8YsRXono3i+HXKkQchzzeKzy4/nIvKzTS0CsFc4UbAmq2 fC0i5D7wsPYvzJLV6tCjE4cA71Q+rkM= ARC-Authentication-Results: i=1; imf24.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b=ktTDWCDH; dmarc=pass (policy=none) header.from=intel.com; spf=pass (imf24.hostedemail.com: domain of maciej.wieczor-retman@intel.com designates 198.175.65.9 as permitted sender) smtp.mailfrom=maciej.wieczor-retman@intel.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1696847428; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding:in-reply-to: references:dkim-signature; bh=k7zfSLqYYUlPuFqvSLat4/V4p1SoMlFbkqHn32DEKR0=; b=yEOxtmEEftP98w6t2fOjt8uGvQh7o+WSC/04KHi/WNPDU9N+YE3UVn5g14YE5GUYs5Z7Na UOUsqW/EbKP6IOZzxKnolHnAf0PEuNmXTFkFTtHjqZrzv5/bopH1gzfXHdllzui0OVLp2L 0+8/25mL/kKJ6MPIpSQVzVQejcm1eAw= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1696847428; x=1728383428; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=OMhrMk6H+hsf9008O1J15mQR51/WYPVUjbeah3bIryg=; b=ktTDWCDHXgiz0UuISW833RJBqFC8LGN9hLxRNUvUwOtTsgir4OyLrbcA IzgYapy1HbY3AeXknBCfTy2LJz+QKyeEY1egUiOaQgo7W39ZRKQDcllEK Z8ILNyjjcylR/9yv7ysNCRvaQe8cGTBiY1BpMmbznpiSLTRNIlk+H8XxS N/gDqQY/ppC0xHca6R5bTOjVNNIu3qU1lZqUvMUmAfp2qaqJjw/pfXBXl CmtQ/H+0BWapKqe81HNDZkwyMsJuodGUEAoPpHGyEgNiRFA9vYvGUxChk 4HvPa4nP43bl7wzaPmtTECOpsxne5D5ntMWuL/YbeiboEaUVJ5kg4HCqW A==; X-IronPort-AV: E=McAfee;i="6600,9927,10857"; a="2711576" X-IronPort-AV: E=Sophos;i="6.03,210,1694761200"; d="scan'208";a="2711576" Received: from orsmga004.jf.intel.com ([10.7.209.38]) by orvoesa101.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 09 Oct 2023 03:30:26 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10857"; a="876753798" X-IronPort-AV: E=Sophos;i="6.03,210,1694761200"; d="scan'208";a="876753798" Received: from kkensic-mobl1.ger.corp.intel.com (HELO wieczorr-mobl1.intel.com) ([10.213.30.239]) by orsmga004-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 09 Oct 2023 03:30:20 -0700 From: Maciej Wieczor-Retman To: akpm@linux-foundation.org, christian@kellner.me, fenghua.yu@intel.com, keescook@chromium.org, ndesaulniers@google.com, coltonlewis@google.com, dmatlack@google.com, vipinsh@google.com, seanjc@google.com, brauner@kernel.org, pbonzini@redhat.com, shuah@kernel.org, hannes@cmpxchg.org, nphamcs@gmail.com, reinette.chatre@intel.com Cc: ilpo.jarvinen@linux.intel.com, linux-kselftest@vger.kernel.org, kvm@vger.kernel.org, linux-kernel@vger.kernel.org, linux-mm@kvack.org Subject: [PATCH v4 0/8] Add printf attribute to kselftest functions Date: Mon, 9 Oct 2023 12:28:28 +0200 Message-ID: X-Mailer: git-send-email 2.42.0 MIME-Version: 1.0 X-Rspam-User: X-Rspamd-Server: rspam06 X-Rspamd-Queue-Id: DE917180016 X-Stat-Signature: erxig83tw6occ6usuz9jzjkxbo3xof45 X-HE-Tag: 1696847427-715670 X-HE-Meta: U2FsdGVkX1/YWUFd72fmtnBUmRx9jPzUe22dmc2lCXdpxTam4t3NdjwPrrjfnZ4rYI3SD1jkaMN0mEeMxacEq5nKGgwMc+q7bDu6wxWHF3AE7Lio3TrJgrUbogB8zbQLmKbvbtPe3dnvH1vrapOBTkwePd6/dlNJK19eX4/ZiWX6Av4Y0I8PGy8P/+nb4sfzRq1DmW9+tNZko9cMvai2lrDioMXd0sFZeLUAfzIATqzmgr/qlMiaSckTadJrDDL6fp2Zc8l2Hegvk9tuUlyuk337IWf6eHXHBbXdXFXAvweEawHRCg9Vr8ZJT64KhgHkIzxIfZTrieGfbWG1D9OniCiVO4EoA1wVb3gDsZGtYfg366EnP0maTzy5vKn+THz/wvyttwawQQPufvID3TIHB5BAdu0pb17Lx+5RPU5KhTJPOnEYdQVV/CDzgGBIrjxEI9NizcJOF9C2JkDiqSfsJ3qXy2OtS3akO7YSq4045pf2ei30uZv/60P4Zusg+CAAakXf13ATWoTUKgH8usiM3lwOu/xNPdTzXCInJqyEEEXmXxoeCnxv70Au9xAQKYlhN8/lYh+X7Ul1TpPh6744xGC0ntJi/sejWkSx1zmkPPlk99CJUkFq11uCF2S6HAwzTmxe3AcCoFnFyOl4zuwM62SBgzkQs9qt4mgZK/sdHudWqnukEUJHKTI7BpboIUC1AdBdJE4YZ8Mzfbes+LWMW0LwisqFWNFTA8gWlp7DfAoDy4VN2YYYLGAUu0hNPuhI5/4QJDwUPwiHHd946KFQORHeJb4iwcMClHFoaeqt/og7WPSczvf00yzuNqS7v6LfyhX8RKfYlr9AOL7mzbv3lRv8xr+57S5cfW4/V4aU6Yr+OHU/oaQSAy2AHA2k+1GHfa+62q32/v1njm7ps2Dq8wXOVN3EFs/s/mShK/paFLBEkzwQzNZUnkykDsySR1UV3BIEBKYOtFSu856jHLf Vr75Gzp3 fIKUsIaQsqhnnzLqXJ+Z7ZhkwjrojOvaYdowmdWZik+jy4SenehazGoTAF9CdqiyYESXuheXGzkc49M1htgM/PY3gqc03bVtFZPpvh7jkZHlNFakbDcbdWzi6oZBH2yISWotJwDQohzFn94f+swLjFGIughZvI/6dSqzXRMKIlDGAJFlXdiJriqzfoTbMD4kXm8UirqvJhSIpNZC2k0ftopzr34xdghnNcvfd X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: Kselftest.h declares many variadic functions that can print some formatted message while also executing selftest logic. These declarations don't have any compiler mechanism to verify if passed arguments are valid in comparison with format specifiers used in printf() calls. Attribute addition can make debugging easier, the code more consistent and prevent mismatched or missing variables. Add a __printf() macro that validates types of variables passed to the format string. The macro is similarly used in other tools in the kernel. Add __printf() attributes to function definitions inside kselftest.h that use printing. Adding the __printf() macro exposes some mismatches in format strings across different selftests. Fix the mismatched format specifiers in multiple tests. Series is based on kselftests next branch. Changelog v4: - Fix patch 1/8 subject typo. - Add Reinette's reviewed-by tags. - Rebased onto updated kselftests next branch. Changelog v3: - Changed git signature from Wieczor-Retman Maciej to Maciej Wieczor-Retman. - Added one review tag. - Rebased onto updated kselftests next branch. Changelog v2: - Add review and fixes tags to patches. - Add two patches with mismatch fixes. - Fix missed attribute in selftests/kvm. (Andrew) - Fix previously missed issues in selftests/mm (Ilpo) [v3] https://lore.kernel.org/all/cover.1695373131.git.maciej.wieczor-retman@intel.com/ [v2] https://lore.kernel.org/all/cover.1693829810.git.maciej.wieczor-retman@intel.com/ [v1] https://lore.kernel.org/all/cover.1693216959.git.maciej.wieczor-retman@intel.com/ Maciej Wieczor-Retman (8): selftests: Add printf attribute to kselftest prints selftests/cachestat: Fix print_cachestat format selftests/openat2: Fix wrong format specifier selftests/pidfd: Fix ksft print formats selftests/sigaltstack: Fix wrong format specifier selftests/kvm: Replace attribute with macro selftests/mm: Substitute attribute with a macro selftests/resctrl: Fix wrong format specifier .../selftests/cachestat/test_cachestat.c | 2 +- tools/testing/selftests/kselftest.h | 18 ++++++++++-------- .../testing/selftests/kvm/include/test_util.h | 8 ++++---- tools/testing/selftests/mm/mremap_test.c | 2 +- tools/testing/selftests/mm/pkey-helpers.h | 2 +- tools/testing/selftests/openat2/openat2_test.c | 2 +- .../selftests/pidfd/pidfd_fdinfo_test.c | 2 +- tools/testing/selftests/pidfd/pidfd_test.c | 12 ++++++------ tools/testing/selftests/resctrl/cache.c | 2 +- tools/testing/selftests/sigaltstack/sas.c | 2 +- 10 files changed, 27 insertions(+), 25 deletions(-) base-commit: f1020c687153609f246f3314db5b74821025c185