Change default to be 'process all events before calling daemon.'
Also, put a small work around into devd to prevent a hang on boot this would cause because select used to return 2 rather than 0 for no evetnts due to a bug I fixed a few days ago in subr_bus.c. I'll remove this workaround May 7th. You have until then to upgrade your kernel if you want to run a new devd with an older kernel.
This commit is contained in:
parent
81cda3d923
commit
812f53a7b5
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=114000
@ -72,7 +72,7 @@ static const char detach = '-';
|
||||
|
||||
int Dflag;
|
||||
int dflag;
|
||||
int nflag = 1;
|
||||
int nflag;
|
||||
int romeo_must_die = 0;
|
||||
|
||||
static void event_loop(void);
|
||||
@ -696,7 +696,9 @@ event_loop(void)
|
||||
FD_SET(fd, &fds);
|
||||
rv = select(fd + 1, &fds, &fds, &fds, &tv);
|
||||
// No events -> we've processed all pending events
|
||||
if (rv == 0) {
|
||||
// == 2 is a kernel bug, but we hang if we don't
|
||||
// make allowances for a while.
|
||||
if (rv == 0 || rv == 2) {
|
||||
if (Dflag)
|
||||
fprintf(stderr, "Calling daemon\n");
|
||||
daemon(0, 0);
|
||||
|
Loading…
Reference in New Issue
Block a user