mdmon: wait_and_act: fix debug message for SIGUSR1
Correctly print out wake reason if it was a signal. Previous code would print misleading select events (pselect(2) man page says the fdsets become undefined in case of error). Signed-off-by: Martin Wilck <mwilck@arcor.de> Signed-off-by: NeilBrown <neilb@suse.de>
This commit is contained in:
parent
39da26ecf5
commit
c371936051
13
monitor.c
13
monitor.c
|
@ -640,10 +640,17 @@ static int wait_and_act(struct supertype *container, int nowait)
|
|||
monitor_loop_cnt |= 1;
|
||||
rv = pselect(maxfd+1, NULL, NULL, &rfds, &ts, &set);
|
||||
monitor_loop_cnt += 1;
|
||||
if (rv == -1 && errno == EINTR)
|
||||
rv = 0;
|
||||
if (rv == -1) {
|
||||
if (errno == EINTR) {
|
||||
rv = 0;
|
||||
dprintf("monitor: caught signal\n");
|
||||
} else
|
||||
dprintf("monitor: error %d in pselect\n",
|
||||
errno);
|
||||
}
|
||||
#ifdef DEBUG
|
||||
dprint_wake_reasons(&rfds);
|
||||
else
|
||||
dprint_wake_reasons(&rfds);
|
||||
#endif
|
||||
container->retry_soon = 0;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue