)]}'
{
  "commit": "56ef123777b7a29f5b813696a69865d6033c3c78",
  "tree": "e436aa1d7c3fcba78d5b0ba7a26a261aa444f271",
  "parents": [
    "8032c78e556cd0baec111740a6c636863f9bd7c8"
  ],
  "author": {
    "name": "Jean-Louis Dupond",
    "email": "jean-louis@dupond.be",
    "time": "Wed Oct 02 12:06:35 2024 +0200"
  },
  "committer": {
    "name": "Konstantin Kostiuk",
    "email": "kkostiuk@redhat.com",
    "time": "Wed Dec 18 13:14:49 2024 +0200"
  },
  "message": "qga: skip bind mounts in fs list\n\nThe filesystem list in build_fs_mount_list should skip bind mounts.\nThis because we end up in locking situations when doing fsFreeze. Like\nmentioned in [1] and [2].\n\nNext to that, the build_fs_mount_list call did a fallback via\nbuild_fs_mount_list_from_mtab if mountinfo did not exist.\nThere it skipped bind mounts, but this is broken for newer OS.\nThis as mounts does not return the path of the bind mount but the\nunderlying dev/partition, so S_ISDIR will never return true in\ndev_major_minor call.\n\nThis patch simply checks the existing devmajor:devminor tuple in the\nmounts, and if it already exists, this means we have the same devices\nmounted again, a bind mount. So skip this.\n\nSame approach is used in open-vm-tools [3].\n\n[1]: https://gitlab.com/qemu-project/qemu/-/issues/592\n[2]: https://gitlab.com/qemu-project/qemu/-/issues/520\n[3]: https://github.com/vmware/open-vm-tools/commit/d58847b497e212737007958c945af1df22a8ab58\n\nSigned-off-by: Jean-Louis Dupond \u003cjean-louis@dupond.be\u003e\nReviewed-by: Konstantin Kostiuk \u003ckkostiuk@redhat.com\u003e\nLink: https://lore.kernel.org/r/20241002100634.162499-2-jean-louis@dupond.be\nSigned-off-by: Konstantin Kostiuk \u003ckkostiuk@redhat.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "cf077eb03d76eb2209b26f8122700aa1d98dc5c7",
      "old_mode": 33188,
      "old_path": "qga/commands-linux.c",
      "new_id": "9e8a934b9a610b7d3fd635423f530bbdd3491fc2",
      "new_mode": 33188,
      "new_path": "qga/commands-linux.c"
    }
  ]
}
