)]}'
{
  "commit": "cf28264196e596c11d0d47f6150dfef5c0e4239f",
  "tree": "bfd0b8f9a126e98ae9e43ca1bec2faa37516bd38",
  "parents": [
    "1641d2d5ebdf67d515d7679f96d0623b5886b630"
  ],
  "author": {
    "name": "Greg Kurz",
    "email": "groug@kaod.org",
    "time": "Mon Mar 09 23:43:12 2020 +0100"
  },
  "committer": {
    "name": "Alexey Kardashevskiy",
    "email": "aik@ozlabs.ru",
    "time": "Wed Mar 11 15:43:22 2020 +1100"
  },
  "message": "virtio-serial: Rework shutdown sequence\n\nThe \"io\" word of term-io.fs opens two separate instances of the device\nfor stdin and stdout. The prom_init() function in Linux closes stdin at\nsome point, which internally calls quiesce and shuts the device down\nthrough a quiesce hook.\n\nWhen the \"open-count\" variable in virtio-serial.fs reaches 0, ie. when\nclosing the last instance, we call \"close\" two times, which is clearly\nwrong. This never hits however because the stdout instance is never\nclosed which prevents \"open-count\" to reach 0.\n\nIt would make more sense to shutdown the device when closing the last\ninstance, for symmetry with the first open that initializes the device.\nChange the shutdown sequence to do that rather than relying on a quiesce\nhook.\n\nHave quiesce to explicitly close stdout, which is supposedly the last\ninstance, and shutdown the device.\n\nSigned-off-by: Greg Kurz \u003cgroug@kaod.org\u003e\nSigned-off-by: Alexey Kardashevskiy \u003caik@ozlabs.ru\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "a99293f6ef77203fd9c2493e4cc7d5e1c9d0c864",
      "old_mode": 33188,
      "old_path": "board-qemu/slof/virtio-serial.fs",
      "new_id": "e307231ed0dc426918ab173731c7564a1928446d",
      "new_mode": 33188,
      "new_path": "board-qemu/slof/virtio-serial.fs"
    },
    {
      "type": "modify",
      "old_id": "db7a1925792ced97d008fc414491019fb2d620b9",
      "old_mode": 33188,
      "old_path": "slof/fs/client.fs",
      "new_id": "76231f9aef753abc88497385250e74dde89fc2e0",
      "new_mode": 33188,
      "new_path": "slof/fs/client.fs"
    }
  ]
}
