)]}'
{
  "log": [
    {
      "commit": "d4a8c93c8248534bdedb07f83c9aebd6f7d1d579",
      "tree": "f978a7b36d515c29657f271ca5b70281c911a82f",
      "parents": [
        "5e0b3dec0107540244ba343f983ef4f972db20de"
      ],
      "author": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Thu Oct 09 17:20:34 2008 -0700"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Tue Oct 14 11:58:22 2008 -0700"
      },
      "message": "ocfs2: Make cached block reads the common case.\n\nocfs2_read_blocks() currently requires the CACHED flag for cached I/O.\nHowever, that\u0027s the common case.  Let\u0027s flip it around and provide an\nIGNORE_CACHE flag for the special users.  This has the added benefit of\ncleaning up the code some (ignore_cache takes on its special meaning\nearlier in the loop).\n\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\nSigned-off-by: Mark Fasheh \u003cmfasheh@suse.com\u003e\n"
    },
    {
      "commit": "0fcaa56a2a020dd6f90c202b7084e6f4cbedb6c2",
      "tree": "057204016523ce0274d4a23ec02944075f084e8c",
      "parents": [
        "31d33073ca38603dea705dae45e094a64ca062d6"
      ],
      "author": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Thu Oct 09 17:20:31 2008 -0700"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Tue Oct 14 11:51:57 2008 -0700"
      },
      "message": "ocfs2: Simplify ocfs2_read_block()\n\nMore than 30 callers of ocfs2_read_block() pass exactly OCFS2_BH_CACHED.\nOnly six pass a different flag set.  Rather than have every caller care,\nlet\u0027s make ocfs2_read_block() take no flags and always do a cached read.\nThe remaining six places can call ocfs2_read_blocks() directly.\n\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\nSigned-off-by: Mark Fasheh \u003cmfasheh@suse.com\u003e\n"
    },
    {
      "commit": "31d33073ca38603dea705dae45e094a64ca062d6",
      "tree": "cf02beb489456ebc9e07bace80e96ad1150f2cbf",
      "parents": [
        "da1e90985a0e767e44397c9db0937e236033fa58"
      ],
      "author": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Thu Oct 09 17:20:30 2008 -0700"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Tue Oct 14 11:43:29 2008 -0700"
      },
      "message": "ocfs2: Require an inode for ocfs2_read_block(s)().\n\nNow that synchronous readers are using ocfs2_read_blocks_sync(), all\ncallers of ocfs2_read_blocks() are passing an inode.  Use it\nunconditionally.  Since it\u0027s there, we don\u0027t need to pass the\nocfs2_super either.\n\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\nSigned-off-by: Mark Fasheh \u003cmfasheh@suse.com\u003e\n"
    },
    {
      "commit": "a81cb88b64a479b78c6dd5666678d50171865db8",
      "tree": "9fe0f67e30d7c70d43785827e57736ac01558c24",
      "parents": [
        "fd8351f83d413b41da956109cf429c15881886e2"
      ],
      "author": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Tue Oct 07 14:25:16 2008 -0700"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Mon Oct 13 17:02:44 2008 -0700"
      },
      "message": "ocfs2: Don\u0027t check for NULL before brelse()\n\nThis is pointless as brelse() already does the check.\n\nSigned-off-by: Mark Fasheh\n"
    },
    {
      "commit": "4cc8124584610fbe087ea2bed29ca52d2d0aa84a",
      "tree": "4d1da0e72b6161ba3a321ff4533ca2f1a8511adf",
      "parents": [
        "009d37502a7b9fc89741e66b4454afca4edc1c26"
      ],
      "author": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Tue Oct 07 11:02:04 2008 -0700"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Mon Oct 13 17:02:44 2008 -0700"
      },
      "message": "ocfs2: make la_debug_mutex static\n\nIt can also be moved into ocfs2_la_debug_read().\n\nSigned-off-by: Mark Fasheh \u003cmfasheh@suse.com\u003e\n"
    },
    {
      "commit": "1187c968852e3c668f3b9376083851f81f6eee22",
      "tree": "23a34ab89f724cc015f9e4f6e8bc6ed0fc20ce51",
      "parents": [
        "08413899db89d8d636c2a2d4ba5c356ab587d7ef"
      ],
      "author": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Wed Sep 03 20:03:39 2008 -0700"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Mon Oct 13 16:57:07 2008 -0700"
      },
      "message": "ocfs2: Limit inode allocation to 32bits.\n\nocfs2 inode numbers are block numbers.  For any filesystem with less\nthan 2^32 blocks, this is not a problem.  However, when ocfs2 starts\nusing JDB2, it will be able to support filesystems with more than 2^32\nblocks.  This would result in inode numbers higher than 2^32.\n\nThe problem is that stat(2) can\u0027t handle those numbers on 32bit\nmachines.  The simple solution is to have ocfs2 allocate all inodes\nbelow that boundary.\n\nThe suballoc code is changed to honor an optional block limit.  Only the\ninode suballocator sets that limit - all other allocations stay unlimited.\n\nThe biggest trick is to grow the inode suballocator beneath that limit.\nThere\u0027s no point in allocating block groups that are above the limit,\nthen rejecting their elements later on.  We want to prevent the inode\nallocator from ever having block groups above the limit.  This involves\na little gyration with the local alloc code.  If the local alloc window\nis above the limit, it signals the caller to try the global bitmap but\ndoes not disable the local alloc file (which can be used for other\nallocations).\n\n[ Minor cleanup - removed an ML_NOTICE comment. --Mark ]\n\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\nSigned-off-by: Mark Fasheh \u003cmfasheh@suse.com\u003e\n"
    },
    {
      "commit": "9a8ff578fb430a8816dfbc73c77e5e09c6d9c343",
      "tree": "be97f570b59a4af8fbf0c4c054619193155aaaa6",
      "parents": [
        "9c7af40b210e87f8fddd97b0badc0a352862234a"
      ],
      "author": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Tue Jul 29 18:29:18 2008 -0700"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Mon Oct 13 13:57:58 2008 -0700"
      },
      "message": "ocfs2: track local alloc state via debugfs\n\nA per-mount debugfs file, \"local_alloc\" is created which when read will\nexpose live state of the nodes local alloc file. Performance impact is\nminimal, only a bit of memory overhead per mount point. Still, the code is\nhidden behind CONFIG_OCFS2_FS_STATS. This feature will help us debug\nlocal alloc performance problems on a live system.\n\nSigned-off-by: Mark Fasheh \u003cmfasheh@suse.com\u003e\n"
    },
    {
      "commit": "9c7af40b210e87f8fddd97b0badc0a352862234a",
      "tree": "deb248e5295439b96ad9bd1789e8512f93803142",
      "parents": [
        "ebcee4b5c9136096f64ee6f691a013d7c0a4bc34"
      ],
      "author": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Mon Jul 28 18:02:53 2008 -0700"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Mon Oct 13 13:57:57 2008 -0700"
      },
      "message": "ocfs2: throttle back local alloc when low on disk space\n\nOcfs2\u0027s local allocator disables itself for the duration of a mount point\nwhen it has trouble allocating a large enough area from the primary bitmap.\nThat can cause performance problems, especially for disks which were only\ntemporarily full or fragmented. This patch allows for the allocator to\nshrink it\u0027s window first, before being disabled. Later, it can also be\nre-enabled so that any performance drop is minimized.\n\nTo do this, we allow the value of osb-\u003elocal_alloc_bits to be shrunk when\nneeded. The default value is recorded in a mostly read-only variable so that\nwe can re-initialize when required.\n\nLocking had to be updated so that we could protect changes to\nlocal_alloc_bits. Mostly this involves protecting various local alloc values\nwith the osb spinlock. A new state is also added, OCFS2_LA_THROTTLED, which\nis used when the local allocator is has shrunk, but is not disabled. If the\navailable space dips below 1 megabyte, the local alloc file is disabled. In\neither case, local alloc is re-enabled 30 seconds after the event, or when\nan appropriate amount of bits is seen in the primary bitmap.\n\nSigned-off-by: Mark Fasheh \u003cmfasheh@suse.com\u003e\n"
    },
    {
      "commit": "ebcee4b5c9136096f64ee6f691a013d7c0a4bc34",
      "tree": "cb28c9135559a8f5aaf4c61b9d39f9c4ce733b55",
      "parents": [
        "53da4939f349d4edd283b043219221ca5b78e4d4"
      ],
      "author": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Mon Jul 28 14:55:20 2008 -0700"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Mon Oct 13 13:57:57 2008 -0700"
      },
      "message": "ocfs2: Track local alloc bits internally\n\nDo this instead of tracking absolute local alloc size. This avoids\nneedless re-calculatiion of bits from bytes in localalloc.c. Additionally,\nthe value is now in a more natural unit for internal file system bitmap\nwork.\n\nSigned-off-by: Mark Fasheh \u003cmfasheh@suse.com\u003e\n"
    },
    {
      "commit": "e407e39783a7206d20b3e9961aedf272de966e31",
      "tree": "f38fb034a20b36ad016e4f5d80fbdd31c609fb67",
      "parents": [
        "461c6a30eca6f25add1dadb9fd8a1d8e89a6e627"
      ],
      "author": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Thu Jun 12 22:35:39 2008 -0700"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Mon Jul 14 13:57:15 2008 -0700"
      },
      "message": "ocfs2: Fix CONFIG_OCFS2_DEBUG_FS #ifdefs\n\nA couple places use OCFS2_DEBUG_FS where they really mean\nCONFIG_OCFS2_DEBUG_FS.\n\nReported-by: Robert P. J. Day \u003crpjday@crashcourse.ca\u003e\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "4ba1c5bfd2e5a6c9528eb7777b66c297e70f61ca",
      "tree": "a06a4587053ce6f999920651880a499c058fd58a",
      "parents": [
        "bc535809c06ada210d89f5a43b335c68ecbb8e1b"
      ],
      "author": {
        "name": "Sunil Mushran",
        "email": "sunil.mushran@oracle.com",
        "time": "Fri Apr 18 15:03:59 2008 -0700"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Wed Apr 30 17:09:58 2008 -0700"
      },
      "message": "ocfs2: Use GFP_NOFS in kmalloc during localalloc window move\n\nkmalloc() during a localalloc window move can trigger the mm to prune\nthe dcache which inturn can trigger the fs to delete an inode causing\nit start a recursive transaction.\n\nThe fix also makes the change in kmalloc during localalloc shutdown\njust to be safe.\n\nFixes oss bugzilla#901\nhttp://oss.oracle.com/bugzilla/show_bug.cgi?id\u003d901\n\nSigned-off-by: Sunil Mushran \u003csunil.mushran@oracle.com\u003e\nSigned-off-by: Mark Fasheh \u003cmfasheh@suse.com\u003e\n"
    },
    {
      "commit": "4d0ddb2ce25db2254d468233d942276ecf40bff8",
      "tree": "6a114da03bb9911de637146f2b24866f1ae96718",
      "parents": [
        "a4a4891164d4f6f383cc17e7c90828a7ca6a1146"
      ],
      "author": {
        "name": "Tao Ma",
        "email": "tao.ma@oracle.com",
        "time": "Wed Mar 05 16:11:46 2008 +0800"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Fri Apr 18 08:56:10 2008 -0700"
      },
      "message": "ocfs2: Add inode stealing for ocfs2_reserve_new_inode\n\nInode allocation is modified to look in other nodes allocators during\nextreme out of space situations. We retry our own slot when space is freed\nback to the global bitmap, or whenever we\u0027ve allocated more than 1024 inodes\nfrom another slot.\n\nSigned-off-by: Tao Ma \u003ctao.ma@oracle.com\u003e\nSigned-off-by: Mark Fasheh \u003cmfasheh@suse.com\u003e\n"
    },
    {
      "commit": "a4a4891164d4f6f383cc17e7c90828a7ca6a1146",
      "tree": "a0a881ae3f1910d5f4e4aa9824f93781616ef99f",
      "parents": [
        "ffda89a3bf3b968bdc268584c6bc1da5c173cf12"
      ],
      "author": {
        "name": "Tao Ma",
        "email": "tao.ma@oracle.com",
        "time": "Mon Mar 03 17:12:30 2008 +0800"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Fri Apr 18 08:56:10 2008 -0700"
      },
      "message": "ocfs2: Add ac_alloc_slot in ocfs2_alloc_context\n\nIn inode stealing, we no longer restrict the allocation to\nhappen in the local node. So it is neccessary for us to add\na new member in ocfs2_alloc_context to indicate which slot\nwe are using for allocation. We also modify the process of\nlocal alloc so that this member can be used there also.\n\nSigned-off-by: Tao Ma \u003ctao.ma@oracle.com\u003e\nSigned-off-by: Sunil Mushran \u003csunil.mushran@oracle.com\u003e\nSigned-off-by: Mark Fasheh \u003cmfasheh@suse.com\u003e\n"
    },
    {
      "commit": "0dd3256e04c452396c9d22943e4a18e02f4dbdf4",
      "tree": "2e4cdc053041d9313ed0dfbac111d28261c238c8",
      "parents": [
        "1044e401af9a309637828aa3cc8f3b6409fcbf4e"
      ],
      "author": {
        "name": "Marcin Slusarz",
        "email": "marcin.slusarz@gmail.com",
        "time": "Wed Feb 13 00:06:18 2008 +0100"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Mon Mar 03 15:50:21 2008 -0800"
      },
      "message": "[PATCH] ocfs2: le*_add_cpu conversion\n\nreplace all:\nlittle_endian_variable \u003d cpu_to_leX(leX_to_cpu(little_endian_variable) +\n\t\t\t\t\texpression_in_cpu_byteorder);\nwith:\n\tleX_add_cpu(\u0026little_endian_variable, expression_in_cpu_byteorder);\ngenerated with semantic patch\n\nSigned-off-by: Marcin Slusarz \u003cmarcin.slusarz@gmail.com\u003e\nSigned-off-by: Mark Fasheh \u003cmark.fasheh@oracle.com\u003e\n"
    },
    {
      "commit": "7ad8b3d30ecae325fcccbf86f34ce3af716b4f95",
      "tree": "90f222beb42712c9c01a28c6dd3bd372b82706df",
      "parents": [
        "976dde010e513a9c7c3117a32b7b015f84b37430"
      ],
      "author": {
        "name": "Sunil Mushran",
        "email": "sunil.mushran@oracle.com",
        "time": "Wed Feb 06 12:11:17 2008 -0800"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Mon Mar 03 15:50:21 2008 -0800"
      },
      "message": "ocfs2: Enable localalloc for local mounts\n\nCommit 2fbe8d1ebe004425b4f7b8bba345623d2280be82 disabled localalloc\nfor local mounts. This caused issues as ocfs2 uses localalloc to\nprovide write locality. This patch enables localalloc for local mounts.\n\nSigned-off-by: Sunil Mushran \u003csunil.mushran@oracle.com\u003e\nSigned-off-by: Mark Fasheh \u003cmark.fasheh@oracle.com\u003e\n"
    },
    {
      "commit": "2fbe8d1ebe004425b4f7b8bba345623d2280be82",
      "tree": "7620954c7a364c41306a3becc0046dd1e235158f",
      "parents": [
        "d147b3d630edef1d34de6ea819787a1ac1b8603b"
      ],
      "author": {
        "name": "Sunil Mushran",
        "email": "sunil.mushran@oracle.com",
        "time": "Thu Dec 20 14:58:11 2007 -0800"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Fri Jan 25 15:05:43 2008 -0800"
      },
      "message": "ocfs2: Local alloc window size changeable via mount option\n\nLocal alloc is a performance optimization in ocfs2 in which a node\ntakes a window of bits from the global bitmap and then uses that for\nall small local allocations. This window size is fixed to 8MB currently.\nThis patch allows users to specify the window size in MB including\ndisabling it by passing in 0. If the number specified is too large,\nthe fs will use the default value of 8MB.\n\nmount -o localalloc\u003dX /dev/sdX /mntpoint\n\nSigned-off-by: Sunil Mushran \u003csunil.mushran@oracle.com\u003e\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": "5a58c3ef22d6e5b84ff651a7d27ae2cbea9f9870",
      "tree": "07d7d903b1a3d47b432ce36987e021772332d9f7",
      "parents": [
        "a46043e08f300982c51df317e2f8fb919dedadcd"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Tue Nov 13 19:59:33 2007 +0100"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Tue Nov 27 16:47:02 2007 -0800"
      },
      "message": "[PATCH] ocfs2: Remove expensive bitmap scanning\n\nEnable expensive bitmap scanning only if DEBUG option is enabled.\nThe bitmap scanning quite loads the CPU and on my machine the write\nthroughput of dd if\u003d/dev/zero of\u003d/ocfs2/file bs\u003d1M count\u003d500 conv\u003dsync\nimproves from 37 MB/s to 45.4 MB/s in local mode...\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Mark Fasheh \u003cmark.fasheh@oracle.com\u003e\n"
    },
    {
      "commit": "bda0233b89c10ae46ccecb78bffdaf0fd7833d17",
      "tree": "b7ffce2948a7ecd1912f58b3de553f76fe61f74f",
      "parents": [
        "f778089cb2445dfc6dfd30a7a567925fd8589f1e"
      ],
      "author": {
        "name": "Sunil Mushran",
        "email": "sunil.mushran@oracle.com",
        "time": "Fri Sep 21 11:41:43 2007 -0700"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Wed Oct 03 11:14:45 2007 -0700"
      },
      "message": "ocfs2: Unlock mutex in local alloc failure case\n\nThe fs was not unlocking the local alloc inode mutex in the code path in\nwhich it failed to find a window of free bits in the global bitmap.\n\nSigned-off-by: Sunil Mushran \u003csunil.mushran@oracle.com\u003e\nSigned-off-by: Mark Fasheh \u003cmark.fasheh@oracle.com\u003e\n"
    },
    {
      "commit": "415cb800375cc4e89fb5a6a454e484bd4adbffb4",
      "tree": "816021a5279047702d5fa8180783b1c710f31746",
      "parents": [
        "6d0b842d3bf0cc027dcff57a89fb8a6b1fd610e1"
      ],
      "author": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Sun Sep 16 20:10:16 2007 -0700"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Thu Sep 20 15:06:09 2007 -0700"
      },
      "message": "ocfs2: Allow smaller allocations during large writes\n\nThe ocfs2 write code loops through a page much like the block code, except\nthat ocfs2 allocation units can be any size, including larger than page\nsize. Typically it\u0027s equal to or larger than page size - most kernels run 4k\npages, the minimum ocfs2 allocation (cluster) size.\n\nSome changes introduced during 2.6.23 changed the way writes to pages are\nhandled, and inadvertantly broke support for \u003e 4k page size. Instead of just\nwriting one cluster at a time, we now handle the whole page in one pass.\n\nThis means that multiple (small) seperate allocations might happen in the\nsame pass. The allocation code howver typically optimizes by getting the\nmaximum which was reserved. This triggered a BUG_ON in the extend code where\nit\u0027d ask for a single bit (for one part of a \u003e 4k page) and get back more\nthan it asked for.\n\nFix this by providing a variant of the high level allocation function which\nallows the caller to specify a maximum. The traditional function remains and\njust calls the new one with a maximum determined from the initial\nreservation.\n\nSigned-off-by: Mark Fasheh \u003cmark.fasheh@oracle.com\u003e\n"
    },
    {
      "commit": "8fccfc829a66b8b879c6672940523a402a786ce1",
      "tree": "c36ea2c8b9de97102397a755bf10cb3997461071",
      "parents": [
        "5c3c6bb7709bf2bf4132750124879b3d89183e46"
      ],
      "author": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Wed May 09 17:34:26 2007 -0700"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Fri May 25 11:00:46 2007 -0700"
      },
      "message": "ocfs2: fix inode leak\n\nWe weren\u0027t cleaning up our inode reference on error in\nocfs2_reserve_local_alloc_bits(). Add a check for error return and iput() if\nneed be. Move the code to set the alloc context inode info to the end of the\nfunction so we don\u0027t have any possibility of passing back a bad pointer.\n\nSigned-off-by: Mark Fasheh \u003cmark.fasheh@oracle.com\u003e\n"
    },
    {
      "commit": "cd86128088554d64fea1679191509f00e6353c5b",
      "tree": "a828960f4bd44ef1682d88618e58c6ccd2367bc1",
      "parents": [
        "90aef12e6dd609e1ad7fb70044eedc78ca55ee5e"
      ],
      "author": {
        "name": "Robert P. J. Day",
        "email": "rpjday@mindspring.com",
        "time": "Wed Dec 13 00:34:52 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Wed Dec 13 09:05:52 2006 -0800"
      },
      "message": "[PATCH] Fix numerous kcalloc() calls, convert to kzalloc()\n\nAll kcalloc() calls of the form \"kcalloc(1,...)\" are converted to the\nequivalent kzalloc() calls, and a few kcalloc() calls with the incorrect\nordering of the first two arguments are fixed.\n\nSigned-off-by: Robert P. J. Day \u003crpjday@mindspring.com\u003e\nCc: Jeff Garzik \u003cjeff@garzik.org\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nCc: Dominik Brodowski \u003clinux@dominikbrodowski.net\u003e\nCc: Adam Belay \u003cambx1@neo.rr.com\u003e\nCc: James Bottomley \u003cJames.Bottomley@steeleye.com\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nCc: Mark Fasheh \u003cmark.fasheh@oracle.com\u003e\nCc: Trond Myklebust \u003ctrond.myklebust@fys.uio.no\u003e\nCc: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\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": "65eff9ccf86d63eb5c3e9071450a36e4e4fa9564",
      "tree": "3610e008294ce4e5cfbc9abff3c98153f35ed2d4",
      "parents": [
        "dae85832ffe2879b57b23aea319a0ec17667898d"
      ],
      "author": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Mon Oct 09 17:26:22 2006 -0700"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Fri Dec 01 18:28:23 2006 -0800"
      },
      "message": "ocfs2: remove handle argument to ocfs2_start_trans()\n\nAll callers either pass in NULL directly, or a local variable that is\nalready set to NULL.\n\nThe internals of ocfs2_start_trans() get a nice cleanup as a result.\n\nSigned-off-by: Mark Fasheh \u003cmark.fasheh@oracle.com\u003e\n"
    },
    {
      "commit": "02dc1af44e9fa4b8801169891b3a1ba4047537ad",
      "tree": "db84e9ec9731dcfcf91bea226403881d0feccb49",
      "parents": [
        "4bcec1847ac4f75c2ee6d091b495f34d8d822e6a"
      ],
      "author": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Mon Oct 09 16:48:10 2006 -0700"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Fri Dec 01 18:28:08 2006 -0800"
      },
      "message": "ocfs2: pass ocfs2_super * into ocfs2_commit_trans()\n\nThis sets us up to remove handle-\u003ejournal.\n\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": "da5cbf2f9df922cfdafa39351691fa83517f1e25",
      "tree": "845dc288b72f0408870f50605bb3c96eec978dd8",
      "parents": [
        "8d5596c687c49c1d8812c3456946dec15d069139"
      ],
      "author": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Fri Oct 06 18:34:35 2006 -0700"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Fri Dec 01 18:27:49 2006 -0800"
      },
      "message": "ocfs2: don\u0027t use handle for locking in allocation functions\n\nInstead we record our state on the allocation context structure which all\ncallers already know about and lifetime correctly. This means the\nreservation functions don\u0027t need a handle passed in any more, and we can\nalso take it off the alloc context.\n\nSigned-off-by: Mark Fasheh \u003cmark.fasheh@oracle.com\u003e\n"
    },
    {
      "commit": "8898a5a58fb2a2f78a15b046588b5b3adccb82c4",
      "tree": "01960858465f6b2b318d127266e243d7983a4e19",
      "parents": [
        "c161f89be7d57af863e434e9b15afaa863343a7a"
      ],
      "author": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Thu Oct 05 15:42:08 2006 -0700"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Fri Dec 01 18:27:08 2006 -0800"
      },
      "message": "ocfs2: don\u0027t pass handle to ocfs2_meta_lock() in localalloc.c\n\nTake and drop the locks directly.\n\nSigned-off-by: Mark Fasheh \u003cmark.fasheh@oracle.com\u003e\n"
    },
    {
      "commit": "c161f89be7d57af863e434e9b15afaa863343a7a",
      "tree": "18152d2fb567746e74a0f57f0d11c53c740db87a",
      "parents": [
        "1fc581467e52546195c7ee8233a34d63c1cc1322"
      ],
      "author": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Thu Oct 05 15:11:36 2006 -0700"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Fri Dec 01 18:27:06 2006 -0800"
      },
      "message": "ocfs2: remove ocfs2_journal_handle flags field\n\nCallers can set h_sync directly on the handle_t, whether a transaction has\nbeen started or not can be determined via the existence of the handle_t on\nthe struct ocfs2_journal_handle.\n\nSigned-off-by: Mark Fasheh \u003cmark.fasheh@oracle.com\u003e\n"
    },
    {
      "commit": "883d4cae4a2b01a05193cf2665c77b7489a8b6a0",
      "tree": "1d4f06fa7bdadf025159ff5408f14080552a0cb0",
      "parents": [
        "7bf72edee614e10b8d470c40a326f47bfdd69992"
      ],
      "author": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Mon Jun 05 16:41:00 2006 -0400"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Mon Aug 07 11:07:01 2006 -0700"
      },
      "message": "ocfs2: allocation hints\n\nRecord the most recently used allocation group on the allocation context, so\nthat subsequent allocations can attempt to optimize for contiguousness.\nLocal alloc especially should benefit from this as the current chain search\ntends to let it spew across the disk.\n\nSigned-off-by: Mark Fasheh \u003cmark.fasheh@oracle.com\u003e\n"
    },
    {
      "commit": "b0697053f9e8de9cea3d510d9e290851ece9460b",
      "tree": "bcfa2ae33e4a5302ddbe94dec0eaf95013e79850",
      "parents": [
        "29004858a76ba9e26393dd8a85e653f105a33753"
      ],
      "author": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Fri Mar 03 10:24:33 2006 -0800"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Fri Mar 24 14:58:28 2006 -0800"
      },
      "message": "ocfs2: don\u0027t use MLF* in the file system\n\nSigned-off-by: Mark Fasheh \u003cmark.fasheh@oracle.com\u003e\n"
    },
    {
      "commit": "1b1dcc1b57a49136f118a0f16367256ff9994a69",
      "tree": "b0b36d4f41d28c9d6514fb309d33c1a084d6309b",
      "parents": [
        "794ee1baee1c26be40410233e6c20bceb2b03c08"
      ],
      "author": {
        "name": "Jes Sorensen",
        "email": "jes@sgi.com",
        "time": "Mon Jan 09 15:59:24 2006 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@hera.kernel.org",
        "time": "Mon Jan 09 15:59:24 2006 -0800"
      },
      "message": "[PATCH] mutex subsystem, semaphore to mutex: VFS, -\u003ei_sem\n\nThis patch converts the inode semaphore to a mutex. I have tested it on\nXFS and compiled as much as one can consider on an ia64. Anyway your\nluck with it might be different.\n\nModified-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n\n(finished the conversion)\n\nSigned-off-by: Jes Sorensen \u003cjes@sgi.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\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"
    }
  ]
}
