[Bug 2012509] Re: unable to fetch pauth registers: Invalid argument.

Heinrich Schuchardt 2012509 at bugs.launchpad.net
Thu Mar 23 13:51:19 UTC 2023


The problem to read the pauth registers is reproducible with a simple C
program:

#define _GNU_SOURCE
#include <elf.h>
#include <stdio.h>
#include <stdlib.h>
#include <sys/ptrace.h>
#include <sys/uio.h>
#include <sys/wait.h>
#include <unistd.h>

#define LEN 16384

int main()
{
        long ret;
        struct iovec iovec;
        pid_t pid;

        pid = fork();
        if (!pid) {
                sleep(1);
                return 0;
        }
        ret = ptrace(PTRACE_ATTACH, pid, NULL, NULL);
        if (ret == -1) {
                perror("PTRACE_ATTACH failed");
                return 1;
        }
        iovec.iov_base = malloc(LEN);
        iovec.iov_len = LEN;
        wait(NULL);
        // ret = ptrace (PTRACE_GETREGSET, pid, NT_PRSTATUS, &iovec);
        ret = ptrace (PTRACE_GETREGSET, pid, NT_ARM_PAC_MASK, &iovec);
        if (ret == -1) {
                perror("PTRACE_GETREGSET");
                return 1;
        }
        printf("PTRACE_GETREGSET succeeded\n");
        return 0;
}

-- 
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to gdb in Ubuntu.
https://bugs.launchpad.net/bugs/2012509

Title:
  unable to fetch pauth registers: Invalid argument.

Status in gdb package in Ubuntu:
  New

Bug description:
  I am running Ubuntu Lunar on an arm64 Lenovo X13s using the kernel
  6.2.0-1003-laptop from ppa:ubuntu-concept/x13s. The kernel is
  configured with CONFIG_ARM64_PTR_AUTH=y.

  Debugging a trivial hello world program fails:

  GNU gdb (Ubuntu 13.1-2ubuntu2) 13.1
  Reading symbols from ./test...
  (gdb) r
  Starting program: /home/user/temp/test 
  unable to fetch pauth registers: Invalid argument.

  The message relates to this statement:

  gdb/aarch64-linux-nat.c:371:
  ret = ptrace (PTRACE_GETREGSET, tid, NT_ARM_PAC_MASK, &iovec);

  When using

  set tdesc filename target.xml

  with a target.xml file without the org.gnu.gdb.aarch64.pauth feature
  debugging works fine.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/gdb/+bug/2012509/+subscriptions




More information about the foundations-bugs mailing list