Commit 8bd0b9da authored by Yihao Han's avatar Yihao Han Committed by Linus Torvalds
Browse files

mm/damon/vaddr: remove swap_ranges() and replace it with swap()

Remove 'swap_ranges()' and replace it with the macro 'swap()' defined in
'include/linux/minmax.h' to simplify code and improve efficiency

Link: https://lkml.kernel.org/r/20211111115355.2808-1-hanyihao@vivo.com


Signed-off-by: default avatarYihao Han <hanyihao@vivo.com>
Reviewed-by: default avatarSeongJae Park <sj@kernel.org>
Reviewed-by: default avatarMuchun Song <songmuchun@bytedance.com>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent cdeed009
Loading
Loading
Loading
Loading
+3 −13
Original line number Diff line number Diff line
@@ -98,16 +98,6 @@ static unsigned long sz_range(struct damon_addr_range *r)
	return r->end - r->start;
}

static void swap_ranges(struct damon_addr_range *r1,
			struct damon_addr_range *r2)
{
	struct damon_addr_range tmp;

	tmp = *r1;
	*r1 = *r2;
	*r2 = tmp;
}

/*
 * Find three regions separated by two biggest unmapped regions
 *
@@ -146,9 +136,9 @@ static int __damon_va_three_regions(struct vm_area_struct *vma,
		gap.start = last_vma->vm_end;
		gap.end = vma->vm_start;
		if (sz_range(&gap) > sz_range(&second_gap)) {
			swap_ranges(&gap, &second_gap);
			swap(gap, second_gap);
			if (sz_range(&second_gap) > sz_range(&first_gap))
				swap_ranges(&second_gap, &first_gap);
				swap(second_gap, first_gap);
		}
next:
		last_vma = vma;
@@ -159,7 +149,7 @@ static int __damon_va_three_regions(struct vm_area_struct *vma,

	/* Sort the two biggest gaps by address */
	if (first_gap.start > second_gap.start)
		swap_ranges(&first_gap, &second_gap);
		swap(first_gap, second_gap);

	/* Store the result */
	regions[0].start = ALIGN(start, DAMON_MIN_REGION);