Skip to content
Snippets Groups Projects
Commit 513f0abc authored by Vitaly Kuznetsov's avatar Vitaly Kuznetsov
Browse files

KVM: selftests: Make rseq compatible with glibc-2.35

Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=2119111



commit 66d42ac7
Author: Gavin Shan <gshan@redhat.com>
Date:   Wed Aug 10 18:41:13 2022 +0800

    KVM: selftests: Make rseq compatible with glibc-2.35

    The rseq information is registered by TLS, starting from glibc-2.35.
    In this case, the test always fails due to syscall(__NR_rseq). For
    example, on RHEL9.1 where upstream glibc-2.35 features are enabled
    on downstream glibc-2.34, the test fails like below.

      # ./rseq_test
      ==== Test Assertion Failure ====
        rseq_test.c:60: !r
        pid=112043 tid=112043 errno=22 - Invalid argument
           1        0x0000000000401973: main at rseq_test.c:226
           2        0x0000ffff84b6c79b: ?? ??:0
           3        0x0000ffff84b6c86b: ?? ??:0
           4        0x0000000000401b6f: _start at ??:?
        rseq failed, errno = 22 (Invalid argument)
      # rpm -aq | grep glibc-2
      glibc-2.34-39.el9.aarch64

    Fix the issue by using "../rseq/rseq.c" to fetch the rseq information,
    registred by TLS if it exists. Otherwise, we're going to register our
    own rseq information as before.

Reported-by: default avatarYihuang Yu <yihyu@redhat.com>
Suggested-by: default avatarFlorian Weimer <fweimer@redhat.com>
Suggested-by: default avatarMathieu Desnoyers <mathieu.desnoyers@efficios.com>
Suggested-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
Signed-off-by: default avatarGavin Shan <gshan@redhat.com>
    Message-Id: <20220810104114.6838-2-gshan@redhat.com>
Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>

Signed-off-by: default avatarVitaly Kuznetsov <vkuznets@redhat.com>
parent 8f9d924d
No related branches found
No related tags found
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment