)]}'
{
  "commit": "a30551db66afa1b53a4fa7ceadddb7122bdcf491",
  "tree": "bbd4f0468a7417067bf7ebb5001368b01f8c7e90",
  "parents": [
    "94f341db3dd080851f918da37e84659ef760da26"
  ],
  "author": {
    "name": "Anton Vorontsov",
    "email": "avorontsov@ru.mvista.com",
    "time": "Thu Dec 25 17:15:05 2008 +0300"
  },
  "committer": {
    "name": "Greg Kroah-Hartman",
    "email": "gregkh@suse.de",
    "time": "Mon Feb 09 11:19:46 2009 -0800"
  },
  "message": "USB: fsl_qe_udc: Fix recursive locking bug in ch9getstatus()\n\nThe call chain is this:\n\nqe_udc_irq() \u003c- grabs the udc-\u003elock spinlock\nrx_irq()\nqe_ep0_rx()\nep0_setup_handle()\nsetup_received_handle()\nch9getstatus()\nqe_ep_queue() \u003c- tries to grab the udc-\u003elock again\n\nIt seems unsafe to temporarily drop the lock in the ch9getstatus(),\nso to fix that bug the lock-less __qe_ep_queue() function\nimplemented and used by the ch9getstatus().\n\nSigned-off-by: Anton Vorontsov \u003cavorontsov@ru.mvista.com\u003e\nAcked-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "e8f7862acb3dcf0657575c09c53acb0235321f1b",
      "old_mode": 33188,
      "old_path": "drivers/usb/gadget/fsl_qe_udc.c",
      "new_id": "064582fb6a87fa378c2ceea4acd148c41986b644",
      "new_mode": 33188,
      "new_path": "drivers/usb/gadget/fsl_qe_udc.c"
    }
  ]
}
