From owner-freebsd-amd64@FreeBSD.ORG Sun Oct 7 15:20:12 2012 Return-Path: Delivered-To: amd64@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 064661065672; Sun, 7 Oct 2012 15:20:11 +0000 (UTC) (envelope-from kostikbel@gmail.com) Received: from mail.zoral.com.ua (mx0.zoral.com.ua [91.193.166.200]) by mx1.freebsd.org (Postfix) with ESMTP id 145BD8FC12; Sun, 7 Oct 2012 15:20:10 +0000 (UTC) Received: from skuns.kiev.zoral.com.ua (localhost [127.0.0.1]) by mail.zoral.com.ua (8.14.2/8.14.2) with ESMTP id q97FKHSJ032806; Sun, 7 Oct 2012 18:20:17 +0300 (EEST) (envelope-from kostikbel@gmail.com) Received: from deviant.kiev.zoral.com.ua (kostik@localhost [127.0.0.1]) by deviant.kiev.zoral.com.ua (8.14.5/8.14.5) with ESMTP id q97FK5Mb005146; Sun, 7 Oct 2012 18:20:05 +0300 (EEST) (envelope-from kostikbel@gmail.com) Received: (from kostik@localhost) by deviant.kiev.zoral.com.ua (8.14.5/8.14.5/Submit) id q97FK5j7005145; Sun, 7 Oct 2012 18:20:05 +0300 (EEST) (envelope-from kostikbel@gmail.com) X-Authentication-Warning: deviant.kiev.zoral.com.ua: kostik set sender to kostikbel@gmail.com using -f Date: Sun, 7 Oct 2012 18:20:05 +0300 From: Konstantin Belousov To: amd64@freebsd.org Message-ID: <20121007152005.GX35915@deviant.kiev.zoral.com.ua> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="+y7rRxfO4bOZsSs1" Content-Disposition: inline User-Agent: Mutt/1.5.21 (2010-09-15) X-Virus-Scanned: clamav-milter 0.95.2 at skuns.kiev.zoral.com.ua X-Virus-Status: Clean X-Spam-Status: No, score=-4.0 required=5.0 tests=ALL_TRUSTED,AWL,BAYES_00 autolearn=ham version=3.2.5 X-Spam-Checker-Version: SpamAssassin 3.2.5 (2008-06-10) on skuns.kiev.zoral.com.ua Cc: current@freebsd.org Subject: Unwind annotations for the libc and libthr asm X-BeenThere: freebsd-amd64@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting FreeBSD to the AMD64 platform List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 07 Oct 2012 15:20:12 -0000 --+y7rRxfO4bOZsSs1 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Please find below the patch to add the unwind annotations for the libc and libthr assembler routines on amd64. The change shall have no impact on the execution of the changed code, because no functions there ever generate C++ exception or call a function that could generate exception. The addition of the annotations significantly improves the results of the libunwind test suite on FreeBSD/amd64. We are still not on par with Linux, mainly due to the lack of the unwind annotations for the signal trampolines. Fixing this requires VDSO. The addition of the annotations is rather tedious and unrelieved work, so I am sure that there are left bugs. Bugs would affect both libunwind and gdb, but what I see looks like a step forward anyway. Any comments ? diff --git a/lib/libc/amd64/SYS.h b/lib/libc/amd64/SYS.h index a232383..3101be5 100644 --- a/lib/libc/amd64/SYS.h +++ b/lib/libc/amd64/SYS.h @@ -41,15 +41,25 @@ .set CNAME(x),CNAME(__CONCAT(__sys_,x)); \ .weak CNAME(__CONCAT(_,x)); \ .set CNAME(__CONCAT(_,x)),CNAME(__CONCAT(__sys_,x)); \ - mov __CONCAT($SYS_,x),%eax; KERNCALL; \ - jb HIDENAME(cerror); ret; \ + mov __CONCAT($SYS_,x),%eax; \ + .cfi_undefined %rax; \ + KERNCALL; \ + jb HIDENAME(cerror); \ + ret; \ END(__CONCAT(__sys_,x)) =20 #define PSEUDO(x) ENTRY(__CONCAT(__sys_,x)); \ .weak CNAME(__CONCAT(_,x)); \ .set CNAME(__CONCAT(_,x)),CNAME(__CONCAT(__sys_,x)); \ - mov __CONCAT($SYS_,x),%eax; KERNCALL; \ - jb HIDENAME(cerror); ret; \ + mov __CONCAT($SYS_,x),%eax; \ + .cfi_undefined %rax; \ + KERNCALL; \ + jb HIDENAME(cerror); \ + ret; \ END(__CONCAT(__sys_,x)) =20 -#define KERNCALL movq %rcx, %r10; syscall +#define KERNCALL movq %rcx,%r10; \ + .cfi_undefined %r10; \ + .cfi_register %rcx,%r10; \ + syscall; \ + .cfi_undefined %rax,%rdx diff --git a/lib/libc/amd64/gen/_setjmp.S b/lib/libc/amd64/gen/_setjmp.S index 9035632..84cc0c9 100644 --- a/lib/libc/amd64/gen/_setjmp.S +++ b/lib/libc/amd64/gen/_setjmp.S @@ -48,7 +48,9 @@ __FBSDID("$FreeBSD$"); =20 ENTRY(_setjmp) movq %rdi,%rax + .cfi_register %rdi,%rax movq 0(%rsp),%rdx /* retval */ + .cfi_undefined %rdx movq %rdx, 0(%rax) /* 0; retval */ movq %rbx, 8(%rax) /* 1; rbx */ movq %rsp,16(%rax) /* 2; rsp */ @@ -60,6 +62,7 @@ ENTRY(_setjmp) fnstcw 64(%rax) /* 8; fpu cw */ stmxcsr 68(%rax) /* and mxcsr */ xorq %rax,%rax + .cfi_undefined %rax ret END(_setjmp) =20 @@ -67,17 +70,30 @@ END(_setjmp) .set CNAME(_longjmp),CNAME(___longjmp) ENTRY(___longjmp) movq %rdi,%rdx + .cfi_undefined %rdx + .cfi_register %rdi,%rdx /* Restore the mxcsr, but leave exception flags intact. */ stmxcsr -4(%rsp) movl 68(%rdx),%eax + .cfi_undefined %rax andl $0xffffffc0,%eax movl -4(%rsp),%edi + .cfi_undefined %rdi andl $0x3f,%edi xorl %eax,%edi movl %edi,-4(%rsp) ldmxcsr -4(%rsp) movq %rsi,%rax /* retval */ + .cfi_def_cfa %rdx,16 + .cfi_offset %rbx,8 + .cfi_offset %rbp,24 + .cfi_offset %r12,32 + .cfi_offset %r13,40 + .cfi_offset %r14,48 + .cfi_offset %r15,56 movq 0(%rdx),%rcx + .cfi_undefined %rcx + .cfi_return_column %rcx movq 8(%rdx),%rbx movq 16(%rdx),%rsp movq 24(%rdx),%rbp diff --git a/lib/libc/amd64/gen/rfork_thread.S b/lib/libc/amd64/gen/rfork_t= hread.S index 5e764db..9ce0484 100644 --- a/lib/libc/amd64/gen/rfork_thread.S +++ b/lib/libc/amd64/gen/rfork_thread.S @@ -46,7 +46,11 @@ __FBSDID("$FreeBSD$"); =20 ENTRY(rfork_thread) pushq %rbx + .cfi_adjust_cfa_offset 8 + .cfi_offset %rbx,-8 pushq %r12 + .cfi_adjust_cfa_offset 8 + .cfi_offset %r12,-16 movq %rdx, %rbx movq %rcx, %r12 =20 @@ -63,7 +67,11 @@ ENTRY(rfork_thread) cmpl $0, %edx jnz 1f popq %r12 + .cfi_adjust_cfa_offset -8 + .cfi_restore %r12 popq %rbx + .cfi_adjust_cfa_offset -8 + .cfi_restore %rbx ret =20 /* @@ -73,6 +81,7 @@ ENTRY(rfork_thread) */ 1: movq %rsi, %rsp + .cfi_def_cfa_register %rsi movq %r12, %rdi=20 call *%rbx movl %eax, %edi @@ -92,7 +101,11 @@ ENTRY(rfork_thread) */ 2: popq %r12 + .cfi_adjust_cfa_offset -8 + .cfi_restore %r12 popq %rbx + .cfi_adjust_cfa_offset -8 + .cfi_restore %rbx jmp HIDENAME(cerror) END(rfork_thread) =20 diff --git a/lib/libc/amd64/gen/setjmp.S b/lib/libc/amd64/gen/setjmp.S index 47772be..356d34c 100644 --- a/lib/libc/amd64/gen/setjmp.S +++ b/lib/libc/amd64/gen/setjmp.S @@ -50,13 +50,21 @@ __FBSDID("$FreeBSD$"); =20 ENTRY(setjmp) pushq %rdi + .cfi_adjust_cfa_offset 8 movq %rdi,%rcx + .cfi_undefined %rcx + .cfi_register %rdi,%rcx movq $1,%rdi /* SIG_BLOCK */ + .cfi_undefined %rdi movq $0,%rsi /* (sigset_t*)set */ + .cfi_undefined %rsi leaq 72(%rcx),%rdx /* 9,10; (sigset_t*)oset */ + .cfi_undefined %rdx /* stack is 16-byte aligned */ call PIC_PLT(CNAME(_sigprocmask)) popq %rdi + .cfi_adjust_cfa_offset -8 + .cfi_restore %rdi movq %rdi,%rcx movq 0(%rsp),%rdx /* retval */ movq %rdx, 0(%rcx) /* 0; retval */ @@ -77,28 +85,51 @@ END(setjmp) .set CNAME(longjmp),CNAME(__longjmp) ENTRY(__longjmp) pushq %rdi + .cfi_adjust_cfa_offset 8 + .cfi_offset %rdi,-8 pushq %rsi + .cfi_adjust_cfa_offset 8 + .cfi_offset %rsi,-16 movq %rdi,%rdx + .cfi_undefined %rdx + .cfi_register %rdi,%rdx movq $3,%rdi /* SIG_SETMASK */ leaq 72(%rdx),%rsi /* (sigset_t*)set */ movq $0,%rdx /* (sigset_t*)oset */ subq $0x8,%rsp /* make the stack 16-byte aligned */ + .cfi_adjust_cfa_offset 8 call PIC_PLT(CNAME(_sigprocmask)) addq $0x8,%rsp + .cfi_adjust_cfa_offset -8 popq %rsi + .cfi_adjust_cfa_offset -8 + .cfi_restore %rsi popq %rdi /* jmpbuf */ + .cfi_adjust_cfa_offset -8 + .cfi_restore %rdi movq %rdi,%rdx + .cfi_register %rdi,%rdx /* Restore the mxcsr, but leave exception flags intact. */ stmxcsr -4(%rsp) movl 68(%rdx),%eax andl $0xffffffc0,%eax movl -4(%rsp),%edi + .cfi_undefined %rdi andl $0x3f,%edi xorl %eax,%edi movl %edi,-4(%rsp) ldmxcsr -4(%rsp) movq %rsi,%rax /* retval */ + .cfi_def_cfa %rdx,16 + .cfi_offset %rbx,8 + .cfi_offset %rbp,24 + .cfi_offset %r12,32 + .cfi_offset %r13,40 + .cfi_offset %r14,48 + .cfi_offset %r15,56 movq 0(%rdx),%rcx + .cfi_undefined %rcx + .cfi_return_column %rcx movq 8(%rdx),%rbx movq 16(%rdx),%rsp movq 24(%rdx),%rbp diff --git a/lib/libc/amd64/gen/sigsetjmp.S b/lib/libc/amd64/gen/sigsetjmp.S index ef90bc6..c264740 100644 --- a/lib/libc/amd64/gen/sigsetjmp.S +++ b/lib/libc/amd64/gen/sigsetjmp.S @@ -58,14 +58,22 @@ ENTRY(sigsetjmp) testl %esi,%esi jz 2f pushq %rdi + .cfi_adjust_cfa_offset -8 movq %rdi,%rcx + .cfi_undefined %rcx + .cfi_register %rdi,%rcx movq $1,%rdi /* SIG_BLOCK */ movq $0,%rsi /* (sigset_t*)set */ leaq 72(%rcx),%rdx /* 9,10 (sigset_t*)oset */ + .cfi_undefined %rdx /* stack is 16-byte aligned */ call PIC_PLT(CNAME(_sigprocmask)) popq %rdi + .cfi_adjust_cfa_offset 8 + .cfi_restore %rdi 2: movq %rdi,%rcx + .cfi_undefined %rcx + .cfi_register %rdi,%rcx movq 0(%rsp),%rdx /* retval */ movq %rdx, 0(%rcx) /* 0; retval */ movq %rbx, 8(%rcx) /* 1; rbx */ @@ -86,8 +94,14 @@ ENTRY(__siglongjmp) cmpl $0,88(%rdi) jz 2f movq %rdi,%rdx + .cfi_undefined %rdx + .cfi_register %rdi,%rdx pushq %rdi + .cfi_adjust_cfa_offset 8 + .cfi_offset %rdi,-8 pushq %rsi + .cfi_adjust_cfa_offset 8 + .cfi_offset %rsi,-16 movq $3,%rdi /* SIG_SETMASK */ leaq 72(%rdx),%rsi /* (sigset_t*)set */ movq $0,%rdx /* (sigset_t*)oset */ @@ -95,10 +109,23 @@ ENTRY(__siglongjmp) call PIC_PLT(CNAME(_sigprocmask)) addq $0x8,%rsp popq %rsi + .cfi_adjust_cfa_offset -8 + .cfi_restore %rsi popq %rdi /* jmpbuf */ + .cfi_adjust_cfa_offset -8 + .cfi_restore %rdi 2: movq %rdi,%rdx movq %rsi,%rax /* retval */ + .cfi_def_cfa %rdx,16 + .cfi_offset %rbx,8 + .cfi_offset %rbp,24 + .cfi_offset %r12,32 + .cfi_offset %r13,40 + .cfi_offset %r14,48 + .cfi_offset %r15,56 movq 0(%rdx),%rcx + .cfi_undefined %rcx + .cfi_return_column %rcx movq 8(%rdx),%rbx movq 16(%rdx),%rsp movq 24(%rdx),%rbp diff --git a/lib/libc/amd64/string/bcopy.S b/lib/libc/amd64/string/bcopy.S index cc38f47..378cb45 100644 --- a/lib/libc/amd64/string/bcopy.S +++ b/lib/libc/amd64/string/bcopy.S @@ -54,9 +54,12 @@ ENTRY(bcopy) movq %rdi,%rax /* return dst */ #else xchgq %rdi,%rsi + .cfi_register %rdi,%rsi + .cfi_register %rsi,%rdi #endif movq %rdx,%rcx movq %rdi,%r8 + .cfi_undefined %r8 subq %rsi,%r8 cmpq %rcx,%r8 /* overlapping? */ jb 1f @@ -64,6 +67,8 @@ ENTRY(bcopy) shrq $3,%rcx /* copy by words */ rep movsq + .cfi_undefined %rdi + .cfi_undefined %rsi movq %rdx,%rcx andq $7,%rcx /* any bytes left? */ rep @@ -71,7 +76,9 @@ ENTRY(bcopy) ret 1: addq %rcx,%rdi /* copy backwards. */ + .cfi_undefined %rdi addq %rcx,%rsi + .cfi_undefined %rsi std andq $7,%rcx /* any fractional bytes? */ decq %rdi diff --git a/lib/libc/amd64/string/bzero.S b/lib/libc/amd64/string/bzero.S index cf46a2a..e2acb56 100644 --- a/lib/libc/amd64/string/bzero.S +++ b/lib/libc/amd64/string/bzero.S @@ -27,6 +27,7 @@ ENTRY(bzero) negq %rcx andq $7,%rcx subq %rcx,%rsi + .cfi_undefined %rsi rep /* zero until word aligned */ stosb =20 diff --git a/lib/libc/amd64/string/memcmp.S b/lib/libc/amd64/string/memcmp.S index 66d64a0..a794238 100644 --- a/lib/libc/amd64/string/memcmp.S +++ b/lib/libc/amd64/string/memcmp.S @@ -17,6 +17,8 @@ ENTRY(memcmp) shrq $3,%rcx repe cmpsq + .cfi_undefined %rsi + .cfi_undefined %rdi jne L5 /* do we match so far? */ =20 movq %rdx,%rcx /* compare remainder by bytes */ diff --git a/lib/libc/amd64/string/memset.S b/lib/libc/amd64/string/memset.S index 84d1562..bec8654 100644 --- a/lib/libc/amd64/string/memset.S +++ b/lib/libc/amd64/string/memset.S @@ -16,6 +16,7 @@ ENTRY(memset) andq $0xff,%rax movq %rdx,%rcx movq %rdi,%r11 + .cfi_undefined %r11 =20 cld /* set fill direction forward */ =20 @@ -45,6 +46,7 @@ ENTRY(memset) movq %rdx,%rcx /* set until word aligned */ rep stosb + .cfi_undefined %rdi =20 movq %r8,%rcx shrq $3,%rcx /* set by words */ @@ -55,6 +57,7 @@ ENTRY(memset) andq $7,%rcx L1: rep stosb + .cfi_undefined %rdi movq %r11,%rax =20 ret diff --git a/lib/libc/amd64/string/stpcpy.S b/lib/libc/amd64/string/stpcpy.S index 52ac69c..95054dc 100644 --- a/lib/libc/amd64/string/stpcpy.S +++ b/lib/libc/amd64/string/stpcpy.S @@ -24,7 +24,9 @@ __FBSDID("$FreeBSD$"); ENTRY(stpcpy) __stpcpy: movabsq $0x0101010101010101,%r8 + .cfi_undefined %r8 movabsq $0x8080808080808080,%r9 + .cfi_undefined %r9 =20 /* * Align source to a word boundary. @@ -35,8 +37,10 @@ __stpcpy: je .Lword_aligned movb (%rsi),%dl incq %rsi + .cfi_undefined %rsi movb %dl,(%rdi) incq %rdi + .cfi_undefined %rdi testb %dl,%dl jne .Lalign movq %rdi,%rax @@ -51,6 +55,7 @@ __stpcpy: movq (%rsi),%rdx movq %rdx,%rcx addq $8,%rsi + .cfi_undefined %rsi subq %r8,%rcx testq %r9,%rcx je .Lloop @@ -64,6 +69,7 @@ __stpcpy: testb %dl,%dl /* 1st byte =3D=3D 0? */ je .Ldone incq %rdi + .cfi_undefined %rdi =20 shrq $8,%rdx movb %dl,(%rdi) diff --git a/lib/libc/amd64/string/strcat.S b/lib/libc/amd64/string/strcat.S index 7b5a1dd..daaaac1 100644 --- a/lib/libc/amd64/string/strcat.S +++ b/lib/libc/amd64/string/strcat.S @@ -33,6 +33,7 @@ ENTRY(strcat) .Lscan_loop: movq (%rdi),%rdx addq $8,%rdi + .cfi_undefined %rdi subq %r8,%rdx testq %r9,%rdx je .Lscan_loop @@ -91,6 +92,7 @@ ENTRY(strcat) je .Lcopy_aligned movb (%rsi),%dl incq %rsi + .cfi_undefined %rsi movb %dl,(%rdi) incq %rdi testb %dl,%dl @@ -101,10 +103,12 @@ ENTRY(strcat) .Lcopy_loop: movq %rdx,(%rdi) addq $8,%rdi + .cfi_undefined %rdi .Lcopy_aligned: movq (%rsi),%rdx movq %rdx,%rcx addq $8,%rsi + .cfi_undefined %rsi subq %r8,%rcx testq %r9,%rcx je .Lcopy_loop diff --git a/lib/libc/amd64/string/strcmp.S b/lib/libc/amd64/string/strcmp.S index 07009c1..2132187 100644 --- a/lib/libc/amd64/string/strcmp.S +++ b/lib/libc/amd64/string/strcmp.S @@ -20,8 +20,10 @@ ENTRY(strcmp) je .Ls1aligned movb (%rdi),%al incq %rdi + .cfi_undefined %rdi movb (%rsi),%dl incq %rsi + .cfi_undefined %rsi testb %al,%al je .Ldone cmpb %al,%dl diff --git a/lib/libc/amd64/sys/brk.S b/lib/libc/amd64/sys/brk.S index 4048ae6..76e6280 100644 --- a/lib/libc/amd64/sys/brk.S +++ b/lib/libc/amd64/sys/brk.S @@ -42,14 +42,18 @@ __FBSDID("$FreeBSD$"); .globl HIDENAME(minbrk) ENTRY(_brk) pushq %rdi + .cfi_adjust_cfa_offset 8 jmp ok END(_brk) =20 ENTRY(brk) pushq %rdi + .cfi_adjust_cfa_offset 8 movq %rdi,%rax + .cfi_undefined %rax #ifdef PIC movq PIC_GOT(HIDENAME(minbrk)),%rdx + .cfi_undefined %rdx cmpq %rax,(%rdx) #else cmpq %rax,HIDENAME(minbrk)(%rip) @@ -60,8 +64,10 @@ ENTRY(brk) #else movq HIDENAME(minbrk)(%rip),%rdi #endif + .cfi_undefined %rdi ok: movq $SYS_break,%rax + .cfi_undefined %rax KERNCALL jb err movq 0(%rsp),%rax @@ -73,9 +79,11 @@ ok: #endif movq $0,%rax popq %rdi + .cfi_adjust_cfa_offset -8 ret err: addq $8, %rsp + .cfi_adjust_cfa_offset -8 jmp HIDENAME(cerror) END(brk) =20 diff --git a/lib/libc/amd64/sys/cerror.S b/lib/libc/amd64/sys/cerror.S index d01cf4a..43032e4 100644 --- a/lib/libc/amd64/sys/cerror.S +++ b/lib/libc/amd64/sys/cerror.S @@ -48,12 +48,21 @@ __FBSDID("$FreeBSD$"); .globl CNAME(__error) .type CNAME(__error),@function HIDENAME(cerror): + .cfi_startproc pushq %rax + .cfi_adjust_cfa_offset 8 + .cfi_offset %rax,0 call PIC_PLT(CNAME(__error)) popq %rcx + .cfi_adjust_cfa_offset -8 + .cfi_undefined %rcx + .cfi_register %rax,%rcx movl %ecx,(%rax) movq $-1,%rax + .cfi_undefined %rax movq $-1,%rdx + .cfi_undefined %rdx ret + .cfi_endproc =20 .section .note.GNU-stack,"",%progbits diff --git a/lib/libc/amd64/sys/exect.S b/lib/libc/amd64/sys/exect.S index 04a97ed..ce5e717 100644 --- a/lib/libc/amd64/sys/exect.S +++ b/lib/libc/amd64/sys/exect.S @@ -41,11 +41,17 @@ __FBSDID("$FreeBSD$"); =20 ENTRY(exect) movq $SYS_execve,%rax + .cfi_undefined %rax pushfq + .cfi_adjust_cfa_offset 8 popq %r8 + .cfi_adjust_cfa_offset -8 + .cfi_undefined %r8 orq $PSL_T,%r8 pushq %r8 + .cfi_adjust_cfa_offset 8 popfq + .cfi_adjust_cfa_offset -8 KERNCALL jmp HIDENAME(cerror) END(exect) diff --git a/lib/libc/amd64/sys/getcontext.S b/lib/libc/amd64/sys/getcontex= t.S index 1128796..94c894c 100644 --- a/lib/libc/amd64/sys/getcontext.S +++ b/lib/libc/amd64/sys/getcontext.S @@ -40,10 +40,22 @@ __FBSDID("$FreeBSD$"); .set getcontext,__sys_getcontext ENTRY(__sys_getcontext) movq (%rsp),%rsi /* save getcontext return address */ + .cfi_undefined %rsi mov $SYS_getcontext,%rax + .cfi_undefined %rax KERNCALL jb HIDENAME(cerror) addq $8,%rsp /* remove stale (setcontext) return address */ + /* + * The instruction above adjusted top of the stack so that the stack + * does not contain a return address anymore. But, due to the red + * zone existence, return address value right below the top of stack + * is non-volatile. Try to describe the trick to unwinder by claiming + * that the standard call frame is one long word below top of the + * stack. + */ + .cfi_adjust_cfa_offset 8 + .cfi_return_column %rsi jmp *%rsi /* restore return address */ END(__sys_getcontext) =20 diff --git a/lib/libc/amd64/sys/pipe.S b/lib/libc/amd64/sys/pipe.S index 8d089db..6eee962 100644 --- a/lib/libc/amd64/sys/pipe.S +++ b/lib/libc/amd64/sys/pipe.S @@ -44,6 +44,7 @@ __FBSDID("$FreeBSD$"); .set pipe,__sys_pipe ENTRY(__sys_pipe) mov $SYS_pipe,%rax + .cfi_undefined %rax KERNCALL jb HIDENAME(cerror) movl %eax,(%rdi) /* %rdi is preserved by syscall */ diff --git a/lib/libc/amd64/sys/ptrace.S b/lib/libc/amd64/sys/ptrace.S index 9c4628d..5dbde65 100644 --- a/lib/libc/amd64/sys/ptrace.S +++ b/lib/libc/amd64/sys/ptrace.S @@ -40,8 +40,10 @@ __FBSDID("$FreeBSD$"); =20 ENTRY(ptrace) xorl %eax,%eax + .cfi_undefined %rax #ifdef PIC movq PIC_GOT(CNAME(errno)),%r8 + .cfi_undefined %r8 movl %eax,(%r8) #else movl %eax,CNAME(errno)(%rip) diff --git a/lib/libc/amd64/sys/reboot.S b/lib/libc/amd64/sys/reboot.S index fd04ef4..57fa2df 100644 --- a/lib/libc/amd64/sys/reboot.S +++ b/lib/libc/amd64/sys/reboot.S @@ -44,6 +44,7 @@ __FBSDID("$FreeBSD$"); .set reboot,__sys_reboot ENTRY(__sys_reboot) mov $SYS_reboot,%rax + .cfi_undefined %rax KERNCALL jb HIDENAME(cerror) iretq diff --git a/lib/libc/amd64/sys/sbrk.S b/lib/libc/amd64/sys/sbrk.S index 0332aae..f0e3c6b 100644 --- a/lib/libc/amd64/sys/sbrk.S +++ b/lib/libc/amd64/sys/sbrk.S @@ -49,16 +49,22 @@ HIDENAME(curbrk): .quad CNAME(_end) =20 ENTRY(sbrk) pushq %rdi + .cfi_adjust_cfa_offset 8 movq %rdi,%rcx + .cfi_register %rdi,%rcx #ifdef PIC movq PIC_GOT(HIDENAME(curbrk)),%rdx + .cfi_undefined %rdx movq (%rdx),%rax + .cfi_undefined %rax #else movq HIDENAME(curbrk)(%rip),%rax + .cfi_undefined %rax #endif testq %rcx,%rcx jz back addq %rax,%rdi + .cfi_undefined %rdi mov $SYS_break,%eax KERNCALL jb err @@ -69,6 +75,7 @@ ENTRY(sbrk) movq HIDENAME(curbrk)(%rip),%rax #endif movq 0(%rsp), %rcx + .cfi_undefined %rcx #ifdef PIC addq %rcx,(%rdx) #else @@ -76,9 +83,11 @@ ENTRY(sbrk) #endif back: addq $8, %rsp + .cfi_adjust_cfa_offset -8 ret err: addq $8, %rsp + .cfi_adjust_cfa_offset -8 jmp HIDENAME(cerror) END(sbrk) =20 diff --git a/lib/libc/amd64/sys/setlogin.S b/lib/libc/amd64/sys/setlogin.S index a451491..86b220c 100644 --- a/lib/libc/amd64/sys/setlogin.S +++ b/lib/libc/amd64/sys/setlogin.S @@ -46,10 +46,12 @@ __FBSDID("$FreeBSD$"); .set setlogin,__sys_setlogin ENTRY(__sys_setlogin) mov $SYS_setlogin,%rax + .cfi_undefined %rax KERNCALL jb HIDENAME(cerror) #ifdef PIC movq PIC_GOT(CNAME(_logname_valid)),%rdx + .cfi_undefined %rdx movl $0,(%rdx) #else movl $0,CNAME(_logname_valid)(%rip) diff --git a/lib/libc/amd64/sys/vfork.S b/lib/libc/amd64/sys/vfork.S index 2afba58..c2673da 100644 --- a/lib/libc/amd64/sys/vfork.S +++ b/lib/libc/amd64/sys/vfork.S @@ -44,12 +44,18 @@ __FBSDID("$FreeBSD$"); .set vfork,__sys_vfork ENTRY(__sys_vfork) popq %rsi /* fetch return address (%rsi preserved) */ + /* See a comment in getcontext.S */ + .cfi_adjust_cfa_offset -8 + .cfi_undefined %rsi + .cfi_return_column %rsi mov $SYS_vfork,%rax + .cfi_undefined %rax KERNCALL jb 1f jmp *%rsi 1: pushq %rsi + .cfi_adjust_cfa_offset 8 jmp HIDENAME(cerror) END(__sys_vfork) =20 diff --git a/lib/libthr/arch/amd64/amd64/_umtx_op_err.S b/lib/libthr/arch/a= md64/amd64/_umtx_op_err.S index b54fe64..36d6cf4 100644 --- a/lib/libthr/arch/amd64/amd64/_umtx_op_err.S +++ b/lib/libthr/arch/amd64/amd64/_umtx_op_err.S @@ -29,10 +29,20 @@ #include #include =20 -#define RSYSCALL_ERR(x) ENTRY(__CONCAT(x, _err)); \ - mov __CONCAT($SYS_,x),%rax; KERNCALL; ret;=20 +#define RSYSCALL_ERR(x) \ + ENTRY(__CONCAT(x, _err)); \ + mov __CONCAT($SYS_,x),%rax; \ + .cfi_undefined %rax; \ + KERNCALL; \ + ret; \ + END(__CONCAT(x, _err)) =20 -#define KERNCALL movq %rcx, %r10; syscall +#define KERNCALL \ + movq %rcx,%r10; \ + .cfi_undefined %r10; \ + .cfi_register %rcx,%r10; \ + syscall; \ + .cfi_undefined %rax,%rdx =20 RSYSCALL_ERR(_umtx_op) =20 diff --git a/sys/amd64/include/asm.h b/sys/amd64/include/asm.h index 7efd642..75603ec 100644 --- a/sys/amd64/include/asm.h +++ b/sys/amd64/include/asm.h @@ -59,25 +59,37 @@ #define _START_ENTRY .text; .p2align 4,0x90 =20 #define _ENTRY(x) _START_ENTRY; \ - .globl CNAME(x); .type CNAME(x),@function; CNAME(x): + .globl CNAME(x); .type CNAME(x),@function; \ + CNAME(x): .cfi_startproc =20 #ifdef PROF -#define ALTENTRY(x) _ENTRY(x); \ - pushq %rbp; movq %rsp,%rbp; \ +#define ALTENTRY(x) _ENTRY(x); \ + pushq %rbp; \ + .cfi_adjust_cfa_offset 8; \ + .cfi_offset %rbp,0 \ + movq %rsp,%rbp; \ call PIC_PLT(HIDENAME(mcount)); \ - popq %rbp; \ + popq %rbp; \ + .cfi_adjust_cfa_offset -8; \ + .cfi_restore %rbp; \ jmp 9f -#define ENTRY(x) _ENTRY(x); \ - pushq %rbp; movq %rsp,%rbp; \ +#define ENTRY(x) _ENTRY(x); \ + pushq %rbp; \ + .cfi_adjust_cfa_offset 8; \ + .cfi_offset %rbp,0 \ + movq %rsp,%rbp; \ call PIC_PLT(HIDENAME(mcount)); \ - popq %rbp; \ + popq %rbp; \ + .cfi_adjust_cfa_offset -8; \ + .cfi_restore %rbp; \ 9: #else #define ALTENTRY(x) _ENTRY(x) #define ENTRY(x) _ENTRY(x) #endif =20 -#define END(x) .size x, . - x +#define END(x) .cfi_endproc; \ + .size x, . - x =20 #define RCSID(x) .text; .asciz x =20 --+y7rRxfO4bOZsSs1 Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.12 (FreeBSD) iEYEARECAAYFAlBxnaUACgkQC3+MBN1Mb4jQygCg87K1V2LfE7UKv5xm+Pn8qx1G iNAAoJZj+vftlW4y42HycBsJn5yQ2Hy7 =Wbsk -----END PGP SIGNATURE----- --+y7rRxfO4bOZsSs1-- From owner-freebsd-amd64@FreeBSD.ORG Sun Oct 7 21:55:19 2012 Return-Path: Delivered-To: amd64@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 12B0C106566B; Sun, 7 Oct 2012 21:55:19 +0000 (UTC) (envelope-from ohartman@zedat.fu-berlin.de) Received: from outpost1.zedat.fu-berlin.de (outpost1.zedat.fu-berlin.de [130.133.4.66]) by mx1.freebsd.org (Postfix) with ESMTP id BA24A8FC16; Sun, 7 Oct 2012 21:55:18 +0000 (UTC) Received: from inpost2.zedat.fu-berlin.de ([130.133.4.69]) by outpost1.zedat.fu-berlin.de (Exim 4.69) with esmtp (envelope-from ) id <1TKyoZ-003yXJ-6o>; Sun, 07 Oct 2012 23:55:11 +0200 Received: from e178018103.adsl.alicedsl.de ([85.178.18.103] helo=thor.walstatt.dyndns.org) by inpost2.zedat.fu-berlin.de (Exim 4.69) with esmtpsa (envelope-from ) id <1TKyoZ-0012eD-3C>; Sun, 07 Oct 2012 23:55:11 +0200 Message-ID: <5071FA38.5010705@zedat.fu-berlin.de> Date: Sun, 07 Oct 2012 23:55:04 +0200 From: "O. Hartmann" User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:15.0) Gecko/20120910 Thunderbird/15.0.1 MIME-Version: 1.0 To: Konstantin Belousov References: <20121007152005.GX35915@deviant.kiev.zoral.com.ua> In-Reply-To: <20121007152005.GX35915@deviant.kiev.zoral.com.ua> X-Enigmail-Version: 1.4.3 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="------------enig2F65809845F6A9E48F236FF2" X-Originating-IP: 85.178.18.103 Cc: amd64@freebsd.org, current@freebsd.org Subject: Re: Unwind annotations for the libc and libthr asm X-BeenThere: freebsd-amd64@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting FreeBSD to the AMD64 platform List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 07 Oct 2012 21:55:19 -0000 This is an OpenPGP/MIME signed message (RFC 2440 and 3156) --------------enig2F65809845F6A9E48F236FF2 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Am 10/07/12 17:20, schrieb Konstantin Belousov: > Please find below the patch to add the unwind annotations for the libc > and libthr assembler routines on amd64. The change shall have no impact= > on the execution of the changed code, because no functions there ever > generate C++ exception or call a function that could generate exception= =2E >=20 > The addition of the annotations significantly improves the results of > the libunwind test suite on FreeBSD/amd64. We are still not on par with= > Linux, mainly due to the lack of the unwind annotations for the signal > trampolines. Fixing this requires VDSO. >=20 [...] Regarding to VDSO support, what happened to this request to FBSD of the year 2010? http://lists.freebsd.org/pipermail/freebsd-hackers/2010-April/031553.html= oh --------------enig2F65809845F6A9E48F236FF2 Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.19 (FreeBSD) iQEcBAEBAgAGBQJQcfo+AAoJEOgBcD7A/5N8dmEIAL8mpH92k6rOW3U01zjbzMTs kunLhENJbdrKsEaCVs/Jud/tcm1570CNTE2pqk9c8CLuodK1P2qmMW6pAf5NiFdi ClIMLlAuJKYm+OrFcTOw8KePzr8L++OImNJeZXyWf8aOh8DxWimEaZssuuzw0joA XUa2Dm34zvKFEVYmS/ynrTaOskWuoKVIxLI5v6vpiEuJ0ExoIJbuUguQzYsq6gZJ 2rt72mt2kJyXFg89gO0CSwPURLCaZTSj87fpVSAUJAIwYrh9fmxsn6yPKafW4/Hu sN6xyoKg+AiOWgOIJqBf6dpa/pkz5dORJyl2pFgX1sYsO58z9dKo/99JxAHvQIo= =JJ0G -----END PGP SIGNATURE----- --------------enig2F65809845F6A9E48F236FF2-- From owner-freebsd-amd64@FreeBSD.ORG Mon Oct 8 03:22:12 2012 Return-Path: Delivered-To: freebsd-amd64@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id C43A8106566B; Mon, 8 Oct 2012 03:22:12 +0000 (UTC) (envelope-from linimon@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:4f8:fff6::28]) by mx1.freebsd.org (Postfix) with ESMTP id 9768F8FC19; Mon, 8 Oct 2012 03:22:12 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.5/8.14.5) with ESMTP id q983MCXR055406; Mon, 8 Oct 2012 03:22:12 GMT (envelope-from linimon@freefall.freebsd.org) Received: (from linimon@localhost) by freefall.freebsd.org (8.14.5/8.14.5/Submit) id q983MCAZ055402; Mon, 8 Oct 2012 03:22:12 GMT (envelope-from linimon) Date: Mon, 8 Oct 2012 03:22:12 GMT Message-Id: <201210080322.q983MCAZ055402@freefall.freebsd.org> To: linimon@FreeBSD.org, freebsd-amd64@FreeBSD.org, freebsd-fs@FreeBSD.org From: linimon@FreeBSD.org Cc: Subject: Re: kern/171626: [tmpfs] tmpfs should be noisier when the requested size cannot be allocated X-BeenThere: freebsd-amd64@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting FreeBSD to the AMD64 platform List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 08 Oct 2012 03:22:12 -0000 Old Synopsis: tmpfs should be noisier when the requested size cannot be allocated New Synopsis: [tmpfs] tmpfs should be noisier when the requested size cannot be allocated Responsible-Changed-From-To: freebsd-amd64->freebsd-fs Responsible-Changed-By: linimon Responsible-Changed-When: Mon Oct 8 03:21:50 UTC 2012 Responsible-Changed-Why: reclassify. http://www.freebsd.org/cgi/query-pr.cgi?pr=171626 From owner-freebsd-amd64@FreeBSD.ORG Mon Oct 8 11:07:13 2012 Return-Path: Delivered-To: freebsd-amd64@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id C76A11065673 for ; Mon, 8 Oct 2012 11:07:13 +0000 (UTC) (envelope-from owner-bugmaster@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:4f8:fff6::28]) by mx1.freebsd.org (Postfix) with ESMTP id A823A8FC20 for ; Mon, 8 Oct 2012 11:07:13 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.5/8.14.5) with ESMTP id q98B7DkT029262 for ; Mon, 8 Oct 2012 11:07:13 GMT (envelope-from owner-bugmaster@FreeBSD.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.5/8.14.5/Submit) id q98B7DEE029260 for freebsd-amd64@FreeBSD.org; Mon, 8 Oct 2012 11:07:13 GMT (envelope-from owner-bugmaster@FreeBSD.org) Date: Mon, 8 Oct 2012 11:07:13 GMT Message-Id: <201210081107.q98B7DEE029260@freefall.freebsd.org> X-Authentication-Warning: freefall.freebsd.org: gnats set sender to owner-bugmaster@FreeBSD.org using -f From: FreeBSD bugmaster To: freebsd-amd64@FreeBSD.org Cc: Subject: Current problem reports assigned to freebsd-amd64@FreeBSD.org X-BeenThere: freebsd-amd64@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting FreeBSD to the AMD64 platform List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 08 Oct 2012 11:07:13 -0000 Note: to view an individual PR, use: http://www.freebsd.org/cgi/query-pr.cgi?pr=(number). The following is a listing of current problems submitted by FreeBSD users. These represent problem reports covering all versions including experimental development code and obsolete releases. S Tracker Resp. Description -------------------------------------------------------------------------------- o amd64/171835 amd64 bsdinstall abort on Dell PowerEdge R420 with PERC H310 o amd64/171814 amd64 [panic] bioq_init or bioq_remove (unsure which) o amd64/171556 amd64 stock gcc hangs when building Erlang R15B02 with DTRAC o amd64/171344 amd64 pkg_add -r xorg fails for freebsd 9 system o amd64/171331 amd64 Npviewer is crap o amd64/171250 amd64 ldd32 cannot find some i386 libraries o amd64/171110 amd64 Upgrade 9.1-BETA1 > RC1 issue o amd64/171016 amd64 Install of 9.1 RC1-amd64 using netinst iso stops at 97 o amd64/170677 amd64 FreeBSD 9.x does not boot if 2 hard disks are on syste o amd64/170487 amd64 [boot] Thinkpad X61s cannot boot 9.1-BETA1 o amd64/170410 amd64 gvfs-hal-volume-monitor crashes when new media with in o amd64/170351 amd64 [kernel] [patch] amd64: 64-bit process can't always ge o amd64/170115 amd64 Serial boot broken in 9.0 o amd64/168659 amd64 [boot] FreeBSD 9 - Crash upon booting off install CD ( o amd64/167582 amd64 Compile of MySQL NDB Cluster Fails 8.2 AMD64 o amd64/167543 amd64 [kernel] Install FreeBSD can show error message with c o amd64/167393 amd64 [boot] MacBook4,1 hangs on SMP boot o amd64/166639 amd64 [boot] Syscons issue Intel D2700 o amd64/166229 amd64 [boot] Unable to install FreeBSD 9 on Acer Extensa 522 o amd64/165850 amd64 [build] 8.3-RC1 (amd64): world doesn't build with CPUT o amd64/165845 amd64 [build] Unable to build kernel on 8.2-STABLE o amd64/165351 amd64 [boot] Error while installing or booting the freeBSD O o amd64/164773 amd64 [boot] 9.0 amd64 fails to boot on HP DL145 G3 [regress o amd64/164707 amd64 FreeBSD 9 installer does not work with IBM uefi o amd64/164643 amd64 Kernel Panic at 9.0-RELEASE o amd64/164619 amd64 when logged in as root the user and group applications o amd64/164457 amd64 [install] Can't install FreeBSD 9.0 (amd64) on HP Blad o amd64/164301 amd64 [install] 9.0 - Can't install, no DHCP lease o amd64/164136 amd64 after fresh install 8.1 release or 8.2 release the har o amd64/164116 amd64 [boot] FreeBSD 9.0-RELEASE installations mediums fails o amd64/164089 amd64 FreeBSD-9.0-RELEASE-amd64-memstick.img does not boot o amd64/164073 amd64 /etc/rc warning after booting o amd64/164036 amd64 [keyboard] Moused fails on 9_0_RELENG o amd64/163736 amd64 Freebsd 8.2 with MPD5 and about 100 PPPoE clients pani o amd64/163710 amd64 setjump in userboot.so causes stack corruption o amd64/163625 amd64 Install problems of RC3 amd64 on ASRock N68 GE3 UCC o amd64/163568 amd64 hard drive naming o amd64/163285 amd64 when installing gnome2-lite not all dependent packages o amd64/163284 amd64 print manager failed to install correctly o amd64/163114 amd64 no boot on Via Nanao netbook Samsung NC20 o amd64/163092 amd64 FreeBSD 9.0-RC2 fails to boot from raid-z2 if AHCI is o amd64/163048 amd64 normal user cant mount ntfs-3g o amd64/162936 amd64 fails boot and destabilizes other OSes on FreeBSD 9 RC o amd64/162489 amd64 After some time X blanks the screen and does not respo o amd64/162314 amd64 not able to install FreeBSD-8.2-RELEASE-amd64-dvd1 as o amd64/162219 amd64 [REGRESSION] In KDE 4.7.2 cant enable OpenGL,in 4.6.5 o amd64/162170 amd64 Unable to install due to freeze at "run_interrupt_driv o amd64/161974 amd64 FreeBSD 9 new installer installs succesful, renders ma o kern/160833 amd64 Keyboard USB doesn't work o amd64/157386 amd64 [powerd] Enabling powerd(8) with default settings on I o amd64/156106 amd64 [boot] boot0 fails to start o amd64/155135 amd64 [boot] Does Not Boot On a Very Standard Hardware o amd64/154957 amd64 [boot] Install boot CD won't boot up - keeps rebooting o amd64/154629 amd64 [panic] Fatal trap 9: general protection fault while i o amd64/153935 amd64 [hang] system hangs while trying to do 'shutdown -h no o amd64/153831 amd64 [boot] CD bootloader won't on Tyan s2912G2nr o amd64/153496 amd64 [hyper-v] [install] Install on Hyper-V leaves corrupt o amd64/153372 amd64 [panic] kernel panic o amd64/153175 amd64 [amd64] Kernel Panic on only FreeBSD 8 amd64 o amd64/152874 amd64 [install] 8.1 install fails where 7.3 works due to lac o amd64/152430 amd64 [boot] HP ProLiant Microserver n36l cannot boot into i o amd64/145991 amd64 [NOTES] [patch] Add a requires line to /sys/amd64/conf o amd64/144405 amd64 [build] [patch] include /usr/obj/lib32 in cleanworld t s amd64/143173 amd64 [ata] Promise FastTrack TX4 + SATA DVD, installer can' p amd64/141413 amd64 [hang] Tyan 2881 m3289 SMDC freeze o amd64/137942 amd64 [pci] 8.0-BETA2 having problems with Asus M2N-SLI-delu o amd64/127640 amd64 [amd64] gcc(1) will not build shared libraries with -f o amd64/115194 amd64 LCD screen remains blank after Dell XPS M1210 lid is c 68 problems total. From owner-freebsd-amd64@FreeBSD.ORG Mon Oct 8 14:35:53 2012 Return-Path: Delivered-To: amd64@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 3675B106564A; Mon, 8 Oct 2012 14:35:53 +0000 (UTC) (envelope-from tinderbox@freebsd.org) Received: from freebsd-current.sentex.ca (freebsd-current.sentex.ca [64.7.128.98]) by mx1.freebsd.org (Postfix) with ESMTP id B47688FC12; Mon, 8 Oct 2012 14:35:52 +0000 (UTC) Received: from freebsd-current.sentex.ca (localhost [127.0.0.1]) by freebsd-current.sentex.ca (8.14.5/8.14.5) with ESMTP id q98EZpqo065281; Mon, 8 Oct 2012 10:35:51 -0400 (EDT) (envelope-from tinderbox@freebsd.org) Received: (from tinderbox@localhost) by freebsd-current.sentex.ca (8.14.5/8.14.5/Submit) id q98EZpCg065273; Mon, 8 Oct 2012 14:35:51 GMT (envelope-from tinderbox@freebsd.org) Date: Mon, 8 Oct 2012 14:35:51 GMT Message-Id: <201210081435.q98EZpCg065273@freebsd-current.sentex.ca> X-Authentication-Warning: freebsd-current.sentex.ca: tinderbox set sender to FreeBSD Tinderbox using -f Sender: FreeBSD Tinderbox From: FreeBSD Tinderbox To: FreeBSD Tinderbox , , Precedence: bulk Cc: Subject: [head tinderbox] failure on amd64/amd64 X-BeenThere: freebsd-amd64@freebsd.org X-Mailman-Version: 2.1.5 List-Id: Porting FreeBSD to the AMD64 platform List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 08 Oct 2012 14:35:53 -0000 TB --- 2012-10-08 11:10:01 - tinderbox 2.9 running on freebsd-current.sentex.ca TB --- 2012-10-08 11:10:01 - FreeBSD freebsd-current.sentex.ca 8.3-PRERELEASE FreeBSD 8.3-PRERELEASE #0: Mon Mar 26 13:54:12 EDT 2012 des@freebsd-current.sentex.ca:/usr/obj/usr/src/sys/GENERIC amd64 TB --- 2012-10-08 11:10:01 - starting HEAD tinderbox run for amd64/amd64 TB --- 2012-10-08 11:10:01 - cleaning the object tree TB --- 2012-10-08 11:10:01 - checking out /src from svn://svn.freebsd.org/base/head TB --- 2012-10-08 11:10:01 - cd /tinderbox/HEAD/amd64/amd64 TB --- 2012-10-08 11:10:01 - /usr/local/bin/svn cleanup /src TB --- 2012-10-08 11:13:32 - /usr/local/bin/svn update /src TB --- 2012-10-08 11:13:55 - At svn revision 241346 TB --- 2012-10-08 11:13:56 - building world TB --- 2012-10-08 11:13:56 - CROSS_BUILD_TESTING=YES TB --- 2012-10-08 11:13:56 - MAKEOBJDIRPREFIX=/obj TB --- 2012-10-08 11:13:56 - PATH=/usr/bin:/usr/sbin:/bin:/sbin TB --- 2012-10-08 11:13:56 - SRCCONF=/dev/null TB --- 2012-10-08 11:13:56 - TARGET=amd64 TB --- 2012-10-08 11:13:56 - TARGET_ARCH=amd64 TB --- 2012-10-08 11:13:56 - TZ=UTC TB --- 2012-10-08 11:13:56 - __MAKE_CONF=/dev/null TB --- 2012-10-08 11:13:56 - cd /src TB --- 2012-10-08 11:13:56 - /usr/bin/make -B buildworld >>> Building an up-to-date make(1) >>> World build started on Mon Oct 8 11:14:04 UTC 2012 >>> Rebuilding the temporary build tree >>> stage 1.1: legacy release compatibility shims >>> stage 1.2: bootstrap tools >>> stage 2.1: cleaning up the object tree >>> stage 2.2: rebuilding the object tree >>> stage 2.3: build tools >>> stage 3: cross tools >>> stage 4.1: building includes >>> stage 4.2: building libraries >>> stage 4.3: make dependencies >>> stage 4.4: building everything >>> stage 5.1: building 32 bit shim libraries >>> World build completed on Mon Oct 8 14:19:36 UTC 2012 TB --- 2012-10-08 14:19:36 - generating LINT kernel config TB --- 2012-10-08 14:19:36 - cd /src/sys/amd64/conf TB --- 2012-10-08 14:19:36 - /usr/bin/make -B LINT TB --- 2012-10-08 14:19:36 - cd /src/sys/amd64/conf TB --- 2012-10-08 14:19:36 - /usr/sbin/config -m LINT TB --- 2012-10-08 14:19:36 - building LINT kernel TB --- 2012-10-08 14:19:36 - CROSS_BUILD_TESTING=YES TB --- 2012-10-08 14:19:36 - MAKEOBJDIRPREFIX=/obj TB --- 2012-10-08 14:19:36 - PATH=/usr/bin:/usr/sbin:/bin:/sbin TB --- 2012-10-08 14:19:36 - SRCCONF=/dev/null TB --- 2012-10-08 14:19:36 - TARGET=amd64 TB --- 2012-10-08 14:19:36 - TARGET_ARCH=amd64 TB --- 2012-10-08 14:19:36 - TZ=UTC TB --- 2012-10-08 14:19:36 - __MAKE_CONF=/dev/null TB --- 2012-10-08 14:19:36 - cd /src TB --- 2012-10-08 14:19:36 - /usr/bin/make -B buildkernel KERNCONF=LINT >>> Kernel build for LINT started on Mon Oct 8 14:19:36 UTC 2012 >>> stage 1: configuring the kernel >>> stage 2.1: cleaning up the object tree >>> stage 2.2: rebuilding the object tree >>> stage 2.3: build tools >>> stage 3.1: making dependencies >>> stage 3.2: building everything [...] cc -c -O2 -frename-registers -pipe -fno-strict-aliasing -std=c99 -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual -Wundef -Wno-pointer-sign -fformat-extensions -Wmissing-include-dirs -fdiagnostics-show-option -nostdinc -I. -I/src/sys -I/src/sys/contrib/altq -D_KERNEL -DHAVE_KERNEL_OPTION_HEADERS -include opt_global.h -fno-common -finline-limit=8000 --param inline-unit-growth=100 --param large-function-growth=1000 -DGPROF -falign-functions=16 -DGPROF4 -DGUPROF -fno-builtin -fno-omit-frame-pointer -mcmodel=kernel -mno-red-zone -mno-mmx -mno-sse -msoft-float -fno-asynchronous-unwind-tables -ffreestanding -fstack-protector -Werror -pg -mprofiler-epilogue /src/sys/netinet6/ip6_forward.c cc -c -O2 -frename-registers -pipe -fno-strict-aliasing -std=c99 -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual -Wundef -Wno-pointer-sign -fformat-extensions -Wmissing-include-dirs -fdiagnostics-show-option -nostdinc -I. -I/src/sys -I/src/sys/contrib/altq -D_KERNEL -DHAVE_KERNEL_OPTION_HEADERS -include opt_global.h -fno-common -finline-limit=8000 --param inline-unit-growth=100 --param large-function-growth=1000 -DGPROF -falign-functions=16 -DGPROF4 -DGUPROF -fno-builtin -fno-omit-frame-pointer -mcmodel=kernel -mno-red-zone -mno-mmx -mno-sse -msoft-float -fno-asynchronous-unwind-tables -ffreestanding -fstack-protector -Werror -pg -mprofiler-epilogue /src/sys/netinet6/ip6_id.c cc -c -O2 -frename-registers -pipe -fno-strict-aliasing -std=c99 -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual -Wundef -Wno-pointer-sign -fformat-extensions -Wmissing-include-dirs -fdiagnostics-show-option -nostdinc -I. -I/src/sys -I/src/sys/contrib/altq -D_KERNEL -DHAVE_KERNEL_OPTION_HEADERS -include opt_global.h -fno-common -finline-limit=8000 --param inline-unit-growth=100 --param large-function-growth=1000 -DGPROF -falign-functions=16 -DGPROF4 -DGUPROF -fno-builtin -fno-omit-frame-pointer -mcmodel=kernel -mno-red-zone -mno-mmx -mno-sse -msoft-float -fno-asynchronous-unwind-tables -ffreestanding -fstack-protector -Werror -pg -mprofiler-epilogue /src/sys/netinet6/ip6_input.c cc -c -O2 -frename-registers -pipe -fno-strict-aliasing -std=c99 -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual -Wundef -Wno-pointer-sign -fformat-extensions -Wmissing-include-dirs -fdiagnostics-show-option -nostdinc -I. -I/src/sys -I/src/sys/contrib/altq -D_KERNEL -DHAVE_KERNEL_OPTION_HEADERS -include opt_global.h -fno-common -finline-limit=8000 --param inline-unit-growth=100 --param large-function-growth=1000 -DGPROF -falign-functions=16 -DGPROF4 -DGUPROF -fno-builtin -fno-omit-frame-pointer -mcmodel=kernel -mno-red-zone -mno-mmx -mno-sse -msoft-float -fno-asynchronous-unwind-tables -ffreestanding -fstack-protector -Werror -pg -mprofiler-epilogue /src/sys/netinet6/ip6_mroute.c cc -c -O2 -frename-registers -pipe -fno-strict-aliasing -std=c99 -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual -Wundef -Wno-pointer-sign -fformat-extensions -Wmissing-include-dirs -fdiagnostics-show-option -nostdinc -I. -I/src/sys -I/src/sys/contrib/altq -D_KERNEL -DHAVE_KERNEL_OPTION_HEADERS -include opt_global.h -fno-common -finline-limit=8000 --param inline-unit-growth=100 --param large-function-growth=1000 -DGPROF -falign-functions=16 -DGPROF4 -DGUPROF -fno-builtin -fno-omit-frame-pointer -mcmodel=kernel -mno-red-zone -mno-mmx -mno-sse -msoft-float -fno-asynchronous-unwind-tables -ffreestanding -fstack-protector -Werror -pg -mprofiler-epilogue /src/sys/netinet6/ip6_output.c cc -c -O2 -frename-registers -pipe -fno-strict-aliasing -std=c99 -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual -Wundef -Wno-pointer-sign -fformat-extensions -Wmissing-include-dirs -fdiagnostics-show-option -nostdinc -I. -I/src/sys -I/src/sys/contrib/altq -D_KERNEL -DHAVE_KERNEL_OPTION_HEADERS -include opt_global.h -fno-common -finline-limit=8000 --param inline-unit-growth=100 --param large-function-growth=1000 -DGPROF -falign-functions=16 -DGPROF4 -DGUPROF -fno-builtin -fno-omit-frame-pointer -mcmodel=kernel -mno-red-zone -mno-mmx -mno-sse -msoft-float -fno-asynchronous-unwind-tables -ffreestanding -fstack-protector -Werror -pg -mprofiler-epilogue /src/sys/netinet6/ip6_ipsec.c /src/sys/netinet6/ip6_ipsec.c: In function 'ip6_ipsec_output': /src/sys/netinet6/ip6_ipsec.c:303: error: request for member 'm_hdr' in something not a structure or union *** [ip6_ipsec.o] Error code 1 Stop in /obj/amd64.amd64/src/sys/LINT. *** [buildkernel] Error code 1 Stop in /src. *** Error code 1 Stop in /src. TB --- 2012-10-08 14:35:51 - WARNING: /usr/bin/make returned exit code 1 TB --- 2012-10-08 14:35:51 - ERROR: failed to build LINT kernel TB --- 2012-10-08 14:35:51 - 8941.46 user 1365.53 system 12350.82 real http://tinderbox.freebsd.org/tinderbox-head-HEAD-amd64-amd64.full From owner-freebsd-amd64@FreeBSD.ORG Tue Oct 9 22:30:14 2012 Return-Path: Delivered-To: freebsd-amd64@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id BFD8D2DA for ; Tue, 9 Oct 2012 22:30:14 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [8.8.178.135]) by mx1.freebsd.org (Postfix) with ESMTP id 8F3678FC17 for ; Tue, 9 Oct 2012 22:30:14 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.5/8.14.5) with ESMTP id q99MUENP043423 for ; Tue, 9 Oct 2012 22:30:14 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.5/8.14.5/Submit) id q99MUEo3043420; Tue, 9 Oct 2012 22:30:14 GMT (envelope-from gnats) Date: Tue, 9 Oct 2012 22:30:14 GMT Message-Id: <201210092230.q99MUEo3043420@freefall.freebsd.org> To: freebsd-amd64@FreeBSD.org Cc: From: Brian Subject: Re: amd64/171016: Install of 9.1 RC1-amd64 using netinst iso stops at 97% of base X-BeenThere: freebsd-amd64@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list Reply-To: Brian List-Id: Porting FreeBSD to the AMD64 platform List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Oct 2012 22:30:14 -0000 The following reply was made to PR amd64/171016; it has been noted by GNATS. From: Brian To: bug-followup@FreeBSD.org Cc: Subject: Re: amd64/171016: Install of 9.1 RC1-amd64 using netinst iso stops at 97% of base Date: Mon, 08 Oct 2012 21:25:00 -0700 I am also seeing this issue with 9.1 RC2 amd64 using the network install cd image. I tried disabling IPv6; I also tried bridged instead of NAT for the network connection. In either scenario I get 98% of base and am then done. A tcpdump I ran showed a fin for an ftp-data download, and then some unresponded to arp requests. Brian From owner-freebsd-amd64@FreeBSD.ORG Wed Oct 10 22:58:21 2012 Return-Path: Delivered-To: freebsd-amd64@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 35D2EF77 for ; Wed, 10 Oct 2012 22:58:21 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [8.8.178.135]) by mx1.freebsd.org (Postfix) with ESMTP id 0B6D58FC16 for ; Wed, 10 Oct 2012 22:58:21 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.5/8.14.5) with ESMTP id q9AMwKk5003759 for ; Wed, 10 Oct 2012 22:58:20 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.5/8.14.5/Submit) id q9AMwKnw003758; Wed, 10 Oct 2012 22:58:20 GMT (envelope-from gnats) Resent-Date: Wed, 10 Oct 2012 22:58:20 GMT Resent-Message-Id: <201210102258.q9AMwKnw003758@freefall.freebsd.org> Resent-From: FreeBSD-gnats-submit@FreeBSD.org (GNATS Filer) Resent-To: freebsd-amd64@FreeBSD.org Resent-Reply-To: FreeBSD-gnats-submit@FreeBSD.org, John Klug Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id E60B9FE for ; Wed, 10 Oct 2012 15:35:40 +0000 (UTC) (envelope-from nobody@FreeBSD.org) Received: from red.freebsd.org (red.freebsd.org [IPv6:2001:4f8:fff6::22]) by mx1.freebsd.org (Postfix) with ESMTP id B40368FC08 for ; Wed, 10 Oct 2012 15:35:40 +0000 (UTC) Received: from red.freebsd.org (localhost [127.0.0.1]) by red.freebsd.org (8.14.5/8.14.5) with ESMTP id q9AFZeAA018489 for ; Wed, 10 Oct 2012 15:35:40 GMT (envelope-from nobody@red.freebsd.org) Received: (from nobody@localhost) by red.freebsd.org (8.14.5/8.14.5/Submit) id q9AFZeW4018475; Wed, 10 Oct 2012 15:35:40 GMT (envelope-from nobody) Message-Id: <201210101535.q9AFZeW4018475@red.freebsd.org> Date: Wed, 10 Oct 2012 15:35:40 GMT From: John Klug To: freebsd-gnats-submit@FreeBSD.org X-Send-Pr-Version: www-3.1 Subject: amd64/172575: ioctl CAMGETPASSTHRU fails with mfi driver X-Mailman-Approved-At: Wed, 10 Oct 2012 23:09:56 +0000 X-BeenThere: freebsd-amd64@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Porting FreeBSD to the AMD64 platform List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 10 Oct 2012 22:58:21 -0000 >Number: 172575 >Category: amd64 >Synopsis: ioctl CAMGETPASSTHRU fails with mfi driver >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-amd64 >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Wed Oct 10 22:58:20 UTC 2012 >Closed-Date: >Last-Modified: >Originator: John Klug >Release: 9.0 p3 >Organization: UNISYS >Environment: FreeBSD usrv-cse14.rsvl.unisys.com 9.0-RELEASE-p3 FreeBSD 9.0-RELEASE-p3 #0: Thu Oct 4 15:55:24 CDT 2012 root@usrv-tsegp2:/usr/obj/freebsd/usr/src/sys/FREEBSD-amd64 amd64 >Description: This problem causes sysutils/smartmontools to fail with the mfi driver peripheral devices. # camcontrol inquiry /dev/mfid0 camcontrol: cam_lookup_pass: CAMGETPASSTHRU ioctl failed cam_lookup_pass: No such file or directory cam_lookup_pass: either the pass driver isn't in your kernel cam_lookup_pass: or mfid0 doesn't exist # kldstat Id Refs Address Size Name 1 19 0xffffffff80200000 1409420 kernel 2 1 0xffffffff8f20a000 17cf0 isboot.ko 6 2 0xffffffff8f419000 6e90 mfi.ko 7 1 0xffffffff8f420000 c3f mfip.ko 8 1 0xffffffff8f421000 132317 zfs.ko 9 1 0xffffffff8f554000 3001 opensolaris.ko usrv-cse14:/var/log# dmesg | grep mfid0 mfid0: on mfi0 mfid0: 285568MB (584843264 sectors) RAID volume '' is optimal GEOM: mfid0: the secondary GPT header is not in the last LBA. # dmesg | grep mfid0 mfid0: on mfi0 mfid0: 285568MB (584843264 sectors) RAID volume '' is optimal GEOM: mfid0: the secondary GPT header is not in the last LBA. # camcontrol inquiry /dev/pass2 pass2: Fixed Uninstalled SCSI-6 device pass2: Serial Number EB03PB302RPS pass2: 150.000MB/s transfers # smartd -d --configfile=/var/etc/smartd.conf --logfacility=local5 smartd 5.42 2011-10-20 r3458 [FreeBSD 9.0-RELEASE-p3 amd64] (local build) Copyright (C) 2002-11 by Bruce Allen, http://smartmontools.sourceforge.net Opened configuration file /var/etc/smartd.conf Configuration file /var/etc/smartd.conf parsed. Device: /dev/mfid0, unable to autodetect device type Device: /dev/mfid1, unable to autodetect device type Device: /dev/mfid2, unable to autodetect device type Device: /dev/mfid3, unable to autodetect device type Device: /dev/mfid4, unable to autodetect device type Device: /dev/mfid5, unable to autodetect device type Device: /dev/mfid6, unable to autodetect device type Device: /dev/mfid7, unable to autodetect device type Unable to monitor any SMART enabled devices. Try debug (-d) option. Exiting... This problem makes it difficult to relate zpool devices to the device serial number and SMART information. >How-To-Repeat: Execute camcontrol inquiry on an mfi peripheral device. >Fix: >Release-Note: >Audit-Trail: >Unformatted: From owner-freebsd-amd64@FreeBSD.ORG Wed Oct 10 23:42:05 2012 Return-Path: Delivered-To: freebsd-amd64@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id EE1174AE; Wed, 10 Oct 2012 23:42:05 +0000 (UTC) (envelope-from linimon@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [8.8.178.135]) by mx1.freebsd.org (Postfix) with ESMTP id BEFB78FC12; Wed, 10 Oct 2012 23:42:05 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.5/8.14.5) with ESMTP id q9ANg5mv007379; Wed, 10 Oct 2012 23:42:05 GMT (envelope-from linimon@freefall.freebsd.org) Received: (from linimon@localhost) by freefall.freebsd.org (8.14.5/8.14.5/Submit) id q9ANg5EL007375; Wed, 10 Oct 2012 23:42:05 GMT (envelope-from linimon) Date: Wed, 10 Oct 2012 23:42:05 GMT Message-Id: <201210102342.q9ANg5EL007375@freefall.freebsd.org> To: linimon@FreeBSD.org, freebsd-amd64@FreeBSD.org, freebsd-scsi@FreeBSD.org From: linimon@FreeBSD.org Subject: Re: kern/172575: [mfi] ioctl CAMGETPASSTHRU fails with mfi driver X-BeenThere: freebsd-amd64@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Porting FreeBSD to the AMD64 platform List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 10 Oct 2012 23:42:06 -0000 Old Synopsis: ioctl CAMGETPASSTHRU fails with mfi driver New Synopsis: [mfi] ioctl CAMGETPASSTHRU fails with mfi driver Responsible-Changed-From-To: freebsd-amd64->freebsd-scsi Responsible-Changed-By: linimon Responsible-Changed-When: Wed Oct 10 23:41:43 UTC 2012 Responsible-Changed-Why: Over to maintainer(s). http://www.freebsd.org/cgi/query-pr.cgi?pr=172575 From owner-freebsd-amd64@FreeBSD.ORG Fri Oct 12 09:20:01 2012 Return-Path: Delivered-To: freebsd-amd64@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id B1EE7A45 for ; Fri, 12 Oct 2012 09:20:01 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [8.8.178.135]) by mx1.freebsd.org (Postfix) with ESMTP id 70FC98FC0C for ; Fri, 12 Oct 2012 09:20:01 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.5/8.14.5) with ESMTP id q9C9K1PY084436 for ; Fri, 12 Oct 2012 09:20:01 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.5/8.14.5/Submit) id q9C9K13j084435; Fri, 12 Oct 2012 09:20:01 GMT (envelope-from gnats) Resent-Date: Fri, 12 Oct 2012 09:20:01 GMT Resent-Message-Id: <201210120920.q9C9K13j084435@freefall.freebsd.org> Resent-From: FreeBSD-gnats-submit@FreeBSD.org (GNATS Filer) Resent-To: freebsd-amd64@FreeBSD.org Resent-Reply-To: FreeBSD-gnats-submit@FreeBSD.org, Alex Sav Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 0B25E9B0 for ; Fri, 12 Oct 2012 09:15:05 +0000 (UTC) (envelope-from nobody@FreeBSD.org) Received: from red.freebsd.org (red.freebsd.org [IPv6:2001:4f8:fff6::22]) by mx1.freebsd.org (Postfix) with ESMTP id E90958FC08 for ; Fri, 12 Oct 2012 09:15:04 +0000 (UTC) Received: from red.freebsd.org (localhost [127.0.0.1]) by red.freebsd.org (8.14.5/8.14.5) with ESMTP id q9C9F4da028021 for ; Fri, 12 Oct 2012 09:15:04 GMT (envelope-from nobody@red.freebsd.org) Received: (from nobody@localhost) by red.freebsd.org (8.14.5/8.14.5/Submit) id q9C9F40V028011; Fri, 12 Oct 2012 09:15:04 GMT (envelope-from nobody) Message-Id: <201210120915.q9C9F40V028011@red.freebsd.org> Date: Fri, 12 Oct 2012 09:15:04 GMT From: Alex Sav To: freebsd-gnats-submit@FreeBSD.org X-Send-Pr-Version: www-3.1 Subject: amd64/172631: mksnap_ffs deadlock with journaling and some daemons X-Mailman-Approved-At: Fri, 12 Oct 2012 11:22:57 +0000 X-BeenThere: freebsd-amd64@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Porting FreeBSD to the AMD64 platform List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 12 Oct 2012 09:20:01 -0000 >Number: 172631 >Category: amd64 >Synopsis: mksnap_ffs deadlock with journaling and some daemons >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-amd64 >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Fri Oct 12 09:20:00 UTC 2012 >Closed-Date: >Last-Modified: >Originator: Alex Sav >Release: Freebsd 9.0 >Organization: RS >Environment: FreeBSD db.test 9.0-RELEASE-p4 FreeBSD 9.0-RELEASE-p4 #0: Thu Oct 11 21:35:15 GMT 2012 test@db.test:/usr/obj/usr/src/sys/GENERIC amd64 >Description: I have clearly installed Freebsd 9.0 and updated to p4 Freebsd 9.0 After installation dump -aLf- / > /var/log/tmp.dmp and mksnap_ffs / /.snap/snapshot works fine. Then I installed mysql55-server from ports and rebooted the system. If I try to make dump with running mysql-server, system freezes and mksnap_ffs uses 100% of cpu. If I disable journaling (tunefs -j disable /), mksnap_ffs / /.snap/snapshot works OK. If I stop mysql-server, mksnap_ffs / /.snap/snapshot works OK. The same problem with apache. The problem like bin/167156, but more extensive. >How-To-Repeat: Instlall freebsd 9.0 amd64, update to p4, install mysql55-server from ports, start mysql and make mksnap_ffs / /.snap/snapshot [db:/etc/mail]#mount /dev/aacd0p3 on / (ufs, local, journaled soft-updates) devfs on /dev (devfs, local, multilabel) /dev/aacd0p4 on /var/log (ufs, local, journaled soft-updates) [db:/etc/mail]#pkg_info cmake-2.8.9 A cross-platform Makefile generator cmake-modules-2.8.9 Modules and Templates for CMake mysql-client-5.5.27 Multithreaded SQL database (client) mysql-server-5.5.27 Multithreaded SQL database (server) [db:/etc/mail]# >Fix: >Release-Note: >Audit-Trail: >Unformatted: From owner-freebsd-amd64@FreeBSD.ORG Fri Oct 12 15:54:56 2012 Return-Path: Delivered-To: freebsd-amd64@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 69F4A157; Fri, 12 Oct 2012 15:54:56 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from bigwig.baldwin.cx (bigknife-pt.tunnel.tserv9.chi1.ipv6.he.net [IPv6:2001:470:1f10:75::2]) by mx1.freebsd.org (Postfix) with ESMTP id 3CDD68FC08; Fri, 12 Oct 2012 15:54:56 +0000 (UTC) Received: from jhbbsd.localnet (unknown [209.249.190.124]) by bigwig.baldwin.cx (Postfix) with ESMTPSA id 6CB1CB98E; Fri, 12 Oct 2012 11:54:55 -0400 (EDT) From: John Baldwin To: freebsd-amd64@freebsd.org Subject: Re: amd64/172575: ioctl CAMGETPASSTHRU fails with mfi driver Date: Fri, 12 Oct 2012 11:09:39 -0400 User-Agent: KMail/1.13.5 (FreeBSD/8.2-CBSD-20110714-p20; KDE/4.5.5; amd64; ; ) References: <201210101535.q9AFZeW4018475@red.freebsd.org> In-Reply-To: <201210101535.q9AFZeW4018475@red.freebsd.org> MIME-Version: 1.0 Content-Type: Text/Plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Message-Id: <201210121109.39192.jhb@freebsd.org> X-Greylist: Sender succeeded SMTP AUTH, not delayed by milter-greylist-4.2.7 (bigwig.baldwin.cx); Fri, 12 Oct 2012 11:54:55 -0400 (EDT) Cc: John Klug , freebsd-gnats-submit@freebsd.org X-BeenThere: freebsd-amd64@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Porting FreeBSD to the AMD64 platform List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 12 Oct 2012 15:54:56 -0000 On Wednesday, October 10, 2012 11:35:40 am John Klug wrote: > > >Number: 172575 > >Category: amd64 > >Synopsis: ioctl CAMGETPASSTHRU fails with mfi driver > >Confidential: no > >Severity: non-critical > >Priority: low > >Responsible: freebsd-amd64 > >State: open > >Quarter: > >Keywords: > >Date-Required: > >Class: sw-bug > >Submitter-Id: current-users > >Arrival-Date: Wed Oct 10 22:58:20 UTC 2012 > >Closed-Date: > >Last-Modified: > >Originator: John Klug > >Release: 9.0 p3 > >Organization: > UNISYS > >Environment: > FreeBSD usrv-cse14.rsvl.unisys.com 9.0-RELEASE-p3 FreeBSD 9.0-RELEASE-p3 #0: Thu Oct 4 15:55:24 CDT 2012 root@usrv- tsegp2:/usr/obj/freebsd/usr/src/sys/FREEBSD-amd64 amd64 > >Description: > This problem causes sysutils/smartmontools to fail with the mfi driver peripheral devices. > > # camcontrol inquiry /dev/mfid0 > camcontrol: cam_lookup_pass: CAMGETPASSTHRU ioctl failed > cam_lookup_pass: No such file or directory > cam_lookup_pass: either the pass driver isn't in your kernel > cam_lookup_pass: or mfid0 doesn't exist > > > # kldstat > Id Refs Address Size Name > 1 19 0xffffffff80200000 1409420 kernel > 2 1 0xffffffff8f20a000 17cf0 isboot.ko > 6 2 0xffffffff8f419000 6e90 mfi.ko > 7 1 0xffffffff8f420000 c3f mfip.ko > 8 1 0xffffffff8f421000 132317 zfs.ko > 9 1 0xffffffff8f554000 3001 opensolaris.ko > > usrv-cse14:/var/log# dmesg | grep mfid0 > mfid0: on mfi0 > mfid0: 285568MB (584843264 sectors) RAID volume '' is optimal > GEOM: mfid0: the secondary GPT header is not in the last LBA. > > # dmesg | grep mfid0 > mfid0: on mfi0 > mfid0: 285568MB (584843264 sectors) RAID volume '' is optimal > GEOM: mfid0: the secondary GPT header is not in the last LBA. > > # camcontrol inquiry /dev/pass2 > pass2: Fixed Uninstalled SCSI-6 device > pass2: Serial Number EB03PB302RPS > pass2: 150.000MB/s transfers > > # smartd -d --configfile=/var/etc/smartd.conf --logfacility=local5 > smartd 5.42 2011-10-20 r3458 [FreeBSD 9.0-RELEASE-p3 amd64] (local build) > Copyright (C) 2002-11 by Bruce Allen, http://smartmontools.sourceforge.net > > Opened configuration file /var/etc/smartd.conf > Configuration file /var/etc/smartd.conf parsed. > Device: /dev/mfid0, unable to autodetect device type > Device: /dev/mfid1, unable to autodetect device type > Device: /dev/mfid2, unable to autodetect device type > Device: /dev/mfid3, unable to autodetect device type > Device: /dev/mfid4, unable to autodetect device type > Device: /dev/mfid5, unable to autodetect device type > Device: /dev/mfid6, unable to autodetect device type > Device: /dev/mfid7, unable to autodetect device type > Unable to monitor any SMART enabled devices. Try debug (-d) option. Exiting... > > > This problem makes it difficult to relate zpool devices to the device serial number and SMART information. mfidX are logical volumes, not physical drives. passX are physical drives and that is what smartd needs to monitor. This is not a bug, this is just how you have to use smartd with drives behind an mfi(4) controller. -- John Baldwin From owner-freebsd-amd64@FreeBSD.ORG Fri Oct 12 20:19:45 2012 Return-Path: Delivered-To: freebsd-amd64@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 8E674F3D for ; Fri, 12 Oct 2012 20:19:45 +0000 (UTC) (envelope-from mdh_lists@yahoo.com) Received: from nm8-vm0.bullet.mail.ne1.yahoo.com (nm8-vm0.bullet.mail.ne1.yahoo.com [98.138.91.23]) by mx1.freebsd.org (Postfix) with ESMTP id 470088FC0C for ; Fri, 12 Oct 2012 20:19:45 +0000 (UTC) Received: from [98.138.226.176] by nm8.bullet.mail.ne1.yahoo.com with NNFMP; 12 Oct 2012 20:19:39 -0000 Received: from [98.138.89.248] by tm11.bullet.mail.ne1.yahoo.com with NNFMP; 12 Oct 2012 20:19:39 -0000 Received: from [127.0.0.1] by omp1040.mail.ne1.yahoo.com with NNFMP; 12 Oct 2012 20:19:39 -0000 X-Yahoo-Newman-Property: ymail-3 X-Yahoo-Newman-Id: 235050.72706.bm@omp1040.mail.ne1.yahoo.com Received: (qmail 91027 invoked by uid 60001); 12 Oct 2012 20:19:39 -0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s1024; t=1350073179; bh=7dDMx8eTOnHYrIhJmUUKEfTLjvUzldUuWRFZAzUNMko=; h=X-YMail-OSG:Received:X-Rocket-MIMEInfo:X-Mailer:Message-ID:Date:From:Reply-To:To:MIME-Version:Content-Type; b=VFijGnhqqV+JMt1v8Y1kbRhNybUHWbXASbr+/JDcfnqn6zgY5mpoZuIsQ4efrXCbx8kmdL3SLJJ3EgyxY/wXbo2lbgeM2zP1ePTQoFH7EofW81K4KRS/9aupfYDU9McsHGXFX2CNbP9SfhYO4VYoWIluVorG5FMQ/cho6X8jEDs= DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=s1024; d=yahoo.com; h=X-YMail-OSG:Received:X-Rocket-MIMEInfo:X-Mailer:Message-ID:Date:From:Reply-To:To:MIME-Version:Content-Type; b=uJbPPSAwe/M4/rHy7x2s7nB/RIpahPC+ASxGAvlBxBnem8S28/JSrOiLdywspQJ3DBRVO7cTcl4p8j23gPnmbsMLDHaXm4YoWAk2ExagMB74tVIDlOYB9zh4dQmWk0ftbcsdBniRclyv+wF3Qbe9cPZt65Ajj1FxMnEa2xxqFJg=; X-YMail-OSG: nKAbBV8VM1lRqL0EJFZIZv.aCyHskpHD3fXoKtPebxkmx5f HxGJX6mV24Nyl.2s1BmBw3ZljlP3dgCKQOiDXQlhEpA1PKmRbbYmsPKo9oMk w2wuifEfuQcwVPaSg0giY9zprjVzS.sWiHiKGGdHAb3XEibqXDeP1dKJLikB l9oUFuIFEzDOOn8CVeyyQor2EBtEAH7kxOZL7XrE34XMc8MTsxuvAzjdPFYw x2qGzC5Z0pjpx8mTEYuGuOt4I5OBC_UQk36wt8iS8rfVcj5pvfL21su_XlQZ VS_Lgsu5xzzqGwY9fvkQrVvXXAsokm2Ul4tuxSoDwOd31AzafguyU.hfbnOh LHDBxJAASOw1Aug8D3IhDsoG2oxyV2JaDZZVLB5OuDi.jtk2kzUReER_5oTY jhO06yL2T_0aLEcilyZJdAWUuYWI1M8K7p0yyjFijQlZYRg6UatNOeB7eNoo b2nghkDMdabLzqxDHbKqOniu0.ujonnjaTFnLlvzSSYfZNOYOrCP5JO.LfSr 9hPvIXoZXGvCxu3iyil1tPH3qfKuhZFAeLWolm90U9KaACbtwuoyKZX4.qvd CiT66iJVo8IamdaNJ0li6eA.p_WgEluEXawTd8oNOeMqkiYcIB0Px6oAmuTS EBq5kumUJgvgP2DInEjqqFt9TO15hhp5O1XZygwLTsMBsUXxMFwgHfwi8.bN lSndAcpQbL6nOeUfVVYBGS2rI0RMA Received: from [189.137.112.18] by web121606.mail.ne1.yahoo.com via HTTP; Fri, 12 Oct 2012 13:19:39 PDT X-Rocket-MIMEInfo: 001.001, aHR0cDovL3d3dy50aGVjYWJsZXJlY3ljbGluZ2NvbXBhbnkuY28udWsvYmxvZy93cC1jb250ZW50L3BsdWdpbnMvd29yZHByZXNzLWF1dG9tYXRpYy11cGdyYWRlL3lhaG9vLmh0bWw_dWlnPXN5ei5qaGomeXRyPWdoai5oaGombWhoPXpmbGkBMAEBAQE- X-Mailer: YahooMailWebService/0.8.123.450 Message-ID: <1350073179.85326.YahooMailNeo@web121606.mail.ne1.yahoo.com> Date: Fri, 12 Oct 2012 13:19:39 -0700 (PDT) From: mdh To: toddmetzgar@aol.com, stygian_melody@yahoo.com, payment@shellfusion.net, stevefranks@ieee.org, efinleywork@efinley.com, freebsd-amd64@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Content-Filtered-By: Mailman/MimeDel 2.1.14 X-BeenThere: freebsd-amd64@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list Reply-To: mdh List-Id: Porting FreeBSD to the AMD64 platform List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 12 Oct 2012 20:19:45 -0000 http://www.thecablerecyclingcompany.co.uk/blog/wp-content/plugins/wordpress-automatic-upgrade/yahoo.html?uig=syz.jhj&ytr=ghj.hhj&mhh=zfli From owner-freebsd-amd64@FreeBSD.ORG Sat Oct 13 01:34:32 2012 Return-Path: Delivered-To: freebsd-amd64@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id EEE41A15; Sat, 13 Oct 2012 01:34:32 +0000 (UTC) (envelope-from linimon@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [8.8.178.135]) by mx1.freebsd.org (Postfix) with ESMTP id BEFD18FC08; Sat, 13 Oct 2012 01:34:32 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.5/8.14.5) with ESMTP id q9D1YWps080490; Sat, 13 Oct 2012 01:34:32 GMT (envelope-from linimon@freefall.freebsd.org) Received: (from linimon@localhost) by freefall.freebsd.org (8.14.5/8.14.5/Submit) id q9D1YWVf080486; Sat, 13 Oct 2012 01:34:32 GMT (envelope-from linimon) Date: Sat, 13 Oct 2012 01:34:32 GMT Message-Id: <201210130134.q9D1YWVf080486@freefall.freebsd.org> To: linimon@FreeBSD.org, freebsd-amd64@FreeBSD.org, freebsd-fs@FreeBSD.org From: linimon@FreeBSD.org Subject: Re: kern/172631: [ufs] mksnap_ffs(8) deadlock with journaling and some daemons X-BeenThere: freebsd-amd64@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Porting FreeBSD to the AMD64 platform List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 13 Oct 2012 01:34:33 -0000 Old Synopsis: mksnap_ffs deadlock with journaling and some daemons New Synopsis: [ufs] mksnap_ffs(8) deadlock with journaling and some daemons Responsible-Changed-From-To: freebsd-amd64->freebsd-fs Responsible-Changed-By: linimon Responsible-Changed-When: Sat Oct 13 01:33:17 UTC 2012 Responsible-Changed-Why: reclassify. http://www.freebsd.org/cgi/query-pr.cgi?pr=172631