Date: Fri, 15 Jun 2018 14:03:03 +0300 From: Konstantin Belousov <kostikbel@gmail.com> To: Steven Hartland <steven.hartland@multiplay.co.uk> Cc: Alan Cox <alc@rice.edu>, src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r335171 - head/sys/vm Message-ID: <20180615110303.GN2493@kib.kiev.ua> In-Reply-To: <603230da-cfe2-e3e2-bd9a-f5230b30e371@multiplay.co.uk> References: <201806141941.w5EJf2qa069373@repo.freebsd.org> <c241bd08-eb94-152e-c1f1-d77dc6987908@multiplay.co.uk> <F220E356-D55E-48B9-9AF0-ABBF41A74FC7@rice.edu> <603230da-cfe2-e3e2-bd9a-f5230b30e371@multiplay.co.uk>
next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, Jun 15, 2018 at 11:03:06AM +0100, Steven Hartland wrote: > On 15/06/2018 00:07, Alan Cox wrote: > > > >> On Jun 14, 2018, at 5:54 PM, Steven Hartland > >> <steven.hartland@multiplay.co.uk > >> <mailto:steven.hartland@multiplay.co.uk>> wrote: > >> > >> Out of interest, how would this exhibit itself? > >> > > > > A panic in vm_page_insert_after(). > > > So just to confirm this couldn't cause random memory corruption of the > parent process? No, or to put it more sincere, I highly doubt it. Also, I do not think that this Go issue will be solved serendipitously by some FreeBSD bug fix. So far it is indicative that either the situation is too unique for the Go runtime so it is not exposed by other programs (which is quite doubtful), or this is a bug in Go runtime. The only way forward is to understand what exactly is broken for the situation. This requires at least deep knowledge the Go garbage collector internal working, which itself supposes understanding of the Go runtime and Go environment. I do not mean explanation of the assert, but the root cause that eventually triggers the assert. They are somewhat disjoint in time, I believe. I once tried to look at the Go gc, but after spending a day, realized that I need to use 2-3 weeks to learn the system, which made me abandon the attempt. So the pre-req for fixing this bug is for somebody who interested in Go, to spend enough time to explain the root-cause condition to the external world. I have no idea is it OS problem, Go runtime problem, or an issue with the port of Go runtime to FreeBSD.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20180615110303.GN2493>