diff options
author | Rickard Green <[email protected]> | 2011-09-21 23:13:06 +0200 |
---|---|---|
committer | Rickard Green <[email protected]> | 2011-09-22 09:52:58 +0200 |
commit | 4a68d3ebd54342ed72300a957883ed73957054af (patch) | |
tree | 3e3bef555c04ce59b3909bc19856d16b241f14bf /lib/kernel | |
parent | 4a5a75811e2cd590b5c94f71864a5245fd511ccf (diff) | |
download | otp-4a68d3ebd54342ed72300a957883ed73957054af.tar.gz otp-4a68d3ebd54342ed72300a957883ed73957054af.tar.bz2 otp-4a68d3ebd54342ed72300a957883ed73957054af.zip |
Fix lost wakeup of scheduler when enqueuing auxiliary work
When auxiliary work was enqueued on a scheduler, the wakeup of
the scheduler in order to handle this work could be lost. Wakeups
in order to handle ordinary work were not effected by this bug.
The bug only effected runtime systems with SMP support as follows:
* Deallocation of some ETS data structures could be delayed.
* On Linux systems not using the NPTL thread library (typically
ancient systems with kernel versions prior to 2.6) and Windows
systems, the {Port, {exit_status, Status}} message from a
terminating port program could be delayed. That is, it only
effected port programs which had been started by passing
exit_status as an option to open_port/2.
Diffstat (limited to 'lib/kernel')
0 files changed, 0 insertions, 0 deletions