)]}'
{
  "log": [
    {
      "commit": "286eaa95c5c5915a6b72cc3f0a2534161fd7928b",
      "tree": "dce03b619389cc5b5e2508b30ca3e1411401cf4e",
      "parents": [
        "e3dad42bf993a0f24eb6e46152356c9b119c15e8"
      ],
      "author": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Fri Feb 01 15:03:57 2008 -0800"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Fri Apr 18 08:56:05 2008 -0700"
      },
      "message": "ocfs2: Break out stackglue into modules.\n\nWe define the ocfs2_stack_plugin structure to represent a stack driver.\nThe o2cb stack code is split into stack_o2cb.c.  This becomes the\nocfs2_stack_o2cb.ko module.\n\nThe stackglue generic functions are similarly split into the\nocfs2_stackglue.ko module.  This module now provides an interface to\nregister drivers.  The ocfs2_stack_o2cb driver registers itself.  As\npart of this interface, ocfs2_stackglue can load drivers on demand.\nThis is accomplished in ocfs2_cluster_connect().\n\nocfs2_cluster_disconnect() is now notified when a _hangup() is pending.\nIf a hangup is pending, it will not release the driver module and will\nlet _hangup() do that.\n\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "63e0c48ae6986a5bbb8e8dd9210c0e6ca79f2e50",
      "tree": "761be605ec94525d51ad09074bc70a2f9ddb2537",
      "parents": [
        "cf0acdcd640e9466059e69951c557e90b4bee45a"
      ],
      "author": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Wed Jan 30 16:58:36 2008 -0800"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Fri Apr 18 08:56:05 2008 -0700"
      },
      "message": "ocfs2: Clean up stackglue initialization\n\nThe stack glue initialization function needs a better name so that it can be\nused cleanly when stackglue becomes a module.\n\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\nSigned-off-by: Mark Fasheh \u003cmfasheh@suse.com\u003e\n"
    },
    {
      "commit": "4670c46ded9a18268d1265417ff4ac72145a7917",
      "tree": "4f70822ddee389a9c8ed572b215a3355c20db3a1",
      "parents": [
        "8f2c9c1b16bf6ed0903b29c49d56fa0109a390e4"
      ],
      "author": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Fri Feb 01 14:39:35 2008 -0800"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Fri Apr 18 08:56:04 2008 -0700"
      },
      "message": "ocfs2: Introduce the new ocfs2_cluster_connect/disconnect() API.\n\nThis step introduces a cluster stack agnostic API for initializing and\nexiting.  fs/ocfs2/dlmglue.c no longer uses o2cb/o2dlm knowledge to\nconnect to the stack.  It is all handled in stackglue.c.\n\nheartbeat.c no longer needs to know how it gets called.\nocfs2_do_node_down() is now a clean recovery trigger.\n\nThe big gotcha is the ordering of initializations and de-initializations done\nunderneath ocfs2_cluster_connect().  ocfs2_dlm_init() used to do all\no2dlm initialization in one block.  Thus, the o2dlm functionality of\nocfs2_cluster_connect() is very straightforward.  ocfs2_dlm_shutdown(),\nhowever, did a few things between de-registration of the eviction\ncallback and actually shutting down the domain.  Now de-registration and\nshutdown of the domain are wrapped within the single\nocfs2_cluster_disconnect() call.  I\u0027ve checked the code paths to make\nsure we can safely tear down things in ocfs2_dlm_shutdown() before\ncalling ocfs2_cluster_disconnect().  The filesystem has already set\nitself to ignore the callback.\n\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\nSigned-off-by: Mark Fasheh \u003cmfasheh@suse.com\u003e\n"
    },
    {
      "commit": "24ef1815e5e13e50196eb1ab8ddc0d783443bdf8",
      "tree": "4c44e87b1a80d4745416c9973258c40db8433829",
      "parents": [
        "386a2ef8576e966076c293f6496b9e3d7e3d9035"
      ],
      "author": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Tue Jan 29 17:37:32 2008 -0800"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Fri Apr 18 08:56:03 2008 -0700"
      },
      "message": "ocfs2: Separate out dlm lock functions.\n\nThis is the first in a series of patches to isolate ocfs2 from the\nunderlying cluster stack. Here we wrap the dlm locking functions with\nocfs2-specific calls. Because ocfs2 always uses the same dlm lock status\ncallbacks, we can eliminate the callbacks from the filesystem visible\nfunctions.\n\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\nSigned-off-by: Mark Fasheh \u003cmfasheh@suse.com\u003e\n"
    },
    {
      "commit": "006000566d4e95b8d1924addfb41094acf0d5ec2",
      "tree": "4f0617f1d7dcc1728e8d6e3bff17dbf510af4bb9",
      "parents": [
        "0dd3256e04c452396c9d22943e4a18e02f4dbdf4"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Tue Jan 29 00:11:41 2008 +0200"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Mon Mar 03 15:50:21 2008 -0800"
      },
      "message": "[2.6 patch] fs/ocfs2/: possible cleanups\n\nThis patch contains the following cleanups that are now possible:\n- make the following needlessly global functions static:\n  - dlmglue.c:ocfs2_process_blocked_lock()\n  - heartbeat.c:ocfs2_node_map_init()\n- #if 0 the following unused global function plus support functions:\n  - heartbeat.c:ocfs2_node_map_is_only()\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nSigned-off-by: Mark Fasheh \u003cmark.fasheh@oracle.com\u003e\n"
    },
    {
      "commit": "d24fbcda0c4988322949df3d759f1cfb32b32953",
      "tree": "d8454796d58649126005001472e9dcee8bd557ca",
      "parents": [
        "3e6bdf473f489664dac4d7511d26c7ac3dfdc748"
      ],
      "author": {
        "name": "Joel Becker",
        "email": "Joel.Becker@oracle.com",
        "time": "Fri Jan 25 17:02:21 2008 -0800"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Wed Feb 06 16:11:29 2008 -0800"
      },
      "message": "ocfs2: Negotiate locking protocol versions.\n\nCurrently, when ocfs2 nodes connect via TCP, they advertise their\ncompatibility level.  If the versions do not match, two nodes cannot speak\nto each other and they disconnect. As a result, this provides no forward or\nbackwards compatibility.\n\nThis patch implements a simple protocol negotiation at the dlm level by\nintroducing a major/minor version number scheme for entities that\ncommunicate.  Specifically, o2dlm has a major/minor version for interaction\nwith o2dlm on other nodes, and ocfs2 itself has a major/minor version for\ninteracting with the filesystem on other nodes.\n\nThis will allow rolling upgrades of ocfs2 clusters when changes to the\nlocking or network protocols can be done in a backwards compatible manner.\nIn those cases, only the minor number is changed and the negotatied protocol\nminor is returned from dlm join. In the far less likely event that a\nrequired protocol change makes backwards compatibility impossible, we simply\nbump the major number.\n\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\nSigned-off-by: Mark Fasheh \u003cmark.fasheh@oracle.com\u003e\n"
    },
    {
      "commit": "cf8e06f1a860d8680d6bb4ac8ec7d7724988e46f",
      "tree": "4705326641f39fdb1b97c925b55dae3c4634d5e0",
      "parents": [
        "2fbe8d1ebe004425b4f7b8bba345623d2280be82"
      ],
      "author": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Thu Dec 20 16:43:10 2007 -0800"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Fri Jan 25 15:05:43 2008 -0800"
      },
      "message": "[PATCH 1/2] ocfs2: add flock lock type\n\nThis adds a new dlmglue lock type which is intended to back flock()\nrequests.\n\nSince these locks are driven from userspace, usage rules are much more\nliberal than the typical Ocfs2 internal cluster lock. As a result, we can\u0027t\nmake use of most dlmglue features - lock caching and lock level\noptimizations in particular. Additionally, userspace is free to deadlock\nitself, so we have to deal with that in the same way as the rest of the\nkernel - by allowing a signal to abort a lock request.\n\nIn order to keep ocfs2_cluster_lock() complexity down, ocfs2_file_lock()\ndoes it\u0027s own dlm coordination. We still use the same helper functions\nthough, so duplicated code is kept to a minimum.\n\nSigned-off-by: Mark Fasheh \u003cmark.fasheh@oracle.com\u003e\n"
    },
    {
      "commit": "e63aecb651ba73dffc62f9608ee1b7ae2a0ffd4b",
      "tree": "06a4b727230120fe73421dc3149c21aaed5fe91e",
      "parents": [
        "c934a92d05b549dd2f25db72c5fc3cb9dcf1b611"
      ],
      "author": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Thu Oct 18 15:30:42 2007 -0700"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Fri Jan 25 14:46:01 2008 -0800"
      },
      "message": "ocfs2: Rename ocfs2_meta_[un]lock\n\nCall this the \"inode_lock\" now, since it covers both data and meta data.\nThis patch makes no functional changes.\n\nSigned-off-by: Mark Fasheh \u003cmark.fasheh@oracle.com\u003e\n"
    },
    {
      "commit": "c934a92d05b549dd2f25db72c5fc3cb9dcf1b611",
      "tree": "57150c87d1d465db28fceaa14c9d5b220c7a3954",
      "parents": [
        "f1f540688eae66c274ff1c1133b5d9c687b28f58"
      ],
      "author": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Thu Oct 18 15:23:46 2007 -0700"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Fri Jan 25 14:45:57 2008 -0800"
      },
      "message": "ocfs2: Remove data locks\n\nThe meta lock now covers both meta data and data, so this just removes the\nnow-redundant data lock.\n\nCombining locks saves us a round of lock mastery per inode and one less lock\nto ping between nodes during read/write.\n\nWe don\u0027t lose much - since meta locks were always held before a data lock\n(and at the same level) ordered writeout mode (the default) ensured that\nflushing for the meta data lock also pushed out data anyways.\n\nSigned-off-by: Mark Fasheh \u003cmark.fasheh@oracle.com\u003e\n"
    },
    {
      "commit": "34d024f84345807bf44163fac84e921513dde323",
      "tree": "aef303ae5feeb42cb8791acc1c0b8a74f0a97674",
      "parents": [
        "6f7b056ea9c6fa978c79ca626eff43549df94dbb"
      ],
      "author": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Mon Sep 24 15:56:19 2007 -0700"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Fri Jan 25 14:45:34 2008 -0800"
      },
      "message": "ocfs2: Remove mount/unmount votes\n\nThe node maps that are set/unset by these votes are no longer relevant, thus\nwe can remove the mount and umount votes. Since those are the last two\nremaining votes, we can also remove the entire vote infrastructure.\n\nThe vote thread has been renamed to the downconvert thread, and the small\namount of functionality related to managing it has been moved into\nfs/ocfs2/dlmglue.c. All references to votes have been removed or updated.\n\nSigned-off-by: Mark Fasheh \u003cmark.fasheh@oracle.com\u003e\n"
    },
    {
      "commit": "15b1e36bdb487d67ef924a37b0967453143be53a",
      "tree": "448e955663c183a12f574f0e470e842d7722c1fb",
      "parents": [
        "8553cf4f360d6fc4913a0bdd3b22dd7b5bb9a3be"
      ],
      "author": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Fri Sep 07 13:58:15 2007 -0700"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Fri Oct 12 11:54:39 2007 -0700"
      },
      "message": "ocfs2: Structure updates for inline data\n\nAdd the disk, network and memory structures needed to support data in inode.\n\nStruct ocfs2_inline_data is defined and embedded in ocfs2_dinode for storing\ninline data.\n\nA new inode field, i_dyn_features, is added to facilitate tracking of\ndynamic inode state. Since it will be used often, we want to mirror it on\nocfs2_inode_info, and transfer it via the meta data lvb.\n\nSigned-off-by: Mark Fasheh \u003cmark.fasheh@oracle.com\u003e\nReviewed-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "6cb129f5675c39944e5fe18fd2530a2eb771b754",
      "tree": "18290b53d302573632c0d5f906a0b4af8f8d4b39",
      "parents": [
        "586d232b191b776a1c6d51c10c662b8b3e238fdf"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Thu Apr 26 00:29:35 2007 -0700"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Wed May 02 15:07:27 2007 -0700"
      },
      "message": "[PATCH] fs/ocfs2/: make 3 functions static\n\nThis patch makes the following needlessly global functions static:\n- aops.c: ocfs2_write_data_page()\n- dlmglue.c: ocfs2_dump_meta_lvb_info()\n- file.c: ocfs2_set_inode_size()\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Mark Fasheh \u003cmark.fasheh@oracle.com\u003e\n"
    },
    {
      "commit": "500086300e6dc5308a7328990bd50d17e075162b",
      "tree": "4083cda09445c260c2cc2ac1d0f68c05ad2b958e",
      "parents": [
        "a9f5f70739363ccca2e771c274c4f015c5fb7a88"
      ],
      "author": {
        "name": "Tiger Yang",
        "email": "tiger.yang@oracle.com",
        "time": "Tue Mar 20 16:01:38 2007 -0700"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Thu Apr 26 14:39:48 2007 -0700"
      },
      "message": "ocfs2: Remove delete inode vote\n\nOcfs2 currently does cluster-wide node messaging to check the open state of\nan inode during delete. This patch removes that mechanism in favor of an\ninode cluster lock which is taken at shared read when an inode is first read\nand dropped in clear_inode(). This allows a deleting node to test the\nliveness of an inode by attempting to take an exclusive lock.\n\nSigned-off-by: Tiger Yang \u003ctiger.yang@oracle.com\u003e\nSigned-off-by: Mark Fasheh \u003cmark.fasheh@oracle.com\u003e\n"
    },
    {
      "commit": "7f1a37e31f94b4f1c123d32ce9f69205ab2095bd",
      "tree": "7d2136573966de80d031e7320db11c15d7f93a92",
      "parents": [
        "8659ac25b434fcc61cf7797f4b69edc3eaaffb55"
      ],
      "author": {
        "name": "Tiger Yang",
        "email": "tiger.yang@oracle.com",
        "time": "Wed Nov 15 15:48:42 2006 +0800"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Fri Dec 01 18:28:51 2006 -0800"
      },
      "message": "ocfs2: core atime update functions\n\nThis patch adds the core routines for updating atime in ocfs2.\n\nSigned-off-by: Tiger Yang \u003ctiger.yang@oracle.com\u003e\nSigned-off-by: Mark Fasheh \u003cmark.fasheh@oracle.com\u003e\n"
    },
    {
      "commit": "4bcec1847ac4f75c2ee6d091b495f34d8d822e6a",
      "tree": "faac00bd440eff91bd59a3cef88e74220082163a",
      "parents": [
        "a301a27d715276a71827004549bcbb2b64776c11"
      ],
      "author": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Mon Oct 09 16:02:40 2006 -0700"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Fri Dec 01 18:28:05 2006 -0800"
      },
      "message": "ocfs2: remove unused handle argument from ocfs2_meta_lock_full()\n\nNow that this is unused and all callers pass NULL, we can safely remove it.\n\nSigned-off-by: Mark Fasheh \u003cmark.fasheh@oracle.com\u003e\n"
    },
    {
      "commit": "da66116eef7da8557762c9b5efdc435bc0afecfa",
      "tree": "883602ea773aef3e6f2f739c8e2ea84b18074c86",
      "parents": [
        "0215ffb08ce99e2bb59eca114a99499a4d06e704"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Mon Nov 20 03:24:28 2006 +0100"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Fri Dec 01 18:26:50 2006 -0800"
      },
      "message": "[2.6 patch] make ocfs2_create_new_lock() static\n\nThis patch makes the needlessly global ocfs2_create_new_lock() static.\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: Mark Fasheh \u003cmark.fasheh@oracle.com\u003e\n"
    },
    {
      "commit": "24c19ef40474c3930597f31ae233dc06319bd881",
      "tree": "e05b1cf72435d25bf47e67b206aa376bbea33b7d",
      "parents": [
        "f9e2d82e6395cfa0802446b54b63cc412089d82c"
      ],
      "author": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Fri Sep 22 17:28:19 2006 -0700"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Sun Sep 24 13:50:46 2006 -0700"
      },
      "message": "ocfs2: Remove i_generation from inode lock names\n\nOCFS2 puts inode meta data in the \"lock value block\" provided by the DLM.\nTypically, i_generation is encoded in the lock name so that a deleted inode\non and a new one in the same block don\u0027t share the same lvb.\n\nUnfortunately, that scheme means that the read in ocfs2_read_locked_inode()\nis potentially thrown away as soon as the meta data lock is taken - we\ncannot encode the lock name without first knowing i_generation, which\nrequires a disk read.\n\nThis patch encodes i_generation in the inode meta data lvb, and removes the\nvalue from the inode meta data lock name. This way, the read can be covered\nby a lock, and at the same time we can distinguish between an up to date and\na stale LVB.\n\nThis will help cold-cache stat(2) performance in particular.\n\nSince this patch changes the protocol version, we take the opportunity to do\na minor re-organization of two of the LVB fields.\n\nSigned-off-by: Mark Fasheh \u003cmark.fasheh@oracle.com\u003e\n"
    },
    {
      "commit": "f9e2d82e6395cfa0802446b54b63cc412089d82c",
      "tree": "cdf647041c713d3cbc8b1e0d4006c9440184e336",
      "parents": [
        "4d3b83f7364269b66cdda271f680bd99e77afd96"
      ],
      "author": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Tue Sep 12 15:35:49 2006 -0700"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Sun Sep 24 13:50:45 2006 -0700"
      },
      "message": "ocfs2: Encode i_generation in the meta data lvb\n\nWhen i_generation is removed from the lockname, this will help us determine\nwhether a meta data lvb has information that is in sync with the local\nstruct inode.\n\nSigned-off-by: Mark Fasheh \u003cmark.fasheh@oracle.com\u003e\n"
    },
    {
      "commit": "4d3b83f7364269b66cdda271f680bd99e77afd96",
      "tree": "fcae1aca5ab487d07cd7ad4f01e71b961dc99107",
      "parents": [
        "0027dd5bc213bc639e09dd002a4ab56bd18317c3"
      ],
      "author": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Tue Sep 12 15:22:18 2006 -0700"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Sun Sep 24 13:50:45 2006 -0700"
      },
      "message": "ocfs2: Free up some space in the lvb\n\nlvb_version doesn\u0027t need to be a whole 32 bits. Make it an 8 bit field to\nfree up some space. This should be backwards compatible until we use one of\nthe fields, in which case we\u0027d bump the lvb version anyway.\n\nSigned-off-by: Mark Fasheh \u003cmark.fasheh@oracle.com\u003e\n"
    },
    {
      "commit": "d680efe9d8fe0eb99d9dd063a4def6b362cdb40d",
      "tree": "51e8c081c673240434dce4b44bf66fbfd4dddf30",
      "parents": [
        "f0681062b8e369d9fb6f3ce10f4e3fc8cea5f910"
      ],
      "author": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Fri Sep 08 14:14:34 2006 -0700"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Sun Sep 24 13:50:42 2006 -0700"
      },
      "message": "ocfs2: Add new cluster lock type\n\nReplace the dentry vote mechanism with a cluster lock which covers a set\nof dentries. This allows us to force d_delete() only on nodes which actually\ncare about an unlink.\n\nEvery node that does a -\u003elookup() gets a read only lock on the dentry, until\nan unlink during which the unlinking node, will request an exclusive lock,\nforcing the other nodes who care about that dentry to d_delete() it. The\neffect is that we retain a very lightweight -\u003ed_revalidate(), and at the\nsame time get to make large improvements to the average case performance of\nthe ocfs2 unlink and rename operations.\n\nThis patch adds the cluster lock type which OCFS2 can attach to\ndentries.  A small number of fs/ocfs2/dcache.c functions are stubbed\nout so that this change can compile.\n\nSigned-off-by: Mark Fasheh \u003cmark.fasheh@oracle.com\u003e\n"
    },
    {
      "commit": "ca4d147e62df370c334898464023aa7f9126abe1",
      "tree": "aff39cd19c5b0a95a1fd85caf439c4aa69c5830e",
      "parents": [
        "b4c98f625fffee3a6f633082e9e4be3e952ca2ab"
      ],
      "author": {
        "name": "Herbert Poetzl",
        "email": "herbert@13thfloor.at",
        "time": "Mon Jul 03 17:27:12 2006 -0700"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Wed Sep 20 15:48:39 2006 -0700"
      },
      "message": "ocfs2: add ext2 attributes\n\nSupport immutable, and other attributes.\n\nSome renaming and other minor fixes done by myself.\n\nSigned-off-by: Herbert Poetzl \u003cherbert@13thfloor.at\u003e\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"
    }
  ]
}
