Date: Sat, 04 Oct 2014 10:03:48 -0700 From: Peter Wemm <peter@wemm.org> To: freebsd-stable@freebsd.org Cc: Konstantin Belousov <kostikbel@gmail.com>, Glen Barber <gjb@freebsd.org>, Steven Hartland <smh@freebsd.org>, FreeBSD Release Engineering Team <re@freebsd.org>, freebsd-stable@freebsd.org Subject: Re: Heads-up: Possible regression between 10.0-RELEASE and 10.1-BETA1 with '/ on ZFS' setup Message-ID: <1684676.g0E56GkSvf@overcee.wemm.org> In-Reply-To: <20141004170137.GA1171@hub.FreeBSD.org> References: <20141004024011.GC1199@hub.FreeBSD.org> <20141004160052.GR26076@kib.kiev.ua> <20141004170137.GA1171@hub.FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
[-- Attachment #1 --] On Saturday, October 04, 2014 01:01:37 PM Glen Barber wrote: > On Sat, Oct 04, 2014 at 07:00:53PM +0300, Konstantin Belousov wrote: > > On Sat, Oct 04, 2014 at 11:16:51AM -0400, Glen Barber wrote: > > > On Sat, Oct 04, 2014 at 04:03:39PM +0100, Steven Hartland wrote: > > > > >>On Sat, Oct 04, 2014 at 03:51:39AM +0100, Steven Hartland wrote: > > > > >>> > This has been a known issue on i386 since the switch to Clang see UPDATING: > > > > >>> 20121223: > > > > >>> After switching to Clang as the default compiler some users > > > > >>> of ZFS > > > > >>> on i386 systems started to experience stack overflow kernel > > > > >>> panics. > > > > >>> Please consider using 'options KSTACK_PAGES=4' in such > > > > >>> configurations. > > > > >>> > > > > > >>> > In my experience your millage may vary but essentially without 4 > > > > >>> > stack pages all bets are off in terms of stability. > > > > > > > > Oh and just looking at the code kern.kstack_pages is read only so wont > > > > have > > > > any effect, hence you will definitely need to set the kernel option as > > > > per > > > > the UPDATING entry. > > > > > > Indeed, it is readonly. I'm building kernel on the test VM, but may > > > have to get the kernel built somewhere else from a non-ZFS VM, because > > > the i386 VM with ZFS is unusable. > > > > > > I'm not familiar with these parts of the kernel internals. What is the > > > harm in making KSTACK_PAGES=4 the default in i386 GENERIC ? > > > > KVA on i386 is limited, and increase of the stack pages means that > > there is (significantly) less usermode threads can be created before > > kernel gets out of KVA. Not to mention larger consumption of memory, > > and need to find larger contig KVA region on the thread creation. > > > > The cost of increasing stack size is significant, this is why the stack > > is kept so small by all operating systems. > > Thank you for the explanation. > > If we cannot increase KSTACK_PAGES by default, do we have any > alternative solution outside of suggesting to avoid using ZFS on i386 > with more than one disk? When zfs creates its kthreads it can specify how much stack it needs. For i386 it could ask for more for the zfs threads. Its not a good option but its better than more stack for everything when it's already easy to run out without zfs. -- Peter Wemm - peter@wemm.org; peter@FreeBSD.org; peter@yahoo-inc.com; KI6FJV UTF-8: for when a ' or ... just won\342\200\231t do\342\200\246 [-- Attachment #2 --] -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iQEcBAABAgAGBQJUMCh0AAoJEDXWlwnsgJ4E9eIH/R5R8oc4S3gDQylf2LbNrX49 7p6TE2vpVkm3BMi2kYYlYel0Oen7Dy1RXqclwQdukn6vrhW0acFBUbxyH2LE36Mu yQZHMM1ZMvV6IrI5TV1C6tNHyIz5PddESBj47+75fd14ykazeivvgiWVLVCX7PJS fLZP1YTFAzwCigNivTUIv2pLEtfM1/MdlF/49f4XHNkt0rzRik/4PFOF2JAO6YkP 7v6u+fFCmy+dsu85L5gsLD/z8SIdhHU3VEuEjMIXrbzHkANvw41oUr7kK6gzqOCi nNcq/UyflsWCwwKd/JcCXuCdgNRaf1Z04b/1cfYRW0D3BjRWpE2gKI0VPeXPjI0= =PYk5 -----END PGP SIGNATURE-----
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1684676.g0E56GkSvf>
