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

Re: [lvm-devel] [PATCH] check for running cluster log daemon, not just log module

On Jul 16, 2010, at 11:16 AM, Alasdair G Kergon wrote:

On Fri, Jul 16, 2010 at 09:39:47AM -0500, Jon Brassow wrote:
+int dm_daemon_is_running(const char* lockfile)

+	/* Should we also read and check pid? */

Yes - check /proc/<pid>/fd/*  if available?

(cf. _get_filename in tools/lvmcmdline.c)

I'm not certain how best to go about this, because the function takes a generic argument - it doesn't specifically look for 'cmirrord'. So, unless the PID filename is guaranteed to follow a convention that includes the executable name, I'm not sure how to do more than just validate that /a/ process is running and has the appropriate lock. Sure, I could look-up a pid to see the cmdline and check that against the name of a daemon, but that isn't what we have available. I could check that at least the pid in the file is in the system, but that doesn't gain us anything.

One possible solution is to be less generic and simply make a function called 'dm_cmirrord_is_running', or something. Then I could correlate pid, cmdline, and executable name.

I am considering checking in the patch 'as is' and adding any additional testing in a separate commit if it proves useful.


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