-
Fyodor authored
CRIU doesn't save vaddr of each anon shmem page in anon shared mem pagemap img. It saves page offset from the beginning of anon shared memory area. CRIU calls page_xfer_dump_pages() with non zero @off argument to convert dumper virtual addresses to such offsets. The problem is in page_xfer_dump_pages() code. It substracts @off only for pages in pagemap but not for holes in pagemap. Bug is fixed in this patch. This patch is just a copy-paste of valid code path for pages to code path for holes. Bug is not currently reproduced in CRIU because: 1. Only anon shmem provides non-zero @off value to page_xfer_dump_pages() 2. Anon shared memory doesn't create holes in its pagemap (for now) This bugfix is a preparation for anon shared memory deduplication patchset. Signed-off-by:
Fyodor Bocharov <fbocharov@yandex.ru> Signed-off-by:
Eugene Batalov <eabatalov89@gmail.com> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
38daf50f