[Vm-dev] [OpenSmalltalk/opensmalltalk-vm] b80dd6: Avoid an overflow in ioRelinquishProcessorForMicro...

John M McIntosh johnmci at smalltalkconsulting.com
Sun Oct 27 19:04:13 UTC 2019


> Note: I do not know why microSeconds argument to ioRelinquishProcessorForMicroseconds is ignored in iPhone
> It is replaced by hardcoded 16ms

This hard coded value on IOS was to reduce CPU idle usage on iOS. However it could be changed to conform to the new MacOS behavior assuming that is better behaved now.

....
John M. McIntosh. Corporate Smalltalk Consulting Ltd https://www.linkedin.com/in/smalltalk

On Sat, Oct 26, 2019 at 12:30 AM, Nicolas Cellier <noreply at github.com> wrote:

> Branch: refs/heads/fix_issue_436
> Home: https://github.com/OpenSmalltalk/opensmalltalk-vm
> Commit: b80dd63c2aa1517b186099b9669a89e4385772cb
> https://github.com/OpenSmalltalk/opensmalltalk-vm/commit/b80dd63c2aa1517b186099b9669a89e4385772cb
> Author: nicolas.cellier.aka.nice at gmail.com <nicolas.cellier.aka.nice at gmail.com>
> Date: 2019-10-26 (Sat, 26 Oct 2019)
>
> Changed paths:
> M platforms/minheadless/unix/sqUnixHeartbeat.c
> M platforms/unix/misc/threadValidate/sqUnixHeartbeat.c
> M platforms/unix/vm/sqUnixHeartbeat.c
> M platforms/unix/vm/sqUnixITimerHeartbeat.c
> M platforms/unix/vm/sqUnixITimerTickerHeartbeat.c
>
> Log Message:
> -----------
> Avoid an overflow in ioRelinquishProcessorForMicroseconds
>
> Commit: 588a4ca2b2e7eafe87ff5b0643c8bc0c09787e1e
> https://github.com/OpenSmalltalk/opensmalltalk-vm/commit/588a4ca2b2e7eafe87ff5b0643c8bc0c09787e1e
> Author: nicolas.cellier.aka.nice at gmail.com <nicolas.cellier.aka.nice at gmail.com>
> Date: 2019-10-26 (Sat, 26 Oct 2019)
>
> Changed paths:
> M platforms/Mac OS/vm/sqMacTime.c
> M platforms/iOS/vm/Common/Classes/sqMacV2Time.c
> M platforms/iOS/vm/Common/sqDummyaio.h
> M platforms/iOS/vm/iPhone/sqDummyaio.c
> M platforms/unix/misc/threadValidate/sqUnixHeartbeat.c
> M platforms/unix/vm-display-Quartz/zzz/sqUnixQuartz.m
> M platforms/unix/vm/sqUnixITimerHeartbeat.c
> M platforms/unix/vm/sqUnixITimerTickerHeartbeat.c
>
> Log Message:
> -----------
> Align iOS and obsolete Mac OS
>
> - no need for aioSleep + aioSleepForUsecs that do the same thing
> keep only aioSleepForUsecs like other platforms
> - replace getNextWakeupTick (obsolete) with getNextWakeupUsecs
> - align the prototype of aioSleepForUsecs on other platforms (long)
> - align the prototype of ioRelinquishProcessorForMicroseconds (sqInt)
>
> Note: I do not know why microSeconds argument to ioRelinquishProcessorForMicroseconds is ignored in iPhone
> It is replaced by hardcoded 16ms
>
> Commit: 01b7df8d3afd347d7e5b9a3606362cc5c1fa1773
> https://github.com/OpenSmalltalk/opensmalltalk-vm/commit/01b7df8d3afd347d7e5b9a3606362cc5c1fa1773
> Author: nicolas.cellier.aka.nice at gmail.com <nicolas.cellier.aka.nice at gmail.com>
> Date: 2019-10-26 (Sat, 26 Oct 2019)
>
> Changed paths:
> M src/vm/cointerp.c
> M src/vm/cointerp.h
> M src/vm/cointerpmt.c
> M src/vm/cointerpmt.h
> M src/vm/gcc3x-cointerp.c
> M src/vm/gcc3x-cointerpmt.c
> M stacksrc/vm/gcc3x-interp.c
> M stacksrc/vm/interp.c
>
> Log Message:
> -----------
> Fix primitiveSignalAtMilliseconds for the cog.v3 flavours
>
> We could also fix it for the spur variants, but this can wait because those primitive are presumably unused (superseded by microsecond handling)
>
> Compare: https://github.com/OpenSmalltalk/opensmalltalk-vm/compare/b80dd63c2aa1%5E...01b7df8d3afd
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.squeakfoundation.org/pipermail/vm-dev/attachments/20191027/2a445391/attachment.html>


More information about the Vm-dev mailing list