All of lore.kernel.org
 help / color / mirror / Atom feed
From: sashiko-bot@kernel.org
To: "Sean Christopherson" <seanjc@google.com>
Cc: kvmarm@lists.linux.dev, kvm@vger.kernel.org,
	"Marc Zyngier" <maz@kernel.org>,
	"Oliver Upton" <oupton@kernel.org>
Subject: Re: [PATCH 5/9] KVM: selftests: Add KVM syscall wrapper for pthread_create()
Date: Thu, 30 Jul 2026 19:30:46 +0000	[thread overview]
Message-ID: <20260730193047.3E7461F000E9@smtp.kernel.org> (raw)
In-Reply-To: <20260730191908.2084803-6-seanjc@google.com>

Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:
- [Low] Misleading error reporting when pthread_create fails due to reliance on errno.
--

--- Patch [5]: [PATCH 5/9] KVM: selftests: Add KVM syscall wrapper for pthread_create() ---
commit c5c266b1e7b797f8b82c5a3cecf097ba6720b060
Author: Sean Christopherson <seanjc@google.com>

KVM: selftests: Add KVM syscall wrapper for pthread_create()

This commit adds a KVM wrapper for pthread_create() to eliminate manual
success assertions in selftests. It replaces direct calls to pthread_create()
with kvm_pthread_create() across multiple test files.

> diff --git a/tools/testing/selftests/kvm/include/kvm_syscalls.h b/tools/testing/selftests/kvm/include/kvm_syscalls.h
> --- a/tools/testing/selftests/kvm/include/kvm_syscalls.h
> +++ b/tools/testing/selftests/kvm/include/kvm_syscalls.h

[ ... ]

> @@ -96,6 +97,10 @@ __KVM_SYSCALL_DEFINE(ftruncate, 2, unsigned int, fd, off_t, length);
>  __KVM_SYSCALL_DEFINE(madvise, 3, void *, addr, size_t, length, int, advice);
>  __KVM_SYSCALL_DEFINE(sched_getaffinity, 3, pid_t, pid, size_t, cpusetsize, cpu_set_t *, mask);
>  
> +typedef void *(*pthread_fn_t)(void *);
> +__KVM_SYSCALL_DEFINE(pthread_create, 4, pthread_t *, thread,
> +		     const pthread_attr_t *, attr, pthread_fn_t, fn, void *, arg);

[Severity: Low]
Does this lead to misleading error messages on failure?

The __KVM_SYSCALL_DEFINE macro seems to assume the wrapped function sets errno
on failure, which gets printed when the test asserts via __KVM_SYSCALL_ERROR. 
However, pthread_create() returns its error code directly rather than setting
errno. 

If thread creation fails, it looks like the test framework might print a
misleading message containing "errno: 0 (Success)" alongside the actual
non-zero return code. Should this use a different wrapper or assert strategy
that handles direct error returns?

> +
>  #define kvm_free_fd(fd)		\
>  do {				\
>  	kvm_close(fd);		\

-- 
Sashiko AI review · https://sashiko.dev/#/patchset/20260730191908.2084803-1-seanjc@google.com?part=5

  reply	other threads:[~2026-07-30 19:30 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-07-30 19:18 [PATCH 0/9] KVM: selftests: Add more syscall wrappers, fix hardware_disable_test Sean Christopherson
2026-07-30 19:19 ` [PATCH 1/9] KVM: selftests: Return the target CPU from pin_task_to_random_cpu() Sean Christopherson
2026-07-30 19:19 ` [PATCH 2/9] KVM: selftests: Extract picking of random CPU from cpu_set_t to separate API Sean Christopherson
2026-07-30 19:19 ` [PATCH 3/9] KVM: selftests: Affine child tasks to other pCPUs in hardware disable test Sean Christopherson
2026-07-30 19:33   ` sashiko-bot
2026-07-30 19:19 ` [PATCH 4/9] KVM: selftests: Drop unreachable, dead code from " Sean Christopherson
2026-07-30 19:30   ` sashiko-bot
2026-07-30 19:19 ` [PATCH 5/9] KVM: selftests: Add KVM syscall wrapper for pthread_create() Sean Christopherson
2026-07-30 19:30   ` sashiko-bot [this message]
2026-07-30 19:19 ` [PATCH 6/9] KVM: selftests: Add KVM syscall wrappers for pthread_{cancel,join}() Sean Christopherson
2026-07-30 19:19 ` [PATCH 7/9] KVM: selftests: Add helper APIs to cancel+join pthreads Sean Christopherson
2026-07-30 19:19 ` [PATCH 8/9] KVM: selftests: Add KVM syscall wrappers for pthread_{g,s}etaffinity_np() Sean Christopherson
2026-07-30 19:29   ` sashiko-bot
2026-07-30 20:24     ` Sean Christopherson
2026-07-30 19:19 ` [PATCH 9/9] KVM: selftests: Clean up global constants in hardware disable test Sean Christopherson

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=20260730193047.3E7461F000E9@smtp.kernel.org \
    --to=sashiko-bot@kernel.org \
    --cc=kvm@vger.kernel.org \
    --cc=kvmarm@lists.linux.dev \
    --cc=maz@kernel.org \
    --cc=oupton@kernel.org \
    --cc=sashiko-reviews@lists.linux.dev \
    --cc=seanjc@google.com \
    /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.