)]}'
{
  "commit": "b8a606b871d37e03b92be1bd3deedeee97ea4f13",
  "tree": "bece6e16df238b560ea1dec04e30c2080b3eca94",
  "parents": [
    "5664dd5561850df580414783cf3c8e0aa834c62e"
  ],
  "author": {
    "name": "Jesper Dangaard Brouer",
    "email": "hawk@comx.dk",
    "time": "Thu Dec 18 19:50:49 2008 -0800"
  },
  "committer": {
    "name": "David S. Miller",
    "email": "davem@davemloft.net",
    "time": "Thu Dec 18 22:27:40 2008 -0800"
  },
  "message": "NIU: Implement discard counters\n\nImplementing discard counters for the NIU driver turned out to be more\ncomplicated than first assumed.\n\nThe discard counters for the NIU neptune chip are only 16-bit (even\nthough this is a 64-bit chip).  These 16-bit counters can overflow\nquickly, especially considering this is a 10Gbit/s ethernet card.\n\nThe overflow indication bit is, unfortunatly, not usable as the\ncounter value does not wrap, but remains at max value 0xFFFF.\nResulting in lost counts until the counter is reset.\n\nThe read and reset scheme also poses a problem. Both in theory and in\npractice counters can be lost in between reading nr64() and clearing\nthe counter nw64().  For this reason, the number of counter clearings\nnw64() is limited/reduced.  On the fast-path the counters are only\nsyncronized once it exceeds 0x7FFF.  When read by userspace, its\nsyncronized fully.\n\nSigned-off-by: Jesper Dangaard Brouer \u003chawk@comx.dk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "022866dc0915479a593b529b63f96fc8706cfa8b",
      "old_mode": 33188,
      "old_path": "drivers/net/niu.c",
      "new_id": "7b6cdd07c85f0b761a9b42db7b7c3f8860c5b815",
      "new_mode": 33188,
      "new_path": "drivers/net/niu.c"
    }
  ]
}
