kern/117216: FreeBSD 7-PRERELEASE crashes upon load when running Varnish trunk

Anders Nordby anders at FreeBSD.org
Mon Oct 15 11:20:01 PDT 2007


>Number:         117216
>Category:       kern
>Synopsis:       FreeBSD 7-PRERELEASE crashes upon load when running Varnish trunk
>Confidential:   no
>Severity:       critical
>Priority:       high
>Responsible:    freebsd-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Mon Oct 15 18:20:00 UTC 2007
>Closed-Date:
>Last-Modified:
>Originator:     Anders Nordby
>Release:        7-PRERELASE, amd64
>Organization:
Aftenposten AS
>Environment:
FreeBSD cache12.xxxx.no 7.0-PRERELEASE FreeBSD 7.0-PRERELEASE #4: Mon Oct 15 13:13:13 CEST 2007     root at cache12.xxxx.no:/usr/obj/usr/src/sys/CACHE12  amd64
>Description:
After giving Varnish some load, FreeBSD kernel crashes:

login: Sleeping thread (tid 100038, pid 31) owns a non-sleepable lock
sched_switch() at sched_switch+0x184
mi_switch() at mi_switch+0x189
sleepq_wait() at sleepq_wait+0x3b
_sx_slock_hard() at _sx_slock_hard+0x19d
fr_check() at fr_check+0x2b7
pfil_run_hooks() at pfil_run_hooks+0x9c
ip_output() at ip_output+0x339
tcp_output() at tcp_output+0x982
tcp_do_segment() at tcp_do_segment+0x9f8
tcp_input() at tcp_input+0x759
ip_input() at ip_input+0xa8
ether_demux() at ether_demux+0x1b4
ether_input() at ether_input+0x1bb
bce_intr() at bce_intr+0x24f
ithread_loop() at ithread_loop+0x180
fork_exit() at fork_exit+0x11f
fork_trampoline() at fork_trampoline+0xe
--- trap 0, rip = 0, rsp = 0xffffffffae3f9d30, rbp = 0 ---
panic: sleeping thread
cpuid = 6
KDB: enter: panic
[thread pid 1170 tid 100523 ]
Stopped at      kdb_enter+0x31: leave
db> bt
Tracing pid 1170 tid 100523 td 0xffffff00229869c0
kdb_enter() at kdb_enter+0x31
panic() at panic+0x173
propagate_priority() at propagate_priority+0x1ec
turnstile_wait() at turnstile_wait+0x1be
_mtx_lock_sleep() at _mtx_lock_sleep+0x9e
in_getsockaddr() at in_getsockaddr+0xb3
kern_getsockname() at kern_getsockname+0x71
getsockname() at getsockname+0x63
syscall() at syscall+0x254
Xfast_syscall() at Xfast_syscall+0xab
--- syscall (32, FreeBSD ELF64, getsockname), rip = 0x800c640ec, rsp = 0x7fffdb2d85e8, rbp = 0x7fffdb2d86c0 ---
db> 

I have two quad-core processors like this:

CPU: Intel(R) Xeon(R) CPU           X5355  @ 2.66GHz (2666.78-MHz K8-class CPU)
  Origin = "GenuineIntel"  Id = 0x6f7  Stepping = 7
  Features=0xbfebfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CLFLUSH,DTS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE>
  Features2=0x4e3bd<SSE3,RSVD2,MON,DS_CPL,VMX,EST,TM2,SSSE3,CX16,xTPR,PDCM,DCA>
  AMD Features=0x20000800<SYSCALL,LM>
  AMD Features2=0x1<LAHF>
  Cores per package: 4

>How-To-Repeat:
1) Install FreeBSD RELENG_7. Mine is as of october 15.

2) Install Varnish/trunk (up to date to commit 2096), from http://varnish.projects.linpro.no/.

3) Start Varnish. Preferrably on a SMP system with several data files for storage. I use an 8-core system with 8 GB RAM and 3 data files on separate RAID volumes.

4) Give Varnish load.

>Fix:
N/A


>Release-Note:
>Audit-Trail:
>Unformatted:


More information about the freebsd-bugs mailing list