From 207cbb86aba6c0490d7c2be6af6d0f9d9b8a337c Mon Sep 17 00:00:00 2001 From: Markus Armbruster Date: Thu, 6 Sep 2007 18:02:57 +0000 Subject: [PATCH] Final polish for 4.3.10. --- doc/CHANGES4.X | 23 +++++++++++------------ info/Empire4.t | 23 +++++++++++------------ 2 files changed, 22 insertions(+), 24 deletions(-) diff --git a/doc/CHANGES4.X b/doc/CHANGES4.X index 89e53b21..0f66deaf 100644 --- a/doc/CHANGES4.X +++ b/doc/CHANGES4.X @@ -1,4 +1,4 @@ -Changes to Empire 4.3.10 - Sun Sep 2 18:01:17 UTC 2007 +Changes to Empire 4.3.10 - Thu Sep 6 17:59:53 UTC 2007 * Bridge spans now cost $1000 instead of $2000, and bridge towers $3000 instead of $7500. * The Windows port now supports IPv6, but it still needs to be @@ -8,16 +8,15 @@ Changes to Empire 4.3.10 - Sun Sep 2 18:01:17 UTC 2007 that facilitates attacks against the PRNG. This misfeature crept into 4.3.0. * Remove the ancient, crufty non-UCONTEXT system-dependent LWP code. - Using it required manual hackery since 4.3.0, and it hasn't been - missed. + Using it required manual hackery since 4.3.0. * Plug file descriptor leak in add command. * Don't kill player connections violently when their thread appears to be hung. Threads being aborted by update or shutdown could be misidentified as hung, and the violence could lead to resource leaks, locked out updates, and corrupted game state. - * Fix LWP to wake up threads sleeping for a time reliably. Before, - players with a sufficiently fast connection could starve out - threads system threads, including the update. + * Fix LWP to reliably wake up threads sleeping for a time. Before, + players with a sufficiently fast connection could starve out system + threads, including the update. * Fix a class of bugs that made commands behave differently while the update is attempting to take control: - No MOB_ACCESS mobility was gained. @@ -61,10 +60,10 @@ Changes to Empire 4.3.10 - Sun Sep 2 18:01:17 UTC 2007 - Simplify update to a single thread waiting for the trigger. Before, three update threads had to perform a carefully choreographed dance to make updates happen. The dance relied on - thread priorities for correctness, but they're only implemented - by LWP. With pthreads and under Windows, demand updates were - prone to two update threads starting up concurrently. Even with - LWP, forced and demand updates could lead to double updates. + thread priorities for correctness, which are only implemented by + LWP. With pthreads and under Windows, demand updates were prone + to two update threads starting up concurrently. Even with LWP, + forced and demand updates could lead to double updates. - Use a lock for synchronization: commands take it shared, update and shutdown take it exclusive. This makes update and shutdown block until all aborted commands terminated and gave up their @@ -73,8 +72,8 @@ Changes to Empire 4.3.10 - Sun Sep 2 18:01:17 UTC 2007 - New commands no longer fail while the update is pending, they are delayed until after the update. - New commands can no longer start during shutdown. Before, they - could, but risked getting killed violently, corrupting the game - state. + could, but risked getting killed violently, possibly corrupting + game state. - Fix command execution so that commands blocked in writing redirections are abortable. The bug allowed players to delay update and shutdown indefinitely. diff --git a/info/Empire4.t b/info/Empire4.t index 6692694b..ea2e2ecb 100644 --- a/info/Empire4.t +++ b/info/Empire4.t @@ -7,7 +7,7 @@ new Empire4 Server. This outlines the various changes and how they will affect you, the player. These were coded as the Wolfpack project, and bug-reports should be sent to . .NF -Changes to Empire 4.3.10 - Sun Sep 2 18:01:17 UTC 2007 +Changes to Empire 4.3.10 - Thu Sep 6 17:59:53 UTC 2007 * Bridge spans now cost $1000 instead of $2000, and bridge towers $3000 instead of $7500. * The Windows port now supports IPv6, but it still needs to be @@ -17,16 +17,15 @@ Changes to Empire 4.3.10 - Sun Sep 2 18:01:17 UTC 2007 that facilitates attacks against the PRNG. This misfeature crept into 4.3.0. * Remove the ancient, crufty non-UCONTEXT system-dependent LWP code. - Using it required manual hackery since 4.3.0, and it hasn't been - missed. + Using it required manual hackery since 4.3.0. * Plug file descriptor leak in add command. * Don't kill player connections violently when their thread appears to be hung. Threads being aborted by update or shutdown could be misidentified as hung, and the violence could lead to resource leaks, locked out updates, and corrupted game state. - * Fix LWP to wake up threads sleeping for a time reliably. Before, - players with a sufficiently fast connection could starve out - threads system threads, including the update. + * Fix LWP to reliably wake up threads sleeping for a time. Before, + players with a sufficiently fast connection could starve out system + threads, including the update. * Fix a class of bugs that made commands behave differently while the update is attempting to take control: - No MOB_ACCESS mobility was gained. @@ -70,10 +69,10 @@ Changes to Empire 4.3.10 - Sun Sep 2 18:01:17 UTC 2007 - Simplify update to a single thread waiting for the trigger. Before, three update threads had to perform a carefully choreographed dance to make updates happen. The dance relied on - thread priorities for correctness, but they're only implemented - by LWP. With pthreads and under Windows, demand updates were - prone to two update threads starting up concurrently. Even with - LWP, forced and demand updates could lead to double updates. + thread priorities for correctness, which are only implemented by + LWP. With pthreads and under Windows, demand updates were prone + to two update threads starting up concurrently. Even with LWP, + forced and demand updates could lead to double updates. - Use a lock for synchronization: commands take it shared, update and shutdown take it exclusive. This makes update and shutdown block until all aborted commands terminated and gave up their @@ -82,8 +81,8 @@ Changes to Empire 4.3.10 - Sun Sep 2 18:01:17 UTC 2007 - New commands no longer fail while the update is pending, they are delayed until after the update. - New commands can no longer start during shutdown. Before, they - could, but risked getting killed violently, corrupting the game - state. + could, but risked getting killed violently, possibly corrupting + game state. - Fix command execution so that commands blocked in writing redirections are abortable. The bug allowed players to delay update and shutdown indefinitely.