git://git.onelab.eu
/
sliver-openvswitch.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Implement stress option framework.
[sliver-openvswitch.git]
/
lib
/
process.c
diff --git
a/lib/process.c
b/lib/process.c
index
3504dfb
..
6e9ea8e
100644
(file)
--- a/
lib/process.c
+++ b/
lib/process.c
@@
-32,10
+32,15
@@
#include "poll-loop.h"
#include "socket-util.h"
#include "util.h"
#include "poll-loop.h"
#include "socket-util.h"
#include "util.h"
-
-#define THIS_MODULE VLM_process
#include "vlog.h"
#include "vlog.h"
+VLOG_DEFINE_THIS_MODULE(process);
+
+COVERAGE_DEFINE(process_run);
+COVERAGE_DEFINE(process_run_capture);
+COVERAGE_DEFINE(process_sigchld);
+COVERAGE_DEFINE(process_start);
+
struct process {
struct list node;
char *name;
struct process {
struct list node;
char *name;
@@
-55,7
+60,7
@@
static struct list all_processes = LIST_INITIALIZER(&all_processes);
static bool sigchld_is_blocked(void);
static void block_sigchld(sigset_t *);
static void unblock_sigchld(const sigset_t *);
static bool sigchld_is_blocked(void);
static void block_sigchld(sigset_t *);
static void unblock_sigchld(const sigset_t *);
-static void sigchld_handler(int signr UNUSED);
+static void sigchld_handler(int signr
OVS_
UNUSED);
static bool is_member(int x, const int *array, size_t);
/* Initializes the process subsystem (if it is not already initialized). Calls
static bool is_member(int x, const int *array, size_t);
/* Initializes the process subsystem (if it is not already initialized). Calls
@@
-103,7
+108,7
@@
process_escape_args(char **argv)
if (argp != argv) {
ds_put_char(&ds, ' ');
}
if (argp != argv) {
ds_put_char(&ds, ' ');
}
- if (arg[strcspn(arg, " \t\r\n\v\\")]) {
+ if (arg[strcspn(arg, " \t\r\n\v\\
\'\"
")]) {
ds_put_char(&ds, '"');
for (p = arg; *p; p++) {
if (*p == '\\' || *p == '\"') {
ds_put_char(&ds, '"');
for (p = arg; *p; p++) {
if (*p == '\\' || *p == '\"') {
@@
-517,7
+522,7
@@
process_run_capture(char **argv, char **stdout_log, char **stderr_log,
block_sigchld(&oldsigs);
pid = fork();
if (pid < 0) {
block_sigchld(&oldsigs);
pid = fork();
if (pid < 0) {
-
int
error = errno;
+ error = errno;
unblock_sigchld(&oldsigs);
VLOG_WARN("fork failed: %s", strerror(error));
unblock_sigchld(&oldsigs);
VLOG_WARN("fork failed: %s", strerror(error));
@@
-585,12
+590,12
@@
process_run_capture(char **argv, char **stdout_log, char **stderr_log,
}
\f
static void
}
\f
static void
-sigchld_handler(int signr UNUSED)
+sigchld_handler(int signr
OVS_
UNUSED)
{
struct process *p;
COVERAGE_INC(process_sigchld);
{
struct process *p;
COVERAGE_INC(process_sigchld);
- LIST_FOR_EACH (p,
struct process,
node, &all_processes) {
+ LIST_FOR_EACH (p, node, &all_processes) {
if (!p->exited) {
int retval, status;
do {
if (!p->exited) {
int retval, status;
do {