[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Libunwind-devel] [PATCH 5/6] Account for the possible ERESTART handling
From: |
Konstantin Belousov |
Subject: |
[Libunwind-devel] [PATCH 5/6] Account for the possible ERESTART handling of the syscalls. |
Date: |
Mon, 23 Apr 2012 13:51:56 +0300 |
---
src/x86_64/Gos-freebsd.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/src/x86_64/Gos-freebsd.c b/src/x86_64/Gos-freebsd.c
index 3ef9926..71695c6 100644
--- a/src/x86_64/Gos-freebsd.c
+++ b/src/x86_64/Gos-freebsd.c
@@ -77,8 +77,9 @@ eb fd jmp 0b
*/
if ((ret = (*a->access_mem) (as, ip - 5, &b0, 0, arg)) < 0)
return (0);
- b0 &= 0xffffffffff;
- if (b0 == 0x000000050fca8949)
+ Debug (12, "b0 0x%lx\n", b0);
+ if ((b0 & 0xffffffffffffff) == 0x050fca89490000 ||
+ (b0 & 0xffffffffff) == 0x050fca8949)
{
c->sigcontext_format = X86_64_SCF_FREEBSD_SYSCALL;
return (c->sigcontext_format);
--
1.7.9.6
- [Libunwind-devel] [PATCH 0/6] FreeBSD improvements, Konstantin Belousov, 2012/04/23
- [Libunwind-devel] [PATCH 2/6] Consistently use symbolic name UNW_EUNSPEC for error code instead of hard-coding -1., Konstantin Belousov, 2012/04/23
- [Libunwind-devel] [PATCH 1/6] Compare current sigset with the sigset saved right before _setjmp() call., Konstantin Belousov, 2012/04/23
- [Libunwind-devel] [PATCH 4/6] Workaround for old FreeBSD kernels not understanding tid for procinfo sysctls., Konstantin Belousov, 2012/04/23
- [Libunwind-devel] [PATCH 3/6] Fix logic error. When encountered vm map entry is not backed by a vnode, continue search for matching entry instead of aborting the loop., Konstantin Belousov, 2012/04/23
- [Libunwind-devel] [PATCH 6/6] Fixes for interation end conditions of non-dwarf walker on x86_64., Konstantin Belousov, 2012/04/23
- [Libunwind-devel] [PATCH 5/6] Account for the possible ERESTART handling of the syscalls.,
Konstantin Belousov <=
- [Libunwind-devel] [PATCH 0/6] FreeBSD improvements, Konstantin Belousov, 2012/04/23
- [Libunwind-devel] [PATCH 3/6] Fix logic error. When encountered vm map entry is not backed by a vnode, continue search for matching entry instead of aborting the loop., Konstantin Belousov, 2012/04/23
- [Libunwind-devel] [PATCH 1/6] Compare current sigset with the sigset saved right before _setjmp() call., Konstantin Belousov, 2012/04/23
- [Libunwind-devel] [PATCH 5/6] Account for the possible ERESTART handling of the syscalls., Konstantin Belousov, 2012/04/23
- [Libunwind-devel] [PATCH 2/6] Consistently use symbolic name UNW_EUNSPEC for error code instead of hard-coding -1., Konstantin Belousov, 2012/04/23
- [Libunwind-devel] [PATCH 6/6] Fixes for interation end conditions of non-dwarf walker on x86_64., Konstantin Belousov, 2012/04/23
- [Libunwind-devel] [PATCH 4/6] Workaround for old FreeBSD kernels not understanding tid for procinfo sysctls., Konstantin Belousov, 2012/04/23