#23 reliably trigger "(scan)" output

Avoinna
6 vuotta sitten avasi themusicgod1 · 1 kommenttia

// - disable automatic GC with runtime.SetGCPercent(-1) // - a goroutine with a large number of items in the stack // - large heap to make the scanning process slow enough // - trigger a manual GC with go runtime.GC() // - panic in the meantime // This would still not be deterministic.

in main.go

// - disable automatic GC with runtime.SetGCPercent(-1) // - a goroutine with a large number of items in the stack // - large heap to make the scanning process slow enough // - trigger a manual GC with go runtime.GC() // - panic in the meantime // This would still not be deterministic. in main.go
Jeff Cliff kommentoitu 5 vuotta sitten
Omistaja

I think what this means is crashing in a new way 'scan' that

  • turns off automatic garbage collection
  • makes a large stack
  • makes a large heap
  • trigger garbage collection
  • panic

in such a way as to guarantee ...the panic happen while the GC is ongoing? the panic happen at a particular part of the GC process?

It's almost like they want a hook to execute as part of GC process, like a custom GC? It seems this is underspecified (is it OK if it just hits the GC process at some point?) it sounds like it's not.

I think what this means is crashing in a new way 'scan' that * turns off automatic garbage collection * makes a large stack * makes a large heap * trigger garbage collection * panic in such a way as to guarantee ...the panic happen while the GC is ongoing? the panic happen at a particular part of the GC process? It's almost like they want a hook to execute as part of GC process, like a custom GC? It seems this is underspecified (is it OK if it just hits the GC process at some point?) it sounds like it's not.
Kirjaudu sisään osallistuaksesi tähän keskusteluun.
Ei merkkipaalua
Ei osoitettua
1 osallistujaa
Ladataan...
Peruuta
Tallenna
Sisältöä ei vielä ole.