)]}'
{
  "commit": "963267bc5d4de4a0da104a64300375d186575332",
  "tree": "d8d3522224e2778f69d4294ed9f1dc5e9b0359ad",
  "parents": [
    "fe93299a008a7056fe1790744b3a425ddf79a16b"
  ],
  "author": {
    "name": "Maciej W. Rozycki",
    "email": "macro@linux-mips.org",
    "time": "Mon Jun 08 02:42:35 2009 -0700"
  },
  "committer": {
    "name": "David S. Miller",
    "email": "davem@davemloft.net",
    "time": "Mon Jun 08 02:42:35 2009 -0700"
  },
  "message": "declance: Restore tx descriptor ring locking\n\nA driver overhaul on 29 Feb 2000 (!) broke locking around fiddling with \nthe tx descriptor ring in start_xmit(); a follow-on \"fix\" removed the \nbroken remnants altogether.  Here\u0027s a patch to restore proper locking in \nthe function -- the complement in the interrupt handler has been correct \nall the time.\n\n This *may* have been the reason for the occasional confusion of the chip \n-- triggering a tx timeout followed by a chip reset sequence -- seen on \nR4k-based DECstations with the onboard Ethernet interface.  Another theory \nis the confusion is due to an unindentified problem -- perhaps a silicon \nerratum -- associated with the variation of the MT ASIC used to interface \nthe R4k CPU to the rest of the system on these computers; with its \naggressive write-back buffering the design is particularly weakly ordered \nwhen it comes to MMIO (in the absence of ordering barriers uncached reads \nare allowed to bypass earlier uncached writes, even if to the same \nlocation), which may trigger all kinds of corner cases in peripheral \nhardware as well as software.\n\nEither way this piece of code is buggy.\n\nSigned-off-by: Maciej W. Rozycki \u003cmacro@linux-mips.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "b62405a6918040764d68639660ad902754653671",
      "old_mode": 33188,
      "old_path": "drivers/net/declance.c",
      "new_id": "2b22e580c4ded83e7873fbbe5502f10c208aae0f",
      "new_mode": 33188,
      "new_path": "drivers/net/declance.c"
    }
  ]
}
