Date: Fri, 21 Sep 2007 16:38:30 -0700 From: "Christopher Chen" <muffaleta@gmail.com> To: "Max Laier" <max@love2party.net> Cc: freebsd-net@freebsd.org Subject: Re: Creation of carp interface on amd64 spins Message-ID: <7bc80d500709211638ha9d53e7ke4d3bd65471b63eb@mail.gmail.com> In-Reply-To: <7bc80d500709201552r563a2708o9f2e63474bd55bcd@mail.gmail.com> References: <7bc80d500709201457p5be576e3hdbe0fc536493497a@mail.gmail.com> <200709210033.05263.max@love2party.net> <7bc80d500709201552r563a2708o9f2e63474bd55bcd@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On 9/20/07, Christopher Chen <muffaleta@gmail.com> wrote: > On 9/20/07, Max Laier <max@love2party.net> wrote: > > On Thursday 20 September 2007, Christopher Chen wrote: > > > Hi: > > > > > > I'm running 6.2-RELEASE on some Pentium D's running and amd64 port. > > > > > > I'm doing some mildly interesting things with vlan tagging, etc, and I > > > want to also set up carp. On identical machines running the i386 port, > > > this works correctly, but when running > > > > > > ifconfig carp0 > > > > > > For instance, the process just spins and can't be killed. The rest of > > > the machine is fine, though! > > > > > > This is 6.2-RELEASE/amd64 running in SMP mode. > > > > > > Any ideas? > > > > Can you tell me what "^T" or ps gives for the spinning process? Does it > > hang in userland or kernel? Can you try to trace the ifconfig, or - if > > the hang is in the kernel - break into the kernel debugger and get a back > > trace for the process? > > Max: > > load: 1.62 cmd: ifconfig 920 [runnable] 0.00u 96.02s 98% 920k > > That's what ^T says. I'm going to reboot and ktrace it now. So here's > the last few lines of the ktrace: > > 944 ifconfig CALL modstat(0x10a,0x7fffffffe280) > 944 ifconfig RET modstat 0 > 944 ifconfig CALL modfnext(0x10a) > 944 ifconfig RET modfnext 267/0x10b > 944 ifconfig CALL modstat(0x10b,0x7fffffffe280) > 944 ifconfig RET modstat 0 > 944 ifconfig CALL socket(0x2,0x2,0) > 944 ifconfig RET socket 3 > 944 ifconfig CALL ioctl(0x3,SIOCIFCREATE,0x514ce0) > > l# lsof -p 944 > COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME > ifconfig 944 root cwd VDIR 0,77 512 16525 /root > ifconfig 944 root rtd VDIR 0,77 512 2 / > ifconfig 944 root txt VREG 0,77 80296 48 /sbin/ifconfig > ifconfig 944 root txt VREG 0,77 192688 116 > /libexec/ld-elf.so.1 > ifconfig 944 root txt VREG 0,77 7424 24794 /lib/libipx.so.3 > ifconfig 944 root txt VREG 0,77 1083208 24786 /lib/libc.so.6 > ifconfig 944 root 0u VCHR 0,93 0t2101 93 /dev/ttyp0 > ifconfig 944 root 1u VCHR 0,93 0t2101 93 /dev/ttyp0 > ifconfig 944 root 2u VCHR 0,93 0t2101 93 /dev/ttyp0 > ifconfig 944 root 3u IPv4 0xffffff002d459130 0t0 UDP *:* > > Sorry I don't have physical access so I can't break into the kernel > debugger right now. Aha! Some data! Okay so I got the console cable attached with DDB. So far so good. But here's something else. With DDB/KDB enabled in the kernel, suddenly ifconfig carp0 create works! Sounds like some sort of race condition, maybe? But when destroying the interfaces, I get this: << kernel trap 12 with interrupts disabled Fatal trap 12: page fault while in kernel mode fault virtual address = 0x48 fault code = supervisor read, page not present instruction pointer = 0x8:0xffffffff80430035 stack pointer = 0x10:0xffffffffa54b2ab0 frame pointer = 0x10:0xffffffffa54b2af0 code segment = base 0x0, limit 0xfffff, type 0x1b = DPL 0, pres 1, long 1, def32 0, gran 1 processor eflags = resume, IOPL = 0 current process = 11 (swi4: clock sio) [thread pid 11 tid 100002 ] Stopped at propagate_priority+0x75: movq 0x48(%r15),%rdi db> trace Tracing pid 11 tid 100002 td 0xffffff003dba2980 propagate_priority() at propagate_priority+0x75 turnstile_wait() at turnstile_wait+0x20f _mtx_lock_sleep() at _mtx_lock_sleep+0x89 carp_send_ad() at carp_send_ad+0xa9 softclock() at softclock+0x21a ithread_loop() at ithread_loop+0x162 fork_exit() at fork_exit+0x86 fork_trampoline() at fork_trampoline+0xe --- trap 0, rip = 0, rsp = 0xffffffffa54b2d00, rbp = 0 --- >> Wow! -- Chris Chen <muffaleta@gmail.com> "I want the kind of six pack you can't drink." -- Micah
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?7bc80d500709211638ha9d53e7ke4d3bd65471b63eb>