Re: [PATCH 2/3] qemu_namespace: Properly report new files

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Oct 16, 2024 at 09:23:06 +0200, Martin Kletzander wrote:
> Function qemuNamespaceMknodOne() is supposed to return 0 if the file did
> not exist before this function.  If, however, the file existed, but was
> removed and recreated by this function the @existed flag should be reset
> to its original state (false) because the function then behaves the same

The *original* state, if it existed, was 'true'. You're reseting it to the
*proper* state as the code will unlink and re-create it thus that
specific file didn't exist.

> way as if the file did not exist as it needed to be recreated.
> 
> So reset the @existed flag to properly reflect what happened.
> 
> Signed-off-by: Martin Kletzander <mkletzan@xxxxxxxxxx>
> ---
>  src/qemu/qemu_namespace.c | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/src/qemu/qemu_namespace.c b/src/qemu/qemu_namespace.c
> index 71e29b4ba4f6..33a773917373 100644
> --- a/src/qemu/qemu_namespace.c
> +++ b/src/qemu/qemu_namespace.c
> @@ -1022,6 +1022,7 @@ qemuNamespaceMknodOne(qemuNamespaceMknodItem *data)
>                        data->file, data->target);
>          } else {
>              VIR_DEBUG("Creating symlink %s -> %s", data->file, data->target);
> +            existed = false;
>  
>              /* First, unlink the symlink target. Symlinks change and
>               * therefore we have no guarantees that pre-existing
> @@ -1053,6 +1054,7 @@ qemuNamespaceMknodOne(qemuNamespaceMknodItem *data)
>          } else {
>              VIR_DEBUG("Creating dev %s (%d,%d)",
>                        data->file, major(data->sb.st_rdev), minor(data->sb.st_rdev));
> +            existed = false;
>              unlink(data->file);
>              if (mknod(data->file, data->sb.st_mode, data->sb.st_rdev) < 0) {
>                  virReportSystemError(errno,

Reviewed-by: Peter Krempa <pkrempa@xxxxxxxxxx>



[Index of Archives]     [Virt Tools]     [Libvirt Users]     [Lib OS Info]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [KDE Users]     [Fedora Tools]

  Powered by Linux