Date: Thu, 14 Dec 2017 18:34:21 +0700 From: Eugene Grosbein <eugen@grosbein.net> To: John Baldwin <jhb@FreeBSD.org>, Konstantin Belousov <kostikbel@gmail.com>, Conrad Meyer <cem@FreeBSD.org> Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r326758 - in head/sys/i386: conf include Message-ID: <5A3261BD.5050404@grosbein.net> In-Reply-To: <e2c426c3-41ed-2dd8-c5d4-15c60d8f7303@FreeBSD.org> References: <201712110432.vBB4WbnE021090@repo.freebsd.org> <20171211091943.GF2272@kib.kiev.ua> <5A2E5D44.9030904@grosbein.net> <4a9c76c9-8063-9420-b198-14487b089840@FreeBSD.org> <5A30378A.3040609@grosbein.net> <e2c426c3-41ed-2dd8-c5d4-15c60d8f7303@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On 13.12.2017 04:55, John Baldwin wrote: > On 12/12/17 3:09 PM, Eugene Grosbein wrote: >> On 13.12.2017 02:32, John Baldwin wrote: >> >>> Certainly for MIPS I have found that compiling with clang >>> instead of gcc for mips64 gives a kernel that panics for stack overflow for any >>> use of NFS. It might be that this is due to something MIPS-specific, but it >>> might be worthwhile retesting with kstack_pages=2 and building the kernel >>> with CROSS_TOOLCHAIN=i386-gcc after installing the appropriate package. >> >> You may want to check NFS code that uses stack heavily. >> Here are numbers for i386 (bytes-on-stack, module, what function): >> >> 1344 nfs_nfsdport.o <nfssvc_nfsd>: >> 1152 nfs_nfsdserv.o <nfsrvd_lockt>: >> 1128 nfs_nfsdserv.o <nfsrvd_lock>: >> 952 nfs_nfsdserv.o <nfsrvd_rename>: >> 664 nfs_nfsdserv.o <nfsrvd_open>: >> 640 nfs_nfsdserv.o <nfsrvd_link>: >> 624 nfs_nfsdserv.o <nfsrvd_create>: >> 608 nfs_nfsdserv.o <nfsrvd_mknod>: >> 600 nfs_clvfsops.o <nfs_mount>: > > My point is that you should compare gcc with clang as 10.x switched to > clang and that may be a factor in the stack overflows beginning with 10.x. I think thats's NFS code who is guilty. You can see example of amd64 (sic!) kstack exhaustion due to 40+ frames deep call chain here: https://lists.freebsd.org/pipermail/freebsd-stable/2017-July/087429.html
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?5A3261BD.5050404>