Re(2): strange pausing

Matthew Dillon dillon at apollo.backplane.com
Sat Mar 20 15:46:06 PST 2004


    That didn't fix it.  I just committed some additional work that does fix
    it.

    It turns out that there was a serious priority initialization bug in
    the DragonFly fork() code that was giving all newly forked children
    (no matter what the niceness or priority) a realtime p_priority.  This
    priority would persist until the next scheduler clock interrupt.  The
    reason?  The p_priority field in the child proc was not being initialized.
    Oops!

    That is now fixed.

    I also revamped the child estcpu inheritance.  I give newly forked 
    children a slightly higher estcpu then their parent, making their
    operation initially somewhat batch-like.  If they are interactive they
    will float back down, if not the initial batch-like estcpu means that
    they will not interfere with interactive processes already running
    on the system.

    In anycase, with these fixes I can do a make -j 8 buildworld in an
    xterm on my workstation (an AMD XP box now), and grab and move around
    the xterm's without any glitches.

					-Matt
					Matthew Dillon 
					<dillon at xxxxxxxxxxxxx>





More information about the Kernel mailing list