Re: FreeBSD 6.0-BETA4 panics when when configuring pfsync0

2005-09-10 Thread Dominic Marks
On Saturday 10 September 2005 00:00, Max Laier wrote:
 On Friday 09 September 2005 19:19, Max Laier wrote:
  On Friday 09 September 2005 15:05, Dominic Marks wrote:
   Dominic Marks wrote:
Hello,
   
I am setting up a redundant firewall setup for our company, the
systems are identically configured Dell servers running FreeBSD
6.0-BETA4. Software being used is pf, carp, pfsync and altq.
   
When I attempt to configure the pfsync0 interface the systems
panic. The systems currently have HTT enabled, I've googled but
I didn't find anything to suggest pfsync was not SMP/HTT
friendly. Could this be a configuration problem?
   
interface:
   
# ifconfig em2
em2: flags=8843UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST mtu
1500 options=bRXCSUM,TXCSUM,VLAN_MTU
inet 172.16.254.2 netmask 0xff00 broadcast
172.16.254.255 ether 00:04:23:bd:7a:ef
media: Ethernet autoselect (100baseTX full-duplex)
status: active
   
command:
   
# ifconfig pfsync0 syncdev em2 syncpeer 172.16.254.1
  
   Following a little more testing:
  
   If I don't specify a syncpeer I don't get the panic.
 
  Thanks for the dump.  Seems like we were leaking a lock from
  pfsyncioctl(). Can you please try this patch and report back. 
  Thanks in advance.

AWESOME!!

I'll test this on Monday when I'm back at work and report on the 
outcome.

 And the patch ... sorry.

:)

-- 
Dominic Marks
___
freebsd-hackers@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to [EMAIL PROTECTED]


Re: FreeBSD 6.0-BETA4 panics when when configuring pfsync0

2005-09-09 Thread Dominic Marks
Dominic Marks wrote:
 Hello,

 I am setting up a redundant firewall setup for our company, the systems
 are identically configured Dell servers running FreeBSD 6.0-BETA4.
 Software being used is pf, carp, pfsync and altq.

 When I attempt to configure the pfsync0 interface the systems panic. The
 systems currently have HTT enabled, I've googled but I didn't find
 anything to suggest pfsync was not SMP/HTT friendly. Could this be a
 configuration problem?

 interface:

 # ifconfig em2
 em2: flags=8843UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST mtu 1500
 options=bRXCSUM,TXCSUM,VLAN_MTU
 inet 172.16.254.2 netmask 0xff00 broadcast 172.16.254.255
 ether 00:04:23:bd:7a:ef
 media: Ethernet autoselect (100baseTX full-duplex)
 status: active

 command:

 # ifconfig pfsync0 syncdev em2 syncpeer 172.16.254.1

Following a little more testing:

