)]}'
{
  "log": [
    {
      "commit": "b4f5024731f2f61b0f5b377fe9bcbb4934a5e83b",
      "tree": "d71e84a77c0e77849390bacbde7554bc02fa48b6",
      "parents": [
        "62f1d3680947e1d78bacf2a7277fb4b2007ebacb"
      ],
      "author": {
        "name": "Lorenz Brun",
        "email": "lorenz@monogon.tech",
        "time": "Tue Nov 14 21:51:07 2023 +0100"
      },
      "committer": {
        "name": "Lorenz Brun",
        "email": "lorenz@monogon.tech",
        "time": "Wed Nov 15 13:10:19 2023 +0000"
      },
      "message": "treewide: use Pinner to resolve safety issues\n\nPrior to Go 1.21 the only way to pass Go-managed pointers to the kernel\nwas to convert them to a uintptr inside the syscall argument expression.\nThis pattern was special-cased in the compiler to prevent the referenced\nmemory from being moved by an eventual moving GC in Go while the syscall\nis running (thus corrupting the Go heap).\n\nBut this was very restrictive as there are syscalls which take inputs\ncontaining further pointers.  According to the official rules this could\nnot be implemented safely.\n\nIn practice you could just do it anyways as the current Go GC does\nin general not move objects, but it was always kind of a hack.\nWith Go 1.21 there is a new Pinner API which can be used to pin the\nmemory which is going to be referenced in these structures, allowing\nthem to be constructed and used over multiple calls.\n\nruntime.KeepAlive is still required to prevent finalizers from running\nprematurely.\n\nUse this new API and remove the relevant comments.\n\nChange-Id: I26bce06e1c20a5fe0c41f9ae736a895f533674c1\nReviewed-on: https://review.monogon.dev/c/monogon/+/2316\nTested-by: Jenkins CI\nReviewed-by: Serge Bazanski \u003cserge@monogon.tech\u003e\n"
    },
    {
      "commit": "65702194ea264a0fd01fb470bacaf39264b4f637",
      "tree": "3469201097b30e638f1e446655e1d23b33d90f8d",
      "parents": [
        "f551a7696824a9ddbac63191c489db8280aee0a4"
      ],
      "author": {
        "name": "Lorenz Brun",
        "email": "lorenz@monogon.tech",
        "time": "Thu Aug 31 16:27:38 2023 +0200"
      },
      "committer": {
        "name": "Tim Windelschmidt",
        "email": "tim@monogon.tech",
        "time": "Thu Sep 14 13:43:45 2023 +0000"
      },
      "message": "workspace: rules_go, gazelle, go, gVisor update\n\nThis commit not only updates rules_go and friends, but also updates\ngVisor, removes legacy protobuf usage and switches from using\nbuild_configuration to a config flag for bazel\n\nChange-Id: Idb383f35ca0fec4cb7329e9d991f08f28cf9b1fb\nReviewed-on: https://review.monogon.dev/c/monogon/+/2129\nTested-by: Jenkins CI\nReviewed-by: Lorenz Brun \u003clorenz@monogon.tech\u003e\n"
    },
    {
      "commit": "bffdda85d7750c9a9a34289a79281edeae1d73ef",
      "tree": "09bd64e59e1ed5a2dd3db9e4336b449158ba8fa0",
      "parents": [
        "6c9535b36d033ac647b1cf4fca2a29e8c260a79f"
      ],
      "author": {
        "name": "Lorenz Brun",
        "email": "lorenz@monogon.tech",
        "time": "Tue Jan 10 05:00:36 2023 +0000"
      },
      "committer": {
        "name": "Lorenz Brun",
        "email": "lorenz@monogon.tech",
        "time": "Thu Jan 19 17:32:52 2023 +0000"
      },
      "message": "m/p/scsi: add SCSI package\n\nThis adds a SCSI package to interact with SCSI devices.\nIt implements a subset of commands from the SPC-5 and SBC-4 standard\nuseful for discovery and health assessment.\nA follow-up will add SAT (SCSI-to-ATA translation) support.\n\nChange-Id: I7f084d26f11d9c951f51051040160e351cf5594c\nReviewed-on: https://review.monogon.dev/c/monogon/+/1066\nReviewed-by: Serge Bazanski \u003cserge@monogon.tech\u003e\nTested-by: Jenkins CI\n"
    }
  ]
}
