Hi Changes since v2: - rebase - address comments - use TARGET_PAGE_SIZE and remove casts - remove TARGET_PAGE_MASK from compression code. Nothing else use them. And if offsets are not aligned, we are in big trouble.
Please, review. Changes since v1: - Add reviewed tags for reviewed patches - Change comment about last_stage (philmd) - Change cast to 1ULL for ram_release_page() - remove TARGET_PAGE_MASK mask. It was used only for compression, and offset should be page aligned already Please, review. Thanks, Juan. [v1] This series do several cleanups: - Dave found that I was using "%d" for unsigned, fix all uses. - We pass last_stage left and right, but we only use it in two places Just move it to RAMState. - do_compress_page() used a goto when not needed. - ram_release_pages() was always used with one page - And put it when we detect zero pages, instead of everywhere we have find a zero page. Please, review. Juan Quintela (6): migration: All this fields are unsigned migration: We only need last_stage in two places migration: ram_release_pages() always receive 1 page as argument migration: Remove masking for compression migration: simplify do_compress_ram_page migration: Move ram_release_pages() call to save_zero_page_to_file() migration/multifd-zlib.c | 20 +++++------ migration/multifd-zstd.c | 24 ++++++------- migration/multifd.c | 16 ++++----- migration/ram.c | 73 +++++++++++++++++----------------------- migration/trace-events | 26 +++++++------- 5 files changed, 74 insertions(+), 85 deletions(-) -- 2.34.1