)]}'
{
  "commit": "faec2f7b96b555055d0aa6cc6b83a537270bed52",
  "tree": "0916cb780a1a5d5fe2ac98364917c79f25d57fcf",
  "parents": [
    "8a2e65f87c66ab1e720f49378750cdd800f9e9cf"
  ],
  "author": {
    "name": "Sean Hefty",
    "email": "sean.hefty@intel.com",
    "time": "Thu Feb 15 17:00:17 2007 -0800"
  },
  "committer": {
    "name": "Roland Dreier",
    "email": "rolandd@cisco.com",
    "time": "Fri Feb 16 14:20:02 2007 -0800"
  },
  "message": "IB/sa: Track multicast join/leave requests\n\nThe IB SA tracks multicast join/leave requests on a per port basis and\ndoes not do any reference counting: if two users of the same port join\nthe same group, and one leaves that group, then the SA will remove the\nport from the group even though there is one user who wants to stay a\nmember left.  Therefore, in order to support multiple users of the\nsame multicast group from the same port, we need to perform reference\ncounting locally.\n\nTo do this, add an multicast submodule to ib_sa to perform reference\ncounting of multicast join/leave operations.  Modify ib_ipoib (the\nonly in-kernel user of multicast) to use the new interface.\n\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "50fb1cd447b76d80de09d6f565e737cd37101af5",
      "old_mode": 33188,
      "old_path": "drivers/infiniband/core/Makefile",
      "new_id": "189e5d4b9b17ed271027e2c015b252f929fbd32d",
      "new_mode": 33188,
      "new_path": "drivers/infiniband/core/Makefile"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "4a579b3a1c90c87105a4400a1cd467c695f6a211",
      "new_mode": 33188,
      "new_path": "drivers/infiniband/core/multicast.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "24c93fd320fb8716fb605c2c89afb9f9fd17ce6a",
      "new_mode": 33188,
      "new_path": "drivers/infiniband/core/sa.h"
    },
    {
      "type": "modify",
      "old_id": "e45afba75341ee86d80464406564c3492366edbd",
      "old_mode": 33188,
      "old_path": "drivers/infiniband/core/sa_query.c",
      "new_id": "d7d4a5309ba939325ebccf149c3f7be7bd27dd5f",
      "new_mode": 33188,
      "new_path": "drivers/infiniband/core/sa_query.c"
    },
    {
      "type": "modify",
      "old_id": "fea737f520fdfeae5a8a7b85765799552406b379",
      "old_mode": 33188,
      "old_path": "drivers/infiniband/ulp/ipoib/ipoib_multicast.c",
      "new_id": "b303ce6bc21ee6664d1471a3a99d2455e11aef2e",
      "new_mode": 33188,
      "new_path": "drivers/infiniband/ulp/ipoib/ipoib_multicast.c"
    },
    {
      "type": "modify",
      "old_id": "c094e501286229bbc699bc74534c088235a7a436",
      "old_mode": 33188,
      "old_path": "include/rdma/ib_addr.h",
      "new_id": "c36750ff6ae82caf596aaee36d25de55e9d4316a",
      "new_mode": 33188,
      "new_path": "include/rdma/ib_addr.h"
    },
    {
      "type": "modify",
      "old_id": "97715b0c20b69f6e50b75b2c03e24fa50758fdb6",
      "old_mode": 33188,
      "old_path": "include/rdma/ib_sa.h",
      "new_id": "5e26b2f53f86e198f1c8893c72d460d624a4c419",
      "new_mode": 33188,
      "new_path": "include/rdma/ib_sa.h"
    }
  ]
}
