mirror of
https://github.com/openvswitch/ovs
synced 2025-10-15 14:17:18 +00:00
ovsdb-server: Maintain the database lock with --detach.
Before this commit, "ovsdb-server --detach" would detach after it opened the database file, which meant that the child process did not hold the file lock on the database file (because a forked child process does not inherit its parents' locks). This commit fixes the problem by making ovsdb-server open the database only after it has detached. This fix, in turn, required that daemonize() not chdir to /, because this would break databases whose names are given relative to the current directory, and so this commit also changes ovsdb-server to do so later.
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2008 Nicira Networks.
|
||||
* Copyright (c) 2008, 2009 Nicira Networks.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
@@ -55,7 +55,9 @@ char *make_pidfile_name(const char *name);
|
||||
void set_pidfile(const char *name);
|
||||
const char *get_pidfile(void);
|
||||
void set_no_chdir(void);
|
||||
bool is_chdir_enabled(void);
|
||||
void set_detach(void);
|
||||
bool get_detach(void);
|
||||
void daemonize(void);
|
||||
void die_if_already_running(void);
|
||||
void ignore_existing_pidfile(void);
|
||||
|
Reference in New Issue
Block a user