|
@@ -984,8 +984,8 @@ static void copy_data_page(unsigned long dst_pfn, unsigned long src_pfn)
|
|
src = kmap_atomic(s_page, KM_USER0);
|
|
src = kmap_atomic(s_page, KM_USER0);
|
|
dst = kmap_atomic(d_page, KM_USER1);
|
|
dst = kmap_atomic(d_page, KM_USER1);
|
|
do_copy_page(dst, src);
|
|
do_copy_page(dst, src);
|
|
- kunmap_atomic(src, KM_USER0);
|
|
|
|
kunmap_atomic(dst, KM_USER1);
|
|
kunmap_atomic(dst, KM_USER1);
|
|
|
|
+ kunmap_atomic(src, KM_USER0);
|
|
} else {
|
|
} else {
|
|
if (PageHighMem(d_page)) {
|
|
if (PageHighMem(d_page)) {
|
|
/* Page pointed to by src may contain some kernel
|
|
/* Page pointed to by src may contain some kernel
|
|
@@ -2273,8 +2273,8 @@ swap_two_pages_data(struct page *p1, struct page *p2, void *buf)
|
|
memcpy(buf, kaddr1, PAGE_SIZE);
|
|
memcpy(buf, kaddr1, PAGE_SIZE);
|
|
memcpy(kaddr1, kaddr2, PAGE_SIZE);
|
|
memcpy(kaddr1, kaddr2, PAGE_SIZE);
|
|
memcpy(kaddr2, buf, PAGE_SIZE);
|
|
memcpy(kaddr2, buf, PAGE_SIZE);
|
|
- kunmap_atomic(kaddr1, KM_USER0);
|
|
|
|
kunmap_atomic(kaddr2, KM_USER1);
|
|
kunmap_atomic(kaddr2, KM_USER1);
|
|
|
|
+ kunmap_atomic(kaddr1, KM_USER0);
|
|
}
|
|
}
|
|
|
|
|
|
/**
|
|
/**
|