Re: Noticable Delays Since Beta 3 (possible cause)

From: Sam Lawrance <boris_at_brooknet.com.au>
Date: Sat, 09 Oct 2004 14:15:23 +1000
Apparently this was already known and identified (to an extent). Here's
the code and commit log:

src/sys/kern_synch.c:390
        if ((p->p_sflag & PS_INMEM) == 0) {
                if ((p->p_sflag & PS_SWAPPINGIN) == 0) {
                        p->p_sflag |= PS_SWAPINREQ;
#ifndef SMP
                        /*
                         * XXX: Disabled on SMP due to a LOR between
                         * sched_lock and the sleepqueue chain locks.
                         */
                        wakeup(&proc0);
#endif
                }


Revision 1.256 / (download) - annotate - [select for diffs], Wed Aug 4
20:24:40 2004 UTC (2 months ago) by jhb 
Branch: MAIN 
Changes since 1.255: +6 -0 lines
Diff to previous 1.255 (colored)

Workaround a possible deadlock on SMP due to a spin lock LOR by disabling
the immediate awakening of proc0 (scheduler kproc, controls swapping
processes in and out).  The scheduler process periodically awakens already,
so this will not result in processes not being swapped in, there will just
be more latency in between a thread being made runnable and the scheduler
waking up to swap the affected process back in.
Received on Sat Oct 09 2004 - 02:13:11 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:38:16 UTC