)]}'
{
  "commit": "7ca7e564e049d8b350ec9d958ff25eaa24226352",
  "tree": "e3c1397dc898dbd7c685c6a052425e7346eb79d1",
  "parents": [
    "d2b20b11547cefc89d6c81937e81afaf3c62808b"
  ],
  "author": {
    "name": "Nadia Derbey",
    "email": "Nadia.Derbey@bull.net",
    "time": "Thu Oct 18 23:40:48 2007 -0700"
  },
  "committer": {
    "name": "Linus Torvalds",
    "email": "torvalds@woody.linux-foundation.org",
    "time": "Fri Oct 19 11:53:44 2007 -0700"
  },
  "message": "ipc: store ipcs into IDRs\n\nThis patch introduces ipcs storage into IDRs. The main changes are:\n  . This ipc_ids structure is changed: the entries array is changed into a\n    root idr structure.\n  . The grow_ary() routine is removed: it is not needed anymore when adding\n    an ipc structure, since we are now using the IDR facility.\n  . The ipc_rmid() routine interface is changed:\n       . there is no need for this routine to return the pointer passed in as\n         argument: it is now declared as a void\n       . since the id is now part of the kern_ipc_perm structure, no need to\n         have it as an argument to the routine\n\nSigned-off-by: Nadia Derbey \u003cNadia.Derbey@bull.net\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": "ee111834091cf99752fc3679281ef9c86adbbf45",
      "old_mode": 33188,
      "old_path": "include/linux/ipc.h",
      "new_id": "96988d1460da7b5b8b325e7047ae0651fba373d8",
      "new_mode": 33188,
      "new_path": "include/linux/ipc.h"
    },
    {
      "type": "modify",
      "old_id": "f1b60740d641c5a61daaed95f68b12e465b331ed",
      "old_mode": 33188,
      "old_path": "include/linux/msg.h",
      "new_id": "10a3d5a1abffb30fd9b158148b26379416cd1fe0",
      "new_mode": 33188,
      "new_path": "include/linux/msg.h"
    },
    {
      "type": "modify",
      "old_id": "9aaffb0b1d81e9ebfee3c9731209a23fac42223e",
      "old_mode": 33188,
      "old_path": "include/linux/sem.h",
      "new_id": "c8eaad9e4b72afacb1725204abbda308df0b3d45",
      "new_mode": 33188,
      "new_path": "include/linux/sem.h"
    },
    {
      "type": "modify",
      "old_id": "bea65d9c93ef1c9da525bf5c6fb79a206f2e51f7",
      "old_mode": 33188,
      "old_path": "include/linux/shm.h",
      "new_id": "eeaed921a1dc02d02f3a61cec5ea0c62873ecfad",
      "new_mode": 33188,
      "new_path": "include/linux/shm.h"
    },
    {
      "type": "modify",
      "old_id": "319468609b7659d5aea356bfe079317e9ec18fae",
      "old_mode": 33188,
      "old_path": "ipc/msg.c",
      "new_id": "08591a0278ce23fe67af16328f6f632480ef23b3",
      "new_mode": 33188,
      "new_path": "ipc/msg.c"
    },
    {
      "type": "modify",
      "old_id": "64ff4261f4e27dfca56edb3dab68cf52400a0624",
      "old_mode": 33188,
      "old_path": "ipc/sem.c",
      "new_id": "f92a2565d12b0c7fc896f7c73a581e734d6eb225",
      "new_mode": 33188,
      "new_path": "ipc/sem.c"
    },
    {
      "type": "modify",
      "old_id": "b9d272900a1e64c1572776b0c6fa5750ea308f0e",
      "old_mode": 33188,
      "old_path": "ipc/shm.c",
      "new_id": "dcc333239683d7d15ea427a19b236a6fd769d69d",
      "new_mode": 33188,
      "new_path": "ipc/shm.c"
    },
    {
      "type": "modify",
      "old_id": "44e5135aee4785e2da26de92e0d3b52b02246842",
      "old_mode": 33188,
      "old_path": "ipc/util.c",
      "new_id": "2a205875d277bcce202306124a332cbb1fa07c36",
      "new_mode": 33188,
      "new_path": "ipc/util.c"
    },
    {
      "type": "modify",
      "old_id": "333e891bcaca838cf71bfb27d5d9c6296a6102bd",
      "old_mode": 33188,
      "old_path": "ipc/util.h",
      "new_id": "c9063267d4f8fc15a0be1dd00a3d83fb029c2333",
      "new_mode": 33188,
      "new_path": "ipc/util.h"
    }
  ]
}
