)]}'
{
  "commit": "731f3ab66a23dab28a359e87364f53d221b3d366",
  "tree": "6f744443ba56c75278a9c2196620b089ccfd0008",
  "parents": [
    "c1f5db1a53a7286f6c818f71016ae6aced814d27"
  ],
  "author": {
    "name": "Joe Jin",
    "email": "joe.jin@oracle.com",
    "time": "Fri Jan 07 18:17:17 2011 +0800"
  },
  "committer": {
    "name": "Konrad Rzeszutek Wilk",
    "email": "konrad.wilk@oracle.com",
    "time": "Mon Jan 10 10:46:30 2011 -0500"
  },
  "message": "xen/fb: fix xenfb suspend/resume race.\n\nWhen migrating guests over a long period we hit this:\n\n\u003c1\u003eBUG: unable to handle kernel paging request at 0000000b819fdb98\n\u003c1\u003eIP: [\u003cffffffff812a588f\u003e] notify_remote_via_irq+0x13/0x34\n\u003c4\u003ePGD 94b10067 PUD 0\n\u003c0\u003eOops: 0000 [#1] SMP\n.. snip..\nCall Trace:\n [\u003cffffffff812712c9\u003e] xenfb_send_event+0x5c/0x5e\n [\u003cffffffff8100ea5f\u003e] ? xen_restore_fl_direct_end+0x0/0x1\n [\u003cffffffff81438d80\u003e] ? _spin_unlock_irqrestore+0x16/0x18\n [\u003cffffffff812714ee\u003e] xenfb_refresh+0x1b1/0x1d7\n [\u003cffffffff81270568\u003e] ? sys_imageblit+0x1ac/0x458\n [\u003cffffffff81271786\u003e] xenfb_imageblit+0x2f/0x34\n [\u003cffffffff8126a3e5\u003e] soft_cursor+0x1b5/0x1c8\n [\u003cffffffff8126a137\u003e] bit_cursor+0x4b6/0x4d7\n [\u003cffffffff8100ea5f\u003e] ? xen_restore_fl_direct_end+0x0/0x1\n [\u003cffffffff81438d80\u003e] ? _spin_unlock_irqrestore+0x16/0x18\n [\u003cffffffff81269c81\u003e] ? bit_cursor+0x0/0x4d7\n [\u003cffffffff812656b7\u003e] fb_flashcursor+0xff/0x111\n [\u003cffffffff812655b8\u003e] ? fb_flashcursor+0x0/0x111\n [\u003cffffffff81071812\u003e] worker_thread+0x14d/0x1ed\n [\u003cffffffff81075a8c\u003e] ? autoremove_wake_function+0x0/0x3d\n [\u003cffffffff81438d80\u003e] ? _spin_unlock_irqrestore+0x16/0x18\n [\u003cffffffff810716c5\u003e] ? worker_thread+0x0/0x1ed\n [\u003cffffffff810756e3\u003e] kthread+0x6e/0x76\n [\u003cffffffff81012dea\u003e] child_rip+0xa/0x20\n [\u003cffffffff81011fd1\u003e] ? int_ret_from_sys_call+0x7/0x1b\n [\u003cffffffff8101275d\u003e] ? retint_restore_args+0x5/0x6\n [\u003cffffffff81012de0\u003e] ? child_rip+0x0/0x20\nCode: 6b ff 0c 8b 87 a4 db 9f 81 66 85 c0 74 08 0f b7 f8 e8 3b ff ff ff c9\nc3 55 48 89 e5 48 83 ec 10 0f 1f 44 00 00 89 ff 48 6b ff 0c \u003c8b\u003e 87 a4 db 9f\n81 66 85 c0 74 14 48 8d 75 f0 0f b7 c0 bf 04 00\nRIP  [\u003cffffffff812a588f\u003e] notify_remote_via_irq+0x13/0x34\n RSP \u003cffff8800e7bf7bd0\u003e\nCR2: 0000000b819fdb98\n---[ end trace 098b4b74827595d0 ]---\n\nThe root cause of the panic is the race between the resume and reconnect to the backend.\n\nClearing the \u0027update_wanted\u0027 flag of xenfb before disconnecting from the\nbackend fixes this issue.\n\nSigned-off-by: Joe Jin \u003cjoe.jin@oracle.com\u003e\nSigned-off-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\nTested-by: Gurudas Pai \u003cgurudas.pai@oracle.com\u003e\nAcked-by: Ian Campbell \u003cian.campbell@citrix.com\u003e\nCc: Jeremy Fitzhardinge \u003cjeremy@goop.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "428d273be72799e1ae6e90409584efced58dc871",
      "old_mode": 33188,
      "old_path": "drivers/video/xen-fbfront.c",
      "new_id": "f92313d33e27a0990e54fd68a8b3951234c1ab99",
      "new_mode": 33188,
      "new_path": "drivers/video/xen-fbfront.c"
    }
  ]
}
