swapfile.c (3fce371bfac2be0396ffc1e763600e6c6b1bb52a) swapfile.c (388f79345502232d335467e8fa6f8e55a18844e1)
1/*
2 * linux/mm/swapfile.c
3 *
4 * Copyright (C) 1991, 1992, 1993, 1994 Linus Torvalds
5 * Swap reorganised 29.12.95, Stephen Tweedie
6 */
7
8#include <linux/mm.h>

--- 1749 unchanged lines hidden (view full) ---

1758 struct mm_struct *mm;
1759
1760 mmget(new_start_mm);
1761 mmget(prev_mm);
1762 spin_lock(&mmlist_lock);
1763 while (swap_count(*swap_map) && !retval &&
1764 (p = p->next) != &start_mm->mmlist) {
1765 mm = list_entry(p, struct mm_struct, mmlist);
1/*
2 * linux/mm/swapfile.c
3 *
4 * Copyright (C) 1991, 1992, 1993, 1994 Linus Torvalds
5 * Swap reorganised 29.12.95, Stephen Tweedie
6 */
7
8#include <linux/mm.h>

--- 1749 unchanged lines hidden (view full) ---

1758 struct mm_struct *mm;
1759
1760 mmget(new_start_mm);
1761 mmget(prev_mm);
1762 spin_lock(&mmlist_lock);
1763 while (swap_count(*swap_map) && !retval &&
1764 (p = p->next) != &start_mm->mmlist) {
1765 mm = list_entry(p, struct mm_struct, mmlist);
1766 if (!atomic_inc_not_zero(&mm->mm_users))
1766 if (!mmget_not_zero(mm))
1767 continue;
1768 spin_unlock(&mmlist_lock);
1769 mmput(prev_mm);
1770 prev_mm = mm;
1771
1772 cond_resched();
1773
1774 swcount = *swap_map;

--- 1507 unchanged lines hidden ---
1767 continue;
1768 spin_unlock(&mmlist_lock);
1769 mmput(prev_mm);
1770 prev_mm = mm;
1771
1772 cond_resched();
1773
1774 swcount = *swap_map;

--- 1507 unchanged lines hidden ---