On Tue, Sep 10, 2024 at 2:05 PM Peter Xu <pet...@redhat.com> wrote: > > The qatzip series was based on an older commit, it applied cleanly even > though it has conflicts. Neither CI nor myself found the build will break > as it's skipped by default when qatzip library was missing. > > Fix the build issues. No need to copy stable as it just landed 9.2. > > Cc: Yichen Wang <yichen.w...@bytedance.com> > Cc: Bryan Zhang <bryan.zh...@bytedance.com> > Cc: Hao Xiang <hao.xi...@linux.dev> > Cc: Yuan Liu <yuan1....@intel.com> > Fixes: 80484f9459 ("migration: Introduce 'qatzip' compression method") > Signed-off-by: Peter Xu <pet...@redhat.com> > --- > > Qatzip developers: would you help me to double check whether this is the > right fix?
It makes sense and looks good to me. Thanks a lot for correcting this. > --- > migration/multifd-qatzip.c | 18 +++++++++--------- > 1 file changed, 9 insertions(+), 9 deletions(-) > > diff --git a/migration/multifd-qatzip.c b/migration/multifd-qatzip.c > index 3c787ed879..7b68397625 100644 > --- a/migration/multifd-qatzip.c > +++ b/migration/multifd-qatzip.c > @@ -160,7 +160,8 @@ static void qatzip_send_cleanup(MultiFDSendParams *p, > Error **errp) > */ > static int qatzip_send_prepare(MultiFDSendParams *p, Error **errp) > { > - MultiFDPages_t *pages = p->pages; > + uint32_t page_size = multifd_ram_page_size(); > + MultiFDPages_t *pages = &p->data->u.ram; > QatzipData *q = p->compress_data; > int ret; > unsigned int in_len, out_len; > @@ -179,12 +180,12 @@ static int qatzip_send_prepare(MultiFDSendParams *p, > Error **errp) > * implementation. > */ > for (int i = 0; i < pages->normal_num; i++) { > - memcpy(q->in_buf + (i * p->page_size), > + memcpy(q->in_buf + (i * page_size), > pages->block->host + pages->offset[i], > - p->page_size); > + page_size); > } > > - in_len = pages->normal_num * p->page_size; > + in_len = pages->normal_num * page_size; > if (in_len > q->in_len) { > error_setg(errp, "multifd %u: unexpectedly large input", p->id); > return -1; > @@ -197,7 +198,7 @@ static int qatzip_send_prepare(MultiFDSendParams *p, > Error **errp) > p->id, ret); > return -1; > } > - if (in_len != pages->normal_num * p->page_size) { > + if (in_len != pages->normal_num * page_size) { > error_setg(errp, "multifd %u: QATzip failed to compress all input", > p->id); > return -1; > @@ -329,7 +330,8 @@ static int qatzip_recv(MultiFDRecvParams *p, Error **errp) > int ret; > unsigned int in_len, out_len; > uint32_t in_size = p->next_packet_size; > - uint32_t expected_size = p->normal_num * p->page_size; > + uint32_t page_size = multifd_ram_page_size(); > + uint32_t expected_size = p->normal_num * page_size; > uint32_t flags = p->flags & MULTIFD_FLAG_COMPRESSION_MASK; > > if (in_size > q->in_len) { > @@ -370,9 +372,7 @@ static int qatzip_recv(MultiFDRecvParams *p, Error **errp) > > /* Copy each page to its appropriate location. */ > for (int i = 0; i < p->normal_num; i++) { > - memcpy(p->host + p->normal[i], > - q->out_buf + p->page_size * i, > - p->page_size); > + memcpy(p->host + p->normal[i], q->out_buf + page_size * i, > page_size); > } > return 0; > } > -- > 2.45.0 >