From patchwork Wed Oct 11 08:23:42 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: 13416858 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 7EA4FCD6119 for ; Wed, 11 Oct 2023 08:24:08 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id E61948D00F0; Wed, 11 Oct 2023 04:24:07 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id E36C28D0002; Wed, 11 Oct 2023 04:24:07 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id D24C58D00F0; Wed, 11 Oct 2023 04:24:07 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0016.hostedemail.com [216.40.44.16]) by kanga.kvack.org (Postfix) with ESMTP id C7A1B8D0002 for ; Wed, 11 Oct 2023 04:24:07 -0400 (EDT) Received: from smtpin02.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay04.hostedemail.com (Postfix) with ESMTP id 988A71A0213 for ; Wed, 11 Oct 2023 08:24:07 +0000 (UTC) X-FDA: 81332492934.02.0BAFEC9 Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.24]) by imf11.hostedemail.com (Postfix) with ESMTP id 0704A40011 for ; Wed, 11 Oct 2023 08:24:04 +0000 (UTC) Authentication-Results: imf11.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b=CklfWP8N; dmarc=pass (policy=none) header.from=intel.com; spf=pass (imf11.hostedemail.com: domain of maciej.wieczor-retman@intel.com designates 134.134.136.24 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=1697012645; 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=ZOHMvAhjZEzvtTVBBRURLRlLLjT6keMIo2p+HoGDddU=; b=NOEX8ZEt0UIIwu0eAjTN57GPvRDlVdzJrxFcRbsEShvJ/admZxEqHitsE6eEkylEhDx2C6 d5zsL7bKMfwzaSE/f0uE3nMfpWBOAGtDRDLeAscJ/JruqVuxESP0z365iXMbtF4BN2p7K+ xdSTRaH5MACRQ1rQ7ulfYKlMFTA307w= ARC-Authentication-Results: i=1; imf11.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b=CklfWP8N; dmarc=pass (policy=none) header.from=intel.com; spf=pass (imf11.hostedemail.com: domain of maciej.wieczor-retman@intel.com designates 134.134.136.24 as permitted sender) smtp.mailfrom=maciej.wieczor-retman@intel.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1697012645; a=rsa-sha256; cv=none; b=rAzTCSnIo/Oza2HAuaJRT1aRfUyijZwB/ioNv+2mPsGfHkyRIcD1OskIK5wWfUpLPwRydH VASaddrh9HmuUEw8ljitw5umbbAIppuC+nJzlDRFDSlQi9jtlrxCsX5IQ0eRVZ4b5zvZzZ 9jTL8TwC/HsqiWhBCST88Xs+U59W1Gk= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1697012645; x=1728548645; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=3x9GAp5cDvGnLg+Fycea/9UNsfwyKD8QpuehWluv3WI=; b=CklfWP8NbFNdObQflNtz0XfnKH1qYzXXUtaxgtWOle0ljfeiKf6cn2Sf wVrxU1sziKoxmPXzfZagQ5iOXrsGkSOyofiCXMFehG+uj/7Lm5j4rjzlE yk0aw4tr5TpmFNoayD8yXBEoRccL9inDCEAdjER/PmUm7jDFis3x+wmEJ qrGIB4+Ht76fCTvLNRJdPhQyrG5jEELBqk0QrKiMTJFte0xsAhbWJX2hd XA7wSMstdI6DLQ4PpW43pTeQiBNcOEw0XdWO8qPI/y8oBHCjNzXwf7eoG We3PwXvw1OZdT3FVn0h9p1fckvysnlpnklx4wspTF1S/38B6v1k460yLl g==; X-IronPort-AV: E=McAfee;i="6600,9927,10859"; a="387450901" X-IronPort-AV: E=Sophos;i="6.03,214,1694761200"; d="scan'208";a="387450901" Received: from fmsmga008.fm.intel.com ([10.253.24.58]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 11 Oct 2023 01:24:02 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10859"; a="819606024" X-IronPort-AV: E=Sophos;i="6.03,214,1694761200"; d="scan'208";a="819606024" Received: from bmatwiej-mobl.ger.corp.intel.com (HELO wieczorr-mobl1.intel.com) ([10.213.17.119]) by fmsmga008-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 11 Oct 2023 01:23:56 -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 v5 0/8] Add printf attribute to kselftest functions Date: Wed, 11 Oct 2023 10:23:42 +0200 Message-ID: X-Mailer: git-send-email 2.42.0 MIME-Version: 1.0 X-Rspamd-Queue-Id: 0704A40011 X-Rspam-User: X-Rspamd-Server: rspam02 X-Stat-Signature: 98wjgt84oqfic4aiuzs9eriuadctr9u7 X-HE-Tag: 1697012644-111196 X-HE-Meta: U2FsdGVkX1+bYCEW4YKxW8zLZ+eeP51PkUa7+ETmQdOytHIq+LLb+9RGX4miSF/ebN1BYDnp1xpuAXXz28YLmvEjm8+Gca2yVHl38qArzXSDrqKdcGg+fAdA0fZtztYm/cz5aR438p7lO4T9crzHwUch/dIDPnhEhpraGnuNYDr6DZqtG29ao5vDPZ55GJrCieyupFv1FcqitduoIvBO/3jN4AzI7NoavgNUkQ0ZL5mEzKA4QICN/NOIvK1znQpV4iiP2JWW9xeTATw4G1mwyt60QuBX6uGs5M9RiuMpp+ENLDGXJzCzqxtD4O+8h/hikGtdyc+QPiMgLoURkYN1JwkzaKkr2O5gbOZJWo0rGzTibcatvMapfp4J2qf4iSbNR5JHTRlZ+B/aIfLpzq71vEkAg4IDsUwUzriuihKwKU0RdapoODAQJiGyqsjIyVv0hYd61BF+PJWDPVYfF+6bVIm7rkp/3CciMkr/D9SEwkuWK1Zgr/32lsZbHclIhqvNyV164rnlkKjnUbDKs9y5/PN3N9r0xiMT/ixrWsRXNxta5sLswNAmaK5HhsUrE3WRQd24aqXlIWWceofyO4uyT7n+CQw0HhdxwrBBvdz/179zvo6uwAFGI1kI5NaOsHKzmiJXp3Z7tqJZbGApRZQYWTYIQSaxSGlERd2xlcLRKdfSNf7Y3apKNH61rg8rVsDTVWptg75PHxtCCgUmcU178GkjVLKJSs46OL1g2CUdGuGUJmEglLnJoxOE+gJQjl/nGkvhg5K+jQfrbUxNMd1Yebzyr8BujvR6RNcYBmFcZo51ORgJZGt9Rs7w+mN5EfvvbkECL15BjfSwrsoCtpYEHHXifWq2soluGOWudzExLlwZoz6P5gtiXO0UCJbQ8KSxIciD5quOd9NW7RFUyTJMsa0/maB7RhFzbRC2fBRs4HXFWrR4hiVKd1laynaOLi5LpUZlsGYaB2/EtUS5Dp2 tnwJBThR 3z0q2QydG4A2zsspHIDhXQA2C0ZZTmptv9WAyQyEAZ8A50J6ADeNOZ04zvADydmRDHwKB8lwzKVaRzuZHR9SgiVNzjF1SCO++QPh89ll1uzp5XvaoY9/A/EhFYTRBa/7lvv3NfvNMhNZdZmC0lgV3OE5Gj3BIM/GvycB2cvLTL96/5jdX+hdaNH0sB428afwjbovBmmmjy1ovdcWQ6PGLWYyQ1Ek1H0tJmipP 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. The first patch adds __printf() macro and applies it to all functions in kselftest.h that use printf format specifiers. After compiling all selftests using: make -C tools/testing/selftests many instances of format specifier mismatching are exposed in the form of -Wformat warnings. Fix the mismatched format specifiers caught by __printf() attribute in multiple tests. Series is based on kselftests next branch. Changelog v5: - Mention in the cover letter what methodology was used to find the mismatched format specifiers. - No functional changes in the patches. Changelog v4: - Fix patch 1/8 subject typo. - Add Reinette's reviewed-by tags. - Rebase onto new kselftest/next patches. 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: 2531f374f922e77ba51f24d1aa6fa11c7f4c36b8