Re: nosh: service-dt-scanner gets repeatedly killed by SIGABRT
2015-07-12 9:45 GMT-03:00 Jonathan de Boyne Pollard:
>
> The problem here is that inotify is waking kevent() up because you listed
> the directory.
The exact same thing (wakeup and read() with EINVAL error) happens if
service-control, service-show, service-is-ok and other service-*
commands are used on the service. And if the bundle directory has a
proper service/ subdirectory; no user action required to trigger it in
this last case.
> This will be a tricky one for the libkqueue people to fix
The libkqueue people might be just Mark Heily :-/
> But it is a libkqueue problem to be fixed. All that
> service-dt-scanner is doing is registering just one event of interest, and
> calling kevent() in a fairly tight loop that's in fact doing nothing else
> (apart from dumping the value of the spurious event).
That's... unfortunate :-( Have you ever considered just writing a BSD
backend using kqueue / kevent, and a Linux backend using epoll /
inotify or whatever native Linux mechanism is available to suit nosh's
needs? I believe you mentioned there's quite a few conditional
compilation already to work around libkqueue issues, and you also
already have "`uname` = FreeBSD" and "`uname` = Linux" tests in the
.do files.
Anyway, thank you for your time :-)
G.
Received on Sun Jul 12 2015 - 21:19:26 UTC
This archive was generated by hypermail 2.3.0
: Sun May 09 2021 - 19:44:19 UTC