)]}'
{
  "commit": "a1fec1dbbc8db974d2582e4040590cebe72171e4",
  "tree": "9dcbe1933b7f40256f40393f3c86dbb16e8fb953",
  "parents": [
    "3e335672e018c06e007f85a5d54afd721fb3d6d5"
  ],
  "author": {
    "name": "Boaz Harrosh",
    "email": "bharrosh@panasas.com",
    "time": "Wed Oct 12 18:42:22 2011 +0200"
  },
  "committer": {
    "name": "Boaz Harrosh",
    "email": "bharrosh@panasas.com",
    "time": "Mon Oct 24 16:55:36 2011 -0700"
  },
  "message": "ore: RAID5 read\n\nThis patch introduces the first stage of RAID5 support\nmainly the skip-over-raid-units when reading. For\nwrites it inserts BLANK units, into where XOR blocks\nshould be calculated and written to.\n\nIt introduces the new \"general raid maths\", and the main\nadditional parameters and components needed for raid5.\n\nSince at this stage it could corrupt future version that\nactually do support raid5. The enablement of raid5\nmounting and setting of parity-count \u003e 0 is disabled. So\nthe raid5 code will never be used. Mounting of raid5 is\nonly enabled later once the basic XOR write is also in.\nBut if the patch \"enable RAID5\" is applied this code has\nbeen tested to be able to properly read raid5 volumes\nand is according to standard.\n\nAlso it has been tested that the new maths still properly\nsupports RAID0 and grouping code just as before.\n(BTW: I have found more bugs in the pnfs-obj RAID math\n fixed here)\n\nThe ore.c file is getting too big, so new ore_raid.[hc]\nfiles are added that will include the special raid stuff\nthat are not used in striping and mirrors. In future write\nsupport these will get bigger.\nWhen adding the ore_raid.c to Kbuild file I was forced to\nrename ore.ko to libore.ko. Is it possible to keep source\nfile, say ore.c and module file ore.ko the same even if there\nare multiple files inside ore.ko?\n\nSigned-off-by: Boaz Harrosh \u003cbharrosh@panasas.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "c5a5855a6c44ebce210628c391819637c87fd45d",
      "old_mode": 33188,
      "old_path": "fs/exofs/Kbuild",
      "new_id": "352ba149d23ed51261d46f55fd4c8babf066b06c",
      "new_mode": 33188,
      "new_path": "fs/exofs/Kbuild"
    },
    {
      "type": "modify",
      "old_id": "d92998d5c2d6291bf09fd5c3bfa42fb9bea6e5de",
      "old_mode": 33188,
      "old_path": "fs/exofs/ore.c",
      "new_id": "fd6090ddd3bfa68bfd32d7d5b9a1853b632fa96e",
      "new_mode": 33188,
      "new_path": "fs/exofs/ore.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "8d4b93a93c6745246adcbfcf7ee14662de67be05",
      "new_mode": 33188,
      "new_path": "fs/exofs/ore_raid.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "c21080b4407f31c65316032a5076c39719a163ac",
      "new_mode": 33188,
      "new_path": "fs/exofs/ore_raid.h"
    },
    {
      "type": "modify",
      "old_id": "a8e39d14f82b52b62df0ff63f94df2da1aab6c1b",
      "old_mode": 33188,
      "old_path": "include/scsi/osd_ore.h",
      "new_id": "43821c18cd3fca6a1f550b58a395df778ba69d7f",
      "new_mode": 33188,
      "new_path": "include/scsi/osd_ore.h"
    }
  ]
}
