All of lore.kernel.org
 help / color / mirror / Atom feed
From: sashiko-bot@kernel.org
To: "Namhyung Kim" <namhyung@kernel.org>
Cc: linux-perf-users@vger.kernel.org
Subject: Re: [PATCH v2 4/4] perf test: Update PE file test for other locations
Date: Mon, 12 Oct 2026 05:38:20 +0000	[thread overview]
Message-ID: <sashiko-outbox-167679@kernel.org> (raw)
In-Reply-To: <20261012053013.14378-4-namhyung@kernel.org>

Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:
- [Medium] perf/tests: spurious test failure due to brittle directory checking
--

commit 073d3f0f55cefe06ae3b0caf163e2a6505e656b3
Author: Namhyung Kim <namhyung@kernel.org>

perf test: Update PE file test for other locations

This updates test__pe_file_parsing() to search multiple directories to
find the tests directory, similar to shell_tests__dir_fd(), and adds
debug messages when skipped.

> diff --git a/tools/perf/tests/pe-file-parsing.c b/tools/perf/tests/pe-file-parsing.c
> index 3979f38bf127c..78dae7e43603b 100644
> --- a/tools/perf/tests/pe-file-parsing.c
> +++ b/tools/perf/tests/pe-file-parsing.c
> @@ -74,10 +74,17 @@ static int test__pe_file_parsing(struct test_suite *test __maybe_unused,
>  {
>  	struct stat st;
>  	char path_dir[PATH_MAX];
> +	static const char * const tests_dirs[] = {
> +		"./tools/perf/tests",
> +		"./tests",
> +		"./source/tests"
> +	};
>  
>  	/* First try development tree tests. */
> -	if (!lstat("./tests", &st))
> -		return run_dir("./tests");
> +	for (size_t i = 0; i < ARRAY_SIZE(tests_dirs); ++i) {
> +		if (!lstat(tests_dirs[i], &st))
> +			return run_dir(tests_dirs[i]);

[Severity: Medium]
Will this cause a spurious test failure if a matching directory exists but
doesn't contain pe-file.exe?

The new loop eagerly calls run_dir() upon finding a matching directory
name instead of verifying the actual test file exists.

If pe-file.exe is missing from the matched directory, run_dir() calls
filename__read_build_id() which returns an error. This causes
TEST_ASSERT_VAL to immediately return TEST_FAIL, breaking the test suite
instead of falling back to the installed path.

The commit message notes this logic tries other paths like
shell_tests__dir_fd(), but shell_tests__dir_fd() merely returns a directory
descriptor and gracefully continues with zero shell tests if the directory
is empty. By contrast, run_dir() explicitly asserts file validity and
aborts the suite with a hard TEST_FAIL.

Should this verify pe-file.exe actually exists before committing to a
directory and calling run_dir()?

> +	}
>  
>  	/* Then installed path. */
>  	snprintf(path_dir, PATH_MAX, "%s/tests", get_argv_exec_path());

-- 
Sashiko AI review · https://sashiko.dev/#/patchset/20261012053013.14378-1-namhyung@kernel.org?part=4

  reply	other threads:[~2026-10-12  5:38 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-10-12  5:30 [PATCH v2 1/4] perf symbol: Fix symbol loading from libbfd Namhyung Kim
2026-10-12  5:30 ` [PATCH v2 2/4] perf symbol: Add missing symsrc__destroy() for libbfd Namhyung Kim
2026-10-12  5:36   ` sashiko-bot
2026-10-12 21:53   ` Ian Rogers
2026-10-12  5:30 ` [PATCH v2 3/4] perf symbol: Set dso symtab type " Namhyung Kim
2026-10-12  5:40   ` sashiko-bot
2026-10-12 19:36     ` Namhyung Kim
2026-10-12  5:30 ` [PATCH v2 4/4] perf test: Update PE file test for other locations Namhyung Kim
2026-10-12  5:38   ` sashiko-bot [this message]
2026-10-12 19:42     ` Namhyung Kim
2026-10-12 21:51   ` Ian Rogers
2026-10-12 23:06     ` Namhyung Kim
2026-10-12 23:11       ` Ian Rogers
2026-10-12 23:37         ` Namhyung Kim
2026-10-12  5:37 ` [PATCH v2 1/4] perf symbol: Fix symbol loading from libbfd sashiko-bot
2026-10-12 21:52 ` Ian Rogers

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-167679@kernel.org \
    --to=sashiko-bot@kernel.org \
    --cc=linux-perf-users@vger.kernel.org \
    --cc=namhyung@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.