swap.c revision 9525b14bcdeb5b5f6f95ab27c2f48f18bd2ec829