Re: [PATCH v4 1/6] GDB: Add aarch64-pauth-linux.h to gdb/arch/ and gdb/nat/

Thiago Jung Bauermann
2026-03-04T03:59:46Z

Thiago Jung Bauermann <thiago.bauermann@linaro.org> writes:

> diff --git a/gdb/nat/aarch64-pauth-linux.h b/gdb/nat/aarch64-pauth-linux.h
> new file mode 100644
> index 000000000000..5ce85fb296c4
> --- /dev/null
> +++ b/gdb/nat/aarch64-pauth-linux.h
> @@ -0,0 +1,26 @@
> +/* Common Linux native definitions for AArch64 PAuth.
> +
> + Copyright (C) 2019-2026 Free Software Foundation, Inc.
> +
> + This file is part of GDB.
> +
> + This program is free software; you can redistribute it and/or modify
> + it under the terms of the GNU General Public License as published by
> + the Free Software Foundation; either version 3 of the License, or
> + (at your option) any later version.
> +
> + This program is distributed in the hope that it will be useful,
> + but WITHOUT ANY WARRANTY; without even the implied warranty of
> + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
> + GNU General Public License for more details.
> +
> + You should have received a copy of the GNU General Public License
> + along with this program. If not, see <http://www.gnu.org/licenses/>. */
> +
> +#ifndef GDB_NAT_AARCH64_PAUTH_LINUX_H
> +#define GDB_NAT_AARCH64_PAUTH_LINUX_H
> +
> +/* Feature check for Pointer Authentication Code Extension. */
> +#define HWCAP_PACA (1 << 30)
> +
> +#endif /* GDB_NAT_AARCH64_PAUTH_LINUX_H */

As I mentioned in another message, I amended this commit locally with
these changes:

diff --git a/gdb/nat/aarch64-pauth-linux.h b/gdb/nat/aarch64-pauth-linux.h
index 5ce85fb296c4..5005d0038cbb 100644
--- a/gdb/nat/aarch64-pauth-linux.h
+++ b/gdb/nat/aarch64-pauth-linux.h
@@ -20,7 +20,11 @@
#ifndef GDB_NAT_AARCH64_PAUTH_LINUX_H
#define GDB_NAT_AARCH64_PAUTH_LINUX_H

+#include <asm/hwcap.h>
+
/* Feature check for Pointer Authentication Code Extension. */
+#ifndef HWCAP_PACA
#define HWCAP_PACA (1 << 30)
+#endif

#endif /* GDB_NAT_AARCH64_PAUTH_LINUX_H */

The #include of <asm/hwcap.h> is because the #ifndef implies that the
header should have been included, so do it explicitly.

--
Thiago