If I don't specify a syncpeer I don't get the panic.

 panic message:

 Fatal trap 12: page fault while in kernel mode
 cpuid = 0; apic id = 00
 fault virtual address   = 0x24
 fault code  = supervisor read, page not present
 instruction pointer = 0x20:0xc067bfdc
 stack pointer   = 0x28:0xcca18aa0
 frame pointer   = 0x28:0xcca18ab4
 code segment= base 0x0, limit 0xf, type 0x1b
 = DPL 0, pres 1, def32 1, gran 1
 processor eflags= resume, IOPL = 0
 current process = 84 (swi4: clock sio)
 trap number = 12
 panic: page fault
 cpuid = 0
 Uptime: 17m1s
 Dumping 255 MB (2 chunks)

 backtrace:

 #0  doadump () at pcpu.h:165
 165 pcpu.h: No such file or directory.
 in pcpu.h
 (kgdb) bt
 #0  doadump () at pcpu.h:165
 #1  0xc065b55d in boot (howto=260) at
 /usr/src/sys/kern/kern_shutdown.c:397
 #2  0xc065b881 in panic (fmt=0xc0854645 %s)
 at /usr/src/sys/kern/kern_shutdown.c:553
 #3  0xc080cdfc in trap_fatal (frame=0xcca18a60, eva=36)
 at /usr/src/sys/i386/i386/trap.c:841
 #4  0xc080c5b6 in trap (frame=
   {tf_fs = 8, tf_es = 40, tf_ds = 40, tf_edi = -1043696512, tf_esi =
 -106424  5856, tf_ebp = -861828428, tf_isp =
 -861828468, tf_ebx = -1051017216, tf_edx = -
  1043696512, tf_ecx = -1051126400, tf_eax = 0, tf_trapno = 12,
 tf_err = 0, tf_eip   = -1066942500, tf_cs =
 32, tf_eflags = 65670, tf_esp = 52, tf_ss = 0})
 at /usr/src/sys/i386/i386/trap.c:272
 #5  0xc07fa5ca in calltrap () at /usr/src/sys/i386/i386/exception.s:139
 #6  0x0008 in ?? ()
 #7  0x0028 in ?? ()
 #8  0x0028 in ?? ()
 #9  0xc1ca7480 in ?? ()
 #10 0xc090e5a0 in pfi_buffer_max ()
 #11 0xcca18ab4 in ?? ()
 #12 0xcca18a8c in ?? ()
 #13 0xc15ac000 in ?? ()
 #14 0xc1ca7480 in ?? ()
 #15 0xc1591580 in ?? ()
 #16 0x in ?? ()
 #17 0x000c in ?? ()
 #18 0x in ?? ()
 #19 0xc067bfdc in propagate_priority (td=0xc1ca7480)
 at /usr/src/sys/kern/subr_turnstile.c:234
 #20 0xc067c8f1 in turnstile_wait (lock=0xc090e5a0, owner=0xc1ca7480)
 at /usr/src/sys/kern/subr_turnstile.c:629
 #21 0xc0652cb0 in _mtx_lock_sleep (m=0xc090e5a0, tid=3243950080, opts=0,
 file=0x0, line=0) at /usr/src/sys/kern/kern_mutex.c:549
 #22 0xc04768ed in pf_test (dir=2, ifp=0xc16ae000, m0=0xcca18c18, eh=0x0,
 inp=0x0) at /usr/src/sys/contrib/pf/net/pf.c:6284
 #23 0xc047f74b in pf_check_out (arg=0x0, m=0xcca18c18, ifp=0xc16ae000,
 dir=2,
 inp=0x0) at /usr/src/sys/contrib/pf/net/pf_ioctl.c:3386
 #24 0xc06d1837 in pfil_run_hooks (ph=0xc0934740, mp=0xcca18c8c,
 ifp=0xc16ae000, dir=2, inp=0x0) at /usr/src/sys/net/pfil.c:139
 #25 0xc06f7172 in ip_output (m=0xc177e900, opt=0xc177e988, ro=0xcca18c58,
 flags=2, imo=0xc16e3e08, inp=0x0) at
 /usr/src/sys/netinet/ip_output.c:666
 #26 0xc0469dc2 in pfsync_senddef (arg=0xc16e3e00)
 at /usr/src/sys/contrib/pf/net/if_pfsync.c:1829
 #27 0xc0667bea in softclock (dummy=0x0) at
 /usr/src/sys/kern/kern_timeout.c:295
 #28 0xc0646d11 in ithread_loop (arg=0xc15bc480)
 at /usr/src/sys/kern/kern_intr.c:545
 #29 0xc0645dd5 in fork_exit (callout=0xc0646bc4 ithread_loop,
 arg=0xc15bc480, frame=0xcca18d38) at /usr/src/sys/kern/kern_fork.c:789
 #30 0xc07fa62c in fork_trampoline () at
 /usr/src/sys/i386/i386/exception.s:208

 dmesg:

 Copyright (c) 1992-2005 The FreeBSD Project.
 Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
 The Regents of the University of California. All rights reserved.
 FreeBSD 6.0-BETA4 #1: Tue Sep  6 15:44:57 BST 2005
 [EMAIL PROTECTED]:/usr/obj/usr/src/sys/FIREWALL
 ACPI APIC Table: DELL   PESC1425
 Timecounter i8254 frequency 1193182 Hz quality 0
 CPU: Intel(R) Xeon(TM) CPU 3.20GHz (3200.12-MHz 686-class CPU)
   Origin = GenuineIntel  Id = 0xf41  Stepping = 1
   
 Features=0xbfebfbffFPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CLFLUSH,DTS,ACP
 I,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE
   Features2=0x641dSSE3,RSVD2,MON,DS_CPL,CNTX-ID,CX16,b14
   AMD Features=0x2010NX,LM
   

Re: FreeBSD 6.0-BETA4 panics when when configuring pfsync0

