patch-2.3.30 linux/mm/vmscan.c
Next file: linux/net/atm/proc.c
Previous file: linux/mm/swapfile.c
Back to the patch index
Back to the overall index
- Lines: 21
- Date:
Mon Dec 6 10:17:31 1999
- Orig file:
v2.3.29/linux/mm/vmscan.c
- Orig date:
Tue Nov 23 22:42:21 1999
diff -u --recursive --new-file v2.3.29/linux/mm/vmscan.c linux/mm/vmscan.c
@@ -158,15 +158,15 @@
if (!(page = prepare_highmem_swapout(page)))
goto out_swap_free;
- vma->vm_mm->rss--;
- set_pte(page_table, swp_entry_to_pte(entry));
- vmlist_access_unlock(vma->vm_mm);
-
- flush_tlb_page(vma, address);
swap_duplicate(entry); /* One for the process, one for the swap cache */
/* This will also lock the page */
add_to_swap_cache(page, entry);
+ /* Put the swap entry into the pte after the page is in swapcache */
+ vma->vm_mm->rss--;
+ set_pte(page_table, swp_entry_to_pte(entry));
+ flush_tlb_page(vma, address);
+ vmlist_access_unlock(vma->vm_mm);
/* OK, do a physical asynchronous write to swap. */
rw_swap_page(WRITE, page, 0);
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)