)]}'
{
  "log": [
    {
      "commit": "39ab05c8e0b519ff0a04a869f065746e6e8c3d95",
      "tree": "e73f0ba74c4ea7a80dff9b2dd9445a3a74190e28",
      "parents": [
        "1477fcc290b3d5c2614bde98bf3b1154c538860d",
        "c42d2237143fcf35cff642cefe2bcf7786aae312"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 19 18:24:11 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 19 18:24:11 2011 -0700"
      },
      "message": "Merge branch \u0027driver-core-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6\n\n* \u0027driver-core-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6: (44 commits)\n  debugfs: Silence DEBUG_STRICT_USER_COPY_CHECKS\u003dy warning\n  sysfs: remove \"last sysfs file:\" line from the oops messages\n  drivers/base/memory.c: fix warning due to \"memory hotplug: Speed up add/remove when blocks are larger than PAGES_PER_SECTION\"\n  memory hotplug: Speed up add/remove when blocks are larger than PAGES_PER_SECTION\n  SYSFS: Fix erroneous comments for sysfs_update_group().\n  driver core: remove the driver-model structures from the documentation\n  driver core: Add the device driver-model structures to kerneldoc\n  Translated Documentation/email-clients.txt\n  RAW driver: Remove call to kobject_put().\n  reboot: disable usermodehelper to prevent fs access\n  efivars: prevent oops on unload when efi is not enabled\n  Allow setting of number of raw devices as a module parameter\n  Introduce CONFIG_GOOGLE_FIRMWARE\n  driver: Google Memory Console\n  driver: Google EFI SMI\n  x86: Better comments for get_bios_ebda()\n  x86: get_bios_ebda_length()\n  misc: fix ti-st build issues\n  params.c: Use new strtobool function to process boolean inputs\n  debugfs: move to new strtobool\n  ...\n\nFix up trivial conflicts in fs/debugfs/file.c due to the same patch\nbeing applied twice, and an unrelated cleanup nearby.\n"
    },
    {
      "commit": "a0374396375d06398c419ebb6857fb5809cff81f",
      "tree": "3c756c3cfd61e2ea4323d07fc208d0e6528ad3a1",
      "parents": [
        "d0f1fed29e6e73d9d17f4c91a5896a4ce3938d45"
      ],
      "author": {
        "name": "Jonathan Cameron",
        "email": "jic23@cam.ac.uk",
        "time": "Tue Apr 19 12:43:46 2011 +0100"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu May 19 16:55:28 2011 +0930"
      },
      "message": "debugfs: move to new strtobool\n\nNo functional changes requires that we eat errors from strtobool.\nIf people want to not do this, then it should be fixed at a later date.\n\nV2: Simplification suggested by Rusty Russell removes the need for\nadditional variable ret.\n\nSigned-off-by: Jonathan Cameron \u003cjic23@cam.ac.uk\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "3f80fbff5f1ef8a842bbe5343bbc9ddad883f25c",
      "tree": "259f5be0f203b5c7e97837a1957f461abcfef5d0",
      "parents": [
        "fce519588acfac249e8fdc1f5016c73d617de315",
        "24307aa1e707b31613be92deaba7990e16bc1aec"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 18 16:50:28 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 18 16:50:28 2011 -0700"
      },
      "message": "Merge branch \u0027fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jlbec/ocfs2\n\n* \u0027fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jlbec/ocfs2:\n  configfs: Fix race between configfs_readdir() and configfs_d_iput()\n  configfs: Don\u0027t try to d_delete() negative dentries.\n  ocfs2/dlm: Target node death during resource migration leads to thread spin\n  ocfs2: Skip mount recovery for hard-ro mounts\n  ocfs2/cluster: Heartbeat mismatch message improved\n  ocfs2/cluster: Increase the live threshold for global heartbeat\n  ocfs2/dlm: Use negotiated o2dlm protocol version\n  ocfs2: skip existing hole when removing the last extent_rec in punching-hole codes.\n  ocfs2: Initialize data_ac (might be used uninitialized)\n"
    },
    {
      "commit": "a2b9c1f6208126e6df6c02428c501f8853685812",
      "tree": "e36762d385bb490914a72485c4da4431e4b937d3",
      "parents": [
        "2e9521fd656f05a716b5294a7dbebd37ced05e43",
        "3ec717b7ca4ee1d75d77e4f6286430d8f01d1dbd"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 18 06:49:02 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 18 06:49:02 2011 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.dk/linux-2.6-block\n\n* \u0027for-linus\u0027 of git://git.kernel.dk/linux-2.6-block:\n  block: don\u0027t delay blk_run_queue_async\n  scsi: remove performance regression due to async queue run\n  blk-throttle: Use task_subsys_state() to determine a task\u0027s blkio_cgroup\n  block: rescan partitions on invalidated devices on -ENOMEDIA too\n  cdrom: always check_disk_change() on open\n  block: unexport DISK_EVENT_MEDIA_CHANGE for legacy/fringe drivers\n"
    },
    {
      "commit": "24307aa1e707b31613be92deaba7990e16bc1aec",
      "tree": "6699c969a7f56c2b7949bf16af54320caee0687e",
      "parents": [
        "df7f99670a4c76f269ae57ce91876b309417a316"
      ],
      "author": {
        "name": "Joel Becker",
        "email": "jlbec@evilplan.org",
        "time": "Wed May 18 04:08:16 2011 -0700"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "jlbec@evilplan.org",
        "time": "Wed May 18 04:08:16 2011 -0700"
      },
      "message": "configfs: Fix race between configfs_readdir() and configfs_d_iput()\n\nconfigfs_readdir() will use the existing inode numbers of inodes in the\ndcache, but it makes them up for attribute files that aren\u0027t currently\ninstantiated.  There is a race where a closing attribute file can be\ntearing down at the same time as configfs_readdir() is trying to get its\ninode number.\n\nWe want to get the inode number of open attribute files, because they\nshould match while instantiated.  We can\u0027t lock down the transition\nwhere dentry-\u003ed_inode is set to NULL, so we just check for NULL there.\nWe can, however, ensure that an inode we find isn\u0027t iput() in\nconfigfs_d_iput() until after we\u0027ve accessed it.\n\nSigned-off-by: Joel Becker \u003cjlbec@evilplan.org\u003e\n"
    },
    {
      "commit": "df7f99670a4c76f269ae57ce91876b309417a316",
      "tree": "5af5b63ab22089f32f1f464035df061bc2955e8e",
      "parents": [
        "df016c665b10ae80d8db67ec8103b50c5c234e5c"
      ],
      "author": {
        "name": "Joel Becker",
        "email": "jlbec@evilplan.org",
        "time": "Tue Feb 22 01:09:49 2011 -0800"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "jlbec@evilplan.org",
        "time": "Wed May 18 03:30:58 2011 -0700"
      },
      "message": "configfs: Don\u0027t try to d_delete() negative dentries.\n\nWhen configfs is faking mkdir() on its subsystem or default group\nobjects, it starts by adding a negative dentry.  It then tries to\ninstantiate the group.  If that should fail, it must clean up after\nitself.\n\nI was using d_delete() here, but configfs_attach_group() promises to\nreturn an empty dentry on error.  d_delete() explodes with the entry\ndentry.  Let\u0027s try d_drop() instead.  The unhashing is what we want for\nour dentry.\n\nSigned-off-by: Joel Becker \u003cjlbec@evilplan.org\u003e\n"
    },
    {
      "commit": "11379b5e33950048ad66825da7f462b0d0da9d73",
      "tree": "97b6089e15c4ce3daadc7633776dca952e883e6b",
      "parents": [
        "221d1d797202984cb874e3ed9f1388593d34ee22"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Tue May 17 15:28:21 2011 -0400"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Tue May 17 20:54:04 2011 +0000"
      },
      "message": "cifs: fix cifsConvertToUCS() for the mapchars case\n\nAs Metze pointed out, commit 84cdf74e broke mapchars option:\n\n    Commit \"cifs: fix unaligned accesses in cifsConvertToUCS\"\n    (84cdf74e8096a10dd6acbb870dd404b92f07a756) does multiple steps\n    in just one commit (moving the function and changing it without\n    testing).\n\n    put_unaligned_le16(temp, \u0026target[j]); is never called for any\n    codepoint the goes via the \u0027default\u0027 switch statement. As a result\n    we put just zero (or maybe uninitialized) bytes into the target\n    buffer.\n\nHis proposed patch looks correct, but doesn\u0027t apply to the current head\nof the tree. This patch should also fix it.\n\nCc: \u003cstable@kernel.org\u003e # .38.x: 581ade4: cifs: clean up various nits in unicode routines (try #2)\nReported-by: Stefan Metzmacher \u003cmetze@samba.org\u003e\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "221d1d797202984cb874e3ed9f1388593d34ee22",
      "tree": "e86b9b3b4b54806b769de8777add5b52e73cf00f",
      "parents": [
        "c1d10d18c542278b7fbc413c289d3cb6219da6b3"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Tue May 17 06:40:30 2011 -0400"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Tue May 17 18:51:14 2011 +0000"
      },
      "message": "cifs: add fallback in is_path_accessible for old servers\n\nThe is_path_accessible check uses a QPathInfo call, which isn\u0027t\nsupported by ancient win9x era servers. Fall back to an older\nSMBQueryInfo call if it fails with the magic error codes.\n\nCc: stable@kernel.org\nReported-and-Tested-by: Sandro Bonazzola \u003csandro.bonazzola@gmail.com\u003e\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "eed631e0d741d1a1067cfc6d709fdf2363126f9c",
      "tree": "31ba02472a8d5ef2d7780274a7663258c09a9acf",
      "parents": [
        "bd1a643e10eb8782b36b47c3602300319dd2fb00",
        "ebcb904dfe31644857422e3bb62e50f76fe86255"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun May 15 10:22:10 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun May 15 10:22:10 2011 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable:\n  Btrfs: fix FS_IOC_SETFLAGS ioctl\n  Btrfs: fix FS_IOC_GETFLAGS ioctl\n  fs: remove FS_COW_FL\n  Btrfs: fix easily get into ENOSPC in mixed case\n  Prevent oopsing in posix_acl_valid()\n"
    },
    {
      "commit": "ebcb904dfe31644857422e3bb62e50f76fe86255",
      "tree": "e4dd906d7f15e0a924b410acd236e8b7e3bc8bba",
      "parents": [
        "d0092bdda819914b8725da76a8c33eb06eb0bd21"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Fri Apr 15 03:03:17 2011 +0000"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Sat May 14 16:10:28 2011 -0400"
      },
      "message": "Btrfs: fix FS_IOC_SETFLAGS ioctl\n\nSteps to reproduce the bug:\n\n  - Call FS_IOC_SETLFAGS ioctl with flags\u003dFS_COMPR_FL\n  - Call FS_IOC_SETFLAGS ioctl with flags\u003d0\n  - Call FS_IOC_GETFLAGS ioctl, and you\u0027ll see FS_COMPR_FL is still set!\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n"
    },
    {
      "commit": "d0092bdda819914b8725da76a8c33eb06eb0bd21",
      "tree": "34de4ffe3822f8a8f1a731628c849280a7e4edeb",
      "parents": [
        "e1e8fb6a1ff3f9487e03a4cbf85b81d1316068ce"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Fri Apr 15 03:03:06 2011 +0000"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Sat May 14 16:10:27 2011 -0400"
      },
      "message": "Btrfs: fix FS_IOC_GETFLAGS ioctl\n\nAs we\u0027ve added per file compression/cow support.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n"
    },
    {
      "commit": "e1e8fb6a1ff3f9487e03a4cbf85b81d1316068ce",
      "tree": "a7cd1ba1f93d163e2ca02b8172888f43e444713f",
      "parents": [
        "1aba86d67f340a8001d67183ec32e8a62e3ec658"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Fri Apr 15 03:02:49 2011 +0000"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Sat May 14 16:10:26 2011 -0400"
      },
      "message": "fs: remove FS_COW_FL\n\nFS_COW_FL and FS_NOCOW_FL were newly introduced to control per file\nCOW in btrfs, but FS_NOCOW_FL is sufficient.\n\nThe fact is we don\u0027t have corresponding BTRFS_INODE_COW flag.\n\nCOW is default, and FS_NOCOW_FL can be used to switch off COW for\na single file.\n\nIf we mount btrfs with nodatacow, a newly created file will be set with\nthe FS_NOCOW_FL flag. So to turn on COW for it, we can just clear the\nFS_NOCOW_FL flag.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n"
    },
    {
      "commit": "1aba86d67f340a8001d67183ec32e8a62e3ec658",
      "tree": "8e2a3dc2bceca44c1525f4815b00ef1ae275adad",
      "parents": [
        "f5de93914983bf04b92a786d1d205286fc53b49b"
      ],
      "author": {
        "name": "liubo",
        "email": "liubo2009@cn.fujitsu.com",
        "time": "Fri Apr 08 08:44:37 2011 +0000"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Sat May 14 16:10:26 2011 -0400"
      },
      "message": "Btrfs: fix easily get into ENOSPC in mixed case\n\nWhen a btrfs disk is created by mixed data \u0026 metadata option, it will have no\npure data or pure metadata space info.\n\nIn btrfs\u0027s for-linus branch, commit 78b1ea13838039cd88afdd62519b40b344d6c920\n(Btrfs: fix OOPS of empty filesystem after balance) initializes space infos at\nthe very beginning.  The problem is this initialization does not take the mixed\ncase into account, which will cause btrfs will easily get into ENOSPC in mixed\ncase.\n\nSigned-off-by: Liu Bo \u003cliubo2009@cn.fujitsu.com\u003e\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n"
    },
    {
      "commit": "f5de93914983bf04b92a786d1d205286fc53b49b",
      "tree": "88801bc318e62bdd34698ca7cf5029b16570d1b7",
      "parents": [
        "7cf96da3ec7ca225acf4f284b0e904a1f5f98821"
      ],
      "author": {
        "name": "Daniel J Blueman",
        "email": "daniel.blueman@gmail.com",
        "time": "Tue May 03 16:44:13 2011 +0000"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Sat May 14 16:10:18 2011 -0400"
      },
      "message": "Prevent oopsing in posix_acl_valid()\n\nIf posix_acl_from_xattr() returns an error code, a negative address is\ndereferenced causing an oops; fix by checking for error code first.\n\nSigned-off-by: Daniel J Blueman \u003cdaniel.blueman@gmail.com\u003e\nReviewed-by: Josef Bacik \u003cjosef@redhat.com\u003e\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n"
    },
    {
      "commit": "c42d2237143fcf35cff642cefe2bcf7786aae312",
      "tree": "24fb14faa42a47650567708f98fe035186721427",
      "parents": [
        "82a3242e11d9e63c8195be46c954efaefee35e22"
      ],
      "author": {
        "name": "Stephen Boyd",
        "email": "sboyd@codeaurora.org",
        "time": "Thu May 12 16:50:07 2011 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri May 13 16:15:35 2011 -0700"
      },
      "message": "debugfs: Silence DEBUG_STRICT_USER_COPY_CHECKS\u003dy warning\n\nEnabling DEBUG_STRICT_USER_COPY_CHECKS causes the following\nwarning:\n\nIn file included from arch/x86/include/asm/uaccess.h:573,\n                 from include/linux/uaccess.h:5,\n                 from include/linux/highmem.h:7,\n                 from include/linux/pagemap.h:10,\n                 from fs/debugfs/file.c:18:\nIn function \u0027copy_from_user\u0027,\n    inlined from \u0027write_file_bool\u0027 at fs/debugfs/file.c:435:\narch/x86/include/asm/uaccess_64.h:65: warning: call to\n\u0027copy_from_user_overflow\u0027 declared with attribute warning:\ncopy_from_user() buffer size is not provably correct\n\npresumably due to buf_size being signed causing GCC to fail to\nsee that buf_size can\u0027t become negative.\n\nSigned-off-by: Stephen Boyd \u003csboyd@codeaurora.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "82a3242e11d9e63c8195be46c954efaefee35e22",
      "tree": "9de1ef19dd118963c9b46bebb224e504848eb85e",
      "parents": [
        "a236c71766a5f69edf189e2eaeb0aa587c8c5684"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu May 12 16:01:02 2011 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri May 13 16:05:51 2011 -0700"
      },
      "message": "sysfs: remove \"last sysfs file:\" line from the oops messages\n\nOn some arches (x86, sh, arm, unicore, powerpc) the oops message would\nprint out the last sysfs file accessed.\n\nThis was very useful in finding a number of sysfs and driver core bugs\nin the 2.5 and early 2.6 development days, but it has been a number of\nyears since this file has actually helped in debugging anything that\ncouldn\u0027t also be trivially determined from the stack traceback.\n\nSo it\u0027s time to delete the line.  This is good as we need all the space\nwe can get for oops messages at times on consoles.\n\nAcked-by: Phil Carmody \u003cext-phil.2.carmody@nokia.com\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "cf70cc5b9d6a07d21ffd521aee690d26315d1bdf",
      "tree": "4804c11071e693eb5d66799bb8e05431f7905c84",
      "parents": [
        "087fbc9962e10a65fb0b542ecfc116ebf6cf1735",
        "a75b9df9d3bfc3cd1083974c045ae31ce5f3434f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 13 15:19:39 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 13 15:19:39 2011 -0700"
      },
      "message": "Merge branch \u0027bugfixes\u0027 of git://git.linux-nfs.org/projects/trondmy/nfs-2.6\n\n* \u0027bugfixes\u0027 of git://git.linux-nfs.org/projects/trondmy/nfs-2.6:\n  NFSv4.1: Ensure that layoutget uses the correct gfp modes\n  NFSv4.1: remove pnfs_layout_hdr from pnfs_destroy_all_layouts tmp_list\n  NFSv41: Resend on NFS4ERR_RETRY_UNCACHED_REP\n"
    },
    {
      "commit": "26cf46be954a2dd391d32eeaf7d07c3a953dcc5a",
      "tree": "6445ebf0328e3227178f378c97be6b083cad087b",
      "parents": [
        "47a150edc2ae734c0f4bf50aa19499e23b9a46f8"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 13 11:51:01 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 13 11:51:01 2011 -0700"
      },
      "message": "vfs: micro-optimize acl_permission_check()\n\nIt\u0027s a hot function, and we\u0027re better off not mixing types in the mask\ncalculations.  The compiler just ends up mixing 16-bit and 32-bit\noperations, for no good reason.\n\nSo do everything in \u0027unsigned int\u0027 rather than mixing \u0027unsigned int\u0027\nmasking with a \u0027umode_t\u0027 (16-bit) mode variable.\n\nThis, together with the parent commit (47a150edc2ae: \"Cache user_ns in\nstruct cred\") makes acl_permission_check() much nicer.\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "df016c665b10ae80d8db67ec8103b50c5c234e5c",
      "tree": "84d2737f5c7ce101aefb98a0b1b3ae1c761cde5e",
      "parents": [
        "10b3dd76117a327557b8cb898b41c18afd08dc86"
      ],
      "author": {
        "name": "Sunil Mushran",
        "email": "sunil.mushran@oracle.com",
        "time": "Wed May 04 10:28:07 2011 -0700"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "jlbec@evilplan.org",
        "time": "Fri May 13 11:27:30 2011 -0700"
      },
      "message": "ocfs2/dlm: Target node death during resource migration leads to thread spin\n\nDuring resource migration, if the target node were to die, the thread doing\nthe migration spins until the target node is not removed from the domain map.\nThis patch slows the spin by making the thread wait for the recovery to kick in.\n\nSigned-off-by: Sunil Mushran \u003csunil.mushran@oracle.com\u003e\nSigned-off-by: Joel Becker \u003cjlbec@evilplan.org\u003e\n"
    },
    {
      "commit": "10b3dd76117a327557b8cb898b41c18afd08dc86",
      "tree": "127b61f13ad5814aace6f2610a0cfe87d128072d",
      "parents": [
        "33c12a5436464f8d4f56d68e5e79e24a3a1f11aa"
      ],
      "author": {
        "name": "Sunil Mushran",
        "email": "sunil.mushran@oracle.com",
        "time": "Wed May 04 10:28:02 2011 -0700"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "jlbec@evilplan.org",
        "time": "Fri May 13 11:27:14 2011 -0700"
      },
      "message": "ocfs2: Skip mount recovery for hard-ro mounts\n\nPatch skips mount recovery for hard-ro mounts which otherwise leads to an oops.\n\nSigned-off-by: Sunil Mushran \u003csunil.mushran@oracle.com\u003e\nAcked-by: Mark Fasheh \u003cmfasheh@suse.com\u003e\nSigned-off-by: Joel Becker \u003cjlbec@evilplan.org\u003e\n"
    },
    {
      "commit": "33c12a5436464f8d4f56d68e5e79e24a3a1f11aa",
      "tree": "8fe03ac8fa06b7681a5256661722bc311eaa8b87",
      "parents": [
        "76d9fc2954d057b19bf5d7b854df2b621b00fdec"
      ],
      "author": {
        "name": "Sunil Mushran",
        "email": "sunil.mushran@oracle.com",
        "time": "Wed May 04 10:28:01 2011 -0700"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "jlbec@evilplan.org",
        "time": "Fri May 13 11:27:02 2011 -0700"
      },
      "message": "ocfs2/cluster: Heartbeat mismatch message improved\n\nIf o2hb finds unexpected values in the heartbeat slot, it prints a message\n\"ERROR: Device \"dm-6\": another node is heartbeating in our slot!\"\n\nThis message could be misleading. This patch adds two more messages to\nhelp users better diagnose the problem.\n\nSigned-off-by: Sunil Mushran \u003csunil.mushran@oracle.com\u003e\nAcked-by: Mark Fasheh \u003cmfasheh@suse.com\u003e\nSigned-off-by: Joel Becker \u003cjlbec@evilplan.org\u003e\n"
    },
    {
      "commit": "76d9fc2954d057b19bf5d7b854df2b621b00fdec",
      "tree": "ca6725a08b9ffd79030d0bb22ec4c162f341f40e",
      "parents": [
        "4da6dc293604f55d156148b8f60b94053e3195fc"
      ],
      "author": {
        "name": "Sunil Mushran",
        "email": "sunil.mushran@oracle.com",
        "time": "Wed May 04 10:28:00 2011 -0700"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "jlbec@evilplan.org",
        "time": "Fri May 13 11:26:48 2011 -0700"
      },
      "message": "ocfs2/cluster: Increase the live threshold for global heartbeat\n\nWe have seen isolated cases (very few, I might add) of o2hb not detecting all\nlive nodes on startup. One plausible reasoning for it is that other node had\na hb io delay at the same time. The live threshold set at 2 (as low as it can\nbe) could be increased to ameliorate the situation.\n\nBut increasing the threshold directly affects mount time. Currently it takes\naround 5 secs to mount a volume in o2cb cluster with local heartbeat. Increasing\nthe threshold will make mounts even slower. As the issue itself is rare, we have\nleft things as they are for the local heartbeat mode.\n\nHowever we can improve the situation for global heartbeat mode as in that mode,\nwe start the heartbeat much before the mount.\n\nThis patch doubles the live threshold for the start of the first region in\nglobal heartbeat mode.\n\nAddresses internal Oracle bug#10635585.\n\nSigned-off-by: Sunil Mushran \u003csunil.mushran@oracle.com\u003e\nAcked-by: Mark Fasheh \u003cmfasheh@suse.com\u003e\nSigned-off-by: Joel Becker \u003cjlbec@evilplan.org\u003e\n"
    },
    {
      "commit": "4da6dc293604f55d156148b8f60b94053e3195fc",
      "tree": "5357b1d04f4b2b3ab34f2d502a74ca7757ab6857",
      "parents": [
        "9a790ba1ec02bbae0933e7ebd576c0bc329e9796"
      ],
      "author": {
        "name": "Sunil Mushran",
        "email": "sunil.mushran@oracle.com",
        "time": "Wed May 04 10:27:10 2011 -0700"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "jlbec@evilplan.org",
        "time": "Fri May 13 11:26:37 2011 -0700"
      },
      "message": "ocfs2/dlm: Use negotiated o2dlm protocol version\n\nPatch fixes a bug in the o2dlm protocol negotiation in that it is using\nthe builtin version rather than the negotiated version during the domain\njoin. This causes join errors when a node having kernel \u003e\u003d 2.6.37 joins\na cluster with nodes having kernels \u003c 2.6.37.\n\nThis only affects the o2cb cluster stack.\n\nSigned-off-by: Sunil Mushran \u003csunil.mushran@oracle.com\u003e\nReported-by: Jacek Stepniewski \u003cJacek.Stepniewski@agora.pl\u003e\nAcked-by: Mark Fasheh \u003cmfasheh@suse.com\u003e\nSigned-off-by: Joel Becker \u003cjlbec@evilplan.org\u003e\n"
    },
    {
      "commit": "9a790ba1ec02bbae0933e7ebd576c0bc329e9796",
      "tree": "2c9de49e67ed2be4e6db04eae6b9d4062e9dd950",
      "parents": [
        "5d44670facd3205212f8fe89eb422e3b5f309612"
      ],
      "author": {
        "name": "Tristan Ye",
        "email": "tristan.ye@oracle.com",
        "time": "Thu May 12 20:47:07 2011 +0800"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "jlbec@evilplan.org",
        "time": "Fri May 13 11:26:20 2011 -0700"
      },
      "message": "ocfs2: skip existing hole when removing the last extent_rec in punching-hole codes.\n\nIn the case of removing a partial extent record which covers a hole, current\npunching-hole logic will try to remove more than the length of whole extent\nrecord, which leads to the failure of following assert(fs/ocfs2/alloc.c):\n\n5507         BUG_ON(cpos \u003c le32_to_cpu(rec-\u003ee_cpos) || trunc_range \u003e rec_range);\n\nThis patch tries to skip existing hole at the last attempt of removing a partial\nextent record, what\u0027s more, it also adds some necessary comments for better\nunderstanding of punching-hole codes.\n\nSigned-off-by: Tristan Ye \u003ctristan.ye@oracle.com\u003e\nSigned-off-by: Joel Becker \u003cjlbec@evilplan.org\u003e\n"
    },
    {
      "commit": "5d44670facd3205212f8fe89eb422e3b5f309612",
      "tree": "879f9cc1e9371688ba7d14631e14c83a86ce60ab",
      "parents": [
        "446cc6345d3de6571bdd0840f48aca441488a28d"
      ],
      "author": {
        "name": "Marcus Meissner",
        "email": "meissner@suse.de",
        "time": "Thu May 05 10:44:11 2011 -0700"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "jlbec@evilplan.org",
        "time": "Fri May 13 11:26:15 2011 -0700"
      },
      "message": "ocfs2: Initialize data_ac (might be used uninitialized)\n\nCLANG found that there is a path that has data_ac uninitialized,\nthis place\n\t2917\t/* This gets us the dx_root */\n\t2918\tret \u003d ocfs2_reserve_new_metadata_blocks(osb, 1, \u0026meta_ac);\n\t2919\tif (ret) {\n\n\t3\n\t\tTaking true branch\n\t2920\tmlog_errno(ret);\n\t2921\tgoto out;\n\n\t4\n\t\tControl jumps to line 3168\n\t2922\t}\n\nGoes to the out: label without data_ac being initialized.\n\nCiao, Marcus\n\nSigned-Off-By: Marcus Meissner \u003cmeissner@suse.de\u003e\nSigned-off-by: Mark Fasheh \u003cmfasheh@suse.com\u003e\nSigned-off-by: Joel Becker \u003cjlbec@evilplan.org\u003e\n"
    },
    {
      "commit": "6eaed0a438ef554a282210a04da0de27b671d817",
      "tree": "d0caf299ebcdac32fad8ab1baa7957e44655d1eb",
      "parents": [
        "8043f4eb85bf772e3af82678657019937388b6e1",
        "d24339059d640f108c08ba99ef30e3bafa10f8e4"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 12 08:06:53 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 12 08:06:53 2011 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/fuse\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/fuse:\n  fuse: fix oops in revalidate when called with NULL nameidata\n"
    },
    {
      "commit": "a75b9df9d3bfc3cd1083974c045ae31ce5f3434f",
      "tree": "039cc65774c895d704f23a2c89b7f1bcd736e0b9",
      "parents": [
        "2887fe45522843149ccf72e01f43813be4fb36c5"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed May 11 18:00:51 2011 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed May 11 22:52:13 2011 -0400"
      },
      "message": "NFSv4.1: Ensure that layoutget uses the correct gfp modes\n\nCurrently, writebacks may end up recursing back into the filesystem due to\nGFP_KERNEL direct reclaims in the pnfs subsystem.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "3568bd9720b4a775f28a718fcbb462ce2f386988",
      "tree": "838955dfb8540043ed2bfe5a3efff0657e10522b",
      "parents": [
        "fad632092a71bfc098989597b2a17bd8bf16b219",
        "d3d0720d4a7a46e93e055e5b0f1a8bd612743ed6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 11 19:13:34 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 11 19:13:34 2011 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client:\n  ceph: do not use i_wrbuffer_ref as refcount for Fb cap\n  ceph: fix list_add in ceph_put_snap_realm\n  ceph: print debug message before put mds session\n"
    },
    {
      "commit": "2887fe45522843149ccf72e01f43813be4fb36c5",
      "tree": "2897689e042604a44bdf93cd3dcf4b5d3bac11ee",
      "parents": [
        "a8a4ae3a899a6c0b4771cc57884800d8b76a6996"
      ],
      "author": {
        "name": "Andy Adamson",
        "email": "andros@netapp.com",
        "time": "Wed May 11 01:19:58 2011 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed May 11 14:20:13 2011 -0400"
      },
      "message": "NFSv4.1: remove pnfs_layout_hdr from pnfs_destroy_all_layouts tmp_list\n\nPrevents an infinite loop as list was never emptied.\n\nSigned-off-by: Andy Adamson \u003candros@netapp.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "a8a4ae3a899a6c0b4771cc57884800d8b76a6996",
      "tree": "762fa0cc26480ea302d1ade0a03f222fae958565",
      "parents": [
        "9f381a61f58bb6487c93ce2233bb9992f8ea9211"
      ],
      "author": {
        "name": "Andy Adamson",
        "email": "andros@netapp.com",
        "time": "Tue May 03 13:43:03 2011 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed May 11 14:01:33 2011 -0400"
      },
      "message": "NFSv41: Resend on NFS4ERR_RETRY_UNCACHED_REP\n\nFree the slot and resend the RPC with new session \u003cslot#,seq#\u003e.\n\nFor nfs4_async_handle_error, return -EAGAIN and set the task-\u003etk_status to 0\nto restart the async rpc in the rpc_restart_call_prepare state which resets\nthe slot.\n\nFor nfs4_handle_exception, retrying a call that uses nfs4_call_sync will\nreset the slot via nfs41_call_sync_prepare.\n\nFor open/close/lock/locku/delegreturn/layoutcommit/unlink/rename/write\ncachethis is true, so these operations will not trigger an\nNFS4ERR_RETRY_UNCACHED_REP.\n\nSigned-off-by: Andy Adamson \u003candros@netapp.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "d3d0720d4a7a46e93e055e5b0f1a8bd612743ed6",
      "tree": "39d657139336012f05d7573116a0ba2405e85de7",
      "parents": [
        "a26a185d27b49e1656b335ef8ad1a32f7a0e7d7f"
      ],
      "author": {
        "name": "Henry C Chang",
        "email": "henry.cy.chang@gmail.com",
        "time": "Wed May 11 10:29:54 2011 +0000"
      },
      "committer": {
        "name": "Sage Weil",
        "email": "sage@newdream.net",
        "time": "Wed May 11 10:44:48 2011 -0700"
      },
      "message": "ceph: do not use i_wrbuffer_ref as refcount for Fb cap\n\nWe increments i_wrbuffer_ref when taking the Fb cap. This breaks\nthe dirty page accounting and causes looping in\n__ceph_do_pending_vmtruncate, and ceph client hangs.\n\nThis bug can be reproduced occasionally by running blogbench.\n\nAdd a new field i_wb_ref to inode and dedicate it to Fb reference\ncounting.\n\nSigned-off-by: Henry C Chang \u003chenry.cy.chang@gmail.com\u003e\nSigned-off-by: Sage Weil \u003csage@newdream.net\u003e\n"
    },
    {
      "commit": "a26a185d27b49e1656b335ef8ad1a32f7a0e7d7f",
      "tree": "e3243ec1598355eee50887a2433d7cba1d9c43fc",
      "parents": [
        "7d8e18a69d9ebb8bf51748842929f8cc1ad61d49"
      ],
      "author": {
        "name": "Henry C Chang",
        "email": "henry.cy.chang@gmail.com",
        "time": "Wed May 11 10:29:53 2011 +0000"
      },
      "committer": {
        "name": "Sage Weil",
        "email": "sage@newdream.net",
        "time": "Wed May 11 10:44:36 2011 -0700"
      },
      "message": "ceph: fix list_add in ceph_put_snap_realm\n\nSigned-off-by: Henry C Chang \u003chenry.cy.chang@gmail.com\u003e\nSigned-off-by: Sage Weil \u003csage@newdream.net\u003e\n"
    },
    {
      "commit": "7d8e18a69d9ebb8bf51748842929f8cc1ad61d49",
      "tree": "b4cc645a5ede559c7b91648150fca88e9c1c2b64",
      "parents": [
        "fca65b4ad72d28cbb43a029114d04b89f06faadb"
      ],
      "author": {
        "name": "Henry C Chang",
        "email": "henry.cy.chang@gmail.com",
        "time": "Wed May 11 10:29:52 2011 +0000"
      },
      "committer": {
        "name": "Sage Weil",
        "email": "sage@newdream.net",
        "time": "Wed May 11 10:44:34 2011 -0700"
      },
      "message": "ceph: print debug message before put mds session\n\nThe mds session, s, could be freed during ceph_put_mds_session.\nMove dout before ceph_put_mds_session.\n\nSigned-off-by: Henry C Chang \u003chenry.cy.chang@gmail.com\u003e\nSigned-off-by: Sage Weil \u003csage@newdream.net\u003e\n"
    },
    {
      "commit": "1f8e1cdac616e510eeb2dc2a9226bf597bc6cfd6",
      "tree": "c65642c3f3d706ee96068d28b7d7880aaaefbd46",
      "parents": [
        "63dc355a5a8cf296e2b1cc2e4192190dca221129"
      ],
      "author": {
        "name": "Robert P. J. Day",
        "email": "rpjday@crashcourse.ca",
        "time": "Sat May 07 17:18:20 2011 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue May 10 14:22:00 2011 -0700"
      },
      "message": "SYSFS: Fix erroneous comments for sysfs_update_group().\n\nFix what is clearly a simple copy-and-paste error in commenting the\nsysfs_update_group() routine.\n\nSigned-off-by: Robert P. J. Day \u003crpjday@crashcourse.ca\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "675badfc48079e94adc55d6bb3557ea6e67bd831",
      "tree": "65ad3d89bc5a0083f1dd07e179e93dd76fa31b73",
      "parents": [
        "c269a1b2f482b8ad923b0601bb584f6389df5c4c",
        "7ac956576d0ce8f97450a39c2f304db8eea01647"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 10 11:56:35 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 10 11:56:35 2011 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://oss.sgi.com/xfs/xfs\n\n* \u0027for-linus\u0027 of git://oss.sgi.com/xfs/xfs:\n  xfs: fix race condition in AIL push trigger\n  xfs: make AIL target updates and compares 32bit safe.\n  xfs: always push the AIL to the target\n  xfs: exit AIL push work correctly when AIL is empty\n  xfs: ensure reclaim cursor is reset correctly at end of AG\n"
    },
    {
      "commit": "d24339059d640f108c08ba99ef30e3bafa10f8e4",
      "tree": "934d3c4f2abcddbfdbb52904d0b96c5a1915acd1",
      "parents": [
        "693d92a1bbc9e42681c42ed190bd42b636ca876f"
      ],
      "author": {
        "name": "Miklos Szeredi",
        "email": "mszeredi@suse.cz",
        "time": "Tue May 10 17:35:58 2011 +0200"
      },
      "committer": {
        "name": "Miklos Szeredi",
        "email": "mszeredi@suse.cz",
        "time": "Tue May 10 17:35:58 2011 +0200"
      },
      "message": "fuse: fix oops in revalidate when called with NULL nameidata\n\nSome cases (e.g. ecryptfs) can call -\u003edentry_revalidate with NULL\nnameidata.\n\nhttps://bugzilla.kernel.org/show_bug.cgi?id\u003d34732\n\nTyler Hicks pointed out that this bug was introduced by commit\ne7c0a16786 \"fuse: make fuse_dentry_revalidate() RCU aware\"\n\nReported-by: Witold Baryluk \u003cbaryluk@smp.if.uj.edu.pl\u003e\nSigned-off-by: Miklos Szeredi \u003cmszeredi@suse.cz\u003e\n"
    },
    {
      "commit": "349dbc3669d043e656f3ed48c7bfe073ca1c6326",
      "tree": "aaa278f89f4425332dccc37c18f44603f042eaf1",
      "parents": [
        "693d92a1bbc9e42681c42ed190bd42b636ca876f"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Tue May 10 20:59:34 2011 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Tue May 10 22:19:50 2011 +0900"
      },
      "message": "nilfs2: fix infinite loop in nilfs_palloc_freev function\n\nAfter having applied commit 9954e7af14868b8b (\"nilfs2: add free\nentries count only if clear bit operation succeeded\"), a free routine\nof nilfs came to fall into an infinite loop, outputting the same\nmessage endlessly:\n\n nilfs_palloc_freev: entry number 29497 already freed\n nilfs_palloc_freev: entry number 29497 already freed\n nilfs_palloc_freev: entry number 29497 already freed\n nilfs_palloc_freev: entry number 29497 already freed\n nilfs_palloc_freev: entry number 29497 already freed ...\n\nThat patch broke the routine so that a loop counter is never updated\nin an abnormal state.  This fixes the regression.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "7ac956576d0ce8f97450a39c2f304db8eea01647",
      "tree": "614ad6b5923a8765a26e915dff1b218c69009227",
      "parents": [
        "fe0da767311933d1c1907cb8d326beea7a3cbd9c"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "dchinner@redhat.com",
        "time": "Fri May 06 02:54:08 2011 +0000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Mon May 09 18:35:04 2011 -0500"
      },
      "message": "xfs: fix race condition in AIL push trigger\n\nThe recent conversion of the xfsaild functionality to a work queue\nintroduced a hard-to-hit log space grant hang. One is caused by a\nrace condition in determining whether there is a psh in progress or\nnot.\n\nThe XFS_AIL_PUSHING_BIT is used to determine whether a push is\ncurrently in progress.  When the AIL push work completes, it checked\nwhether the target changed and cleared the PUSHING bit to allow a\nnew push to be requeued. The race condition is as follows:\n\n\tThread 1\t\tpush work\n\n\tsmp_wmb()\n\t\t\t\tsmp_rmb()\n\t\t\t\tcheck ailp-\u003exa_target unchanged\n\tupdate ailp-\u003exa_target\n\ttest/set PUSHING bit\n\tdoes not queue\n\t\t\t\tclear PUSHING bit\n\t\t\t\tdoes not requeue\n\nNow that the push target is updated, new attempts to push the AIL\nwill not trigger as the push target will be the same, and hence\ndespite trying to push the AIL we won\u0027t ever wake it again.\n\nThe fix is to ensure that the AIL push work clears the PUSHING bit\nbefore it checks if the target is unchanged.\n\nAs a result, both push triggers operate on the same test/set bit\ncriteria, so even if we race in the push work and miss the target\nupdate, the thread requesting the push will still set the PUSHING\nbit and queue the push work to occur. For safety sake, the same\nqueue check is done if the push work detects the target change,\nthough only one of the two will will queue new work due to the use\nof test_and_set_bit() checks.\n\nSigned-off-by: Dave Chinner \u003cdchinner@redhat.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Alex Elder \u003caelder@sgi.com\u003e\n\n(cherry picked from commit e4d3c4a43b595d5124ae824d300626e6489ae857)\n"
    },
    {
      "commit": "fe0da767311933d1c1907cb8d326beea7a3cbd9c",
      "tree": "e48cc699e05b10c61b332023a3ab8107a5d5a01a",
      "parents": [
        "50e86686dfb287d720af8b0f977202d205c04215"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "dchinner@redhat.com",
        "time": "Fri May 06 02:54:07 2011 +0000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Mon May 09 18:35:04 2011 -0500"
      },
      "message": "xfs: make AIL target updates and compares 32bit safe.\n\nThe recent conversion of the xfsaild functionality to a work queue\nintroduced a hard-to-hit log space grant hang. One of the problems\nnoticed was that updates of the push target are not 32 bit safe as\nthe target is a 64 bit value.\n\nWe cannot copy a 64 bit LSN without the possibility of corrupting\nthe result when racing with another updating thread. We have\nfunction to do this update safely without needing to care about\n32/64 bit issues - xfs_trans_ail_copy_lsn() - so use that when\nupdating the AIL push target.\n\nAlso move the reading of the target in the push work inside the AIL\nlock, and use XFS_LSN_CMP() for the unlocked comparison during work\ntermination to close read holes as well.\n\nSigned-off-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Alex Elder \u003caelder@sgi.com\u003e\n\n(cherry picked from commit fd5670f22fce247754243cf2ed41941e5762d990)\n"
    },
    {
      "commit": "50e86686dfb287d720af8b0f977202d205c04215",
      "tree": "b939f86e61bb3b57a7db685671f97b3ac1c10d80",
      "parents": [
        "9e7004e741de0b2daabbbadafbaf11ff1a94e00c"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "dchinner@redhat.com",
        "time": "Fri May 06 02:54:06 2011 +0000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Mon May 09 18:35:03 2011 -0500"
      },
      "message": "xfs: always push the AIL to the target\n\nThe recent conversion of the xfsaild functionality to a work queue\nintroduced a hard-to-hit log space grant hang. One of the problems\ndiscovered is a target mismatch between the item pushing loop and\nthe target itself.\n\nThe push trigger checks for the target increasing (i.e. new target \u003e\ncurrent) while the push loop only pushes items that have a LSN \u003c\ncurrent. As a result, we can get the situation where the push target\nis X, the items at the tail of the AIL have LSN X and they don\u0027t get\npushed. The push work then completes thinking it is done, and cannot\nbe restarted until the push target increases to \u003e\u003d X + 1. If the\npush target then never increases (because the tail is not moving),\nthen we never run the push work again and we stall.\n\nFix it by making sure log items with a LSN that matches the target\nexactly are pushed during the loop.\n\nSigned-off-by: Dave Chinner \u003cdchinner@redhat.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Alex Elder \u003caelder@sgi.com\u003e\n\n(cherry picked from commit cb64026b6e8af50db598ec7c3f59d504259b00bb)\n"
    },
    {
      "commit": "9e7004e741de0b2daabbbadafbaf11ff1a94e00c",
      "tree": "86ed6be6bd95114e6bf3a2680d21d35dcd0a335e",
      "parents": [
        "228d62dd3f74734b9801c789b5addc57fdfc208f"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "dchinner@redhat.com",
        "time": "Fri May 06 02:54:05 2011 +0000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Mon May 09 18:35:03 2011 -0500"
      },
      "message": "xfs: exit AIL push work correctly when AIL is empty\n\nThe recent conversion of the xfsaild functionality to a work queue\nintroduced a hard-to-hit log space grant hang. The main cause is a\nregression where a work exit path fails to clear the PUSHING state\nand recheck the target correctly.\n\nMake both exit paths do the same PUSHING bit clearing and target\nchecking when the \"no more work to be done\" condition is hit.\n\nSigned-off-by: Dave Chinner \u003cdchinner@redhat.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Alex Elder \u003caelder@sgi.com\u003e\n\n(cherry picked from commit ea35a20021f8497390d05b93271b4d675516c654)\n"
    },
    {
      "commit": "228d62dd3f74734b9801c789b5addc57fdfc208f",
      "tree": "5ee966ac8b7960484700b1f57ef793e14b33d11e",
      "parents": [
        "26822eebb25500fb0776c7c256a6af041e9f538b"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "dchinner@redhat.com",
        "time": "Fri May 06 02:54:04 2011 +0000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Mon May 09 18:35:03 2011 -0500"
      },
      "message": "xfs: ensure reclaim cursor is reset correctly at end of AG\n\nOn a 32 bit highmem PowerPC machine, the XFS inode cache was growing\nwithout bound and exhausting low memory causing the OOM killer to be\ntriggered. After some effort, the problem was reproduced on a 32 bit\nx86 highmem machine.\n\nThe problem is that the per-ag inode reclaim index cursor was not\ngetting reset to the start of the AG if the radix tree tag lookup\nfound no more reclaimable inodes. Hence every further reclaim\nattempt started at the same index beyond where any reclaimable\ninodes lay, and no further background reclaim ever occurred from the\nAG.\n\nWithout background inode reclaim the VM driven cache shrinker\nsimply cannot keep up with cache growth, and OOM is the result.\n\nWhile the change that exposed the problem was the conversion of the\ninode reclaim to use work queues for background reclaim, it was not\nthe cause of the bug. The bug was introduced when the cursor code\nwas added, just waiting for some weird configuration to strike....\n\nSigned-off-by: Dave Chinner \u003cdchinner@redhat.com\u003e\nTested-By: Christian Kujau \u003clists@nerdbynature.de\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Alex Elder \u003caelder@sgi.com\u003e\n\n(cherry picked from commit b223221956675ce8a7b436d198ced974bb388571)\n"
    },
    {
      "commit": "a09a79f66874c905af35d5bb5e5f2fdc7b6b894d",
      "tree": "9cb2ae1fef7083af91a49c19411e9871e0e59a37",
      "parents": [
        "26822eebb25500fb0776c7c256a6af041e9f538b"
      ],
      "author": {
        "name": "Mikulas Patocka",
        "email": "mikulas@artax.karlin.mff.cuni.cz",
        "time": "Mon May 09 13:01:09 2011 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon May 09 16:22:07 2011 -0700"
      },
      "message": "Don\u0027t lock guardpage if the stack is growing up\n\nLinux kernel excludes guard page when performing mlock on a VMA with\ndown-growing stack. However, some architectures have up-growing stack\nand locking the guard page should be excluded in this case too.\n\nThis patch fixes lvm2 on PA-RISC (and possibly other architectures with\nup-growing stack). lvm2 calculates number of used pages when locking and\nwhen unlocking and reports an internal error if the numbers mismatch.\n\n[ Patch changed fairly extensively to also fix /proc/\u003cpid\u003e/maps for the\n  grows-up case, and to move things around a bit to clean it all up and\n  share the infrstructure with the /proc bits.\n\n  Tested on ia64 that has both grow-up and grow-down segments  - Linus ]\n\nSigned-off-by: Mikulas Patocka \u003cmikulas@artax.karlin.mff.cuni.cz\u003e\nTested-by: Tony Luck \u003ctony.luck@gmail.com\u003e\nCc: stable@kernel.org\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7f4238a0ef8858e1f9b02a874b5818f6e9846673",
      "tree": "2a63b6f59b9d0f5cb3665768893caf437077bdef",
      "parents": [
        "8b061610dac3a3b89770c85ad63b481a47b0c38e",
        "88f4e9e870c01452e57a6943c04c8d62f6a0a7a6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon May 09 09:07:55 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon May 09 09:07:55 2011 -0700"
      },
      "message": "Merge branch \u0027hpfs\u0027\n\n* hpfs:\n  HPFS: Remove unused variable\n  HPFS: Move declaration up, so that there are no out-of-scope pointers\n  HPFS: Fix some unaligned accesses\n  HPFS: Fix endianity. Make hpfs work on big-endian machines\n  HPFS: Implement fsync for hpfs\n  HPFS: Fix a bug that filesystem was not marked dirty when remounting it\n  HPFS: Restrict uid and gid to 16-bit values\n  HPFS: When marking or clearing the dirty bit, sync the filesystem\n  HPFS: Use types with defined width\n  HPFS: Remove mark_inode_dirty\n  HPFS: Remove CR/LF conversion option\n  HPFS: Remove remaining locks\n  HPFS: Introduce a global mutex and lock it on every callback from VFS.\n  HPFS: Make HPFS compile on preempt and SMP\n"
    },
    {
      "commit": "88f4e9e870c01452e57a6943c04c8d62f6a0a7a6",
      "tree": "1f030c5d6b0e3ae9382ba7a81548d70f6022e68f",
      "parents": [
        "c3514817445a5a5e6c0d0c8152f5f161a98001db"
      ],
      "author": {
        "name": "Mikulas Patocka",
        "email": "mikulas@artax.karlin.mff.cuni.cz",
        "time": "Sun May 08 20:44:46 2011 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon May 09 09:04:24 2011 -0700"
      },
      "message": "HPFS: Remove unused variable\n\nRemove unused variable\n\nSigned-off-by: Mikulas Patocka \u003cmikulas@artax.karlin.mff.cuni.cz\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c3514817445a5a5e6c0d0c8152f5f161a98001db",
      "tree": "69202861416e03f5c9a691355bbcc6ec97befd88",
      "parents": [
        "d0969d1949cc67a0f100f30ad69ec7ec1eca70d2"
      ],
      "author": {
        "name": "Mikulas Patocka",
        "email": "mikulas@artax.karlin.mff.cuni.cz",
        "time": "Sun May 08 20:44:38 2011 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon May 09 09:04:24 2011 -0700"
      },
      "message": "HPFS: Move declaration up, so that there are no out-of-scope pointers\n\nMove declaration up, so that there are no out-of-scope pointers\n\nReported-by: Jesper Juhl \u003cjj@chaosbits.net\u003e\nSigned-off-by: Mikulas Patocka \u003cmikulas@artax.karlin.mff.cuni.cz\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d0969d1949cc67a0f100f30ad69ec7ec1eca70d2",
      "tree": "70b04ebba74aff1c4df3e8cc213a7be721550fe8",
      "parents": [
        "0b69760be6968c528869d4aec95ecf64dbf3e8bd"
      ],
      "author": {
        "name": "Mikulas Patocka",
        "email": "mikulas@artax.karlin.mff.cuni.cz",
        "time": "Sun May 08 20:44:32 2011 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon May 09 09:04:24 2011 -0700"
      },
      "message": "HPFS: Fix some unaligned accesses\n\nFix some unaligned accesses\n\nSigned-off-by: Mikulas Patocka \u003cmikulas@artax.karlin.mff.cuni.cz\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0b69760be6968c528869d4aec95ecf64dbf3e8bd",
      "tree": "ebc1f353c7df72bfe28b9da64af810c20ca8cdd4",
      "parents": [
        "bc8728ee56bca62df269b2dd159bc60838ac8e80"
      ],
      "author": {
        "name": "Mikulas Patocka",
        "email": "mikulas@artax.karlin.mff.cuni.cz",
        "time": "Sun May 08 20:44:26 2011 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon May 09 09:04:24 2011 -0700"
      },
      "message": "HPFS: Fix endianity. Make hpfs work on big-endian machines\n\nFix endianity. Make hpfs work on big-endian machines.\n\nSigned-off-by: Mikulas Patocka \u003cmikulas@artax.karlin.mff.cuni.cz\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "bc8728ee56bca62df269b2dd159bc60838ac8e80",
      "tree": "d750d7366d6415746dd9ac1f61e7da57177138c3",
      "parents": [
        "dab4c82a6e7ee2c60e63737eaa2ec283f9784df6"
      ],
      "author": {
        "name": "Mikulas Patocka",
        "email": "mikulas@artax.karlin.mff.cuni.cz",
        "time": "Sun May 08 20:44:19 2011 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon May 09 09:04:24 2011 -0700"
      },
      "message": "HPFS: Implement fsync for hpfs\n\nImplement fsync for hpfs.\n\nSigned-off-by: Mikulas Patocka \u003cmikulas@artax.karlin.mff.cuni.cz\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "dab4c82a6e7ee2c60e63737eaa2ec283f9784df6",
      "tree": "27f33c66d2d4b20ae8f353e9b6e10daac4dc308a",
      "parents": [
        "48f10e8ce7461b393186c4c7c6d6f6634082159c"
      ],
      "author": {
        "name": "Mikulas Patocka",
        "email": "mikulas@artax.karlin.mff.cuni.cz",
        "time": "Sun May 08 20:44:08 2011 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon May 09 09:04:24 2011 -0700"
      },
      "message": "HPFS: Fix a bug that filesystem was not marked dirty when remounting it\n\nFix a bug that filesystem was not marked dirty when remounting it\n\nSigned-off-by: Mikulas Patocka \u003cmikulas@artax.karlin.mff.cuni.cz\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "48f10e8ce7461b393186c4c7c6d6f6634082159c",
      "tree": "3365f32b68e207b4961452eff2030c811950811f",
      "parents": [
        "f73976818adeaa46515a238b21e865850b011a87"
      ],
      "author": {
        "name": "Mikulas Patocka",
        "email": "mikulas@artax.karlin.mff.cuni.cz",
        "time": "Sun May 08 20:44:00 2011 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon May 09 09:04:24 2011 -0700"
      },
      "message": "HPFS: Restrict uid and gid to 16-bit values\n\nRestrict uid and gid to 16-bit values.\n\nHPFS stores only 2 bytes in the EAs.\n\nSigned-off-by: Mikulas Patocka \u003cmikulas@artax.karlin.mff.cuni.cz\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f73976818adeaa46515a238b21e865850b011a87",
      "tree": "0039a4bf88de3416c47b299b385f89e8850e3439",
      "parents": [
        "d878597c2c498b63abe3e68d343459944bc358f9"
      ],
      "author": {
        "name": "Mikulas Patocka",
        "email": "mikulas@artax.karlin.mff.cuni.cz",
        "time": "Sun May 08 20:43:41 2011 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon May 09 09:04:24 2011 -0700"
      },
      "message": "HPFS: When marking or clearing the dirty bit, sync the filesystem\n\nWhen marking or clearing the dirty bit, sync the filesystem\n\nSigned-off-by: Mikulas Patocka \u003cmikulas@artax.karlin.mff.cuni.cz\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d878597c2c498b63abe3e68d343459944bc358f9",
      "tree": "a0347439303415ad48019af06feb98019748d7a5",
      "parents": [
        "e5d6a7dd5e0b29eee4359e817e0bee728d7c5530"
      ],
      "author": {
        "name": "Mikulas Patocka",
        "email": "mikulas@artax.karlin.mff.cuni.cz",
        "time": "Sun May 08 20:43:34 2011 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon May 09 09:04:23 2011 -0700"
      },
      "message": "HPFS: Use types with defined width\n\nUse types with defined width\n\nSigned-off-by: Mikulas Patocka \u003cmikulas@artax.karlin.mff.cuni.cz\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e5d6a7dd5e0b29eee4359e817e0bee728d7c5530",
      "tree": "3bc7f48840f1a8b25ddf76955b2cc5c10a3f8367",
      "parents": [
        "0fe105aa29bed0994991462b58ef61646db0e459"
      ],
      "author": {
        "name": "Mikulas Patocka",
        "email": "mikulas@artax.karlin.mff.cuni.cz",
        "time": "Sun May 08 20:43:27 2011 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon May 09 09:04:23 2011 -0700"
      },
      "message": "HPFS: Remove mark_inode_dirty\n\nRemove mark_inode_dirty\n\nHPFS doesn\u0027t use kernel\u0027s dirty inode indicator anyway because\nwriting an inode requires directory\u0027s mutex.\n\nSigned-off-by: Mikulas Patocka \u003cmikulas@artax.karlin.mff.cuni.cz\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0fe105aa29bed0994991462b58ef61646db0e459",
      "tree": "1aa775e43ff3181c67915a1522ab9ec8f1e62552",
      "parents": [
        "7d23ce36e3f52f9b83ac8da49296b73339c8b5b8"
      ],
      "author": {
        "name": "Mikulas Patocka",
        "email": "mikulas@artax.karlin.mff.cuni.cz",
        "time": "Sun May 08 20:43:19 2011 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon May 09 09:04:23 2011 -0700"
      },
      "message": "HPFS: Remove CR/LF conversion option\n\nRemove CR/LF conversion option\n\nIt is unused anyway. It was used on 2.2 kernels or so.\n\nSigned-off-by: Mikulas Patocka \u003cmikulas@artax.karlin.mff.cuni.cz\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7d23ce36e3f52f9b83ac8da49296b73339c8b5b8",
      "tree": "0c3973efa632e3c58d056c5d949a38b4c475193f",
      "parents": [
        "7dd29d8d865efdb00c0542a5d2c87af8c52ea6c7"
      ],
      "author": {
        "name": "Mikulas Patocka",
        "email": "mikulas@artax.karlin.mff.cuni.cz",
        "time": "Sun May 08 20:43:06 2011 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon May 09 09:04:23 2011 -0700"
      },
      "message": "HPFS: Remove remaining locks\n\nRemove remaining locks\n\nBecause of a new global per-fs lock, no other locks are needed\n\nSigned-off-by: Mikulas Patocka \u003cmikulas@artax.karlin.mff.cuni.cz\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7dd29d8d865efdb00c0542a5d2c87af8c52ea6c7",
      "tree": "71f404ed317e2d1b689af088ece1c32c3b1535c8",
      "parents": [
        "637b424bf8747e50bab6648ab919632d6efd6c28"
      ],
      "author": {
        "name": "Mikulas Patocka",
        "email": "mikulas@artax.karlin.mff.cuni.cz",
        "time": "Sun May 08 20:42:54 2011 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon May 09 09:04:23 2011 -0700"
      },
      "message": "HPFS: Introduce a global mutex and lock it on every callback from VFS.\n\nIntroduce a global mutex and lock it on every callback from VFS.\n\nPerformance doesn\u0027t matter, reviewing the whole code for locking correctness\nwould be too complicated, so simply lock it all.\n\nSigned-off-by: Mikulas Patocka \u003cmikulas@artax.karlin.mff.cuni.cz\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "637b424bf8747e50bab6648ab919632d6efd6c28",
      "tree": "a852ccbdfcd4120a80985652eb8a8ad5d1d2b4be",
      "parents": [
        "0ee5623f9a6e52df90a78bd21179f8ab370e102e"
      ],
      "author": {
        "name": "Mikulas Patocka",
        "email": "mikulas@artax.karlin.mff.cuni.cz",
        "time": "Sun May 08 20:42:44 2011 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon May 09 09:04:23 2011 -0700"
      },
      "message": "HPFS: Make HPFS compile on preempt and SMP\n\nMake HPFS compile on preempt and SMP\n\nSigned-off-by: Mikulas Patocka \u003cmikulas@artax.karlin.mff.cuni.cz\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c2bf807eb347325988b1c7f9139e934ed9b1d795",
      "tree": "3b35c66365a3a5e2d10183d05a014d8e26196e6c",
      "parents": [
        "a3a4a5acd3bd2f6f1e102e1f1b9d2e2bb320a7fd",
        "16541ba11c4f04ffe94b073e301f00b749fb84a1"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 06 15:32:41 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 06 15:32:41 2011 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6:\n  cifs: handle errors from coalesce_t2\n  cifs: refactor mid finding loop in cifs_demultiplex_thread\n  cifs: sanitize length checking in coalesce_t2 (try #3)\n  cifs: check for bytes_remaining going to zero in CIFS_SessSetup\n  cifs: change bleft in decode_unicode_ssetup back to signed type\n"
    },
    {
      "commit": "fa039d5f6b126fbd65eefa05db2f67e44df8f121",
      "tree": "bfd1fcc3bca88d6d43650a76575b04c21c2d2c24",
      "parents": [
        "bfd412db9e7b0d8f7b9c09d12d07aa2ac785f1d0"
      ],
      "author": {
        "name": "Timo Warns",
        "email": "Warns@pre-sense.de",
        "time": "Fri May 06 13:47:35 2011 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 06 07:46:37 2011 -0700"
      },
      "message": "Validate size of EFI GUID partition entries.\n\nOtherwise corrupted EFI partition tables can cause total confusion.\n\nSigned-off-by: Timo Warns \u003cwarns@pre-sense.de\u003e\nCc: stable@kernel.org\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "bd355f8ae6577aa6b444ab76bb1dfeb1a7002d9f",
      "tree": "b88b57915ccc335cb1391abf3da5fa59bd5e6ac5",
      "parents": [
        "1c08232cfe5e68c6234305a3abb64d52d89c9ead",
        "fca65b4ad72d28cbb43a029114d04b89f06faadb"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 04 14:22:20 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 04 14:22:20 2011 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client:\n  ceph: do not call __mark_dirty_inode under i_lock\n  libceph: fix ceph_osdc_alloc_request error checks\n  ceph: handle ceph_osdc_new_request failure in ceph_writepages_start\n  libceph: fix ceph_msg_new error path\n  ceph: use ihold() when i_lock is held\n"
    },
    {
      "commit": "fca65b4ad72d28cbb43a029114d04b89f06faadb",
      "tree": "af7a0d64fa632c45a064d49f8d09f6874b1f7533",
      "parents": [
        "4ad12621e442b7a072e81270808f617cb65c5672"
      ],
      "author": {
        "name": "Sage Weil",
        "email": "sage@newdream.net",
        "time": "Wed May 04 11:33:47 2011 -0700"
      },
      "committer": {
        "name": "Sage Weil",
        "email": "sage@newdream.net",
        "time": "Wed May 04 12:56:45 2011 -0700"
      },
      "message": "ceph: do not call __mark_dirty_inode under i_lock\n\nThe __mark_dirty_inode helper now takes i_lock as of 250df6ed.  Fix the\none ceph callers that held i_lock (__ceph_mark_dirty_caps) to return the\nflags value so that the callers can do it outside of i_lock.\n\nSigned-off-by: Sage Weil \u003csage@newdream.net\u003e\n"
    },
    {
      "commit": "cce2c56e7666199916525907dc817209dd58287c",
      "tree": "555a0ae78da2148b37c585cd4477047376b0bde9",
      "parents": [
        "609cfda586c7fe3e5d1a02c51edb587506294167"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 03 16:10:25 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 03 16:10:25 2011 -0700"
      },
      "message": "logfs: initialize superblock entries earlier\n\nIn particular, s_freeing_list needs to be initialized early, since it is\nused on some of the error paths when mounts fail.  The mapping inode,\nfor example, would be initialized and then free\u0027d on an error path\nbefore s_freeing_list was initialized, but the inode drop operation\nneeds the s_freeing_list to be set up.\n\nNormally you\u0027d never see this, because not only is logfs fairly rare,\nbut a successful mount will never have any issues.\n\nReported-by: werner \u003cw.landgraf@ru.ru\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8c71897be2ddfd84969412635ca42fa9e137f7b6",
      "tree": "7403c84c264f1fd0110869bad68405fcaf6c80ba",
      "parents": [
        "ca20892db7567c40e8ed0668f46cf0d085d7db6d"
      ],
      "author": {
        "name": "Henry C Chang",
        "email": "henry.cy.chang@gmail.com",
        "time": "Tue May 03 09:45:16 2011 +0000"
      },
      "committer": {
        "name": "Sage Weil",
        "email": "sage@newdream.net",
        "time": "Tue May 03 09:28:12 2011 -0700"
      },
      "message": "ceph: handle ceph_osdc_new_request failure in ceph_writepages_start\n\nWe should unlock the page and return -ENOMEM if ceph_osdc_new_request\nfailed.\n\nSigned-off-by: Henry C Chang \u003chenry_c_chang@tcloudcomputing.com\u003e\nSigned-off-by: Sage Weil \u003csage@newdream.net\u003e\n"
    },
    {
      "commit": "3772d26d87efc2d91b2e4247e0001c89ed09a980",
      "tree": "940dc54f9daeef06185bcab96e2fc01c54a13355",
      "parents": [
        "a1b49cb7e2a7961ec3aa8b64860bf480d4ec9077"
      ],
      "author": {
        "name": "Sage Weil",
        "email": "sage@newdream.net",
        "time": "Tue May 03 09:28:08 2011 -0700"
      },
      "committer": {
        "name": "Sage Weil",
        "email": "sage@newdream.net",
        "time": "Tue May 03 09:28:08 2011 -0700"
      },
      "message": "ceph: use ihold() when i_lock is held\n\nSee 0444d76ae64fffc7851797fc1b6ebdbb44ac504a.\n\nSigned-off-by: Sage Weil \u003csage@newdream.net\u003e\n"
    },
    {
      "commit": "16541ba11c4f04ffe94b073e301f00b749fb84a1",
      "tree": "3ff03fa9202ba3bbe4aee3d036cddd6f0dbaceba",
      "parents": [
        "146f9f65bd13f56665205aed7205d531c810cb35"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Fri Apr 29 06:52:44 2011 -0400"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Tue May 03 03:42:15 2011 +0000"
      },
      "message": "cifs: handle errors from coalesce_t2\n\ncifs_demultiplex_thread calls coalesce_t2 to try and merge follow-on t2\nresponses into the original mid buffer. coalesce_t2 however can return\nerrors, but the caller doesn\u0027t handle that situation properly. Fix the\nthread to treat such a case as it would a malformed packet. Mark the\nmid as being malformed and issue the callback.\n\nCc: stable@kernel.org\nAcked-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "146f9f65bd13f56665205aed7205d531c810cb35",
      "tree": "138417836966c26ad213a77b958b404c89c5b39e",
      "parents": [
        "2a2047bc94d0efc316401170c3d078d9edc20dc4"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Fri Apr 29 06:52:43 2011 -0400"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Tue May 03 03:42:07 2011 +0000"
      },
      "message": "cifs: refactor mid finding loop in cifs_demultiplex_thread\n\n...to reduce the extreme indentation. This should introduce no\nbehavioral changes.\n\nCc: stable@kernel.org\nAcked-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "adadfe48df3858c3c1ba52963502f38885ab2f3c",
      "tree": "f6e6388f5dff08878c0888ab42122fbe81710783",
      "parents": [
        "625a3b6057e86d5079976db5648bd42289c8b6cc",
        "52c6e6f990669deac3f370f1603815adb55a1dbd"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon May 02 12:17:29 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon May 02 12:17:29 2011 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.infradead.org/ubifs-2.6\n\n* \u0027for-linus\u0027 of git://git.infradead.org/ubifs-2.6:\n  UBIFS: seek journal heads to the latest bud in replay\n  UBIFS: do not free write-buffers when in R/O mode\n"
    },
    {
      "commit": "52c6e6f990669deac3f370f1603815adb55a1dbd",
      "tree": "11e1cf3982cfffb36010faef4a77903473b89d4f",
      "parents": [
        "b50b9f408502a2ea90459ae36ba8cdc9cc005cfe"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Mon Apr 25 18:46:31 2011 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Mon May 02 19:23:48 2011 +0300"
      },
      "message": "UBIFS: seek journal heads to the latest bud in replay\n\nThis is the second fix of the following symptom:\n\nUBIFS error (pid 34456): could not find an empty LEB\n\nwhich sometimes happens after power cuts when we mount the file-system - UBIFS\nrefuses it with the above error message which comes from the\n\u0027ubifs_rcvry_gc_commit()\u0027 function. I can reproduce this using the integck test\nwith the UBIFS power cut emulation enabled.\n\nAnalysis of the problem.\n\nCurrently UBIFS replay seeks the journal heads to the last _replayed_ bud.\nBut the buds are replayed out-of-order, so the replay basically seeks journal\nheads to the \"random\" bud belonging to this head, and not to the _last_ one.\n\nThe result of this is that the GC head may be seeked to a full LEB with no free\nspace, or very little free space. And \u0027ubifs_rcvry_gc_commit()\u0027 tries to find a\nfully or mostly dirty LEB to match the current GC head (because we need to\ngarbage-collect that dirty LEB at one go, because we do not have @c-\u003egc_lnum).\nSo \u0027ubifs_find_dirty_leb()\u0027 fails and we fall back to finding an empty LEB and\nalso fail. As a result - recovery fails and mounting fails.\n\nThis patch teaches the replay to initialize the GC heads exactly to the latest\nbuds, i.e. the buds which have the largest sequence number in corresponding\nlog reference nodes.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\nCc: stable@kernel.org\n"
    },
    {
      "commit": "b50b9f408502a2ea90459ae36ba8cdc9cc005cfe",
      "tree": "07c53213eaa3017282a5876eb34037fcff4a9441",
      "parents": [
        "8e10cd74342c7f5ce259cceca36f6eba084f5d58"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Mon Apr 25 18:17:09 2011 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Mon May 02 19:23:36 2011 +0300"
      },
      "message": "UBIFS: do not free write-buffers when in R/O mode\n\nCurrently UBIFS has a small optimization - it frees write-buffers when it is\nre-mounted from R/W mode to R/O mode. Of course, when it is mounted R/O, it\ndoes not allocate write-buffers as well.\n\nThis optimization is nice but it leads to subtle problems and complications\nin recovery, which I can reproduce using the integck test. The symptoms are\nthat after a power cut the file-system cannot be mounted if we first mount\nit R/O, and then re-mount R/W - \u0027ubifs_rcvry_gc_commit()\u0027 prints:\n\nUBIFS error (pid 34456): could not find an empty LEB\n\nAnalysis of the  problem.\n\nWhen mounting R/W, the reply process sets journal heads to buds [1], but\nwhen mounting R/O - it does not do this, because the write-buffers are not\nallocated. So \u0027ubifs_rcvry_gc_commit()\u0027 works completely differently for the\nsame file-system but for the following 2 cases:\n\n1. mounting R/W after a power cut and recover\n2. mounting R/O after a power cut, re-mounting R/W and run deferred recovery\n\nIn the former case, we have journal heads seeked to the a bud, in the latter\ncase, they are non-seeked (wbuf-\u003elnum \u003d\u003d -1). So in the latter case we do not\ntry to recover the GC LEB by garbage-collecting to the GC head, but we just\ntry to find an empty LEB, and there may be no empty LEBs, so we just fail.\nOn the other hand, in the former case (mount R/W), we are able to make a GC LEB\n(@c-\u003egc_lnum) by garbage-collecting.\n\nThus, let\u0027s remove this small nice optimization and always allocate\nwrite-buffers. This should not make too big difference - we have only 3\nof them, each of max. write unit size, which is usually 2KiB. So this is\nabout 6KiB of RAM for the typical case, and only when mounted R/O.\n\n[1]: Note, currently the replay process is setting (seeking) the journal heads\nto _some_ buds, not necessarily to the buds which had been the journal heads\nbefore the power cut happened. This will be fixed separately.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\nCc: stable@kernel.org\n"
    },
    {
      "commit": "02e352287a40bd456eb78df705bf888bc3161d3f",
      "tree": "aa6462a305d17a52d8a717640bbd558f49f1834e",
      "parents": [
        "bf2253a6f00e8fea5b026e471e9f0d0a1b3621f2"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Fri Apr 29 10:15:20 2011 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Fri Apr 29 10:17:26 2011 +0200"
      },
      "message": "block: rescan partitions on invalidated devices on -ENOMEDIA too\n\n__blkdev_get() doesn\u0027t rescan partitions if disk-\u003efops-\u003eopen() fails,\nwhich leads to ghost partition devices lingering after medimum removal\nis known to both the kernel and userland.  The behavior also creates a\nsubtle inconsistency where O_NONBLOCK open, which doesn\u0027t fail even if\nthere\u0027s no medium, clears the ghots partitions, which is exploited to\nwork around the problem from userland.\n\nFix it by updating __blkdev_get() to issue partition rescan after\n-ENOMEDIA too.\n\nThis was reported in the following bz.\n\n https://bugzilla.kernel.org/show_bug.cgi?id\u003d13029\n\nStable: 2.6.38\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nReported-by: David Zeuthen \u003czeuthen@gmail.com\u003e\nReported-by: Martin Pitt \u003cmartin.pitt@ubuntu.com\u003e\nReported-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nTested-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nCc: stable@kernel.org\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "2a2047bc94d0efc316401170c3d078d9edc20dc4",
      "tree": "fb085ee1125e6f754c817df84cc603e56d664c52",
      "parents": [
        "fcda7f4578bbf9717444ca6da8a421d21489d078"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Wed Apr 27 13:29:49 2011 -0400"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Fri Apr 29 05:02:08 2011 +0000"
      },
      "message": "cifs: sanitize length checking in coalesce_t2 (try #3)\n\nThere are a couple of places in this code where these values can wrap or\ngo negative, and that could potentially end up overflowing the buffer.\nEnsure that that doesn\u0027t happen. Do all of the length calculation and\nchecks first, and only perform the memcpy after they pass.\n\nAlso, increase some stack variables to 32 bits to ensure that they don\u0027t\nwrap without being detected.\n\nFinally, change the error codes to be a bit more descriptive of any\nproblems detected. -EINVAL isn\u0027t very accurate.\n\nCc: stable@kernel.org\nReported-and-Acked-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "fcda7f4578bbf9717444ca6da8a421d21489d078",
      "tree": "5cf2fc99c067eb49f410ad095ca2cabec2fe86ac",
      "parents": [
        "bfacf2225a955bea9c41c707fc72ba16009674a0"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Wed Apr 27 13:25:51 2011 -0400"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Fri Apr 29 04:57:39 2011 +0000"
      },
      "message": "cifs: check for bytes_remaining going to zero in CIFS_SessSetup\n\nIt\u0027s possible that when we go to decode the string area in the\nSESSION_SETUP response, that bytes_remaining will be 0. Decrementing it at\nthat point will mean that it can go \"negative\" and wrap. Check for a\nbytes_remaining value of 0, and don\u0027t try to decode the string area if\nthat\u0027s the case.\n\nCc: stable@kernel.org\nReported-and-Acked-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "bfacf2225a955bea9c41c707fc72ba16009674a0",
      "tree": "b164fd09adda6397a46d7a0e2e1438a3b5525d72",
      "parents": [
        "fafc9929c668f8bae6dd1f109f33a86d2cb3c460"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Wed Apr 27 13:25:51 2011 -0400"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Fri Apr 29 04:57:35 2011 +0000"
      },
      "message": "cifs: change bleft in decode_unicode_ssetup back to signed type\n\nThe buffer length checks in this function depend on this value being a\nsigned data type, but 690c522fa converted it to an unsigned type.\n\nAlso, eliminate a problem with the null termination check in the same\nfunction. cifs_strndup_from_ucs handles that situation correctly\nalready, and the existing check could potentially lead to a buffer\noverrun since it increments bleft without checking to see whether it\nfalls off the end of the buffer.\n\nCc: stable@kernel.org\nReported-and-Acked-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "9cab1ba421fbc4c4503ccf4ff61e000c771e8942",
      "tree": "afd2124cfee46383d017676f9652ecd6b4cb86e9",
      "parents": [
        "cc03638df20acbec5d0d0d9e07234aadde9e698d",
        "26c4c170731f00008f4317a2888a0a07ac99d90d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 28 13:13:07 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 28 13:13:07 2011 -0700"
      },
      "message": "Merge branch \u0027bugfixes\u0027 of git://git.linux-nfs.org/projects/trondmy/nfs-2.6\n\n* \u0027bugfixes\u0027 of git://git.linux-nfs.org/projects/trondmy/nfs-2.6:\n  nfs: don\u0027t lose MS_SYNCHRONOUS on remount of noac mount\n  NFS: Return meaningful status from decode_secinfo()\n  NFSv4: Ensure we request the ordinary fileid when doing readdirplus\n  NFSv4: Ensure that clientid and session establishment can time out\n  SUNRPC: Allow RPC calls to return ETIMEDOUT instead of EIO\n  NFSv4.1: Don\u0027t loop forever in nfs4_proc_create_session\n  NFSv4: Handle NFS4ERR_WRONGSEC outside of nfs4_handle_exception()\n  NFSv4.1: Don\u0027t update sequence number if rpc_task is not sent\n  NFSv4.1: Ensure state manager thread dies on last umount\n  SUNRPC: Fix the SUNRPC Kerberos V RPCSEC_GSS module dependencies\n  NFS: Use correct variable for page bounds checking\n  NFS: don\u0027t negotiate when user specifies sec flavor\n  NFS: Attempt mount with default sec flavor first\n  NFS: flav_array honors NFS_MAX_SECFLAVORS\n  NFS: Fix infinite loop in gss_create_upcall()\n  Don\u0027t mark_inode_dirty_sync() while holding lock\n  NFS: Get rid of pointless test in nfs_commit_done\n  NFS: Remove unused argument from nfs_find_best_sec()\n  NFS: Eliminate duplicate call to nfs_mark_request_dirty\n  NFS: Remove dead code from nfs_fs_mount()\n"
    },
    {
      "commit": "6d4831c283530a5f2c6bd8172c13efa236eb149d",
      "tree": "4d199a330cfe8710de0deb4e805a798c2982501c",
      "parents": [
        "e8dad69408a9812d6bb42d03e74d2c314534a4fa"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Wed Apr 27 15:26:41 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 28 11:28:20 2011 -0700"
      },
      "message": "vfs: avoid large kmalloc()s for the fdtable\n\nAzurit reports large increases in system time after 2.6.36 when running\nApache.  It was bisected down to a892e2d7dcdfa6c76e6 (\"vfs: use kmalloc()\nto allocate fdmem if possible\").\n\nThat patch caused the vfs to use kmalloc() for very large allocations and\nthis is causing excessive work (and presumably excessive reclaim) within\nthe page allocator.\n\nFix it by falling back to vmalloc() earlier - when the allocation attempt\nwould have been considered \"costly\" by reclaim.\n\nReported-by: azurIt \u003cazurit@pobox.sk\u003e\nTested-by: azurIt \u003cazurit@pobox.sk\u003e\nAcked-by: Changli Gao \u003cxiaosuo@gmail.com\u003e\nCc: Americo Wang \u003cxiyou.wangcong@gmail.com\u003e\nCc: Jiri Slaby \u003cjslaby@suse.cz\u003e\nAcked-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCc: Mel Gorman \u003cmel@csn.ul.ie\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "26c4c170731f00008f4317a2888a0a07ac99d90d",
      "tree": "f187a530024ab278a3f3e25ee01edc2e8c568f39",
      "parents": [
        "613e901e1ee0e1096663b649eee8e5d6697919f3"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Wed Apr 27 11:49:09 2011 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Apr 27 16:20:01 2011 -0400"
      },
      "message": "nfs: don\u0027t lose MS_SYNCHRONOUS on remount of noac mount\n\nOn a remount, the VFS layer will clear the MS_SYNCHRONOUS bit on the\nassumption that the flags on the mount syscall will have it set if the\nremounted fs is supposed to keep it.\n\nIn the case of \"noac\" though, MS_SYNCHRONOUS is implied. A remount of\nsuch a mount will lose the MS_SYNCHRONOUS flag since \"sync\" isn\u0027t part\nof the mount options.\n\nReported-by: Max Matveev \u003cmakc@redhat.com\u003e\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nCc: stable@kernel.org\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "613e901e1ee0e1096663b649eee8e5d6697919f3",
      "tree": "1a7c6c79585da11445de9c3b3c6c701d5c6c0195",
      "parents": [
        "28331a46d88459788c8fca72dbb0415cd7f514c9"
      ],
      "author": {
        "name": "Bryan Schumaker",
        "email": "bjschuma@netapp.com",
        "time": "Wed Apr 27 15:28:44 2011 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Apr 27 16:17:29 2011 -0400"
      },
      "message": "NFS: Return meaningful status from decode_secinfo()\n\nWhen compiling, I was getting this warning:\nfs/nfs/nfs4xdr.c: In function ‘decode_secinfo’:\nfs/nfs/nfs4xdr.c:4839:6: warning: variable ‘status’ set but not used\n[-Wunused-but-set-variable]\n\nWe were unconditionally returning 0 as long as there wasn\u0027t an error\ncoming out of xdr_inline_decode().  We probably want to check the error\nstatus coming out of decode_op_hdr() and decode_secinfo_gss(), rather\nthan assuming that everything is OK all the time.\n\nSigned-off-by: Bryan Schumaker \u003cbjschuma@netapp.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "28331a46d88459788c8fca72dbb0415cd7f514c9",
      "tree": "436a4a7209ab9acab87c0e0ecb0cac9b2c749f3d",
      "parents": [
        "1bd714f2a14aa4d6a5570956fcec64530b007e4a"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Apr 27 13:47:52 2011 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Apr 27 15:57:16 2011 -0400"
      },
      "message": "NFSv4: Ensure we request the ordinary fileid when doing readdirplus\n\nWhen readdir() returns a directory entry for the root of a mounted\nfilesystem, Linux follows the old convention of returning the inode\nnumber of the covered directory (despite newer versions of POSIX declaring\nthat this is a bug).\nTo ensure this continues to work, the NFSv4 readdir implementation requests\nthe \u0027mounted-on-fileid\u0027 from the server.\n\nHowever, readdirplus also needs to instantiate an inode for this entry, and\nfor that, we also need to request the real fileid as per this patch.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "e9c549998dc24209847007e1f209f3b6c88d21ba",
      "tree": "0f52fcbe1dfa158349afc6ad2edaa6738615dc3b",
      "parents": [
        "8e10cd74342c7f5ce259cceca36f6eba084f5d58"
      ],
      "author": {
        "name": "Lucas De Marchi",
        "email": "lucas.demarchi@profusion.mobi",
        "time": "Tue Apr 26 23:28:26 2011 -0700"
      },
      "committer": {
        "name": "Lucas De Marchi",
        "email": "lucas.demarchi@profusion.mobi",
        "time": "Tue Apr 26 23:31:11 2011 -0700"
      },
      "message": "Revert wrong fixes for common misspellings\n\nThese changes were incorrectly fixed by codespell. They were now\nmanually corrected.\n\nSigned-off-by: Lucas De Marchi \u003clucas.demarchi@profusion.mobi\u003e\n"
    },
    {
      "commit": "019793b7554b18818624e9cf7a2ee8ba8cf6bda0",
      "tree": "ffe6ea833b4310d063a4a40435ba8877c396a303",
      "parents": [
        "cb49f577879519d1bff5898d9eec72dd441286cb",
        "7cf96da3ec7ca225acf4f284b0e904a1f5f98821"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 26 08:26:58 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 26 08:26:58 2011 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable:\n  Btrfs: cleanup error handling in inode.c\n  Btrfs: put the right bio if we have an error\n  Btrfs: free bitmaps properly when evicting the cache\n  Btrfs: Free free_space item properly in btrfs_trim_block_group()\n  btrfs: add missing spin_unlock to a rare exit path\n  Btrfs: check return value of kmalloc()\n  btrfs: fix wrong allocating flag when reading page\n  Btrfs: fix missing mutex_unlock in btrfs_del_dir_entries_in_log()\n"
    },
    {
      "commit": "cb49f577879519d1bff5898d9eec72dd441286cb",
      "tree": "25ac9515b139d1f84b4fbeb52135779286b277a3",
      "parents": [
        "f727a938ce1c92d7693e0a66cee2295f2f9ca6d3",
        "211588ad1902df57beeeadc9b44546540fa4bd81"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 26 08:25:16 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 26 08:25:16 2011 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable:\n  Btrfs: do some plugging in the submit_bio threads\n"
    },
    {
      "commit": "f727a938ce1c92d7693e0a66cee2295f2f9ca6d3",
      "tree": "28d3467e4e86294f41b017f8a6e54b8b16dbb6b4",
      "parents": [
        "cd2e49e90f1cae7726c9a2c54488d881d7f1cd1c",
        "4906e50b37e6f6c264e7ee4237343eb2b7f8d16d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 25 20:38:50 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 25 20:38:50 2011 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6:\n  CIFS: Fix memory over bound bug in cifs_parse_mount_options\n"
    },
    {
      "commit": "cd2e49e90f1cae7726c9a2c54488d881d7f1cd1c",
      "tree": "79c3c9d6e4258f38ff81dd141970885bbc65807a",
      "parents": [
        "71e9e6a5823a6b7976c3e47e2f6c7ba364526a93",
        "5be79de2e1ffa19d871a494697cf76cddee93384"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 25 19:01:12 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 25 19:01:12 2011 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ecryptfs/ecryptfs-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ecryptfs/ecryptfs-2.6:\n  eCryptfs: Flush dirty pages in setattr\n  eCryptfs: Handle failed metadata read in lookup\n  eCryptfs: Add reference counting to lower files\n  eCryptfs: dput dentries returned from dget_parent\n  eCryptfs: Remove extra d_delete in ecryptfs_rmdir\n"
    },
    {
      "commit": "1879fd6a26571fd4e8e1f4bb3e7537bc936b1fe7",
      "tree": "5fb41fdaef01d462ff9c7ecfe688760a44e89b6a",
      "parents": [
        "3dd2ee4824b668a635d6d2bb6bc73f33708cab9f"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Mon Apr 25 14:01:36 2011 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 25 18:14:10 2011 -0700"
      },
      "message": "add hlist_bl_lock/unlock helpers\n\nNow that the whole dcache_hash_bucket crap is gone, go all the way and\nalso remove the weird locking layering violations for locking the hash\nbuckets.  Add hlist_bl_lock/unlock helpers to move the locking into the\nlist abstraction instead of requiring each caller to open code it.\nAfter all allowing for the bit locks is the whole point of these helpers\nover the plain hlist variant.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5be79de2e1ffa19d871a494697cf76cddee93384",
      "tree": "4b6a9e060ba1d33f3573f0ea4b04f950e8027c79",
      "parents": [
        "3aeb86ea4cd15f728147a3bd5469a205ada8c767"
      ],
      "author": {
        "name": "Tyler Hicks",
        "email": "tyhicks@linux.vnet.ibm.com",
        "time": "Fri Apr 22 13:08:00 2011 -0500"
      },
      "committer": {
        "name": "Tyler Hicks",
        "email": "tyhicks@linux.vnet.ibm.com",
        "time": "Mon Apr 25 18:49:46 2011 -0500"
      },
      "message": "eCryptfs: Flush dirty pages in setattr\n\nAfter 57db4e8d73ef2b5e94a3f412108dff2576670a8a changed eCryptfs to\nwrite-back caching, eCryptfs page writeback updates the lower inode\ntimes due to the use of vfs_write() on the lower file.\n\nTo preserve inode metadata changes, such as \u0027cp -p\u0027 does with\nutimensat(), we need to flush all dirty pages early in\necryptfs_setattr() so that the user-updated lower inode metadata isn\u0027t\nclobbered later in writeback.\n\nhttps://bugzilla.kernel.org/show_bug.cgi?id\u003d33372\n\nReported-by: Rocko \u003crockorequin@hotmail.com\u003e\nSigned-off-by: Tyler Hicks \u003ctyhicks@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "3aeb86ea4cd15f728147a3bd5469a205ada8c767",
      "tree": "6219c664f7938fa8e5e8a2efa93aab7bcc38c12f",
      "parents": [
        "332ab16f830f59e7621ae8eb2c353dc135a316f6"
      ],
      "author": {
        "name": "Tyler Hicks",
        "email": "tyhicks@linux.vnet.ibm.com",
        "time": "Tue Mar 15 14:54:00 2011 -0500"
      },
      "committer": {
        "name": "Tyler Hicks",
        "email": "tyhicks@linux.vnet.ibm.com",
        "time": "Mon Apr 25 18:45:06 2011 -0500"
      },
      "message": "eCryptfs: Handle failed metadata read in lookup\n\nWhen failing to read the lower file\u0027s crypto metadata during a lookup,\neCryptfs must continue on without throwing an error. For example, there\nmay be a plaintext file in the lower mount point that the user wants to\ndelete through the eCryptfs mount.\n\nIf an error is encountered while reading the metadata in lookup(), the\neCryptfs inode\u0027s size could be incorrect. We must be sure to reread the\nplaintext inode size from the metadata when performing an open() or\nsetattr(). The metadata is already being read in those paths, so this\nadds minimal performance overhead.\n\nThis patch introduces a flag which will track whether or not the\nplaintext inode size has been read so that an incorrect i_size can be\nfixed in the open() or setattr() paths.\n\nhttps://bugs.launchpad.net/bugs/509180\n\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Tyler Hicks \u003ctyhicks@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "7cf96da3ec7ca225acf4f284b0e904a1f5f98821",
      "tree": "48c1b0d42f40c47ac8e6a497d41d6d314a9a8a5d",
      "parents": [
        "64728bbbf892ea7a4aba502c436afbe362217fb9"
      ],
      "author": {
        "name": "Tsutomu Itoh",
        "email": "t-itoh@jp.fujitsu.com",
        "time": "Mon Apr 25 19:43:53 2011 -0400"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Mon Apr 25 19:43:53 2011 -0400"
      },
      "message": "Btrfs: cleanup error handling in inode.c\n\nThe error processing of several places is changed like setting the\nerror number only at the error.\n\nSigned-off-by: Tsutomu Itoh \u003ct-itoh@jp.fujitsu.com\u003e\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n"
    },
    {
      "commit": "64728bbbf892ea7a4aba502c436afbe362217fb9",
      "tree": "40741804bbf62d942c5b440345de03866cb46c41",
      "parents": [
        "a4f0162fd4490daf2c823c185fff79080d266a7c"
      ],
      "author": {
        "name": "Josef Bacik",
        "email": "josef@redhat.com",
        "time": "Mon Apr 25 19:43:52 2011 -0400"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Mon Apr 25 19:43:52 2011 -0400"
      },
      "message": "Btrfs: put the right bio if we have an error\n\nIn btrfs_submit_direct_hook if the first btrfs_map_block fails we need to put\nthe orig_bio, not bio.\n\nSigned-off-by: Josef Bacik \u003cjosef@redhat.com\u003e\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n"
    },
    {
      "commit": "a4f0162fd4490daf2c823c185fff79080d266a7c",
      "tree": "c2a7186103a4b31115eb10555864620a46a18ad9",
      "parents": [
        "f789b684bdb96e7ec2fce79445555d4fd55fb94c"
      ],
      "author": {
        "name": "Josef Bacik",
        "email": "josef@redhat.com",
        "time": "Mon Apr 25 19:43:52 2011 -0400"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Mon Apr 25 19:43:52 2011 -0400"
      },
      "message": "Btrfs: free bitmaps properly when evicting the cache\n\nIf our space cache is wrong, we do the right thing and free up everything that\nwe loaded, however we don\u0027t reset the total_bitmaps counter or the thresholds or\nanything.  So in btrfs_remove_free_space_cache make sure to call free_bitmap()\nif it\u0027s a bitmap, this will keep us from panicing when we check to make sure we\ndon\u0027t have too many bitmaps.  Thanks,\n\nSigned-off-by: Josef Bacik \u003cjosef@redhat.com\u003e\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n"
    },
    {
      "commit": "f789b684bdb96e7ec2fce79445555d4fd55fb94c",
      "tree": "44bde9e49f5d1d16c3d6890528ce5a9b3977fb7e",
      "parents": [
        "cfece4db110dacfd6b4b87b912c59e77e6846fc0"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Mon Apr 25 19:43:52 2011 -0400"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Mon Apr 25 19:43:52 2011 -0400"
      },
      "message": "Btrfs: Free free_space item properly in btrfs_trim_block_group()\n\nSince commit dc89e9824464e91fa0b06267864ceabe3186fd8b, we\u0027ve changed\nto use a specific slab for alocation of free_space items.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n"
    },
    {
      "commit": "cfece4db110dacfd6b4b87b912c59e77e6846fc0",
      "tree": "6505c83f7d0dd2d01851cb8d13501e829168880f",
      "parents": [
        "8d413713ca744fa00cf4e05d4054d80727b84789"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.cz",
        "time": "Mon Apr 25 19:43:52 2011 -0400"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Mon Apr 25 19:43:52 2011 -0400"
      },
      "message": "btrfs: add missing spin_unlock to a rare exit path\n\nSigned-off-by: David Sterba \u003cdsterba@suse.cz\u003e\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n"
    },
    {
      "commit": "8d413713ca744fa00cf4e05d4054d80727b84789",
      "tree": "df29b480d83806cd4e85508ac676eb69323ddc79",
      "parents": [
        "43e817a1fdda17f3357602ed7964c248c8c53ae0"
      ],
      "author": {
        "name": "Tsutomu Itoh",
        "email": "t-itoh@jp.fujitsu.com",
        "time": "Mon Apr 25 19:43:52 2011 -0400"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Mon Apr 25 19:43:52 2011 -0400"
      },
      "message": "Btrfs: check return value of kmalloc()\n\nThe check on the return value of kmalloc() is added to some places.\n\nSigned-off-by: Tsutomu Itoh \u003ct-itoh@jp.fujitsu.com\u003e\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n"
    },
    {
      "commit": "43e817a1fdda17f3357602ed7964c248c8c53ae0",
      "tree": "a6064abb7f4a4eecc6c6fbbb37a0a53ede93c979",
      "parents": [
        "a62f44a5f47ce45e524b55f91542dc386c6de7ef"
      ],
      "author": {
        "name": "Itaru Kitayama",
        "email": "kitayama@cl.bb4u.ne.jp",
        "time": "Mon Apr 25 19:43:51 2011 -0400"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Mon Apr 25 19:43:51 2011 -0400"
      },
      "message": "btrfs: fix wrong allocating flag when reading page\n\nthe space cache use extent_readpages() to read free space information,\nso we can not use GFP_KERNEL flag to allocate memory, or it may lead\nto deadlock.\n\nSigned-off-by: Itaru Kitayama \u003ckitayama@cl.bb4u.ne.jp\u003e\nSigned-off-by: Miao Xie \u003cmiaox@cn.fujitsu.com\u003e\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n"
    },
    {
      "commit": "a62f44a5f47ce45e524b55f91542dc386c6de7ef",
      "tree": "9385c5bb077e74a9e97ce048d8e615142366cc52",
      "parents": [
        "f65647c29b14f5a32ff6f3237b0ef3b375ed5a79"
      ],
      "author": {
        "name": "Tsutomu Itoh",
        "email": "t-itoh@jp.fujitsu.com",
        "time": "Mon Apr 25 19:43:51 2011 -0400"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Mon Apr 25 19:43:51 2011 -0400"
      },
      "message": "Btrfs: fix missing mutex_unlock in btrfs_del_dir_entries_in_log()\n\nIt is necessary to unlock mutex_lock before it return an error when\nbtrfs_alloc_path() fails.\n\nSigned-off-by: Tsutomu Itoh \u003ct-itoh@jp.fujitsu.com\u003e\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n"
    },
    {
      "commit": "332ab16f830f59e7621ae8eb2c353dc135a316f6",
      "tree": "c5b249f34dcacf2aa5ee24de8d332d8171398203",
      "parents": [
        "dd55c89852481a0708c3fd4b48f3081f4280d9d3"
      ],
      "author": {
        "name": "Tyler Hicks",
        "email": "tyhicks@linux.vnet.ibm.com",
        "time": "Thu Apr 14 15:35:11 2011 -0500"
      },
      "committer": {
        "name": "Tyler Hicks",
        "email": "tyhicks@linux.vnet.ibm.com",
        "time": "Mon Apr 25 18:32:37 2011 -0500"
      },
      "message": "eCryptfs: Add reference counting to lower files\n\nFor any given lower inode, eCryptfs keeps only one lower file open and\nmultiplexes all eCryptfs file operations through that lower file. The\nlower file was considered \"persistent\" and stayed open from the first\nlookup through the lifetime of the inode.\n\nThis patch keeps the notion of a single, per-inode lower file, but adds\nreference counting around the lower file so that it is closed when not\ncurrently in use. If the reference count is at 0 when an operation (such\nas open, create, etc.) needs to use the lower file, a new lower file is\nopened. Since the file is no longer persistent, all references to the\nterm persistent file are changed to lower file.\n\nLocking is added around the sections of code that opens the lower file\nand assign the pointer in the inode info, as well as the code the fputs\nthe lower file when all eCryptfs users are done with it.\n\nThis patch is needed to fix issues, when mounted on top of the NFSv3\nclient, where the lower file is left silly renamed until the eCryptfs\ninode is destroyed.\n\nSigned-off-by: Tyler Hicks \u003ctyhicks@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "dd55c89852481a0708c3fd4b48f3081f4280d9d3",
      "tree": "36e516d3802f5854a9e25610bdfd2382f497ef0d",
      "parents": [
        "35ffa948b2f7bdf79e488cd496232935d095087a"
      ],
      "author": {
        "name": "Tyler Hicks",
        "email": "tyhicks@linux.vnet.ibm.com",
        "time": "Tue Apr 12 11:23:09 2011 -0500"
      },
      "committer": {
        "name": "Tyler Hicks",
        "email": "tyhicks@linux.vnet.ibm.com",
        "time": "Mon Apr 25 18:32:36 2011 -0500"
      },
      "message": "eCryptfs: dput dentries returned from dget_parent\n\nCall dput on the dentries previously returned by dget_parent() in\necryptfs_rename(). This is needed for supported eCryptfs mounts on top\nof the NFSv3 client.\n\nSigned-off-by: Tyler Hicks \u003ctyhicks@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "35ffa948b2f7bdf79e488cd496232935d095087a",
      "tree": "c9b6ac16421f798813844b7299f6fbb8ee8baa14",
      "parents": [
        "5dd12af05ca6b7d052c06a9ca4ff755fdfa25ae4"
      ],
      "author": {
        "name": "Tyler Hicks",
        "email": "tyhicks@linux.vnet.ibm.com",
        "time": "Tue Apr 12 11:21:36 2011 -0500"
      },
      "committer": {
        "name": "Tyler Hicks",
        "email": "tyhicks@linux.vnet.ibm.com",
        "time": "Mon Apr 25 18:32:35 2011 -0500"
      },
      "message": "eCryptfs: Remove extra d_delete in ecryptfs_rmdir\n\nvfs_rmdir() already calls d_delete() on the lower dentry. That was being\nduplicated in ecryptfs_rmdir() and caused a NULL pointer dereference\nwhen NFSv3 was the lower filesystem.\n\nSigned-off-by: Tyler Hicks \u003ctyhicks@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "8705b48e7159655c116154928fe104fd6561fa94",
      "tree": "cc4ec88cddb591a8b20482bb802615f94230ff40",
      "parents": [
        "ad58671cf32c74a8d6e8f51e63e9cf4e7a73bf1e"
      ],
      "author": {
        "name": "Jonathan Cameron",
        "email": "jic23@cam.ac.uk",
        "time": "Tue Apr 19 12:43:46 2011 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Apr 25 16:04:52 2011 -0700"
      },
      "message": "debugfs: move to new strtobool\n\nNo functional changes requires that we eat errors from strtobool.\nIf people want to not do this, then it should be fixed at a later date.\n\nV2: Simplification suggested by Rusty Russell removes the need for\nadditional variable ret.\n\nSigned-off-by: Jonathan Cameron \u003cjic23@cam.ac.uk\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "1bd714f2a14aa4d6a5570956fcec64530b007e4a",
      "tree": "7b468cf5e79a13e3931dda377b95c759475c95ae",
      "parents": [
        "7494d00c7b826b6ceb79ec33892bd0ef59be5614"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sun Apr 24 14:29:33 2011 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sun Apr 24 14:29:33 2011 -0400"
      },
      "message": "NFSv4: Ensure that clientid and session establishment can time out\n\nThe following patch ensures that we do not get permanently trapped in\nthe RPC layer when trying to establish a new client id or session.\nThis again ensures that the state manager can finish in a timely\nfashion when the last filesystem to reference the nfs_client exits.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    }
  ],
  "next": "fd954ae124e8a866e9cc1bc3de9a07be5492f608"
}