2005-09-09 Thread Max Laier
On Friday 09 September 2005 15:05, Dominic Marks wrote:
 Dominic Marks wrote:
  Hello,
 
  I am setting up a redundant firewall setup for our company, the systems
  are identically configured Dell servers running FreeBSD 6.0-BETA4.
  Software being used is pf, carp, pfsync and altq.
 
  When I attempt to configure the pfsync0 interface the systems panic. The
  systems currently have HTT enabled, I've googled but I didn't find
  anything to suggest pfsync was not SMP/HTT friendly. Could this be a
  configuration problem?
 
  interface:
 
  # ifconfig em2
  em2: flags=8843UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST mtu 1500
  options=bRXCSUM,TXCSUM,VLAN_MTU
  inet 172.16.254.2 netmask 0xff00 broadcast 172.16.254.255
  ether 00:04:23:bd:7a:ef
  media: Ethernet autoselect (100baseTX full-duplex)
  status: active
 
  command:
 
  # ifconfig pfsync0 syncdev em2 syncpeer 172.16.254.1

 Following a little more testing:

 If I don't specify a syncpeer I don't get the panic.

Thanks for the dump.  Seems like we were leaking a lock from pfsyncioctl().  
Can you please try this patch and report back.  Thanks in advance.

-- 
/\  Best regards,  | [EMAIL PROTECTED]
\ /  Max Laier  | ICQ #67774661
 X   http://pf4freebsd.love2party.net/  | [EMAIL PROTECTED]
/ \  ASCII Ribbon Campaign  | Against HTML Mail and News


pgpw6OUsYwVGQ.pgp
Description: PGP signature


Re: FreeBSD 6.0-BETA4 panics when when configuring pfsync0

2005-09-09 Thread Max Laier
On Friday 09 September 2005 19:19, Max Laier wrote:
 On Friday 09 September 2005 15:05, Dominic Marks wrote:
  Dominic Marks wrote:
   Hello,
  
   I am setting up a redundant firewall setup for our company, the systems
   are identically configured Dell servers running FreeBSD 6.0-BETA4.
   Software being used is pf, carp, pfsync and altq.
  
   When I attempt to configure the pfsync0 interface the systems panic.
   The systems currently have HTT enabled, I've googled but I didn't find
   anything to suggest pfsync was not SMP/HTT friendly. Could this be a
   configuration problem?
  
   interface:
  
   # ifconfig em2
   em2: flags=8843UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST mtu 1500
   options=bRXCSUM,TXCSUM,VLAN_MTU
   inet 172.16.254.2 netmask 0xff00 broadcast 172.16.254.255
   ether 00:04:23:bd:7a:ef
   media: Ethernet autoselect (100baseTX full-duplex)
   status: active
  
   command:
  
   # ifconfig pfsync0 syncdev em2 syncpeer 172.16.254.1
 
  Following a little more testing:
 
  If I don't specify a syncpeer I don't get the panic.

 Thanks for the dump.  Seems like we were leaking a lock from pfsyncioctl().
 Can you please try this patch and report back.  Thanks in advance.

And the patch ... sorry.

-- 
/\  Best regards,  | [EMAIL PROTECTED]
\ /  Max Laier  | ICQ #67774661
 X   http://pf4freebsd.love2party.net/  | [EMAIL PROTECTED]
/ \  ASCII Ribbon Campaign  | Against HTML Mail and News
Index: if_pfsync.c
===
RCS file: /usr/store/mlaier/fcvs/src/sys/contrib/pf/net/if_pfsync.c,v
retrieving revision 1.19.2.2
diff -u -p -r1.19.2.2 if_pfsync.c
--- if_pfsync.c	25 Aug 2005 05:01:03 -	1.19.2.2
+++ if_pfsync.c	9 Sep 2005 17:16:39 -
@@ -1128,14 +1128,14 @@ pfsyncioctl(struct ifnet *ifp, u_long cm
 			imo-imo_multicast_ifp = sc-sc_sync_ifp;
 			imo-imo_multicast_ttl = PFSYNC_DFLTTL;
 			imo-imo_multicast_loop = 0;
+#ifdef __FreeBSD__
+			PF_LOCK();
+#endif
 		}
 
 		if (sc-sc_sync_ifp ||
 		sc-sc_sendaddr.s_addr != INADDR_PFSYNC_GROUP) {
 			/* Request a full state table update. */
-#ifdef __FreeBSD__
-			PF_LOCK();
-#endif
 			sc-sc_ureq_sent = time_uptime;
 #if NCARP  0
 			if (pfsync_sync_ok)


pgpPK4JskHogx.pgp
Description: PGP signature