)]}'
{
  "commit": "e2adbcb480992de8a01acf9218e8bbd9b507fc6f",
  "tree": "92465e753d0221c0c54862994735a7fe078200fa",
  "parents": [
    "b6d35182fe62e57d368062adcc880ca35119d88e"
  ],
  "author": {
    "name": "Santiago Leon",
    "email": "santil@us.ibm.com",
    "time": "Wed Oct 26 10:47:08 2005 -0600"
  },
  "committer": {
    "name": "Jeff Garzik",
    "email": "jgarzik@pobox.com",
    "time": "Fri Oct 28 16:07:30 2005 -0400"
  },
  "message": "[PATCH] ibmveth fix buffer replenishing\n\nThis patch removes the allocation of RX skb\u0027s  buffers from a workqueue\nto be called directly at RX processing time.  This change was suggested\nby Dave Miller when the driver was starving the RX buffers and\ndeadlocking under heavy traffic:\n\n\u003e Allocating RX SKBs via tasklet is, IMHO, the worst way to\n\u003e do it.  It is no surprise that there are starvation cases.\n\u003e\n\u003e If tasklets or work queues get delayed in any way, you lose,\n\u003e and it\u0027s very easy for a card to catch up with the driver RX\u0027ing\n\u003e packets very fast, no matter how aggressive you make the\n\u003e replenishing.  By the time you detect that you need to be\n\u003e \"more aggressive\" it is already too late.\n\u003e The only pseudo-reliable way is to allocate at RX processing time.\n\u003e\n\nSigned-off-by: Santiago Leon \u003csantil@us.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@pobox.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "d985b804a76256f1e86f6e01e121cd8f9b7aef0e",
      "old_mode": 33188,
      "old_path": "drivers/net/ibmveth.c",
      "new_id": "aea1598b2253194b941bd1b96c521bd7698c0145",
      "new_mode": 33188,
      "new_path": "drivers/net/ibmveth.c"
    },
    {
      "type": "modify",
      "old_id": "a5d27a9cdf1f9a4fc425d0c0f45bcdd54382da97",
      "old_mode": 33188,
      "old_path": "drivers/net/ibmveth.h",
      "new_id": "a3ea02937d63a09b046c531e91a4899476f9e017",
      "new_mode": 33188,
      "new_path": "drivers/net/ibmveth.h"
    }
  ]
}
