)]}'
{
  "log": [
    {
      "commit": "e7c17e43090afe558c40bfb66637744c27bd2aeb",
      "tree": "4c164c4ec59eaa7599c91f865a261517454ba45f",
      "parents": [
        "4ed8a6bb083bfcc21f1ed66a474b03c0386e4b34"
      ],
      "author": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Thu Jan 29 18:17:46 2009 -0800"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Fri Apr 03 11:39:16 2009 -0700"
      },
      "message": "ocfs2: Introduce dir free space list\n\nThe only operation which doesn\u0027t get faster with directory indexing is\ninsert, which still has to walk the entire unindexed directory portion to\nfind a free block. This patch provides an improvement in directory insert\nperformance by maintaining a singly linked list of directory leaf blocks\nwhich have space for additional dirents.\n\nSigned-off-by: Mark Fasheh \u003cmfasheh@suse.com\u003e\nAcked-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "4ed8a6bb083bfcc21f1ed66a474b03c0386e4b34",
      "tree": "89cc2629bed3949e980edcae3d807e71718a9028",
      "parents": [
        "9b7895efac906d66d19856194e1ba61f37e231a4"
      ],
      "author": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Mon Nov 24 17:02:08 2008 -0800"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Fri Apr 03 11:39:16 2009 -0700"
      },
      "message": "ocfs2: Store dir index records inline\n\nAllow us to store a small number of directory index records in the\nocfs2_dx_root_block. This saves us a disk read on small to medium sized\ndirectories (less than about 250 entries). The inline root is automatically\nturned into a root block with extents if the directory size increases beyond\nit\u0027s capacity.\n\nSigned-off-by: Mark Fasheh \u003cmfasheh@suse.com\u003e\nAcked-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "9b7895efac906d66d19856194e1ba61f37e231a4",
      "tree": "1ee6d2630cf3617251638170dcaceef41ddda8ec",
      "parents": [
        "4a12ca3a00a244e1fd1e673d151ea38b71e11d55"
      ],
      "author": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Wed Nov 12 16:27:44 2008 -0800"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Fri Apr 03 11:39:15 2009 -0700"
      },
      "message": "ocfs2: Add a name indexed b-tree to directory inodes\n\nThis patch makes use of Ocfs2\u0027s flexible btree code to add an additional\ntree to directory inodes. The new tree stores an array of small,\nfixed-length records in each leaf block. Each record stores a hash value,\nand pointer to a block in the traditional (unindexed) directory tree where a\ndirent with the given name hash resides. Lookup exclusively uses this tree\nto find dirents, thus providing us with constant time name lookups.\n\nSome of the hashing code was copied from ext3. Unfortunately, it has lots of\nunfixed checkpatch errors. I left that as-is so that tracking changes would\nbe easier.\n\nSigned-off-by: Mark Fasheh \u003cmfasheh@suse.com\u003e\nAcked-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "4a12ca3a00a244e1fd1e673d151ea38b71e11d55",
      "tree": "84e30310a7d93ead9910f761e19d3fe73c5861b3",
      "parents": [
        "59b526a30722f29e5dba6210a6e0fc34e3149b94"
      ],
      "author": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Wed Nov 12 15:43:34 2008 -0800"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Fri Apr 03 11:39:15 2009 -0700"
      },
      "message": "ocfs2: Introduce dir lookup helper struct\n\nMany directory manipulation calls pass around a tuple of dirent, and it\u0027s\ncontaining buffer_head. Dir indexing has a bit more state, but instead of\nadding yet more arguments to functions, we introduce \u0027struct\nocfs2_dir_lookup_result\u0027. In this patch, it simply holds the same tuple, but\nfuture patches will add more state.\n\nSigned-off-by: Mark Fasheh \u003cmfasheh@suse.com\u003e\nAcked-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "c175a518b4a1d514483abf61813ce5d855917164",
      "tree": "e437a3d1377fab38c1d8ef6289fd9ea3590d09b2",
      "parents": [
        "87d35a74b15ec703910a63e0667692fb5e267be0"
      ],
      "author": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Wed Dec 10 17:58:22 2008 -0800"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Mon Jan 05 08:40:34 2009 -0800"
      },
      "message": "ocfs2: Checksum and ECC for directory blocks.\n\nUse the db_check field of ocfs2_dir_block_trailer to crc/ecc the\ndirblocks.\n\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\nSigned-off-by: Mark Fasheh \u003cmfasheh@suse.com\u003e\n"
    },
    {
      "commit": "38760e243249f03b4c6d78ca624dd846a2681b67",
      "tree": "adf4cc72ac30455f9d4a646f64f1628e38b14a89",
      "parents": [
        "be94d11704ef79030fd2e6a0c41b4a7f65f9e860"
      ],
      "author": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Tue Sep 11 17:21:56 2007 -0700"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Fri Oct 12 11:54:38 2007 -0700"
      },
      "message": "ocfs2: Rename cleanups\n\nocfs2_rename() does direct manipulation of the dirent it\u0027s gotten back from\na directory search. Wrap this manipulation inside of a function so that we\ncan transparently change directory update behavior in the future. As an\nadded bonus, this gets rid of an ugly macro.\n\nSigned-off-by: Mark Fasheh \u003cmark.fasheh@oracle.com\u003e\nReviewed-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "be94d11704ef79030fd2e6a0c41b4a7f65f9e860",
      "tree": "10b060625c464db127210acc00e8aa80b43ce6f3",
      "parents": [
        "0bfbbf62a8b5a129ba2c689283bfece80a601aba"
      ],
      "author": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Tue Sep 11 15:22:06 2007 -0700"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Fri Oct 12 11:54:38 2007 -0700"
      },
      "message": "ocfs2: Provide convenience function for ino lookup\n\nA couple paths which needed to just match a parent dir + name pair to an\ninode number were a bit messy because they had to deal with\nocfs2_find_files_on_disk() which returns a larger number of values. Provide\na convenience function, ocfs2_lookup_ino_from_name() which internalizes all\nthe extra accounting.\n\nSigned-off-by: Mark Fasheh \u003cmark.fasheh@oracle.com\u003e\nReviewed-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "0bfbbf62a8b5a129ba2c689283bfece80a601aba",
      "tree": "af010d9f03acf04f81aef04eb07e2962fe502543",
      "parents": [
        "5eae5b96fc86e6c85f5f90e90fe9e6966f1fec63"
      ],
      "author": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Wed Sep 12 11:19:00 2007 -0700"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Fri Oct 12 11:54:37 2007 -0700"
      },
      "message": "ocfs2: Implement ocfs2_empty_dir() as a caller of ocfs2_dir_foreach()\n\nWe can preserve the behavior of ocfs2_empty_dir(), while getting rid of the\nopen coded directory walk by just providing a smart filldir callback. This\nalso automatically gets to use the dir readahead code, though in this case\nany advantage is minor at best.\n\nSigned-off-by: Mark Fasheh \u003cmark.fasheh@oracle.com\u003e\nReviewed-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "5eae5b96fc86e6c85f5f90e90fe9e6966f1fec63",
      "tree": "f9ab0815a6b0ee9c181a17e304abb8386bd09843",
      "parents": [
        "7e8536797d4508ddc790cc3af6a281db1582d485"
      ],
      "author": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Mon Sep 10 17:50:51 2007 -0700"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Fri Oct 12 11:54:37 2007 -0700"
      },
      "message": "ocfs2: Remove open coded readdir()\n\nocfs2_queue_orphans() has an open coded readdir loop which can easily just\nuse a directory accessor function.\n\nSigned-off-by: Mark Fasheh \u003cmark.fasheh@oracle.com\u003e\nReviewed-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "316f4b9f98a353ac1be93199694fd97272378815",
      "tree": "c54f7feb08fc1693f64879d8a3edc18cf3bb2713",
      "parents": [
        "1d410a6e337a0d2d5543ad1d9bccb670a7a05312"
      ],
      "author": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Fri Sep 07 18:21:26 2007 -0700"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Fri Oct 12 11:54:36 2007 -0700"
      },
      "message": "ocfs2: Move directory manipulation code into dir.c\n\nThe code for adding, removing, deleting directory entries was splattered all\nover namei.c. I\u0027d rather have this all centralized, so that it\u0027s easier to\nmake changes for inline dir data, and eventually indexed directories.\n\nNone of the code in any of the functions was changed. I only removed the\nstatic keyword from some prototypes so that they could be exported.\n\nSigned-off-by: Mark Fasheh \u003cmark.fasheh@oracle.com\u003e\nReviewed-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "1fabe1481fac9e01bf8bffa60a2307ef379aa5de",
      "tree": "17092c1be837ed95c8f26646003e9e49cfdb9663",
      "parents": [
        "65eff9ccf86d63eb5c3e9071450a36e4e4fa9564"
      ],
      "author": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Mon Oct 09 18:11:45 2006 -0700"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Fri Dec 01 18:28:28 2006 -0800"
      },
      "message": "ocfs2: Remove struct ocfs2_journal_handle in favor of handle_t\n\nThis is mostly a search and replace as ocfs2_journal_handle is now no more\nthan a container for a handle_t pointer.\n\nocfs2_commit_trans() becomes very straight forward, and we remove some out\nof date comments / code.\n\nSigned-off-by: Mark Fasheh \u003cmark.fasheh@oracle.com\u003e\n"
    },
    {
      "commit": "ccd979bdbce9fba8412beb3f1de68a9d0171b12c",
      "tree": "c50ed941849ce06ccadd4ce27599b3ef9fdbe2ae",
      "parents": [
        "8df08c89c668e1bd922a053fdb5ba1fadbecbb38"
      ],
      "author": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Thu Dec 15 14:31:24 2005 -0800"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Tue Jan 03 11:45:47 2006 -0800"
      },
      "message": "[PATCH] OCFS2: The Second Oracle Cluster Filesystem\n\nThe OCFS2 file system module.\n\nSigned-off-by: Mark Fasheh \u003cmark.fasheh@oracle.com\u003e\nSigned-off-by: Kurt Hackel \u003ckurt.hackel@oracle.com\u003e\n"
    }
  ]
}
