)]}'
{
  "commit": "715b49ef2de6fcead0776d9349071670282faf65",
  "tree": "d09b77c804aba3b191dc0ceb294387cf730ede4b",
  "parents": [
    "3213e913b0d6baeb28aa1affbdd4bfa7efedc35f"
  ],
  "author": {
    "name": "Alan Cox",
    "email": "alan@lxorguk.ukuu.org.uk",
    "time": "Wed Jan 18 17:44:07 2006 -0800"
  },
  "committer": {
    "name": "Linus Torvalds",
    "email": "torvalds@g5.osdl.org",
    "time": "Wed Jan 18 19:20:30 2006 -0800"
  },
  "message": "[PATCH] EDAC: atomic scrub operations\n\nEDAC requires a way to scrub memory if an ECC error is found and the chipset\ndoes not do the work automatically.  That means rewriting memory locations\natomically with respect to all CPUs _and_ bus masters.  That means we can\u0027t\nuse atomic_add(foo, 0) as it gets optimised for non-SMP\n\nThis adds a function to include/asm-foo/atomic.h for the platforms currently\nsupported which implements a scrub of a mapped block.\n\nIt also adjusts a few other files include order where atomic.h is included\nbefore types.h as this now causes an error as atomic_scrub uses u32.\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "ca99979c868acbc38d752f83ee37a5553f12e2e6",
      "old_mode": 33188,
      "old_path": "drivers/md/kcopyd.c",
      "new_id": "8b3515f394a6ef93c115f00073bea02c071707ac",
      "new_mode": 33188,
      "new_path": "drivers/md/kcopyd.c"
    },
    {
      "type": "modify",
      "old_id": "0b14938b5b627ceac85590762fb50ec68f1c872f",
      "old_mode": 33188,
      "old_path": "fs/nfsctl.c",
      "new_id": "0d4cf948606866f71d1807883da0afbf35968668",
      "new_mode": 33188,
      "new_path": "fs/nfsctl.c"
    },
    {
      "type": "modify",
      "old_id": "de649d3aa2d45d630874634c11f732e5e4819491",
      "old_mode": 33188,
      "old_path": "include/asm-i386/atomic.h",
      "new_id": "e2c00c95a5e130b5bc16249a76c8e82d82ff0cb6",
      "new_mode": 33188,
      "new_path": "include/asm-i386/atomic.h"
    },
    {
      "type": "modify",
      "old_id": "4b5cd553e772637d157b0af95edbd89d7e12eb1a",
      "old_mode": 33188,
      "old_path": "include/asm-x86_64/atomic.h",
      "new_id": "4048508c4f407fbd7bdd5129974a101014d24265",
      "new_mode": 33188,
      "new_path": "include/asm-x86_64/atomic.h"
    },
    {
      "type": "modify",
      "old_id": "d13ab7d2d8994f38fb9bf422d873152fd4417057",
      "old_mode": 33188,
      "old_path": "kernel/audit.c",
      "new_id": "0a813d2883e58089563bd0d266a99e5c029ece3b",
      "new_mode": 33188,
      "new_path": "kernel/audit.c"
    },
    {
      "type": "modify",
      "old_id": "d8a68509e7299df13233c98134c9431e994faa41",
      "old_mode": 33188,
      "old_path": "kernel/auditsc.c",
      "new_id": "685c25175d96374a601d33460dae6e7a35ff0f07",
      "new_mode": 33188,
      "new_path": "kernel/auditsc.c"
    },
    {
      "type": "modify",
      "old_id": "165a4d81efa4a75663e72e12d3cfa12eddb9f969",
      "old_mode": 33188,
      "old_path": "net/ipv4/raw.c",
      "new_id": "f29a12da5109d91a9a9dfebd318c2b1aa5a63b94",
      "new_mode": 33188,
      "new_path": "net/ipv4/raw.c"
    }
  ]
}
