Date: Mon, 24 Sep 2001 21:17:57 -0700 (PDT) From: Matt Dillon <dillon@earth.backplane.com> To: Peter Wemm <peter@wemm.org> Cc: Ian Dowse <iedowse@maths.tcd.ie>, Julian Elischer <julian@elischer.org>, hackers@FreeBSD.ORG Subject: Re: VM Corruption - stumped, anyone have any ideas? Message-ID: <200109250417.f8P4Hv599043@earth.backplane.com> References: <20010925033116.6C2C23808@overcee.netplex.com.au>
next in thread | previous in thread | raw e-mail | index | archive | help
:Oh, one other thing... When we had PCIBIOS active for pci config space :read/write support, we had stack overflows on many systems when the SSE :stuff got MFC'ed. The simple act of trimming about 300 bytes from the :pcb_save structure was enough to make the difference between it working or :not. We are *way* too close to the wire. I asked about raising UPAGES :from 2 to 3 before RELENG_4_4 but it never happened. : :Julian cleaned up a couple of places stuff where we were allocating 2K of :local data *twice* on local stack frames. There are some gcc patches :floating around that enable you to generate a warning if your local stack :frame exceedes a certain amount or the arguments are bigger than a :specified amount. : :Cheers, :-Peter :-- :Peter Wemm - peter@FreeBSD.org; peter@yahoo-inc.com; peter@netplex.com.au I'm getting stack underflows with UPAGES set to 2. I've set UPAGES to 4 and preinitialized the UAREA to 0x11 and then scan it in exit1() to determine how much stack was actually used. If these numbers are correct, we are screwed with UPAGES set to 2. This is just 4 seconds worth of a buildworld. Note the '3664's showing up. That's too close. note the 3984 that came up after playing with the system for a few seconds! I'll post the patch set to use to test this stuff in a moment. -Matt process 323 exit kstackuse 2272 ... process 333 exit kstackuse 2272 process 225 exit kstackuse 3664 process 233 exit kstackuse 2272 ... process 237 exit kstackuse 2272 process 322 exit kstackuse 2676 process 334 exit kstackuse 2272 ... process 319 exit kstackuse 2272 test1# dmesg | fgrep process | sort -n +4 | tail -10 process 6 exit kstackuse 3640 process 89 exit kstackuse 3640 process 176 exit kstackuse 3664 process 186 exit kstackuse 3664 process 225 exit kstackuse 3664 process 290 exit kstackuse 3664 process 299 exit kstackuse 3664 process 300 exit kstackuse 3664 process 303 exit kstackuse 3664 process 138 exit kstackuse 3984 To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200109250417.f8P4Hv599043>