All of lore.kernel.org
 help / color / mirror / Atom feed
From: sashiko-bot@kernel.org
To: "Breno Rodrigues Alves" <breno3011alves@gmail.com>,
	linux-perf-users@vger.kernel.org
Subject: Re: [RFC PATCH 3/5] perf/tests: convert check_no_patterns_found.pl to Python
Date: Sun, 18 Oct 2026 13:03:16 +0000	[thread overview]
Message-ID: <sashiko-outbox-176144@kernel.org> (raw)
In-Reply-To: <20261018125641.23064-4-breno3011alves@gmail.com>

Thank you for your contribution! Sashiko AI review found 2 potential issue(s) to consider:
- [Medium] perf tests: check_no_patterns_found.py is unused and not installed
- [Low] perf tests: missing EOF newline in check_no_patterns_found.py breaks PYLINT=1
--

commit d6b15fdc56a31f78fa7365cb6aafd5034b2a393d
Author: Breno Rodrigues Alves <breno3011alves@gmail.com>

perf/tests: convert check_no_patterns_found.pl to Python

This commit adds a Python 3 implementation of check_no_patterns_found.pl
under tools/perf/tests/shell/common/check_no_patterns_found.py.

> diff --git a/tools/perf/tests/shell/common/check_no_patterns_found.py b/tools/perf/tests/shell/common/check_no_patterns_found.py
> new file mode 100755
> index 0000000000000..0e5d931b903a2
> --- /dev/null
> +++ b/tools/perf/tests/shell/common/check_no_patterns_found.py
> @@ -0,0 +1,35 @@
> +#!/usr/bin/env python3
> +# SPDX-License-Identifier: GPL-2.0

[Severity: Medium]
Should this commit also update the existing callers, remove
tools/perf/tests/shell/common/check_no_patterns_found.pl, and install the new
script?

All existing call sites in the test suite still invoke
check_no_patterns_found.pl:

tools/perf/tests/shell/base_probe/test_adding_kernel.sh:
	"$DIR_PATH/../common/check_no_patterns_found.pl" \
		"$RE_SEGFAULT" < $LOGS_DIR/adding_kernel_nonexisting.err

tools/perf/tests/shell/base_probe/test_basic.sh:
	"$DIR_PATH/../common/check_no_patterns_found.pl" \
		"No manual entry for" < $LOGS_DIR/basic_helpmsg.err

tools/perf/tests/shell/base_report/test_basic.sh:
	"$DIR_PATH/../common/check_no_patterns_found.pl" \
		"No manual entry for" < $LOGS_DIR/basic_helpmsg.err

In addition, the install-tests target in tools/perf/Makefile.perf only
installs *.sh and *.pl files from tests/shell/common:

tools/perf/Makefile.perf:
		$(INSTALL) -d -m 755 '$(DESTDIR_SQ)$(perfexec_instdir_SQ)/tests/shell/common'; \
		$(INSTALL) tests/shell/common/*.sh '$(DESTDIR_SQ)$(perfexec_instdir_SQ)/tests/shell/common'; \
		$(INSTALL) tests/shell/common/*.pl '$(DESTDIR_SQ)$(perfexec_instdir_SQ)/tests/shell/common'; \

Without updating the callers and Makefile.perf, check_no_patterns_found.py is
never executed or installed.

[ ... ]

> +if __name__ == "__main__":
> +    sys.exit(main(sys.argv[1:]))
> \ No newline at end of file

[Severity: Low]
Does the missing trailing newline at the end of check_no_patterns_found.py
cause a build failure when building perf with PYLINT=1?

In tools/perf/tests/Build, PY_TESTS collects all *.py files under tests/shell
to run pylint:

tools/perf/tests/Build:
ifdef PYLINT
  PY_TESTS := $(shell find tests/shell -type f -name '*.py')
  PYLINT_TEST_LOGS := $(PY_TESTS:tests/shell/%=shell/%.pylint_log)

Because main() in tools/perf/tests/shell/common/check_no_patterns_found.py
ends without a final newline (and without pylint directives or docstrings),
pylint reports C0304 (missing-final-newline) and fails the build when
PYLINT=1 is enabled.

Can a trailing newline be added at the end of the file?

-- 
Sashiko AI review · https://sashiko.dev/#/patchset/20261018125641.23064-1-breno3011alves@gmail.com?part=3

  reply	other threads:[~2026-10-18 13:03 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-10-18 12:56 [RFC PATCH 0/5] perf/tests: convert Perl test helpers to Python Breno Rodrigues Alves
2026-10-18 12:56 ` [RFC PATCH 1/5] perf/kselftest: convert prefix.pl " Breno Rodrigues Alves
2026-10-18 13:01   ` sashiko-bot
2026-10-18 12:56 ` [RFC PATCH 2/5] perf/tests: convert check_all_patterns_found.pl " Breno Rodrigues Alves
2026-10-18 13:02   ` sashiko-bot
2026-10-18 12:56 ` [RFC PATCH 3/5] perf/tests: convert check_no_patterns_found.pl " Breno Rodrigues Alves
2026-10-18 13:03   ` sashiko-bot [this message]
2026-10-18 12:56 ` [RFC PATCH 4/5] perf/tests: convert check_all_lines_matched.pl " Breno Rodrigues Alves
2026-10-18 13:07   ` sashiko-bot
2026-10-18 12:56 ` [RFC PATCH 5/5] perf/tests: convert check_errors_whitelisted.pl " Breno Rodrigues Alves
2026-10-18 13:02   ` sashiko-bot
2026-10-18 13:30 ` [RFC PATCH v2 0/2] perf: convert Perl test helpers " Breno Rodrigues Alves
2026-10-18 13:30   ` [RFC PATCH v2 1/2] perf/kselftest: convert prefix.pl " Breno Rodrigues Alves
2026-10-18 13:35     ` sashiko-bot
2026-10-18 13:30   ` [RFC PATCH v2 2/2] perf/tests: convert check_*.pl helpers " Breno Rodrigues Alves
2026-10-18 13:34     ` sashiko-bot
2026-10-18 13:43   ` [RFC PATCH v3 0/2] perf: convert Perl test " Breno Rodrigues Alves
2026-10-18 13:43     ` [RFC PATCH v3 1/2] perf/kselftest: convert prefix.pl " Breno Rodrigues Alves
2026-10-18 13:46       ` sashiko-bot
2026-10-18 13:43     ` [RFC PATCH v3 2/2] perf/tests: convert check_*.pl helpers " Breno Rodrigues Alves
2026-10-18 13:45       ` sashiko-bot

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=sashiko-outbox-176144@kernel.org \
    --to=sashiko-bot@kernel.org \
    --cc=breno3011alves@gmail.com \
    --cc=linux-perf-users@vger.kernel.org \
    --cc=sashiko-reviews@lists.linux.dev \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.