Date: Mon, 09 Feb 2015 23:00:27 +0000 From: bugzilla-noreply@freebsd.org To: freebsd-ports-bugs@FreeBSD.org Subject: [Bug 197501] [devel/gdb] Add XSAVE support, plus i386 sigtramp fix and i386 on amd64 fix Message-ID: <bug-197501-13@https.bugs.freebsd.org/bugzilla/>
next in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=197501 Bug ID: 197501 Summary: [devel/gdb] Add XSAVE support, plus i386 sigtramp fix and i386 on amd64 fix Product: Ports & Packages Version: Latest Hardware: Any OS: Any Status: New Severity: Affects Only Me Priority: --- Component: Individual Port(s) Assignee: freebsd-ports-bugs@FreeBSD.org Reporter: jhb@FreeBSD.org Created attachment 152824 --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=152824&action=edit gdb_port_xsave.patch This patch to the port adds support for XSAVE on amd64 and i386 using the recently added PTRACE_GET/SETXSTATE in HEAD. (I will soon merge those changes to stable/10 as well.) It also adds kern.proc.sigtramp usage on i386 fixing unwinding across signal frames for i386 binaries after the shared page signal code changes. As part of the XSAVE changes it also fixes the amd64 FreeBSD ABI to return an i386 target description when debugging a 32-bit process. This allows XSAVE debugging to work for an i386 binary on amd64 (though threads cannot be debugged still). The threads patches have been reworked to pull threads-related patches out of the main port patches and into a single patch that is applied when the THREAD option is enabled. In part this is to make it easier to update the port in the hopeful case that other patches (like the signal trampoline fixes and XSAVE) can be upstreamed. One additional change to the threads patches to allow them to work with XSAVE is that the fbsd-threads target no longer uses ptrace to fetch registers for LWPs directly. Instead, the x86 nat.c files are updated to pass the lwp id to ptrace if the inferior has an lwp id instead of always passing the PIDs. This means that for LWP-backed threads, the fbsd-threads target now passes all register requests down to the native method. The supply/collect regset stubs are now only needed to support userland threads for libkse. -- You are receiving this mail because: You are the assignee for the bug.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-197501-13>