[libvirt] [PATCH 3/5] storage: drop 'Extent' from virStorageBackendWipeExtentLocal

John Ferlan jferlan at redhat.com
Wed Dec 16 20:23:56 UTC 2015



On 12/11/2015 11:36 AM, Ján Tomko wrote:
> The only caller always passes 0 for the extent start.
> Drop the 'extent_start' parameter, as well as the mention of extents
> from the function name.
> ---
>  src/storage/storage_backend.c | 32 +++++++++++++++-----------------
>  1 file changed, 15 insertions(+), 17 deletions(-)
> 

I think 3 & 4 could be combined - since you're removing extent_start
anyway as part of the same change...

The extent_length/wipe_len is already an unsigned long long (from
target.allocation) - so that's just part of fixing the function as far
as I'm concerned.

If you want to keep them separate I'm not going to complain either.

John
> diff --git a/src/storage/storage_backend.c b/src/storage/storage_backend.c
> index 120d654..d1276dd 100644
> --- a/src/storage/storage_backend.c
> +++ b/src/storage/storage_backend.c
> @@ -1987,29 +1987,28 @@ virStorageBackendVolZeroSparseFileLocal(virStorageVolDefPtr vol,
>  
>  
>  static int
> -virStorageBackendWipeExtentLocal(virStorageVolDefPtr vol,
> -                                 int fd,
> -                                 off_t extent_start,
> -                                 off_t extent_length,
> -                                 size_t writebuf_length,
> -                                 size_t *bytes_wiped)
> +virStorageBackendWipeLocal(virStorageVolDefPtr vol,
> +                           int fd,
> +                           off_t extent_length,
> +                           size_t writebuf_length,
> +                           size_t *bytes_wiped)
>  {
>      int ret = -1, written = 0;
>      off_t remaining = 0;
>      size_t write_size = 0;
>      char *writebuf = NULL;
>  
> -    VIR_DEBUG("extent logical start: %ju len: %ju",
> -              (uintmax_t)extent_start, (uintmax_t)extent_length);
> +    VIR_DEBUG("extent logical start: 0 len: %ju",
> +              (uintmax_t)extent_length);
>  
>      if (VIR_ALLOC_N(writebuf, writebuf_length) < 0)
>          goto cleanup;
>  
> -    if (lseek(fd, extent_start, SEEK_SET) < 0) {
> +    if (lseek(fd, 0, SEEK_SET) < 0) {
>          virReportSystemError(errno,
> -                             _("Failed to seek to position %ju in volume "
> +                             _("Failed to seek to the start in volume "
>                                 "with path '%s'"),
> -                             (uintmax_t)extent_start, vol->target.path);
> +                             vol->target.path);
>          goto cleanup;
>      }
>  
> @@ -2126,12 +2125,11 @@ virStorageBackendVolWipeLocal(virConnectPtr conn ATTRIBUTE_UNUSED,
>          if (S_ISREG(st.st_mode) && st.st_blocks < (st.st_size / DEV_BSIZE)) {
>              ret = virStorageBackendVolZeroSparseFileLocal(vol, st.st_size, fd);
>          } else {
> -            ret = virStorageBackendWipeExtentLocal(vol,
> -                                                   fd,
> -                                                   0,
> -                                                   vol->target.allocation,
> -                                                   st.st_blksize,
> -                                                   &bytes_wiped);
> +            ret = virStorageBackendWipeLocal(vol,
> +                                             fd,
> +                                             vol->target.allocation,
> +                                             st.st_blksize,
> +                                             &bytes_wiped);
>          }
>      }
>  
> 




More information about the libvir-list mailing list