)]}'
{
  "commit": "73a110623e7b7592defea69f028cccae495d69a4",
  "tree": "9b1c21779d0317c9d18715cb9ce7197e8f2e0117",
  "parents": [
    "eba09b5b3dfb1b79db4428b6f379f68db4b62056"
  ],
  "author": {
    "name": "Hans Verkuil",
    "email": "hansverk@cisco.com",
    "time": "Fri May 11 05:32:24 2018 -0400"
  },
  "committer": {
    "name": "Mauro Carvalho Chehab",
    "email": "mchehab+samsung@kernel.org",
    "time": "Mon May 28 16:31:44 2018 -0400"
  },
  "message": "media: v4l2-core: push taking ioctl mutex down to ioctl handler\n\nThe ioctl serialization mutex (vdev-\u003elock or q-\u003elock for vb2 queues)\nwas taken at the highest level in v4l2-dev.c. This prevents more\nfine-grained locking since at that level we cannot examine the ioctl\narguments, we can only do that after video_usercopy is called.\n\nSo push the locking down to __video_do_ioctl() and subdev_do_ioctl_lock().\n\nThis also allows us to make a few functions in v4l2-ioctl.c static and\nvideo_usercopy() is no longer exported.\n\nThe locking scheme is not changed by this patch, just pushed down.\n\nSigned-off-by: Hans Verkuil \u003chansverk@cisco.com\u003e\nSigned-off-by: Mauro Carvalho Chehab \u003cmchehab+samsung@kernel.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "c4f4357e9ca41ded54190f59729f0a896cfff0e6",
      "old_mode": 33188,
      "old_path": "drivers/media/v4l2-core/v4l2-dev.c",
      "new_id": "4ffd7d60a901149214b59b7e585077ec8c4dabed",
      "new_mode": 33188,
      "new_path": "drivers/media/v4l2-core/v4l2-dev.c"
    },
    {
      "type": "modify",
      "old_id": "c23fbfe90a9e7a90874006776cc7aacc077afff8",
      "old_mode": 33188,
      "old_path": "drivers/media/v4l2-core/v4l2-ioctl.c",
      "new_id": "965fd301f617ecf82c355c09849d8e2aa943795e",
      "new_mode": 33188,
      "new_path": "drivers/media/v4l2-core/v4l2-ioctl.c"
    },
    {
      "type": "modify",
      "old_id": "f9eed938d3480b74d67483294624d926a7f2dbf0",
      "old_mode": 33188,
      "old_path": "drivers/media/v4l2-core/v4l2-subdev.c",
      "new_id": "6a7f7f75dfd7fe9ef2928e4638afc58cae6a748d",
      "new_mode": 33188,
      "new_path": "drivers/media/v4l2-core/v4l2-subdev.c"
    },
    {
      "type": "modify",
      "old_id": "30423aefe7c59807904308a1a759c78f3c326b86",
      "old_mode": 33188,
      "old_path": "include/media/v4l2-dev.h",
      "new_id": "456ac13eca1d62cf0f221b247345278c8386dd76",
      "new_mode": 33188,
      "new_path": "include/media/v4l2-dev.h"
    },
    {
      "type": "modify",
      "old_id": "a7b3f7c75d628b067b9873f10be8e7c8d6c38544",
      "old_mode": 33188,
      "old_path": "include/media/v4l2-ioctl.h",
      "new_id": "a8dbf5b54b5cc936f55e87b66f9382fba867cfe4",
      "new_mode": 33188,
      "new_path": "include/media/v4l2-ioctl.h"
    }
  ]
}
