)]}'
{
  "commit": "147fb5f446c5d4eb43bcf01d8f57bee2755fe430",
  "tree": "3c974be56dc6adf44fd87bd9fdec46f88d3a2995",
  "parents": [
    "4dd0c33ea02bffac8a098a6be318bbda58ba0986"
  ],
  "author": {
    "name": "Vaibhav Rustagi",
    "email": "vaibhavrustagi@google.com",
    "time": "Wed Sep 07 09:31:38 2022 -0700"
  },
  "committer": {
    "name": "COS Cherry Picker",
    "email": "cloud-image-release@prod.google.com",
    "time": "Thu Sep 08 11:07:42 2022 -0700"
  },
  "message": "fs/ext4: Limit the number of retries if ext4_mb_regular_allocator fails.\n\nWhen the filesystem is almost full and some new content is written by\nprocesses and ext4_mb_regular_allocator() fails, the\nfunction will try to discard preallocations, and if any blocks are\nreleased as a result discarding preallocations, then\next4_mb_new_blocks() will \"goto repeat\", and this will retry the\next4_mb_regular_allocator().    However, if some other process has\ngrabbed the blocks, ext4_mb_regular_allocator() will fail (again), and\nthen ext4_mb_new_blocks() will try to discard the preallocations, and\nthe process will can end up looping forever, since there is no limit on\nthe number of times we will try to repeat after discarding\npreallocations. This will result in a high contention state of the\nsystem.\n\nBUG\u003db/241927398\nTEST\u003dpresubmit\nRELEASE_NOTE\u003dFixed a scenario of high contention state of the system in\ncase filesystem is almost full and processes is trying to write content.\nSOURCE\u003dLAKITU\n\ncos-patch: bug\nChange-Id: I20a67a0c45d75a18b75de464276e27083cd8d5f8\nReviewed-on: https://cos-review.googlesource.com/c/third_party/kernel/+/36708\nReviewed-by: Leah Rumancik \u003clrumancik@google.com\u003e\nReviewed-by: Robert Kolchmeyer \u003crkolchmeyer@google.com\u003e\nMain-Branch-Verified: Cusky Presubmit Bot \u003cpresubmit@cos-infra-prod.iam.gserviceaccount.com\u003e\nTested-by: Cusky Presubmit Bot \u003cpresubmit@cos-infra-prod.iam.gserviceaccount.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "ad78bddfb637721ec7615e9b838c282133cac754",
      "old_mode": 33188,
      "old_path": "fs/ext4/mballoc.c",
      "new_id": "110473e66286a1e9f90fdfeb2e72569678ce3cc9",
      "new_mode": 33188,
      "new_path": "fs/ext4/mballoc.c"
    }
  ]
}
