> KPD_LOCKED allocates the pages and implicitly does the same thing > segkp_fault(F_SOFTLOCK) would do to them -- it allocates the pages and > leaves them locked SE_SHARED -- i.e. they are not pageable. > > swapout() unlocks the seg_kp stack pages (segkp_fault(F_SOFTUNLOCK)), > so that they become pageable, which is OK since a swapped out process > isn't runnable and therefore can't use its kernel stack. > > swapin() does the reverse, and calls segkp_fault(F_SOFTLOCK)... if the > pages were paged out by segkp, this will cause segkp to go bring them > back in, and lock them so they are again non-pageable. > > So the summary is, if a process gets swapped out, its stack can be > swapped out. In normal paging, kernel stacks are not swapped out, > since the process could still become runnable.
great info; thanks eric! -- meem _______________________________________________ opensolaris-code mailing list [email protected] https://opensolaris.org:444/mailman/listinfo/opensolaris-code
