| Commit-Queue | +1 |
_ sys.NotInHeapMichael Prattdoes the lsitHead need to be NotInHeap? it would be nice to be able to put this on the stack (to carry lists around).
Done
| Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. |
| Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. |
| Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. |
| Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. |
| Code-Review | +2 |
looks great! one comment about safety, but we can improve that in a follow-up.
nodeOffset uintptrmaybe we should add a bool or something indicating that we've initialized it, so if we forget to do so it crashes instead of assuming the intrusive node is at offset 0.
the overhead (and repeated checking) for that is a little bit annoying... perhaps there's another way to make the zero value invalid? like perhaps we expect obj to point to some global sentinel?
| Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. |
| Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. |
| Commit-Queue | +1 |
maybe we should add a bool or something indicating that we've initialized it, so if we forget to do so it crashes instead of assuming the intrusive node is at offset 0.
the overhead (and repeated checking) for that is a little bit annoying... perhaps there's another way to make the zero value invalid? like perhaps we expect obj to point to some global sentinel?
Done
| Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. |
| Auto-Submit | +1 |
| Commit-Queue | +1 |
| Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. |
4 is the latest approved patch-set.
The change was submitted with unreviewed changes in the following files:
```
The name of the file: src/runtime/list.go
Insertions: 7, Deletions: 1.
The diff is too large to show. Please review the diff.
```
```
The name of the file: src/runtime/list_manual.go
Insertions: 7, Deletions: 1.
The diff is too large to show. Please review the diff.
```
runtime: reusable intrusive doubly-linked list
Unfortunately we have two nearly identical types. One for standard types
and one for sys.NotInHeap types or cases that must avoid write barriers.
The latter must use uintptr fields, as assignment to unsafe.Pointer
fields generates a write barrier.
| Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. |