1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
<think>
Okay, I need to classify this bug report into one of the given categories: instruction, syscall, or runtime. Let's go through each step carefully.
First, looking at the problem description, the user is running "perf bench futex lock-pi" in an amd64 Docker image on an s390x host. The error they're encountering is ENOSYS, which means the system call isn't implemented.
The specific error message mentions that the function FUTEX_LOCK_PI isn't supported. This suggests that when the code attempts to make a syscall with this particular operation, it's failing because the kernel doesn't recognize or support it.
Looking at the steps provided, the user points out that the syscall(SYS_futex, ...) is causing the issue. They are using the FUTEX_LOCK_PI flag in their system call. The fact that this results in an ENOSYS error indicates a problem with the syscall itself—specifically, that the system doesn't recognize this operation.
Now, considering the categories:
1. **Instruction**: This would relate to specific CPU instructions causing issues. Since the error is about a system call not being implemented, it's more about how the kernel handles syscalls rather than individual CPU operations.
2. **Syscall**: This category fits because the problem arises from a specific system call (futex) with certain parameters leading to an ENOSYS error. The issue isn't with runtime execution in general but with the syscall not being supported as expected.
3. **Runtime**: Runtime errors are broader, such as crashes or unexpected behavior during program execution. Here, it's specifically a missing syscall implementation.
So, the bug is related to the system call FUTEX_LOCK_PI not being implemented on s390x when running an amd64 Docker container. This falls under the "syscall" category because it's about the syscall failing due to lack of support.
</think>
The issue arises from a system call (futex with FUTEX_LOCK_PI) not being implemented, leading to an ENOSYS error.
**Answer:** syscall
|