ceph/src/global/pidfile.h
Radoslaw Zarzynski a97b18fbd6 global: mark pidfile_write() with [[nodiscard]].
The goal is to never implicitly ignore errors that the function can
return, particularly the failure on pidfile locking due to the file
being hold by another instance. This problem happened recently in
crimson-osd.

Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2020-06-02 16:23:47 +02:00

29 lines
808 B
C++

// -*- mode:C++; tab-width:8; c-basic-offset:2; indent-tabs-mode:t -*-
// vim: ts=8 sw=2 smarttab
/*
* Ceph - scalable distributed file system
*
* Copyright (C) 2011 New Dream Network
*
* This is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License version 2.1, as published by the Free Software
* Foundation. See file COPYING.
*
*/
#ifndef CEPH_COMMON_PIDFILE_H
#define CEPH_COMMON_PIDFILE_H
#include <string_view>
// Write a pidfile with the current pid, using the configuration in the
// provided conf structure.
[[nodiscard]] int pidfile_write(std::string_view pid_file);
// Remove the pid file that was previously written by pidfile_write.
// This is safe to call in a signal handler context.
void pidfile_remove();
#endif