Review request: 7003789 PTRACE_GETREGS problems with SA on Linux.
kevin.walls at oracle.com
Wed Dec 1 08:41:15 PST 2010
Sorry, there was actually a typo in that diff, although it was good
enough to be a solution on my system.
A webrev also:
On 01/12/2010 16:01, Kevin Walls wrote:
> Hi --
> I've just been hitting that as well.... I think it needs to be dealt
> with as a separate bug as there may be a few which are similar - and
> 6359295 is marked fixed in 5.0 long ago...
> I just found your message after I'd done some investigating... The patch
> I was working with is to split one of the existing "if defined"
> statements, as currently the bug is: if we have PT_GETREGS defined, we
> use PTRACE_GETREGS to define PTRACE_GETREGS_REQ... We soon realise that
> may NOT be defined and give the "unsupported" message. So I can log and
> bug and get this done if it sounds good:
> [kevin at oldbox make]$ hg diff ../src/os/linux/ps_proc.c
> diff --git a/agent/src/os/linux/ps_proc.c b/agent/src/os/linux/ps_proc.c
> --- a/agent/src/os/linux/ps_proc.c
> +++ b/agent/src/os/linux/ps_proc.c
> @@ -124,9 +124,9 @@
> #ifdef _LP64
> #ifdef PTRACE_GETREGS64
> #define PTRACE_GETREGS_REQ PTRACE_GETREGS64
> -#if defined(PTRACE_GETREGS) || defined(PT_GETREGS)
> +#elif defined(PTRACE_GETREGS)
> +#define PTRACE_GETREGS_REQ PTRACE_GETREGS
> +#elif defined (PT_GETREGS)
> #define PTRACE_GETREGS_REQ PTRACE_GETREGS
> #endif /* _LP64 */
> On 15/11/2010 06:46, Yasumasa Suenaga wrote:
>> I and co-worker use jstack for various trouble shooting.
>> We mainly use Java on Linux with AMD64 architecture.
>> However, jstack -F option doesn't work our platform.
>> I ran jstack -F with LIBSAPROC_DEBUG=1 (environment variable),
>> I got following messages:
>> Thread 31933: (state = BLOCKED)
>> libsaproc DEBUG: ptrace(PTRACE_GETREGS, ...) not supported
>> Error occurred during stack walking:
>> sun.jvm.hotspot.debugger.DebuggerException: sun.jvm.hotspot.debugger.DebuggerException: get_thread_regs failed for a lwp
>> In order to fix this problem, I made a patch for preprocessor
>> macro in "agent/src/os/linux/ps_proc.c" .
>> The patch that attached this mail works well on Fedora 13 x86_64.
>> Please merge this patch if you don't fix this problem yet.
>> Best regards.
More information about the serviceability-dev