--
You received this message because you are subscribed to the Google Groups "golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Thanks much for the info.Do you have any more pointers about how one may assess whether or ensure that a stack overflow checkis not necessary in order to safely use this directive?
Ian
On Fri, 5 Oct 2018 at 23:26, Ian Lance Taylor <ia...@golang.org> wrote:On Fri, Oct 5, 2018 at 2:10 PM, Scott Cotton <w...@iri-labs.com> wrote:In fact
we definitely do want to add other preemption checks that occur at
points other than function entry (issues #10958, #24543). And if
there is another preemption check, there are no promises that
go:nosplit will disable that check.From what I understand, this would1. enable more faire/balanced scheduling2. reduce worst case gc latency3. eliminate problems when programmers unintentionally spin with cooperative/stack basedpre-emption.4. slow things down a bit when fair/balanced scheduling and gc latency and 3) are not an issue5. make it impossible to prevent pre-emption in cases that need it or rely on cooperative/stack based pre-emption
6. potentially re-order some sequences of system calls, so that Go programmer sequences of system calls G1, G2, ...may have Go runtime system calls inserted in between where they weren't previously.I don't think anyone wants 4,5 and 6 is frightening.Maybe I don't know what I'm doing, so perhaps others can give opinions?Or should this discussion be on the issue tracker or golang-dev?Scott
Ian
-j