)]}'
{
  "commit": "79db59ded9dab276507f3a045e42b76eef5a35b4",
  "tree": "370067f9ae4dc36f151dc3410589dba6c6503b8e",
  "parents": [
    "a0f77e56b7a7ecb92dca3e2afdd56ee773c2cb07"
  ],
  "author": {
    "name": "Michael Anthony Knyszek",
    "email": "mknyszek@google.com",
    "time": "Mon Jan 10 22:59:26 2022 +0000"
  },
  "committer": {
    "name": "Michael Knyszek",
    "email": "mknyszek@google.com",
    "time": "Tue Apr 26 22:08:00 2022 +0000"
  },
  "message": "runtime: make alloc count metrics truly monotonic\n\nRight now we export alloc count metrics via the runtime/metrics package\nand mark them as monotonic, but that\u0027s not actually true. As an\noptimization, the runtime assumes a span is always fully allocated\nbefore being uncached, and updates the accounting as such. In the rare\ncase that it\u0027s wrong, the span has enough information to back out what\ndid not get allocated.\n\nThis change uses 16 bits of padding in the mspan to house another field\nthat represents the amount of mspan slots filled just as the mspan is\ncached. This is information is enough to get an exact count, allowing us\nto make the metrics truly monotonic.\n\nChange-Id: Iaff3ca43f8745dc1bbb0232372423e014b89b920\nReviewed-on: https://go-review.googlesource.com/c/go/+/377516\nReviewed-by: Michael Pratt \u003cmpratt@google.com\u003e\nRun-TryBot: Michael Knyszek \u003cmknyszek@google.com\u003e\nTryBot-Result: Gopher Robot \u003cgobot@golang.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "86a8958b9dc66347b227e360e84d84f158fcf0cd",
      "old_mode": 33188,
      "old_path": "src/runtime/mcache.go",
      "new_id": "afd5afbddd63d44af6b83ad76119a4a5a59e5602",
      "new_mode": 33188,
      "new_path": "src/runtime/mcache.go"
    },
    {
      "type": "modify",
      "old_id": "5d32ef469caaa9658a1052d6868abd30f1a87870",
      "old_mode": 33188,
      "old_path": "src/runtime/metrics_test.go",
      "new_id": "4bd1408dbea24cc93279b845d076569548ac612b",
      "new_mode": 33188,
      "new_path": "src/runtime/metrics_test.go"
    },
    {
      "type": "modify",
      "old_id": "d99363d9913d8bc89899ea04f044a588306297b7",
      "old_mode": 33188,
      "old_path": "src/runtime/mheap.go",
      "new_id": "1c98afcfcca0f8fe20fe6c0d02b7eb78dcf60cb9",
      "new_mode": 33188,
      "new_path": "src/runtime/mheap.go"
    }
  ]
}
