From: Jay Lan <jlan@sgi.com>
To: linux-ia64@vger.kernel.org
Subject: Re: [BUG] running strace utility can cause system to hang at sys_ptrace
Date: Thu, 13 Jul 2006 18:24:40 +0000 [thread overview]
Message-ID: <44B68FE8.3050101@sgi.com> (raw)
In-Reply-To: <44B689B9.3090902@sgi.com>
Correct David's email addr. Add Christoph Hellwig.
Regards,
- jay
Jay Lan wrote:
> We ran into a system hang problem at sys_ptrace.
>
> The system may hang if a user attempts to "strace" a pthreaded
> application that is making frequent calls to pthread_create &
> pthread_exit.
> The hang is caused by a task sleeping (yield()) while holding the
> tasklist_lock.
>
> Note that the problem appears to exist ONLY on IA64. IA64 has an
> ARCH-specific implementation of sys_ptrace().
>
> The failing path is:
>
> sys_ptrace
> read_lock(&tasklist_lock);
> find_thread_for_addr(child, addr);
> thread_matches(p, addr)
> ptrace_check_attach(thread, 0)
> wait_task_inactive(child);
> yield();
>
> Failures always show 1 task sleeping with the backtrace listed
> above, plus tasks on all cpus spinning waiting to write_lock the
> tasklist lock.
>
> Sleeping
> Stack traceback for pid 31069
> 0xe00000343b800000 31069 0 3 R 0xe00000343b8003a0 strace
> 0xa000000100981c60 schedule+0x2460
> 0xa00000010007d4d0 sys_sched_yield+0x110
> 0xa000000100982120 yield+0x40
> 0xa000000100082f10 wait_task_inactive+0x170
> 0xa0000001000a2570 ptrace_check_attach+0x1d0
> 0xa00000010002e9b0 sys_ptrace+0x1f0
> 0xa00000010000c900 ia64_ret_from_syscall
>
> CPU 0
> 0xe00000343b5f0000 4973 0 3 C 0xe00000343b5f03a0 thdcrex
> 0xa00000010000caa0 ia64_leave_kernel
> 0xa00000010053d0a0 _raw_write_lock+0x120
> 0xa0000001009854d0 _write_lock_irq+0x30
> 0xa000000100093a00 do_exit+0xae0
> 0xa000000100094560 sys_exit+0x20
> 0xa00000010000c900 ia64_ret_from_syscall
>
> CPU 1
> 0xe000003038880000 4972 0 1 R 0xe0000030388803a0 thdcrex
> 0xa00000010000caa0 ia64_leave_kernel
> 0xa00000010053d0a0 _raw_write_lock+0x120
> 0xa0000001009854d0 _write_lock_irq+0x30
> 0xa0000001000880e0 copy_process+0x1f80
> 0xa000000100088e30 do_fork+0x150
> 0xa00000010000c160 sys_clone2+0x60
> 0xa00000010000c900 ia64_ret_from_syscall
>
>
> Regards,
> - jay
> -
> To unsubscribe from this list: send the line "unsubscribe linux-ia64" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
next prev parent reply other threads:[~2006-07-13 18:24 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-07-13 17:58 [BUG] running strace utility can cause system to hang at sys_ptrace Jay Lan
2006-07-13 18:24 ` Jay Lan [this message]
2006-07-13 18:45 ` Christoph Hellwig
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=44B68FE8.3050101@sgi.com \
--to=jlan@sgi.com \
--cc=linux-ia64@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.