Nir Soffer
2022-Feb-20 12:13 UTC
[Libguestfs] [PATCH libnbd 2/8] copy: Rename copy_subcommand to create_subcommand
copy_subcommand creates a new command without copying the original command. Rename the function to make this more clear. Signed-off-by: Nir Soffer <nsoffer at redhat.com> --- copy/multi-thread-copying.c | 29 ++++++++++++++--------------- 1 file changed, 14 insertions(+), 15 deletions(-) diff --git a/copy/multi-thread-copying.c b/copy/multi-thread-copying.c index 632d7006..2d16d2df 100644 --- a/copy/multi-thread-copying.c +++ b/copy/multi-thread-copying.c @@ -332,26 +332,25 @@ poll_both_ends (uintptr_t index) dst->ops->asynch_notify_write (dst, index); else if ((fds[1].revents & (POLLERR | POLLNVAL)) != 0) { errno = ENOTCONN; perror (dst->name); exit (EXIT_FAILURE); } } } /* Create a sub-command of an existing command. This creates a slice - * referencing the buffer of the existing command in order to avoid - * copying. + * referencing the buffer of the existing command without copying. */ static struct command * -copy_subcommand (struct command *command, uint64_t offset, size_t len, - bool zero) +create_subcommand (struct command *command, uint64_t offset, size_t len, + bool zero) { const uint64_t end = command->offset + command->slice.len; struct command *newcommand; assert (command->offset <= offset && offset < end); assert (offset + len <= end); newcommand = calloc (1, sizeof *newcommand); if (newcommand == NULL) { perror ("calloc"); @@ -409,21 +408,21 @@ finished_read (void *vp, int *error) i + sparse_size <= end; i += sparse_size) { if (is_zero (slice_ptr (command->slice) + i-start, sparse_size)) { /* It's a zero range. If the last was a zero too then we do * nothing here which coalesces. Otherwise write the last data * and start a new zero range. */ if (!last_is_zero) { /* Write the last data (if any). */ if (i - last_offset > 0) { - newcommand = copy_subcommand (command, + newcommand = create_subcommand (command, last_offset, i - last_offset, false); dst->ops->asynch_write (dst, newcommand, (nbd_completion_callback) { .callback = free_command, .user_data = newcommand, }); } /* Start the new zero range. */ last_offset = i; @@ -431,55 +430,55 @@ finished_read (void *vp, int *error) } } else { /* It's data. If the last was data too, do nothing => * coalesce. Otherwise write the last zero range and start a * new data. */ if (last_is_zero) { /* Write the last zero range (if any). */ if (i - last_offset > 0) { - newcommand = copy_subcommand (command, - last_offset, i - last_offset, - true); + newcommand = create_subcommand (command, + last_offset, i - last_offset, + true); fill_dst_range_with_zeroes (newcommand); } /* Start the new data. */ last_offset = i; last_is_zero = false; } } } /* for i */ /* Write the last_offset up to i. */ if (i - last_offset > 0) { if (!last_is_zero) { - newcommand = copy_subcommand (command, - last_offset, i - last_offset, - false); + newcommand = create_subcommand (command, + last_offset, i - last_offset, + false); dst->ops->asynch_write (dst, newcommand, (nbd_completion_callback) { .callback = free_command, .user_data = newcommand, }); } else { - newcommand = copy_subcommand (command, - last_offset, i - last_offset, - true); + newcommand = create_subcommand (command, + last_offset, i - last_offset, + true); fill_dst_range_with_zeroes (newcommand); } } /* There may be an unaligned tail, so write that. */ if (end - i > 0) { - newcommand = copy_subcommand (command, i, end - i, false); + newcommand = create_subcommand (command, i, end - i, false); dst->ops->asynch_write (dst, newcommand, (nbd_completion_callback) { .callback = free_command, .user_data = newcommand, }); } /* Free the original command since it has been split into * subcommands and the original is no longer needed. */ -- 2.35.1
Eric Blake
2022-Feb-21 14:52 UTC
[Libguestfs] [PATCH libnbd 2/8] copy: Rename copy_subcommand to create_subcommand
On Sun, Feb 20, 2022 at 02:13:57PM +0200, Nir Soffer wrote:> copy_subcommand creates a new command without copying the original > command. Rename the function to make this more clear. > > Signed-off-by: Nir Soffer <nsoffer at redhat.com> > --- > copy/multi-thread-copying.c | 29 ++++++++++++++--------------- > 1 file changed, 14 insertions(+), 15 deletions(-) > > if (!last_is_zero) { > /* Write the last data (if any). */ > if (i - last_offset > 0) { > - newcommand = copy_subcommand (command, > + newcommand = create_subcommand (command, > last_offset, i - last_offset, > false);Indentation needs updates here.> dst->ops->asynch_write (dst, newcommand, > (nbd_completion_callback) { > .callback = free_command, > .user_data = newcommand, > }); > } > /* Start the new zero range. */ > last_offset = i; > @@ -431,55 +430,55 @@ finished_read (void *vp, int *error) > } > } > else { > /* It's data. If the last was data too, do nothing => > * coalesce. Otherwise write the last zero range and start a > * new data. > */ > if (last_is_zero) { > /* Write the last zero range (if any). */ > if (i - last_offset > 0) { > - newcommand = copy_subcommand (command, > - last_offset, i - last_offset, > - true); > + newcommand = create_subcommand (command, > + last_offset, i - last_offset, > + true);But you got it right elsewhere. ACK. -- Eric Blake, Principal Software Engineer Red Hat, Inc. +1-919-301-3266 Virtualization: qemu.org | libvirt.org