FreeBSD 5.3 crash (core with debug symbols available)

Matthew Dillon dillon at apollo.backplane.com
Fri Mar 4 01:03:13 GMT 2005


    The main reason we no longer swap the kernel stack is because there are
    a whole lot of things we put on local thread stacks that other parts of the
    system may reference even while the process is blocked.  e.g. token 
    references, message structures, register or FP save state, and so forth.
    I also intend to put cache related structures, such as range locks, on
    the stack.  I just didn't want to have to worry about it.

    Besides, it only happened when a process was actually *SWAPPED* out, not
    just heavily paged, and how often does *that* happen these days?  Even
    on a heavily loaded system only a handful of processes, mostly getty's
    and long-idle interactive shells, might actually be swapped out.  This
    makes the memory savings minimal at best.

						-Matt


More information about the freebsd-current mailing list