[Bug 198727] [PATCH] lang/mono FileSystemWatcher (kevent) deadlock problem
bugzilla-noreply at freebsd.org
bugzilla-noreply at freebsd.org
Wed Oct 23 06:37:38 UTC 2019
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=198727
perry3035 <perry3035 at gmail.com> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |perry3035 at gmail.com
--- Comment #34 from perry3035 <perry3035 at gmail.com> ---
There were 2 issues with mono's unique execution of kevent FileSystemWatcher on
FreeBSD:
* FileSystemWatcher usage in mono's HEAD for kevent was depending on Darwin's
particular conduct (when kevent is executed with NULL break, if kqueue FD is
shut kevent approach Darwin comes back with mistake, anyway FreeBSD doesn't
carry on that way - in truth as indicated by criticism I got from bit designers
on FreeBSD close would square hanging tight for kevent to finish therefore
causing gridlock)
* All watcher occasions were produced from a similar string which recognized
them and that exhibited plausibility of halt if change handler was to
cripple/reset watcher (this showed in ASP.Net applications not being restarted
after dll changes, and not recompiling singular parts on aspx/ascx document
changes)
Connected fix fixes those issues (I had the option to check that in the wake of
applying it XSP and mono's fastcgi servers act in anticipated manner).
Joined fix completes a few things:
* renames individual from imported timespec structure from deluding tv_usec to
appropriate tv_nsec (esteem is in nanoseconds, not microseconds)
* includes watcher string prematurely end on the off chance that it doesn't
effortlessly shutdown inside 2 seconds (I think not so much required, however
better to be as cautious as possible)
* moves real occasion dispatching to separate string (accordingly killing
potential for halt portrayed before)
Connected fix is to be applied on most recent rendition of port as of now
(3.12.1)
https://www.britishassignmentwriters.co.uk
--
You are receiving this mail because:
You are the assignee for the bug.
More information about the freebsd-mono
mailing list