K 10 svn:author V 7 attilio K 8 svn:date V 27 2011-04-08T18:48:57.807144Z K 7 svn:log V 584 Reintroduce the fix already discussed in r216805 (please check its history for a detailed explanation of the problems). The only difference with the previous fix is in Solution2: CPUBLOCK is no longer set when exiting from callout_reset_*() functions, which avoid the deadlock (leading to r217161). There is no need to CPUBLOCK there because the running-and-migrating assumption is strong enough to avoid problems there. Furthermore add a better !SMP compliancy (leading to shrinked code and structures) and facility macros/functions. Tested by: gianni, pho, dim MFC after: 3 weeks END