Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code | Sign in
(1200)

Issue 3822041: code review 3822041: runtime: implementation of callback functions for Windo...

Can't Edit
Can't Publish+Mail
Start Review
Created:
6 years, 11 months ago by czaplinski
Modified:
6 years, 10 months ago
Reviewers:
brainman
CC:
golang-dev
Visibility:
Public.

Description

runtime: implementation of callback functions for Windows, with split-stack handling Avoids split-stack overflow from syscall by drawing new g0 split-stack boundaries on OS stack, then calling new scheduler in that space. This allows for further nesting of syscalls from a Go callback. Important notes: - builds on CL http://codereview.appspot.com/1696051 (updated to newer tip; included) - experimental - especially no guarantees on stability when doing panic/recovery in callbacks (no research done) I'd be more than happy to move the code to the 'exp' directory, but I'm not sure what's the best way to do that in this case, given the tight coupling with local code in proc.c + goc usage.

Patch Set 1 #

Patch Set 2 : code review 3822041: runtime: implementation of callback functions for Windo... #

Unified diffs Side-by-side diffs Delta from patch set Stats (+779 lines, -6 lines) Patch
M .hgignore View 1 chunk +1 line, -0 lines 0 comments Download
A src/pkg/exp/wingui/Makefile View 1 chunk +26 lines, -0 lines 0 comments Download
A src/pkg/exp/wingui/gui.go View 1 chunk +157 lines, -0 lines 0 comments Download
A src/pkg/exp/wingui/winapi.go View 1 chunk +148 lines, -0 lines 0 comments Download
A src/pkg/exp/wingui/zwinapi.go View 1 chunk +214 lines, -0 lines 0 comments Download
M src/pkg/runtime/darwin/thread.c View 1 chunk +6 lines, -0 lines 0 comments Download
M src/pkg/runtime/freebsd/thread.c View 1 chunk +6 lines, -0 lines 0 comments Download
M src/pkg/runtime/linux/thread.c View 1 chunk +6 lines, -0 lines 0 comments Download
M src/pkg/runtime/mgc0.c View 1 chunk +1 line, -1 line 0 comments Download
M src/pkg/runtime/plan9/thread.c View 1 chunk +5 lines, -0 lines 0 comments Download
M src/pkg/runtime/proc.c View 6 chunks +75 lines, -4 lines 0 comments Download
M src/pkg/runtime/runtime.h View 2 chunks +3 lines, -1 line 0 comments Download
M src/pkg/runtime/tiny/thread.c View 1 chunk +5 lines, -0 lines 0 comments Download
M src/pkg/runtime/windows/386/sys.s View 1 chunk +62 lines, -0 lines 0 comments Download
M src/pkg/runtime/windows/os.h View 1 chunk +4 lines, -0 lines 0 comments Download
M src/pkg/runtime/windows/syscall.goc View 1 chunk +4 lines, -0 lines 0 comments Download
M src/pkg/runtime/windows/thread.c View 2 chunks +36 lines, -0 lines 0 comments Download
M src/pkg/syscall/syscall_windows.go View 1 chunk +20 lines, -0 lines 0 comments Download

Messages

Total messages: 9
czaplinski
Hello rsc, brainman, lxn (cc: golang-dev@googlegroups.com), I'd like you to review this change.
6 years, 11 months ago (2010-12-21 22:33:36 UTC) #1
czaplinski
I'd highly appreciate some feedback on this CL. If the size of the change is ...
6 years, 10 months ago (2011-01-06 20:16:12 UTC) #2
brainman
On 2011/01/06 20:16:12, czaplinski wrote: > I'd highly appreciate some feedback on this CL. > ...
6 years, 10 months ago (2011-01-07 06:19:13 UTC) #3
czaplinski
On 2011/01/07 06:19:13, brainman wrote: > On 2011/01/06 20:16:12, czaplinski wrote: > > I'd highly ...
6 years, 10 months ago (2011-01-07 15:08:34 UTC) #4
brainman
On 2011/01/07 15:08:34, czaplinski wrote: > ... I had another go at my CL: http://codereview.appspot.com/1696051/ ...
6 years, 10 months ago (2011-01-11 04:23:39 UTC) #5
czaplinski
On 2011/01/11 04:23:39, brainman wrote: > I had another go at my CL: > http://codereview.appspot.com/1696051/ ...
6 years, 10 months ago (2011-01-11 08:36:18 UTC) #6
brainman
On 2011/01/11 08:36:18, czaplinski wrote: > > Additional note: without saving these registers, crashes occur ...
6 years, 10 months ago (2011-01-11 08:44:59 UTC) #7
czaplinski
On 2011/01/11 08:44:59, brainman wrote: > On 2011/01/11 08:36:18, czaplinski wrote: > > Additional note: ...
6 years, 10 months ago (2011-01-11 09:16:54 UTC) #8
rsc
6 years, 10 months ago (2011-01-19 19:18:10 UTC) #9
setting R=brainman.
assuming will merge this and the other exp/wingui CL
Sign in to reply to this message.

Powered by Google App Engine
RSS Feeds Recent Issues | This issue
This is Rietveld c59f3c4