Lines Matching full:p

40 static int multifd_zstd_send_setup(MultiFDSendParams *p, Error **errp)  in multifd_zstd_send_setup()  argument
48 error_setg(errp, "multifd %u: zstd createCStream failed", p->id); in multifd_zstd_send_setup()
57 p->id, ZSTD_getErrorName(res)); in multifd_zstd_send_setup()
66 error_setg(errp, "multifd %u: out of memory for zbuff", p->id); in multifd_zstd_send_setup()
69 p->compress_data = z; in multifd_zstd_send_setup()
72 p->iov = g_new0(struct iovec, 2); in multifd_zstd_send_setup()
76 static void multifd_zstd_send_cleanup(MultiFDSendParams *p, Error **errp) in multifd_zstd_send_cleanup() argument
78 struct zstd_data *z = p->compress_data; in multifd_zstd_send_cleanup()
84 g_free(p->compress_data); in multifd_zstd_send_cleanup()
85 p->compress_data = NULL; in multifd_zstd_send_cleanup()
87 g_free(p->iov); in multifd_zstd_send_cleanup()
88 p->iov = NULL; in multifd_zstd_send_cleanup()
91 static int multifd_zstd_send_prepare(MultiFDSendParams *p, Error **errp) in multifd_zstd_send_prepare() argument
93 MultiFDPages_t *pages = &p->data->u.ram; in multifd_zstd_send_prepare()
94 struct zstd_data *z = p->compress_data; in multifd_zstd_send_prepare()
98 if (!multifd_send_prepare_common(p)) { in multifd_zstd_send_prepare()
130 p->id); in multifd_zstd_send_prepare()
135 p->id, ZSTD_getErrorName(ret)); in multifd_zstd_send_prepare()
139 p->iov[p->iovs_num].iov_base = z->zbuff; in multifd_zstd_send_prepare()
140 p->iov[p->iovs_num].iov_len = z->out.pos; in multifd_zstd_send_prepare()
141 p->iovs_num++; in multifd_zstd_send_prepare()
142 p->next_packet_size = z->out.pos; in multifd_zstd_send_prepare()
145 p->flags |= MULTIFD_FLAG_ZSTD; in multifd_zstd_send_prepare()
146 multifd_send_fill_packet(p); in multifd_zstd_send_prepare()
150 static int multifd_zstd_recv_setup(MultiFDRecvParams *p, Error **errp) in multifd_zstd_recv_setup() argument
155 p->compress_data = z; in multifd_zstd_recv_setup()
159 error_setg(errp, "multifd %u: zstd createDStream failed", p->id); in multifd_zstd_recv_setup()
168 p->id, ZSTD_getErrorName(ret)); in multifd_zstd_recv_setup()
178 error_setg(errp, "multifd %u: out of memory for zbuff", p->id); in multifd_zstd_recv_setup()
184 static void multifd_zstd_recv_cleanup(MultiFDRecvParams *p) in multifd_zstd_recv_cleanup() argument
186 struct zstd_data *z = p->compress_data; in multifd_zstd_recv_cleanup()
192 g_free(p->compress_data); in multifd_zstd_recv_cleanup()
193 p->compress_data = NULL; in multifd_zstd_recv_cleanup()
196 static int multifd_zstd_recv(MultiFDRecvParams *p, Error **errp) in multifd_zstd_recv() argument
198 uint32_t in_size = p->next_packet_size; in multifd_zstd_recv()
201 uint32_t expected_size = p->normal_num * page_size; in multifd_zstd_recv()
202 uint32_t flags = p->flags & MULTIFD_FLAG_COMPRESSION_MASK; in multifd_zstd_recv()
203 struct zstd_data *z = p->compress_data; in multifd_zstd_recv()
209 p->id, flags, MULTIFD_FLAG_ZSTD); in multifd_zstd_recv()
213 multifd_recv_zero_page_process(p); in multifd_zstd_recv()
215 if (!p->normal_num) { in multifd_zstd_recv()
220 ret = qio_channel_read_all(p->c, (void *)z->zbuff, in_size, errp); in multifd_zstd_recv()
230 for (i = 0; i < p->normal_num; i++) { in multifd_zstd_recv()
231 ramblock_recv_bitmap_set_offset(p->block, p->normal[i]); in multifd_zstd_recv()
232 z->out.dst = p->host + p->normal[i]; in multifd_zstd_recv()
250 p->id); in multifd_zstd_recv()
255 p->id, ZSTD_getErrorName(ret)); in multifd_zstd_recv()
262 p->id, out_size, expected_size); in multifd_zstd_recv()