Date: Thu, 21 Sep 1995 19:21:09 -0700 From: David Greenman <davidg@Root.COM> To: Terry Lambert <terry@lambert.org> Cc: current@freebsd.org Subject: Re: sig 10/11 problems Message-ID: <199509220221.TAA00233@corbin.Root.COM> In-Reply-To: Your message of "Thu, 21 Sep 95 18:19:46 PDT." <199509220119.SAA27331@phaeton.artisoft.com>
next in thread | previous in thread | raw e-mail | index | archive | help
>> I just committed to CVS a work-around for the sig 10/11 problems that >> people have been having for the past 3 weeks. It should be available to SUP >> in about 4 hours (9pm PDT). > >What is the identity of the problem? > >How does the workaround operate? There is a problem in vfs_cluster.c that is messing up the paging I/O. The exact problem isn't yet known (if it were, I would have committed a real fix rather than the workaround). I think the problem has to do with the use of "pbuf"s (these are struct buf's with pre-allocated kernel virtual address space). They are used both by the (vfs) cluster code to do cluster file I/O and by the VM system to do paging I/O. I think the 64K virtual space that is allotted to each buffer is being overrun in some cases, clobbering the pbuf VA space that follows. This could result in all sorts of interesting things, like I/O getting done to wrong pages (or not at all to others). Of course, this might not be the problem - but whatever it is, it is definately in vfs_cluster.c. The workaround is to simply disable file read clustering. This escentially causes the reads to degrade to the behavior that existed in FreeBSD 1.x as well as other versions of "Unix". The other fix (the "long" version) is to replace the cluster code with the code before John's recent rewrite of it - this also gets rid of the sig 10/11 problems. The reason it took so long to find this is that the changes to vfs_cluster.c have really nothing to do with the VM system changes that John made, and the symptoms are clearly VM system related. vfs_cluster.c is not used to do page- ins; clustering in the VM system happens using a different scheme that is better tailored for that type of I/O. >You are too cool. 8-). :-) -DG
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199509220221.TAA00233>