summaryrefslogtreecommitdiff
path: root/mm/swapfile.c
diff options
context:
space:
mode:
Diffstat (limited to 'mm/swapfile.c')
-rw-r--r--mm/swapfile.c11
1 files changed, 3 insertions, 8 deletions
diff --git a/mm/swapfile.c b/mm/swapfile.c
index 705b11a7a463..263e3d86a114 100644
--- a/mm/swapfile.c
+++ b/mm/swapfile.c
@@ -601,7 +601,6 @@ static bool scan_swap_map_try_ssd_cluster(struct swap_info_struct *si,
{
struct percpu_cluster *cluster;
struct swap_cluster_info *ci;
- bool found_free;
unsigned long tmp, max;
new_cluster:
@@ -623,8 +622,6 @@ new_cluster:
return false;
}
- found_free = false;
-
/*
* Other CPUs can use our cluster if they can't find a free cluster,
* check if there is still free entry in the cluster
@@ -638,21 +635,19 @@ new_cluster:
}
ci = lock_cluster(si, tmp);
while (tmp < max) {
- if (!si->swap_map[tmp]) {
- found_free = true;
+ if (!si->swap_map[tmp])
break;
- }
tmp++;
}
unlock_cluster(ci);
- if (!found_free) {
+ if (tmp >= max) {
cluster_set_null(&cluster->index);
goto new_cluster;
}
cluster->next = tmp + 1;
*offset = tmp;
*scan_base = tmp;
- return found_free;
+ return tmp < max;
}
static void __del_from_avail_list(struct swap_info_struct *p)