[libvirt] [PATCH v2 1/2] util: Introduce virPidFileForceCleanupPath
Peter Krempa
pkrempa at redhat.com
Thu Oct 30 09:39:13 UTC 2014
On 10/12/14 14:12, Martin Kletzander wrote:
> This function is used to cleanup a pidfile doing whatever it takes, even
> killing the owning process.
>
> Signed-off-by: Martin Kletzander <mkletzan at redhat.com>
> ---
> v2:
> - Don't use "/proc", but simply just try to acquire the pidfile.
> - https://www.redhat.com/archives/libvir-list/2014-October/msg00320.html
>
> src/libvirt_private.syms | 1 +
> src/util/virpidfile.c | 42 ++++++++++++++++++++++++++++++++++++++++++
> src/util/virpidfile.h | 2 ++
> 3 files changed, 45 insertions(+)
>
> diff --git a/src/libvirt_private.syms b/src/libvirt_private.syms
> index d6265ac..30d100d 100644
> --- a/src/libvirt_private.syms
> +++ b/src/libvirt_private.syms
> @@ -1810,6 +1810,7 @@ virPidFileBuildPath;
> virPidFileConstructPath;
> virPidFileDelete;
> virPidFileDeletePath;
> +virPidFileForceCleanupPath;
> virPidFileRead;
> virPidFileReadIfAlive;
> virPidFileReadPath;
> diff --git a/src/util/virpidfile.c b/src/util/virpidfile.c
> index a3b8846..a64a1cf 100644
> --- a/src/util/virpidfile.c
> +++ b/src/util/virpidfile.c
> @@ -37,6 +37,7 @@
> #include "c-ctype.h"
> #include "areadlink.h"
> #include "virstring.h"
> +#include "virprocess.h"
>
> #define VIR_FROM_THIS VIR_FROM_NONE
>
> @@ -567,3 +568,44 @@ virPidFileConstructPath(bool privileged,
> VIR_FREE(rundir);
> return ret;
> }
> +
> +
> +/**
> + * virPidFileForceCleanupPath:
> + *
> + * Check if the pidfile is left around and clean it up whatever it
> + * takes. This doesn't raise an error. This function must not be
> + * called multiple times with the same path, be it in threads or
> + * processes.
> + *
> + * Returns 0 if the pidfile was successfully cleaned up, -1 otherwise.
Possibly worth mentioning that this function doesn't set libvirt errors.
> + */
> +int
> +virPidFileForceCleanupPath(const char *path)
ACK,
Peter
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: OpenPGP digital signature
URL: <http://listman.redhat.com/archives/libvir-list/attachments/20141030/22742d06/attachment-0001.sig>
More information about the libvir-list
mailing list