)]}'
{
  "commit": "40b36daad0ac704e6d5c1b75789f371ef5b053c1",
  "tree": "2b47cdb0d51d191e08e28fde14853b608b8d94c8",
  "parents": [
    "ed8b4d4d7a31923db32f4684535944d69eb43677"
  ],
  "author": {
    "name": "Alex Williamson",
    "email": "alex.williamson@hp.com",
    "time": "Wed Feb 14 00:33:04 2007 -0800"
  },
  "committer": {
    "name": "Linus Torvalds",
    "email": "torvalds@woody.linux-foundation.org",
    "time": "Wed Feb 14 08:09:52 2007 -0800"
  },
  "message": "[PATCH] 8250 UART backup timer\n\nThe patch below works around a minor bug found in the UART of the remote\nmanagement card used in many HP ia64 and parisc servers (aka the Diva\nUARTs).  The problem is that the UART does not reassert the THRE interrupt\nif it has been previously cleared and the IIR THRI bit is re-enabled.  This\ncan produce a very annoying failure mode when used as a serial console,\nallowing a boot/reboot to hang indefinitely until an RX interrupt kicks it\ninto working again (ie.  an unattended reboot could stall).\n\nTo solve this problem, a backup timer is introduced that runs alongside the\nstandard interrupt driven mechanism.  This timer wakes up periodically,\nchecks for a hang condition and gets characters moving again.  This backup\nmechanism is only enabled if the UART is detected as having this problem,\nso systems without these UARTs will have no additional overhead.\n\nThis version of the patch incorporates previous comments from Pavel and\nremoves races in the bug detection code.  The test is now done before the\nirq linking to prevent races with interrupt handler clearing the THRE\ninterrupt.  Short delays and syncs are also added to ensure the device is\nable to update register state before the result is tested.\n\nAristeu says:\n\n  this was tested on the following HP machines and solved the problem:\n  rx2600, rx2620, rx1600 and rx1620s.\n\nhpa says:\n\n  I have seen this same bug in soft UART IP from \"a major vendor.\"\n\nSigned-off-by: Alex Williamson \u003calex.williamson@hp.com\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nAcked-by: Aristeu Sergio Rozanski Filho \u003caris@cathedrallabs.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "2964ca9df5a010f9cebb264e4115d5a588e5c234",
      "old_mode": 33188,
      "old_path": "drivers/serial/8250.c",
      "new_id": "98ec861853280672d0828342184c73025dc555cc",
      "new_mode": 33188,
      "new_path": "drivers/serial/8250.c"
    }
  ]
}
