https://codereview.appspot.com/171660043/diff/60001/src/runtime/defs_openbsd_amd64.go File src/runtime/defs_openbsd_amd64.go (right): https://codereview.appspot.com/171660043/diff/60001/src/runtime/defs_openbsd_amd64.go#newcode90 src/runtime/defs_openbsd_amd64.go:90: tf_stack uintptr On 2014/11/13 16:19:42, bradfitz wrote: > this ...
10 years, 4 months ago
(2014-11-13 16:33:51 UTC)
#3
https://codereview.appspot.com/171660043/diff/60001/src/runtime/defs_openbsd_...
File src/runtime/defs_openbsd_amd64.go (right):
https://codereview.appspot.com/171660043/diff/60001/src/runtime/defs_openbsd_...
src/runtime/defs_openbsd_amd64.go:90: tf_stack uintptr
On 2014/11/13 16:19:42, bradfitz wrote:
> this file changes 4 pointers to uintptr... is something else keeping these
> alive?
For sigaltstackt and stackt, I presume the stack handling code is taking care of
this (at least stackt.ss_sp was changed for FreeBSD, interestingly
sigaltstackt.ss_sp was not). The tforkt tf_stack should be the same - however,
tf_tcb probably should be an unsafe.Pointer (although I'd hope m.tls does not go
away...).
https://codereview.appspot.com/171660043/diff/60001/src/runtime/defs_openbsd_amd64.go File src/runtime/defs_openbsd_amd64.go (right): https://codereview.appspot.com/171660043/diff/60001/src/runtime/defs_openbsd_amd64.go#newcode90 src/runtime/defs_openbsd_amd64.go:90: tf_stack uintptr On 2014/11/13 16:19:42, bradfitz wrote: > this ...
10 years, 4 months ago
(2014-11-13 18:32:12 UTC)
#4
https://codereview.appspot.com/171660043/diff/60001/src/runtime/defs_openbsd_...
File src/runtime/defs_openbsd_amd64.go (right):
https://codereview.appspot.com/171660043/diff/60001/src/runtime/defs_openbsd_...
src/runtime/defs_openbsd_amd64.go:90: tf_stack uintptr
On 2014/11/13 16:19:42, bradfitz wrote:
> this file changes 4 pointers to uintptr... is something else keeping these
> alive?
These are just the args to a system call. They go away when it's done, so
something had better be keeping them alive.
The reason I changed them to uintptr in the other files is that if the collector
sees a *byte pointing to the base of the stack (or worse, the top, which is
really another stack) it might report finding a pointer it should not have.
Better not to pretend they are pointers. They're just memory addresses.
*** Submitted as https://code.google.com/p/go/source/detail?r=c32dc5910560 *** [dev.cc] runtime: convert openbsd/amd64 port to Go LGTM=rsc R=rsc, bradfitz ...
10 years, 4 months ago
(2014-11-14 02:01:25 UTC)
#7
Issue 171660043: [dev.cc] code review 171660043: [dev.cc] runtime: convert openbsd/amd64 runtime from C to Go
(Closed)
Created 10 years, 4 months ago by jsing
Modified 10 years, 4 months ago
Reviewers:
Base URL:
Comments: 7