Date: Mon, 20 Aug 2001 11:01:35 -0700 (PDT) From: John Baldwin <jhb@FreeBSD.org> To: Andrew Gallatin <gallatin@cs.duke.edu> Cc: imp@FreeBSD.org, "David O'Brien" <obrien@FreeBSD.org>, alpha@FreeBSD.org Subject: Re: today's kernel + JHB's trap.c patch is *evil* Message-ID: <XFMail.010820110135.jhb@FreeBSD.org> In-Reply-To: <15232.26016.723068.885342@grasshopper.cs.duke.edu>
next in thread | previous in thread | raw e-mail | index | archive | help
On 20-Aug-01 Andrew Gallatin wrote: > > John Baldwin writes: > > As to why the 4100 hasn't seen this, it may be that the slower CPU's are > > preventing this race from happening, or that 21164's use a stricter memory > > ordering than 21264's. I've seen similar issues where my dual P3 600 > would > > have problems when my dual PPro 200 wouldn't. > > > > 21264s are the first alpha to do out of order execution. Perhaps this > has something to do with it. > > FWIW, my UP1000 that I gripe about -current stability problems on is a > 21264 also.. Actually, this panic in question may be due to taking a trap in mtx_unlock_sleep() to mark a page as being referenced or somesuch and the trap would've released Giant, and thus when we resumed in mtx_unlock_sleep(), we were releasing a lock we didn't hold, which would lead to this panic. After I got a chance to relax and get away from computers a bit this weekend, I sort of figured that out. The problem with the mb's being wrong is that for that to have caused breakage, the process would have had to migrate across CPU's a few times and then still read stale data. However, all the mb's in lock operations for sched_lock would have prevented that. Also, mb's aren't used to manage cache coherency directly (which was what my mb theory depended on sort of), that is handled by snooping in the hardware. mb's just push data out of the CPU and onto the cache where the snooping can take effect. In summary, I'm now not sure that mtx_owned() is busted. If it was, I think we would have seen a _lot_ of bogus mtx_assert() panics by now. I guess my brain was just frazzled and stressed last Friday. > Drew -- John Baldwin <jhb@FreeBSD.org> -- http://www.FreeBSD.org/~jhb/ PGP Key: http://www.baldwin.cx/~john/pgpkey.asc "Power Users Use the Power to Serve!" - http://www.FreeBSD.org/ To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-alpha" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?XFMail.010820110135.jhb>