[Info-vax] hung program location
Stephen Hoffman
seaohveh at hoffmanlabs.invalid
Wed Feb 20 10:52:03 EST 2013
On 2013-02-20 15:37:10 +0000, Tom Adams said:
> There is a sys$qio with an event flag in the code. After return from
> the sys$qio, the program waits for a logical or of a number of event
> flags. If the question is how we use a sys$qio without an AST, this
> is the answer in the case of this program.
Ah, event flags, that wonderfully simple synchronization construct that
I've come to loathe.
Event flags won't get the code stuck in a $hiber, unless that $hiber is
part of a polling loop involving those event flags, though. Or unless
there's a spurious event flag that causes the code to fall into the
$hiber path, and never return. Etc.
But this program has asynchronous code, which means there are marvelous
opportunities for visits from the the zoo of asynchronous bugs. Torn
variables within the granularity, misallocated or missing or shared
IOSBs, uninterlocked accesses, failures to check both the return and
IOSB status values, etc.
--
Pure Personal Opinion | HoffmanLabs LLC
More information about the Info-vax
mailing list