[Spice-devel] [PATCH] reds: Assure we don't have stale statistic files before trying to create a new one

Uri Lublin uril at redhat.com
Wed Jul 15 05:15:16 PDT 2015


Hi Frediano,

On 07/15/2015 01:05 PM, Frediano Ziglio wrote:
> If a previous Qemu executable is not able to delete the statistic file
> on the next creation with same name (statitics file are based on pid
> numbers so if pid get reused for another Qemu process you get the same
> name) it fails as you can't open a file with 0444 permissions (these
> are the permission used to create these files).
> This patch assure there are no stale file trying to remove it before the
> creation of the new one. As file is based on pid and name used for spice
> you are not deleting another file.

You can add a reference to the bug:

Fixes: rhbz#1177326

Ack.

Thanks,
     Uri.

>
> Signed-off-by: Frediano Ziglio <fziglio at redhat.com>
> ---
>   server/reds.c | 1 +
>   1 file changed, 1 insertion(+)
>
> diff --git a/server/reds.c b/server/reds.c
> index 0867edb..d1edc06 100644
> --- a/server/reds.c
> +++ b/server/reds.c
> @@ -3291,6 +3291,7 @@ static int do_spice_init(SpiceCoreInterface *core_interface)
>       shm_name_len = strlen(SPICE_STAT_SHM_NAME) + 20;
>       reds->stat_shm_name = (char *)spice_malloc(shm_name_len);
>       snprintf(reds->stat_shm_name, shm_name_len, SPICE_STAT_SHM_NAME, getpid());
> +    shm_unlink(reds->stat_shm_name);
>       if ((fd = shm_open(reds->stat_shm_name, O_CREAT | O_RDWR, 0444)) == -1) {
>           spice_error("statistics shm_open failed, %s", strerror(errno));
>       }
>



More information about the Spice-devel mailing list