)]}'
{
  "commit": "e2b52ca4988e12ad75aeece53c4f0af849f0d9dc",
  "tree": "415702fd440633e271f1b4f2a051c5c14f16f1e2",
  "parents": [
    "2039900aadba14f438b04d262721ffebc4d33547"
  ],
  "author": {
    "name": "David Howells",
    "email": "dhowells@redhat.com",
    "time": "Fri Mar 11 13:24:08 2022 +0000"
  },
  "committer": {
    "name": "Greg Kroah-Hartman",
    "email": "gregkh@linuxfoundation.org",
    "time": "Wed Mar 16 14:16:02 2022 +0100"
  },
  "message": "watch_queue: Fix to always request a pow-of-2 pipe ring size\n\ncommit 96a4d8912b28451cd62825fd7caa0e66e091d938 upstream.\n\nThe pipe ring size must always be a power of 2 as the head and tail\npointers are masked off by AND\u0027ing with the size of the ring - 1.\nwatch_queue_set_size(), however, lets you specify any number of notes\nbetween 1 and 511.  This number is passed through to pipe_resize_ring()\nwithout checking/forcing its alignment.\n\nFix this by rounding the number of slots required up to the nearest\npower of two.  The request is meant to guarantee that at least that many\nnotifications can be generated before the queue is full, so rounding\ndown isn\u0027t an option, but, alternatively, it may be better to give an\nerror if we aren\u0027t allowed to allocate that much ring space.\n\nFixes: c73be61cede5 (\"pipe: Add general notification queue support\")\nReported-by: Jann Horn \u003cjannh@google.com\u003e\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "6ddd860d35cec7d60a04e279cfadad1ac7cf8b69",
      "old_mode": 33188,
      "old_path": "kernel/watch_queue.c",
      "new_id": "d5da8257677e05b8d4f7f4d36d88ee959043453e",
      "new_mode": 33188,
      "new_path": "kernel/watch_queue.c"
    }
  ]
}
