)]}'
{
  "log": [
    {
      "commit": "0c193886b8ae3c92ea8741a82bcec41856b987e2",
      "tree": "6ffa4a08938028dc6ab74110290f3da7157a0311",
      "parents": [
        "e320a9857a678c229613cedb55bc43f15032f7a6"
      ],
      "author": {
        "name": "Naoya Horiguchi",
        "email": "n-horiguchi@ah.jp.nec.com",
        "time": "Thu May 22 11:54:21 2014 -0700"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 14:14:17 2015 -0500"
      },
      "message": "mm/memory-failure.c: fix memory leak by race between poison and unpoison\n\ncommit 3e030ecc0fc7de10fd0da10c1c19939872a31717 upstream.\n\nWhen a memory error happens on an in-use page or (free and in-use)\nhugepage, the victim page is isolated with its refcount set to one.\n\nWhen you try to unpoison it later, unpoison_memory() calls put_page()\nfor it twice in order to bring the page back to free page pool (buddy or\nfree hugepage list).  However, if another memory error occurs on the\npage which we are unpoisoning, memory_failure() returns without\nreleasing the refcount which was incremented in the same call at first,\nwhich results in memory leak and unconsistent num_poisoned_pages\nstatistics.  This patch fixes it.\n\nSigned-off-by: Naoya Horiguchi \u003cn-horiguchi@ah.jp.nec.com\u003e\nCc: Andi Kleen \u003candi@firstfloor.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "e320a9857a678c229613cedb55bc43f15032f7a6",
      "tree": "ee5d228f81b658df5daad4a237d01843f0ea87ad",
      "parents": [
        "ca604967d56a9ad8ebe3690ca046b8d87462a7a5"
      ],
      "author": {
        "name": "Jianyu Zhan",
        "email": "nasa4836@gmail.com",
        "time": "Mon Apr 14 13:47:40 2014 +0800"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 14:14:05 2015 -0500"
      },
      "message": "percpu: make pcpu_alloc_chunk() use pcpu_mem_free() instead of kfree()\n\ncommit 5a838c3b60e3a36ade764cf7751b8f17d7c9c2da upstream.\n\npcpu_chunk_struct_size \u003d sizeof(struct pcpu_chunk) +\n\tBITS_TO_LONGS(pcpu_unit_pages) * sizeof(unsigned long)\n\nIt hardly could be ever bigger than PAGE_SIZE even for large-scale machine,\nbut for consistency with its couterpart pcpu_mem_zalloc(),\nuse pcpu_mem_free() instead.\n\nCommit b4916cb17c26 (\"percpu: make pcpu_free_chunk() use\npcpu_mem_free() instead of kfree()\") addressed this problem, but\nmissed this one.\n\ntj: commit message updated\n\nSigned-off-by: Jianyu Zhan \u003cnasa4836@gmail.com\u003e\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nFixes: 099a19d91ca4 (\"percpu: allow limited allocation before slab is online)\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "ca604967d56a9ad8ebe3690ca046b8d87462a7a5",
      "tree": "d57ca17197383749e555f2c4aae9df2777323b21",
      "parents": [
        "0688da1921c21bfcb0d616056467f297092bf702"
      ],
      "author": {
        "name": "Chen Yucong",
        "email": "slaoub@gmail.com",
        "time": "Thu May 22 11:54:15 2014 -0700"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 14:13:44 2015 -0500"
      },
      "message": "hwpoison, hugetlb: lock_page/unlock_page does not match for handling a free hugepage\n\ncommit b985194c8c0a130ed155b71662e39f7eaea4876f upstream.\n\nFor handling a free hugepage in memory failure, the race will happen if\nanother thread hwpoisoned this hugepage concurrently.  So we need to\ncheck PageHWPoison instead of !PageHWPoison.\n\nIf hwpoison_filter(p) returns true or a race happens, then we need to\nunlock_page(hpage).\n\nSigned-off-by: Chen Yucong \u003cslaoub@gmail.com\u003e\nReviewed-by: Naoya Horiguchi \u003cn-horiguchi@ah.jp.nec.com\u003e\nTested-by: Naoya Horiguchi \u003cn-horiguchi@ah.jp.nec.com\u003e\nReviewed-by: Andi Kleen \u003cak@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "0688da1921c21bfcb0d616056467f297092bf702",
      "tree": "0a74125d31223ddfcf1cf5e942140e7309415ffb",
      "parents": [
        "9285d6160ed0ed37180f6f2cc9fac9f0dd442a61"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 22 13:49:40 2014 -0700"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 14:13:33 2015 -0500"
      },
      "message": "mm: make fixup_user_fault() check the vma access rights too\n\ncommit 1b17844b29ae042576bea588164f2f1e9590a8bc upstream.\n\nfixup_user_fault() is used by the futex code when the direct user access\nfails, and the futex code wants it to either map in the page in a usable\nform or return an error.  It relied on handle_mm_fault() to map the\npage, and correctly checked the error return from that, but while that\ndoes map the page, it doesn\u0027t actually guarantee that the page will be\nmapped with sufficient permissions to be then accessed.\n\nSo do the appropriate tests of the vma access rights by hand.\n\n[ Side note: arguably handle_mm_fault() could just do that itself, but\n  we have traditionally done it in the caller, because some callers -\n  notably get_user_pages() - have been able to access pages even when\n  they are mapped with PROT_NONE.  Maybe we should re-visit that design\n  decision, but in the meantime this is the minimal patch. ]\n\nFound by Dave Jones running his trinity tool.\n\nReported-by: Dave Jones \u003cdavej@redhat.com\u003e\nAcked-by: Hugh Dickins \u003chughd@google.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "9285d6160ed0ed37180f6f2cc9fac9f0dd442a61",
      "tree": "6e111434058694cb81c13052132c3b4290acf9a5",
      "parents": [
        "bb05a9d3d1ab7943c15bc92bbdd7a2d7c7848646"
      ],
      "author": {
        "name": "Mizuma, Masayoshi",
        "email": "m.mizuma@jp.fujitsu.com",
        "time": "Fri Apr 18 15:07:18 2014 -0700"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 14:12:45 2015 -0500"
      },
      "message": "mm/hugetlb.c: add cond_resched_lock() in return_unused_surplus_pages()\n\ncommit 7848a4bf51b34f41fcc9bd77e837126d99ae84e3 upstream.\n\nsoft lockup in freeing gigantic hugepage fixed in commit 55f67141a892 \"mm:\nhugetlb: fix softlockup when a large number of hugepages are freed.\" can\nhappen in return_unused_surplus_pages(), so let\u0027s fix it.\n\nSigned-off-by: Masayoshi Mizuma \u003cm.mizuma@jp.fujitsu.com\u003e\nSigned-off-by: Naoya Horiguchi \u003cn-horiguchi@ah.jp.nec.com\u003e\nCc: Joonsoo Kim \u003ciamjoonsoo.kim@lge.com\u003e\nCc: Michal Hocko \u003cmhocko@suse.cz\u003e\nCc: Aneesh Kumar \u003caneesh.kumar@linux.vnet.ibm.com\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "bb05a9d3d1ab7943c15bc92bbdd7a2d7c7848646",
      "tree": "992926b93b6c1ef49a23abb535f7836b6f9cd633",
      "parents": [
        "00ce7ee8a4332aadc0bbc63dbbfb952e12635513"
      ],
      "author": {
        "name": "Mizuma, Masayoshi",
        "email": "m.mizuma@jp.fujitsu.com",
        "time": "Mon Apr 07 15:37:54 2014 -0700"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 14:12:30 2015 -0500"
      },
      "message": "mm: hugetlb: fix softlockup when a large number of hugepages are freed.\n\ncommit 55f67141a8927b2be3e51840da37b8a2320143ed upstream.\n\nWhen I decrease the value of nr_hugepage in procfs a lot, softlockup\nhappens.  It is because there is no chance of context switch during this\nprocess.\n\nOn the other hand, when I allocate a large number of hugepages, there is\nsome chance of context switch.  Hence softlockup doesn\u0027t happen during\nthis process.  So it\u0027s necessary to add the context switch in the\nfreeing process as same as allocating process to avoid softlockup.\n\nWhen I freed 12 TB hugapages with kernel-2.6.32-358.el6, the freeing\nprocess occupied a CPU over 150 seconds and following softlockup message\nappeared twice or more.\n\n$ echo 6000000 \u003e /proc/sys/vm/nr_hugepages\n$ cat /proc/sys/vm/nr_hugepages\n6000000\n$ grep ^Huge /proc/meminfo\nHugePages_Total:   6000000\nHugePages_Free:    6000000\nHugePages_Rsvd:        0\nHugePages_Surp:        0\nHugepagesize:       2048 kB\n$ echo 0 \u003e /proc/sys/vm/nr_hugepages\n\nBUG: soft lockup - CPU#16 stuck for 67s! [sh:12883] ...\nPid: 12883, comm: sh Not tainted 2.6.32-358.el6.x86_64 #1\nCall Trace:\n  free_pool_huge_page+0xb8/0xd0\n  set_max_huge_pages+0x128/0x190\n  hugetlb_sysctl_handler_common+0x113/0x140\n  hugetlb_sysctl_handler+0x1e/0x20\n  proc_sys_call_handler+0x97/0xd0\n  proc_sys_write+0x14/0x20\n  vfs_write+0xb8/0x1a0\n  sys_write+0x51/0x90\n  __audit_syscall_exit+0x265/0x290\n  system_call_fastpath+0x16/0x1b\n\nI have not confirmed this problem with upstream kernels because I am not\nable to prepare the machine equipped with 12TB memory now.  However I\nconfirmed that the amount of decreasing hugepages was directly\nproportional to the amount of required time.\n\nI measured required times on a smaller machine.  It showed 130-145\nhugepages decreased in a millisecond.\n\n  Amount of decreasing     Required time      Decreasing rate\n  hugepages                     (msec)         (pages/msec)\n  ------------------------------------------------------------\n  10,000 pages \u003d\u003d 20GB         70 -  74          135-142\n  30,000 pages \u003d\u003d 60GB        208 - 229          131-144\n\nIt means decrement of 6TB hugepages will trigger softlockup with the\ndefault threshold 20sec, in this decreasing rate.\n\nSigned-off-by: Masayoshi Mizuma \u003cm.mizuma@jp.fujitsu.com\u003e\nCc: Joonsoo Kim \u003ciamjoonsoo.kim@lge.com\u003e\nCc: Michal Hocko \u003cmhocko@suse.cz\u003e\nCc: Wanpeng Li \u003cliwanp@linux.vnet.ibm.com\u003e\nCc: Aneesh Kumar \u003caneesh.kumar@linux.vnet.ibm.com\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Naoya Horiguchi \u003cn-horiguchi@ah.jp.nec.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "00ce7ee8a4332aadc0bbc63dbbfb952e12635513",
      "tree": "ab3fb95978ef4fb8092b486a462b39d4b490192d",
      "parents": [
        "6ce1f75533e1f5e35dca468f02b201d3f394246c"
      ],
      "author": {
        "name": "Jiang Liu",
        "email": "jiang.liu@huawei.com",
        "time": "Tue Jul 31 16:43:30 2012 -0700"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 14:12:02 2015 -0500"
      },
      "message": "mm/hotplug: correctly add new zone to all other nodes\u0027 zone lists\n\ncommit 08dff7b7d629807dbb1f398c68dd9cd58dd657a1 upstream.\n\nWhen online_pages() is called to add new memory to an empty zone, it\nrebuilds all zone lists by calling build_all_zonelists().  But there\u0027s a\nbug which prevents the new zone to be added to other nodes\u0027 zone lists.\n\nonline_pages() {\n\tbuild_all_zonelists()\n\t.....\n\tnode_set_state(zone_to_nid(zone), N_HIGH_MEMORY)\n}\n\nHere the node of the zone is put into N_HIGH_MEMORY state after calling\nbuild_all_zonelists(), but build_all_zonelists() only adds zones from\nnodes in N_HIGH_MEMORY state to the fallback zone lists.\nbuild_all_zonelists()\n\n    -\u003e__build_all_zonelists()\n\t-\u003ebuild_zonelists()\n\t    -\u003efind_next_best_node()\n\t\t-\u003efor_each_node_state(n, N_HIGH_MEMORY)\n\nSo memory in the new zone will never be used by other nodes, and it may\ncause strange behavor when system is under memory pressure.  So put node\ninto N_HIGH_MEMORY state before calling build_all_zonelists().\n\nChange-Id: If2d5449b4867669b1f8a56094788e601afe27f3c\nSigned-off-by: Jianguo Wu \u003cwujianguo@huawei.com\u003e\nSigned-off-by: Jiang Liu \u003cliuj97@gmail.com\u003e\nCc: Mel Gorman \u003cmgorman@suse.de\u003e\nCc: Michal Hocko \u003cmhocko@suse.cz\u003e\nCc: Minchan Kim \u003cminchan@kernel.org\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Yinghai Lu \u003cyinghai@kernel.org\u003e\nCc: Tony Luck \u003ctony.luck@intel.com\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: Keping Chen \u003cchenkeping@huawei.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n[bwh: Backported to 3.2: adjust context]\nSigned-off-by: Ben Hutchings \u003cben@decadent.org.uk\u003e\nCc: Qiang Huang \u003ch.huangqiang@huawei.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "6ce1f75533e1f5e35dca468f02b201d3f394246c",
      "tree": "f4a5b2e868476b4d6d9c460b877b052f13b55db5",
      "parents": [
        "ec732ce784b4093f155470c376ae716da7ea26a6"
      ],
      "author": {
        "name": "Dan Pasanen",
        "email": "dan.pasanen@gmail.com",
        "time": "Sat Aug 02 22:47:23 2014 -0500"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 12:45:32 2015 -0500"
      },
      "message": "zsmalloc: use updated zsmalloc\n\nChange-Id: Ic81bce80b0a48e91b0f102579f2eb318680e0710\n"
    },
    {
      "commit": "ec732ce784b4093f155470c376ae716da7ea26a6",
      "tree": "42378f3113da63d1bbce0d7a74b888c616bac79d",
      "parents": [
        "ff0a827ecc8aff2c26bd4a2e8460580fef41fbcc"
      ],
      "author": {
        "name": "Steve Kondik",
        "email": "shade@chemlab.org",
        "time": "Sat Aug 02 22:45:22 2014 -0500"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 12:45:12 2015 -0500"
      },
      "message": "drivers: staging: Fix Zcache\n\n* Remove dependency on and disable obsolete qcache\n* Fix args for updated zsmalloc and remove X86 dependency\n* Enable for tenderloin/regen defconfig\n\nChange-Id: Id75106aad19a3f9d0cd5a9f0f0d983f4886f4aba\n"
    },
    {
      "commit": "ff0a827ecc8aff2c26bd4a2e8460580fef41fbcc",
      "tree": "5fbf6ec7d239e5d8e79920cdc581b6f4d242c739",
      "parents": [
        "21c99f981616a12644a43b70c2f8bed8178acc10"
      ],
      "author": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 12:34:52 2015 -0500"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 12:34:52 2015 -0500"
      },
      "message": "defconfig:  update tenderloin defconfig\n\nChange-Id: I4f03e989940c84165cf840bcb9f153d6ba8c852e\n"
    },
    {
      "commit": "21c99f981616a12644a43b70c2f8bed8178acc10",
      "tree": "457c37a5adf512e7a8117fb148b2b74b1dcb8c38",
      "parents": [
        "5681391950a5f052a2bd816bd822c5c094a6d29a"
      ],
      "author": {
        "name": "Dan Pasanen",
        "email": "dan.pasanen@gmail.com",
        "time": "Wed Dec 17 13:00:48 2014 -0600"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 12:24:04 2015 -0500"
      },
      "message": "zram: fix warnings\n\n* the world runs on casts\n\nChange-Id: Ic53c21e97d974d119318453f71419d2c8c117545\n"
    },
    {
      "commit": "5681391950a5f052a2bd816bd822c5c094a6d29a",
      "tree": "619a4b36779094ef4b09f231ef5ec7d09e2dabe8",
      "parents": [
        "13200253865cbd9f8ffeb07988377b580d011f0a"
      ],
      "author": {
        "name": "Rashika Kheria",
        "email": "rashika.kheria@gmail.com",
        "time": "Sun Nov 10 22:13:53 2013 +0530"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 12:23:48 2015 -0500"
      },
      "message": "Staging: zram: Fix memory leak by refcount mismatch\n\ncommit 1b672224d128ec2570eb37572ff803cfe452b4f7 upstream.\n\nAs suggested by Minchan Kim and Jerome Marchand \"The code in reset_store\nget the block device (bdget_disk()) but it does not put it (bdput()) when\nit\u0027s done using it. The usage count is therefore incremented but never\ndecremented.\"\n\nThis patch also puts bdput() for all error cases.\n\nAcked-by: Minchan Kim \u003cminchan@kernel.org\u003e\nAcked-by: Jerome Marchand \u003cjmarchan@redhat.com\u003e\nSigned-off-by: Rashika Kheria \u003crashika.kheria@gmail.com\u003e\n[bwh: Backported to 3.2: adjust filename, context]\nSigned-off-by: Ben Hutchings \u003cben@decadent.org.uk\u003e\n[wyj: Backported to 3.4: adjust context]\nSigned-off-by: Yijing Wang \u003cwangyijing@huawei.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "13200253865cbd9f8ffeb07988377b580d011f0a",
      "tree": "b60e39259ecd7366721b276e72532fccfed0eccd",
      "parents": [
        "67d0b4d2e49b3e42a788e2a407a8dff4b609a995"
      ],
      "author": {
        "name": "Jiang Liu",
        "email": "liuj97@gmail.com",
        "time": "Fri Jun 07 00:07:27 2013 +0800"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 12:23:36 2015 -0500"
      },
      "message": "zram: protect sysfs handler from invalid memory access\n\ncommit 5863e10b441e7ea4b492f930f1be180a97d026f3 upstream.\n\nUse zram-\u003einit_lock to protect access to zram-\u003emeta, otherwise it\nmay cause invalid memory access if zram-\u003emeta has been freed by\nzram_reset_device().\n\nThis issue may be triggered by:\nThread 1:\nwhile true; do cat mem_used_total; done\nThread 2:\nwhile true; do echo 8M \u003e disksize; echo 1 \u003e reset; done\n\nSigned-off-by: Jiang Liu \u003cjiang.liu@huawei.com\u003e\nAcked-by: Minchan Kim \u003cminchan@kernel.org\u003e\n[bwh: Backported to 3.2: adjust context]\nSigned-off-by: Ben Hutchings \u003cben@decadent.org.uk\u003e\n[wyj: Backported to 3.4: adjust context]\nSigned-off-by: Yijing Wang \u003cwangyijing@huawei.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "67d0b4d2e49b3e42a788e2a407a8dff4b609a995",
      "tree": "b7412fe5a7dcc87910fc3a2cfba8fb8b1bd7d973",
      "parents": [
        "4301a3616deb8e2806cb7b63eb63d000ed5afd0f"
      ],
      "author": {
        "name": "Rashika Kheria",
        "email": "rashika.kheria@gmail.com",
        "time": "Wed Oct 30 18:36:32 2013 +0530"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 12:23:21 2015 -0500"
      },
      "message": "Staging: zram: Fix access of NULL pointer\n\ncommit 46a51c80216cb891f271ad021f59009f34677499 upstream.\n\nThis patch fixes the bug in reset_store caused by accessing NULL pointer.\n\nThe bdev gets its value from bdget_disk() which could fail when memory\npressure is severe and hence can return NULL because allocation of\ninode in bdget could fail.\n\nHence, this patch introduces a check for bdev to prevent reference to a\nNULL pointer in the later part of the code. It also removes unnecessary\ncheck of bdev for fsync_bdev().\n\nAcked-by: Jerome Marchand \u003cjmarchan@redhat.com\u003e\nSigned-off-by: Rashika Kheria \u003crashika.kheria@gmail.com\u003e\nAcked-by: Minchan Kim \u003cminchan@kernel.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n[bwh: Backported to 3.2: adjust filename]\nSigned-off-by: Ben Hutchings \u003cben@decadent.org.uk\u003e\nCc: Jianguo Wu \u003cwujianguo@huawei.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "4301a3616deb8e2806cb7b63eb63d000ed5afd0f",
      "tree": "92151a56e603a4fd01392556a230a2a7a57dc312",
      "parents": [
        "1437f2753132d6496c840dbbcf9c51854de31256"
      ],
      "author": {
        "name": "Sergey Senozhatsky",
        "email": "sergey.senozhatsky@gmail.com",
        "time": "Sat Jun 22 17:21:00 2013 +0300"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 12:23:19 2015 -0500"
      },
      "message": "zram: allow request end to coincide with disksize\n\ncommit 75c7caf5a052ffd8db3312fa7864ee2d142890c4 upstream.\n\nPass valid_io_request() checks if request end coincides with disksize\n(end equals bound), only fail if we attempt to read beyond the bound.\n\nmkfs.ext2 produces numerous errors:\n[ 2164.632747] quiet_error: 1 callbacks suppressed\n[ 2164.633260] Buffer I/O error on device zram0, logical block 153599\n[ 2164.633265] lost page write due to I/O error on zram0\n\nSigned-off-by: Sergey Senozhatsky \u003csergey.senozhatsky@gmail.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\nSigned-off-by: Ben Hutchings \u003cben@decadent.org.uk\u003e\nCc: Jianguo Wu \u003cwujianguo@huawei.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "1437f2753132d6496c840dbbcf9c51854de31256",
      "tree": "b0e37226b22324dac66a3dcaa30319cb8c338dea",
      "parents": [
        "cd49b1b4036c06e026c335a84695acd5244e1300"
      ],
      "author": {
        "name": "Jiang Liu",
        "email": "liuj97@gmail.com",
        "time": "Fri Jun 07 00:07:26 2013 +0800"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 12:23:18 2015 -0500"
      },
      "message": "zram: avoid access beyond the zram device\n\ncommit 12a7ad3b810e77137d0caf97a6dd97591e075b30 upstream.\n\nFunction valid_io_request() should verify the entire request are within\nthe zram device address range. Otherwise it may cause invalid memory\naccess when accessing/modifying zram-\u003emeta-\u003etable[index] because the\n\u0027index\u0027 is out of range. Then it may access non-exist memory, randomly\nmodify memory belong to other subsystems, which is hard to track down.\n\nSigned-off-by: Jiang Liu \u003cjiang.liu@huawei.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\nSigned-off-by: Ben Hutchings \u003cben@decadent.org.uk\u003e\nCc: Jianguo Wu \u003cwujianguo@huawei.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "cd49b1b4036c06e026c335a84695acd5244e1300",
      "tree": "c898ec6b0477b73fb8433db4471e84deefea458c",
      "parents": [
        "cfeed36c590b276c4a10e41fd331b07a5db4a100"
      ],
      "author": {
        "name": "Jiang Liu",
        "email": "liuj97@gmail.com",
        "time": "Fri Jun 07 00:07:24 2013 +0800"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 12:23:17 2015 -0500"
      },
      "message": "zram: destroy all devices on error recovery path in zram_init()\n\ncommit 39a9b8ac9333e4268ecff7da6c9d1ab3823ff243 upstream.\n\nOn error recovery path of zram_init(), it leaks the zram device object\ncausing the failure. So change create_device() to free allocated\nresources on error path.\n\nSigned-off-by: Jiang Liu \u003cjiang.liu@huawei.com\u003e\nAcked-by: Minchan Kim \u003cminchan@kernel.org\u003e\nAcked-by: Jerome Marchand \u003cjmarchan@redhat.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n[bwh: Backported to 3.2: adjust context]\nSigned-off-by: Ben Hutchings \u003cben@decadent.org.uk\u003e\nCc: Jianguo Wu \u003cwujianguo@huawei.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "cfeed36c590b276c4a10e41fd331b07a5db4a100",
      "tree": "38b16fe0baedd4ef6beaa46601f4fb75c5bd3054",
      "parents": [
        "14cf7808ff34a6e6cb85687aae86f0974f84536a"
      ],
      "author": {
        "name": "Jiang Liu",
        "email": "liuj97@gmail.com",
        "time": "Fri Jun 07 00:07:22 2013 +0800"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 12:23:16 2015 -0500"
      },
      "message": "zram: avoid invalid memory access in zram_exit()\n\ncommit 6030ea9b35971a4200062f010341ab832e878ac9 upstream.\n\nMemory for zram-\u003edisk object may have already been freed after returning\nfrom destroy_device(zram), then it\u0027s unsafe for zram_reset_device(zram)\nto access zram-\u003edisk again.\n\nWe can\u0027t solve this bug by flipping the order of destroy_device(zram)\nand zram_reset_device(zram), that will cause deadlock issues to the\nzram sysfs handler.\n\nSo fix it by holding an extra reference to zram-\u003edisk before calling\ndestroy_device(zram).\n\nSigned-off-by: Jiang Liu \u003cjiang.liu@huawei.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n[bwh: Backported to 3.2: adjust context]\nSigned-off-by: Ben Hutchings \u003cben@decadent.org.uk\u003e\nCc: Jianguo Wu \u003cwujianguo@huawei.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "14cf7808ff34a6e6cb85687aae86f0974f84536a",
      "tree": "96fcd4a1d66499610f7d0f6292efb5528f2da873",
      "parents": [
        "b26b75afa09bb37e14a495fd5bad8d0b781a5f7d"
      ],
      "author": {
        "name": "Minchan Kim",
        "email": "minchan@kernel.org",
        "time": "Wed Jan 30 11:41:39 2013 +0900"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 12:22:59 2015 -0500"
      },
      "message": "zram: Fix deadlock bug in partial read/write\n\ncommit 7e5a5104c6af709a8d97d5f4711e7c917761d464 upstream.\n\nNow zram allocates new page with GFP_KERNEL in zram I/O path\nif IO is partial. Unfortunately, It may cause deadlock with\nreclaim path like below.\n\nwrite_page from fs\nfs_lock\nallocation(GFP_KERNEL)\nreclaim\npageout\n\t\t\t\twrite_page from fs\n\t\t\t\tfs_lock \u003c-- deadlock\n\nThis patch fixes it by using GFP_NOIO.  In read path, we\nreorganize code flow so that kmap_atomic is called after the\nGFP_NOIO allocation.\n\nAcked-by: Jerome Marchand \u003cjmarchand@redhat.com\u003e\nAcked-by: Nitin Gupta \u003cngupta@vflare.org\u003e\n[ penberg@kernel.org: don\u0027t use GFP_ATOMIC ]\nSigned-off-by: Pekka Enberg \u003cpenberg@kernel.org\u003e\nSigned-off-by: Minchan Kim \u003cminchan@kernel.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n[bwh: Backported to 3.2: no reordering is needed in the read path]\nSigned-off-by: Ben Hutchings \u003cben@decadent.org.uk\u003e\nCc: Jianguo Wu \u003cwujianguo@huawei.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "b26b75afa09bb37e14a495fd5bad8d0b781a5f7d",
      "tree": "f84994ee5a864b374acb6bf727c0e9144196b376",
      "parents": [
        "5c27bc650890994f80a253adebe47719dbc721d2"
      ],
      "author": {
        "name": "Xiao Guangrong",
        "email": "xiaoguangrong@linux.vnet.ibm.com",
        "time": "Tue Jun 26 16:52:50 2012 +0800"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 12:21:51 2015 -0500"
      },
      "message": "staging: zcache: cleanup the code between tmem_obj_init and tmem_obj_find\n\ntmem_obj_find and insertion tmem-obj have the some logic, we can integrate\nthe code\n\nSigned-off-by: Xiao Guangrong \u003cxiaoguangrong@linux.vnet.ibm.com\u003e\nAcked-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "5c27bc650890994f80a253adebe47719dbc721d2",
      "tree": "dcd961e39d10cc8854296f541e2755e0dee946ad",
      "parents": [
        "e64414faaf47169029c242b85c99e8ad2a5d45bf"
      ],
      "author": {
        "name": "Xiao Guangrong",
        "email": "xiaoguangrong@linux.vnet.ibm.com",
        "time": "Tue Jun 26 16:52:17 2012 +0800"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 12:21:50 2015 -0500"
      },
      "message": "staging: zcache: introduce get_zcache_client\n\nIntroduce get_zcache_client to remove the common code\n\nAcked-by: Seth Jennings \u003csjenning@linux.vnet.ibm.com\u003e\nSigned-off-by: Xiao Guangrong \u003cxiaoguangrong@linux.vnet.ibm.com\u003e\nAcked-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "e64414faaf47169029c242b85c99e8ad2a5d45bf",
      "tree": "13b76fcf198772e3831b3640497b03f06eaf2814",
      "parents": [
        "9c7b20f371f3d64955d77eaa269a6f0f6886516c"
      ],
      "author": {
        "name": "Xiao Guangrong",
        "email": "xiaoguangrong@linux.vnet.ibm.com",
        "time": "Tue Jun 26 16:51:55 2012 +0800"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 12:21:49 2015 -0500"
      },
      "message": "staging: zcache: cleanup zcache_do_preload and zcache_put_page\n\nCleanup the code for zcache_do_preload and zcache_put_page\n\nAcked-by: Seth Jennings \u003csjenning@linux.vnet.ibm.com\u003e\nSigned-off-by: Xiao Guangrong \u003cxiaoguangrong@linux.vnet.ibm.com\u003e\nAcked-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "9c7b20f371f3d64955d77eaa269a6f0f6886516c",
      "tree": "4bfea885e1ea4f658d830994dbc33b49e4b27296",
      "parents": [
        "63f8907bc3d28388d6b6cae3871a52a1241a4dcb"
      ],
      "author": {
        "name": "Xiao Guangrong",
        "email": "xiaoguangrong@linux.vnet.ibm.com",
        "time": "Tue Jun 26 16:51:34 2012 +0800"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 12:21:48 2015 -0500"
      },
      "message": "staging: zcache: optimize zcache_do_preload\n\nzcache_do_preload is called in zcache_put_page where IRQ is disabled, so, need\nnot care preempt\n\nAcked-by: Seth Jennings \u003csjenning@linux.vnet.ibm.com\u003e\nSigned-off-by: Xiao Guangrong \u003cxiaoguangrong@linux.vnet.ibm.com\u003e\nAcked-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "63f8907bc3d28388d6b6cae3871a52a1241a4dcb",
      "tree": "d2f439653da39673061e9b98132824116fd7e6c5",
      "parents": [
        "ef3fb013258d96b3e412ccb47c8ebe86804baf77"
      ],
      "author": {
        "name": "Xiao Guangrong",
        "email": "xiaoguangrong@linux.vnet.ibm.com",
        "time": "Tue Jun 26 16:51:10 2012 +0800"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 12:21:47 2015 -0500"
      },
      "message": "staging: zcache: cleanup zbud_init\n\nNeed not set global parameters to 0\n\nAcked-by: Seth Jennings \u003csjenning@linux.vnet.ibm.com\u003e\nSigned-off-by: Xiao Guangrong \u003cxiaoguangrong@linux.vnet.ibm.com\u003e\nAcked-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "ef3fb013258d96b3e412ccb47c8ebe86804baf77",
      "tree": "82ad71d52fe24003b744e1ca3c44babd2c4c5c42",
      "parents": [
        "a93eb41a1ab1a40a0e688008ff860d3080c65ebe"
      ],
      "author": {
        "name": "Xiao Guangrong",
        "email": "xiaoguangrong@linux.vnet.ibm.com",
        "time": "Tue Jun 26 16:50:50 2012 +0800"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 12:21:46 2015 -0500"
      },
      "message": "staging: zcache: mark zbud_init/zcache_comp_init as __init\n\nThese functions are called only when system is initializing, so mark __init\nfor them to free memory\n\nAcked-by: Seth Jennings \u003csjenning@linux.vnet.ibm.com\u003e\nSigned-off-by: Xiao Guangrong \u003cxiaoguangrong@linux.vnet.ibm.com\u003e\nAcked-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "a93eb41a1ab1a40a0e688008ff860d3080c65ebe",
      "tree": "adf61fa2fc838f21fd3c5ff5b2e82b9915ac04df",
      "parents": [
        "441f67ef9dae07e5a3e084f3d8b7a80f1cb7ab3a"
      ],
      "author": {
        "name": "Xiao Guangrong",
        "email": "xiaoguangrong@linux.vnet.ibm.com",
        "time": "Tue Jun 26 16:50:10 2012 +0800"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 12:21:45 2015 -0500"
      },
      "message": "staging: zcache: fix a compile warning\n\nFix:\n\ndrivers/staging/zcache/zcache-main.c: In function ‘zcache_comp_op’:\ndrivers/staging/zcache/zcache-main.c:112:2: warning: ‘ret’ may be used uninitial\n\nSigned-off-by: Xiao Guangrong \u003cxiaoguangrong@linux.vnet.ibm.com\u003e\nAcked-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "441f67ef9dae07e5a3e084f3d8b7a80f1cb7ab3a",
      "tree": "c93548c0fefb427ee7ab7f401c75ac444d163ff9",
      "parents": [
        "3cdda4cc633313d0338c3875570217e5365109c7"
      ],
      "author": {
        "name": "Xiao Guangrong",
        "email": "xiaoguangrong@linux.vnet.ibm.com",
        "time": "Tue Jun 26 16:49:46 2012 +0800"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 12:21:44 2015 -0500"
      },
      "message": "staging: zcache: fix refcount leak\n\nIn zcache_get_pool_by_id, the refcount of zcache_host is not increased, but\nit is always decreased in zcache_put_pool\n\nAcked-by: Seth Jennings \u003csjenning@linux.vnet.ibm.com\u003e\nSigned-off-by: Xiao Guangrong \u003cxiaoguangrong@linux.vnet.ibm.com\u003e\nAcked-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "3cdda4cc633313d0338c3875570217e5365109c7",
      "tree": "780479adefac0b912d82f6108ad909436328d0f2",
      "parents": [
        "36973180eb4b8af982eb4a497b333f1381994b47"
      ],
      "author": {
        "name": "Sasha Levin",
        "email": "levinsasha928@gmail.com",
        "time": "Wed Jun 06 21:05:48 2012 +0200"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 12:21:43 2015 -0500"
      },
      "message": "staging: zcache: don\u0027t limit number of pools per client\n\nCurrently the amount of pools each client can use is limited to 16, this is\nand arbitrary limit which isn\u0027t really required by current implementation.\n\nThis places and arbitrary limit on the number of mounted filesystems that\ncan use cleancache.\n\nThis patch removes that limit and uses IDR to do sparse mapping of pools\nin each client.\n\nSigned-off-by: Sasha Levin \u003clevinsasha928@gmail.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "36973180eb4b8af982eb4a497b333f1381994b47",
      "tree": "922e5d628bd73d9ab784c72df7b702615fd8990b",
      "parents": [
        "6bdc54c35be7b5468d140b14cc49d167a96502de"
      ],
      "author": {
        "name": "Steve Kondik",
        "email": "shade@chemlab.org",
        "time": "Sat Aug 02 22:45:22 2014 -0500"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 12:21:03 2015 -0500"
      },
      "message": "drivers: staging: Fix Zcache\n\n* Remove dependency on and disable obsolete qcache\n* Fix args for updated zsmalloc and remove X86 dependency\n* Enable for tenderloin/regen defconfig\n\nChange-Id: Id75106aad19a3f9d0cd5a9f0f0d983f4886f4aba\n"
    },
    {
      "commit": "6bdc54c35be7b5468d140b14cc49d167a96502de",
      "tree": "5cb1ac130f6f4e1935ae6a866b97868bb94be2bf",
      "parents": [
        "e7998db2e4e046b0e94adc8f1e73129e4b8053d3"
      ],
      "author": {
        "name": "Seth Jennings",
        "email": "sjenning@linux.vnet.ibm.com",
        "time": "Mon Jun 25 11:14:36 2012 -0500"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 12:19:14 2015 -0500"
      },
      "message": "CHROMIUM: UPSTREAM: staging: zram/zcache: swtich Kconfig dependency from X86 to ZSMALLOC\n\nupstream: commit 6e2361720b9da9ec830d407da058ca1827e62b12\n\nThis patch switches zcache and zram dependency to ZSMALLOC\nrather than X86.  There is no net change since ZSMALLOC\ndepends on X86, however, this prevent further changes to\nthese files as zsmalloc dependencies change.\n\nSigned-off-by: Seth Jennings \u003csjenning@linux.vnet.ibm.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\nBUG\u003dchromium-os:36829\nTEST\u003dcompile, verify that zram module is updated and /boot/config is correct\n\nChange-Id: I91f6ed46549fe62a9fe3035063d98beb2f5d966a\nSigned-off-by: Luigi Semenzato \u003csemenzato@chromium.org\u003e\nReviewed-on: https://gerrit.chromium.org/gerrit/39289\nTested-by: Luigi Semenzato \u003csemenzato@google.com\u003e\nReviewed-by: Sonny Rao \u003csonnyrao@chromium.org\u003e\nCommit-Ready: Luigi Semenzato \u003csemenzato@google.com\u003e\n\nConflicts:\n\tdrivers/staging/zram/Kconfig\n"
    },
    {
      "commit": "e7998db2e4e046b0e94adc8f1e73129e4b8053d3",
      "tree": "cf42661312ee1573ed3a90491a3704a6539b20f7",
      "parents": [
        "4ed23deffd5fc83d5c475a7b93548f5a633ed749"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Sun Aug 17 11:49:57 2014 +0200"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:41:34 2015 -0500"
      },
      "message": "isofs: Fix unbounded recursion when processing relocated directories\n\ncommit 410dd3cf4c9b36f27ed4542ee18b1af5e68645a4 upstream.\n\nWe did not check relocated directory in any way when processing Rock\nRidge \u0027CL\u0027 tag. Thus a corrupted isofs image can possibly have a CL\nentry pointing to another CL entry leading to possibly unbounded\nrecursion in kernel code and thus stack overflow or deadlocks (if there\nis a loop created from CL entries).\n\nFix the problem by not allowing CL entry to point to a directory entry\nwith CL entry (such use makes no good sense anyway) and by checking\nwhether CL entry doesn\u0027t point to itself.\n\nReported-by: Chris Evans \u003ccevans@google.com\u003e\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Zefan Li \u003clizefan@huawei.com\u003e\n"
    },
    {
      "commit": "4ed23deffd5fc83d5c475a7b93548f5a633ed749",
      "tree": "fdf93ff956a53ad88fac57bae0d4d8507fde3658",
      "parents": [
        "e3db71913f260e6dc68ab052d6ffdd9e2264fd93"
      ],
      "author": {
        "name": "Pavel Shilovsky",
        "email": "pshilovsky@samba.org",
        "time": "Mon Aug 18 20:49:58 2014 +0400"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:41:20 2015 -0500"
      },
      "message": "CIFS: Fix wrong directory attributes after rename\n\ncommit b46799a8f28c43c5264ac8d8ffa28b311b557e03 upstream.\n\nWhen we requests rename we also need to update attributes\nof both source and target parent directories. Not doing it\ncauses generic/309 xfstest to fail on SMB2 mounts. Fix this\nby marking these directories for force revalidating.\n\nSigned-off-by: Pavel Shilovsky \u003cpshilovsky@samba.org\u003e\nSigned-off-by: Steve French \u003csmfrench@gmail.com\u003e\nSigned-off-by: Zefan Li \u003clizefan@huawei.com\u003e\n"
    },
    {
      "commit": "e3db71913f260e6dc68ab052d6ffdd9e2264fd93",
      "tree": "2f075a90bbba4f87dc2f1319e29cfe6cf65859ca",
      "parents": [
        "9558f2af92f6be401656e16e07542fa2db5c1d42"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "trond.myklebust@primarydata.com",
        "time": "Mon Aug 25 22:33:12 2014 -0400"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:41:07 2015 -0500"
      },
      "message": "NFSv4: Fix problems with close in the presence of a delegation\n\ncommit aee7af356e151494d5014f57b33460b162f181b5 upstream.\n\nIn the presence of delegations, we can no longer assume that the\nstate-\u003en_rdwr, state-\u003en_rdonly, state-\u003en_wronly reflect the open\nstateid share mode, and so we need to calculate the initial value\nfor calldata-\u003earg.fmode using the state-\u003eflags.\n\nReported-by: James Drews \u003cdrews@engr.wisc.edu\u003e\nFixes: 88069f77e1ac5 (NFSv41: Fix a potential state leakage when...)\nSigned-off-by: Trond Myklebust \u003ctrond.myklebust@primarydata.com\u003e\n[lizf: Backport to 3.4: adjust context]\nSigned-off-by: Zefan Li \u003clizefan@huawei.com\u003e\n"
    },
    {
      "commit": "9558f2af92f6be401656e16e07542fa2db5c1d42",
      "tree": "4d0eff8df6fd798fce3710397489d23b697c7358",
      "parents": [
        "b809d1c6b0db127429c87e603d04b030cb6f3193"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Tue Nov 05 01:15:38 2013 +0100"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:40:46 2015 -0500"
      },
      "message": "ext2: Fix fs corruption in ext2_get_xip_mem()\n\ncommit 7ba3ec5749ddb61f79f7be17b5fd7720eebc52de upstream.\n\nCommit 8e3dffc651cb \"Ext2: mark inode dirty after the function\ndquot_free_block_nodirty is called\" unveiled a bug in __ext2_get_block()\ncalled from ext2_get_xip_mem(). That function called ext2_get_block()\nmistakenly asking it to map 0 blocks while 1 was intended. Before the\nabove mentioned commit things worked out fine by luck but after that commit\nwe started returning that we allocated 0 blocks while we in fact\nallocated 1 block and thus allocation was looping until all blocks in\nthe filesystem were exhausted.\n\nFix the problem by properly asking for one block and also add assertion\nin ext2_get_blocks() to catch similar problems.\n\nReported-and-tested-by: Andiry Xu \u003candiry.xu@gmail.com\u003e\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nCc: Wang Nan \u003cwangnan0@huawei.com\u003e\nSigned-off-by: Zefan Li \u003clizefan@huawei.com\u003e\n"
    },
    {
      "commit": "b809d1c6b0db127429c87e603d04b030cb6f3193",
      "tree": "087910833434c424e8aa3035292f30eb9b71afdd",
      "parents": [
        "a25044a78ba4906a28de2bb5ee3c98fb4abd4d6f"
      ],
      "author": {
        "name": "Jaegeuk Kim",
        "email": "jaegeuk@kernel.org",
        "time": "Fri Aug 29 00:26:50 2014 -0700"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:40:05 2015 -0500"
      },
      "message": "f2fs: fix wrong casting for dentry name\n\nThe dentry name type is unsigned char *.\nIf we don\u0027t match this type, some character codes can be changed by signed bit.\n\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk@kernel.org\u003e\n"
    },
    {
      "commit": "a25044a78ba4906a28de2bb5ee3c98fb4abd4d6f",
      "tree": "b99c1518e77ccf0dfc8983e4e97588320b02befe",
      "parents": [
        "a42582db7c938686b4c1c600261adf9886e8e828"
      ],
      "author": {
        "name": "Dan Carpenter",
        "email": "dan.carpenter@oracle.com",
        "time": "Thu Aug 28 16:13:21 2014 +0300"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:40:04 2015 -0500"
      },
      "message": "f2fs: simplify by using a literal\n\nWe can make the code a bit simpler because we know that \"!retry\" is\nzero.\n\nSigned-off-by: Dan Carpenter \u003cdan.carpenter@oracle.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk@kernel.org\u003e\n"
    },
    {
      "commit": "a42582db7c938686b4c1c600261adf9886e8e828",
      "tree": "2f07c7ff27312676cc0808eb81e131902b1e42e2",
      "parents": [
        "55675122daf6c1099b339d2faae4bdc668cf5344"
      ],
      "author": {
        "name": "Jaegeuk Kim",
        "email": "jaegeuk@kernel.org",
        "time": "Mon Aug 25 14:45:59 2014 -0700"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:40:03 2015 -0500"
      },
      "message": "f2fs: truncate stale block for inline_data\n\nThis verifies to truncate any allocated blocks, offset[0], by inline_data.\nNot figured out, but for making sure.\n\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk@kernel.org\u003e\n"
    },
    {
      "commit": "55675122daf6c1099b339d2faae4bdc668cf5344",
      "tree": "ad9bcdaf268ade8c009d9763501d8536c7fb4042",
      "parents": [
        "385fa1a3dfc9a909a021b98f17550b4bbf7a0b63"
      ],
      "author": {
        "name": "Chao Yu",
        "email": "chao2.yu@samsung.com",
        "time": "Fri Aug 22 16:17:38 2014 +0800"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:40:02 2015 -0500"
      },
      "message": "f2fs: use macro for code readability\n\nThis patch introduces DEF_NIDS_PER_INODE/GET_ORPHAN_BLOCKS/F2FS_CP_PACKS macro\ninstead of numbers in code for readability.\n\nchange log from v1:\n o fix typo pointed out by Jaegeuk Kim.\n\nSigned-off-by: Chao Yu \u003cchao2.yu@samsung.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk@kernel.org\u003e\n"
    },
    {
      "commit": "385fa1a3dfc9a909a021b98f17550b4bbf7a0b63",
      "tree": "21504ba878b879b1136de2c48c98ead38295039b",
      "parents": [
        "7ec82c4cca030f5e3df1d686dc9f4994fb761edc"
      ],
      "author": {
        "name": "Chao Yu",
        "email": "chao2.yu@samsung.com",
        "time": "Wed Aug 20 18:37:35 2014 +0800"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:40:01 2015 -0500"
      },
      "message": "f2fs: introduce need_do_checkpoint for readability\n\nThis patch introduce need_do_checkpoint() to include numerous judgment condition\nfor readability.\n\nSigned-off-by: Chao Yu \u003cchao2.yu@samsung.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk@kernel.org\u003e\n"
    },
    {
      "commit": "7ec82c4cca030f5e3df1d686dc9f4994fb761edc",
      "tree": "24dda82e868a91487fded588da14525aea59e81d",
      "parents": [
        "15a4557edf8ff94102b1b8a691cba00b4a5fcfe0"
      ],
      "author": {
        "name": "Chao Yu",
        "email": "chao2.yu@samsung.com",
        "time": "Wed Aug 20 18:36:46 2014 +0800"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:40:00 2015 -0500"
      },
      "message": "f2fs: fix incorrect calculation with total/free inode num\n\nTheoretically, our total inodes number is the same as total node number, but\nthere are three node ids are reserved in f2fs, they are 0, 1 (node nid), and 2\n(meta nid), and they should never be used by user, so our total/free inode\nnumber calculated in -\u003estatfs is wrong.\n\nThis patch indroduces F2FS_RESERVED_NODE_NUM and then fixes this issue by\nrecalculating total/free inode number with the macro.\n\nSigned-off-by: Chao Yu \u003cchao2.yu@samsung.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk@kernel.org\u003e\n"
    },
    {
      "commit": "15a4557edf8ff94102b1b8a691cba00b4a5fcfe0",
      "tree": "aa0961d68b5efc171baf29948efc1bd808d1a108",
      "parents": [
        "eb54a73b6ac3955ef74571915428b2f087eaae4e"
      ],
      "author": {
        "name": "Jaegeuk Kim",
        "email": "jaegeuk@kernel.org",
        "time": "Mon Aug 18 14:41:11 2014 -0700"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:39:59 2015 -0500"
      },
      "message": "f2fs: skip if inline_data was converted already\n\nThis patch checks inline_data one more time under the inode page lock whether\nits inline_data is converted or not.\n\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk@kernel.org\u003e\n"
    },
    {
      "commit": "eb54a73b6ac3955ef74571915428b2f087eaae4e",
      "tree": "a2cd851707079aff22bf38f9a0b3ba6a31f2df36",
      "parents": [
        "afea310ef87356f1fb91d86f210c18a8ce0414b0"
      ],
      "author": {
        "name": "Jaegeuk Kim",
        "email": "jaegeuk@kernel.org",
        "time": "Fri Aug 15 09:56:46 2014 -0700"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:39:58 2015 -0500"
      },
      "message": "f2fs: remove rewrite_node_page\n\nI think we need to let the dirty node pages remain in the page cache instead\nof rewriting them in their places.\nSo, after done with successful recovery, write_checkpoint will flush all of them\nthrough the normal write path.\nThrough this, we can avoid potential error cases in terms of block allocation.\n\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk@kernel.org\u003e\n"
    },
    {
      "commit": "afea310ef87356f1fb91d86f210c18a8ce0414b0",
      "tree": "5e205a5727b9953d329463c30887fce3ea1d810e",
      "parents": [
        "f79793aae823a7d83f7a3579b4b6632fa4b8668d"
      ],
      "author": {
        "name": "Jaegeuk Kim",
        "email": "jaegeuk@kernel.org",
        "time": "Thu Aug 14 16:32:54 2014 -0700"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:39:57 2015 -0500"
      },
      "message": "f2fs: avoid double lock in truncate_blocks\n\nThe init_inode_metadata calls truncate_blocks when error is occurred.\nThe callers holds f2fs_lock_op, so we should not call it again in\ntruncate_blocks.\n\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk@kernel.org\u003e\n\nConflicts:\n\tfs/f2fs/data.c\n\nChange-Id: I72a195956c1a3f13b01b9ee58e4eed04fc706388\n"
    },
    {
      "commit": "f79793aae823a7d83f7a3579b4b6632fa4b8668d",
      "tree": "bdd06f328a0c6f39e5fcacb309b50afec1f31e8b",
      "parents": [
        "5da13f343ada90f878dc841f3f5514a530de1480"
      ],
      "author": {
        "name": "Jaegeuk Kim",
        "email": "jaegeuk@kernel.org",
        "time": "Wed Aug 13 10:45:41 2014 -0700"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:39:56 2015 -0500"
      },
      "message": "f2fs: add WARN_ON in f2fs_bug_on\n\nThis patch adds WARN_ON when f2fs_bug_on is disable to see kernel messages.\n\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk@kernel.org\u003e\n"
    },
    {
      "commit": "5da13f343ada90f878dc841f3f5514a530de1480",
      "tree": "48614845607e92ee5b9aa16f3dfdc3a861e29f01",
      "parents": [
        "f58b76201d1484b096ec2eb9525495b1ea69eb93"
      ],
      "author": {
        "name": "Jaegeuk Kim",
        "email": "jaegeuk@kernel.org",
        "time": "Mon Aug 11 18:37:46 2014 -0700"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:39:55 2015 -0500"
      },
      "message": "f2fs: handle EIO not to break fs consistency\n\nThere are two rules when EIO is occurred.\n1. don\u0027t write any checkpoint data to preserve the previous checkpoint\n2. don\u0027t lose the cached dentry/node/meta pages\n\nSo, at first, this patch adds set_page_dirty in f2fs_write_end_io\u0027s failure.\nThen, writing checkpoint/dentry/node blocks is not allowed.\n\nNote that, for the data pages, we can\u0027t just throw away by redirtying them.\nOtherwise, kworker can fall into infinite loop to flush them.\n(Ref. xfstests/019)\n\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk@kernel.org\u003e\n"
    },
    {
      "commit": "f58b76201d1484b096ec2eb9525495b1ea69eb93",
      "tree": "6e492c1b8eb2ae348126a34fc8d7e2eda0e7b948",
      "parents": [
        "22e452a927d9ae7983cbeb8b5625578881cde038"
      ],
      "author": {
        "name": "Jaegeuk Kim",
        "email": "jaegeuk@kernel.org",
        "time": "Mon Aug 11 18:37:46 2014 -0700"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:39:53 2015 -0500"
      },
      "message": "f2fs: check s_dirty under cp_mutex\n\nIt needs to check s_dirty under cp_mutex, since s_dirty is reset under that\nmutex.\nAnd previous condition was not correct, since we can omit doing checkpoint\nwhen checkpoint was done followed by all the node pages were written back.\n\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk@kernel.org\u003e\n"
    },
    {
      "commit": "22e452a927d9ae7983cbeb8b5625578881cde038",
      "tree": "b6ce30cfbb541308e23e68d28ab5f7706491d296",
      "parents": [
        "3ba294711da8d1eaf2270c0b2175f6c00aade7f7"
      ],
      "author": {
        "name": "Jaegeuk Kim",
        "email": "jaegeuk@kernel.org",
        "time": "Mon Aug 11 18:18:36 2014 -0700"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:39:52 2015 -0500"
      },
      "message": "f2fs: unlock_page when node page is redirtied out\n\nThis patch fixes missing unlock_page when a node page is redirtied out.\n\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk@kernel.org\u003e\n"
    },
    {
      "commit": "3ba294711da8d1eaf2270c0b2175f6c00aade7f7",
      "tree": "22ee5844e4f2778cde12779c0c19bd59ed6be93b",
      "parents": [
        "16e77e16c3f720e0e69364ef8d51c7c3f17c7897"
      ],
      "author": {
        "name": "Jaegeuk Kim",
        "email": "jaegeuk@kernel.org",
        "time": "Mon Aug 11 16:49:25 2014 -0700"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:39:51 2015 -0500"
      },
      "message": "f2fs: introduce f2fs_cp_error for readability\n\nThis patch adds f2fs_cp_error for readability.\n\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk@kernel.org\u003e\n"
    },
    {
      "commit": "16e77e16c3f720e0e69364ef8d51c7c3f17c7897",
      "tree": "537d7e68ec3a859607a2f52fe49eaae87e2b4d6e",
      "parents": [
        "f2c07cd0af1cef44124e3cd161800b49f190651d"
      ],
      "author": {
        "name": "Jaegeuk Kim",
        "email": "jaegeuk@kernel.org",
        "time": "Fri Aug 08 15:37:41 2014 -0700"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:39:50 2015 -0500"
      },
      "message": "f2fs: give a chance to mount again when encountering errors\n\nThis patch gives another chance to try mount process when we encounter an error.\nThis makes an effect on the roll-forward recovery failures as well.\n\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk@kernel.org\u003e\n"
    },
    {
      "commit": "f2c07cd0af1cef44124e3cd161800b49f190651d",
      "tree": "5ee6604f8505dee8903a2773a82013f8121ba478",
      "parents": [
        "8c6b2e76af4ff37cda41d5877922bd2d14b575fe"
      ],
      "author": {
        "name": "Jaegeuk Kim",
        "email": "jaegeuk@kernel.org",
        "time": "Tue Aug 19 09:48:22 2014 -0700"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:39:49 2015 -0500"
      },
      "message": "f2fs: trigger release_dirty_inode in f2fs_put_super\n\nThe generic_shutdown_super calls sync_filesystem, evict_inode, and then\nf2fs_put_super. In f2fs_evict_inode, we remain some dirty inode information\nso we should release them at f2fs_put_super.\n\nReviewed-by: Chao Yu \u003cchao2.yu@samsung.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk@kernel.org\u003e\n"
    },
    {
      "commit": "8c6b2e76af4ff37cda41d5877922bd2d14b575fe",
      "tree": "4caeebe793c2e6b7199d7c08ed3536107e82be05",
      "parents": [
        "42da3c887e012048e467d8b5c98ff13bb6ebb22d"
      ],
      "author": {
        "name": "Jaegeuk Kim",
        "email": "jaegeuk@kernel.org",
        "time": "Tue Aug 19 09:13:01 2014 -0700"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:39:48 2015 -0500"
      },
      "message": "f2fs: don\u0027t skip checkpoint if there is no dirty node pages\n\nThis is the errorneous scenario.\n1. write data\n2. do checkpoint\n3. produce some dirty node pages by the gc thread\n4. write back dirty node pages\n5. f2fs_put_super will skip the checkpoint, since dirty count for node pages is\n  zero.\n\nThis patch removes such the wrong condition check.\n\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk@kernel.org\u003e\n"
    },
    {
      "commit": "42da3c887e012048e467d8b5c98ff13bb6ebb22d",
      "tree": "8ff90db7fd2ade048ed1dc49dc992faa8eb4208a",
      "parents": [
        "32e5c423d2f8c8efca8d5baa96d0699f1f0a6565"
      ],
      "author": {
        "name": "Jaegeuk Kim",
        "email": "jaegeuk@kernel.org",
        "time": "Fri Aug 08 10:18:43 2014 -0700"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:39:47 2015 -0500"
      },
      "message": "f2fs: avoid bug_on when error is occurred\n\nDuring the recovery, if an error like EIO or ENOMEM, f2fs_bug_on should skip.\n\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk@kernel.org\u003e\n"
    },
    {
      "commit": "32e5c423d2f8c8efca8d5baa96d0699f1f0a6565",
      "tree": "28ffd95c4df6b44af1a3761f6ff1b1af35d868b8",
      "parents": [
        "1bddcc63af2a31fc6edaac3b5d731eb2836726e4"
      ],
      "author": {
        "name": "Jaegeuk Kim",
        "email": "jaegeuk@kernel.org",
        "time": "Thu Aug 07 23:49:17 2014 -0700"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:39:46 2015 -0500"
      },
      "message": "f2fs: fix to recover inline_xattr/data and blocks\n\nThis patch fixes not to skip xattr recovery and inline xattr/data recovery\norder.\n\nReviewed-by: Chao Yu \u003cchao2.yu@samsung.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk@kernel.org\u003e\n"
    },
    {
      "commit": "1bddcc63af2a31fc6edaac3b5d731eb2836726e4",
      "tree": "e31c87d8d5be38dc6b8d72409ccc3e66b449a38d",
      "parents": [
        "ef960bc412eeb6ad1eb96ab52c2a5fbf5e70cb10"
      ],
      "author": {
        "name": "Jaegeuk Kim",
        "email": "jaegeuk@kernel.org",
        "time": "Thu Aug 07 23:45:42 2014 -0700"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:39:45 2015 -0500"
      },
      "message": "f2fs: should clear the inline_xattr flag\n\nDuring the recovery, we should clear the inline_xattr flag if its xattr node\nblock is recovered.\n\nReviewed-by: Chao Yu \u003cchao2.yu@samsung.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk@kernel.org\u003e\n"
    },
    {
      "commit": "ef960bc412eeb6ad1eb96ab52c2a5fbf5e70cb10",
      "tree": "24c3091ab3afdf9385e5df7c48acbd2f66599002",
      "parents": [
        "fa90763c10f0ff3a3522353826ed2dd1cd7eded4"
      ],
      "author": {
        "name": "Jaegeuk Kim",
        "email": "jaegeuk@kernel.org",
        "time": "Thu Aug 07 17:06:18 2014 -0700"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:39:44 2015 -0500"
      },
      "message": "f2fs: clear FI_INC_LINK during the recovery\n\nIf an inode are fsynced multiple times with fsync \u0026 dent marks, this inode will\nset FI_INC_LINK at find_fsync_dnodes during the recovery.\nBut, in recover_inode, recover_dentry doesn\u0027t clear that flag when multiple hits\nwere occurred.\n\nSo this patch removes the flag for the further consistency.\n\nReviewed-by: Chao Yu \u003cchao2.yu@samsung.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk@kernel.org\u003e\n"
    },
    {
      "commit": "fa90763c10f0ff3a3522353826ed2dd1cd7eded4",
      "tree": "345a6168eef889c28dc13988517547dab03e9caf",
      "parents": [
        "b4fc01f237d2038f188107d535de24a9baa6187b"
      ],
      "author": {
        "name": "Jaegeuk Kim",
        "email": "jaegeuk@kernel.org",
        "time": "Thu Aug 07 17:04:24 2014 -0700"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:39:43 2015 -0500"
      },
      "message": "f2fs: fix the initial inode page for recovery\n\nIf a new inode page is needed for recover_dentry, we should assing i_inline\nas zero.\n\nReviewed-by: Chao Yu \u003cchao2.yu@samsung.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk@kernel.org\u003e\n"
    },
    {
      "commit": "b4fc01f237d2038f188107d535de24a9baa6187b",
      "tree": "2d4a5d174ced7f3cafc3a250cdfa84f70b731631",
      "parents": [
        "80fd22ac2c523b6cdbfa8913cb03edc96ea6f861"
      ],
      "author": {
        "name": "Jaegeuk Kim",
        "email": "jaegeuk@kernel.org",
        "time": "Thu Aug 07 16:57:17 2014 -0700"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:39:42 2015 -0500"
      },
      "message": "f2fs: make clear on test condition and return types\n\nThis patch adds a parentheses to make clear for condition check.\nAnd also it changes the return type for better meanings.\n\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk@kernel.org\u003e\n"
    },
    {
      "commit": "80fd22ac2c523b6cdbfa8913cb03edc96ea6f861",
      "tree": "0f7d96fd6fd92df04578bf7cbc614554f9071be5",
      "parents": [
        "f408140c5a3ef37e17e6db4968d6df78b4997fae"
      ],
      "author": {
        "name": "Jaegeuk Kim",
        "email": "jaegeuk@kernel.org",
        "time": "Thu Aug 07 16:32:25 2014 -0700"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:39:41 2015 -0500"
      },
      "message": "f2fs: should convert inline_data during the mkwrite\n\nIf mkwrite is called to an inode having inline_data, it can overwrite the data\nindex space as NEW_ADDR. (e.g., the first 4 bytes are coincidently zero)\n\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk@kernel.org\u003e\n"
    },
    {
      "commit": "f408140c5a3ef37e17e6db4968d6df78b4997fae",
      "tree": "922ac8e9fe4759345d67b4543f48ccc56b4be44d",
      "parents": [
        "00ebaffc9eec3a102b19a13fe0d43820ed806be6"
      ],
      "author": {
        "name": "arter97",
        "email": "qkrwngud825@gmail.com",
        "time": "Wed Aug 06 23:22:50 2014 +0900"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:39:26 2015 -0500"
      },
      "message": "f2fs: fix typo\n\nFix typo and some grammatical errors.\n\nThe words \"filesystem\" and \"readahead\" are being used without the space treewide.\n\nSigned-off-by: Park Ju Hyung \u003cqkrwngud825@gmail.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk@kernel.org\u003e\n"
    },
    {
      "commit": "00ebaffc9eec3a102b19a13fe0d43820ed806be6",
      "tree": "d1bb36fc9ab0a07ae16dd9dd79e82da8fae292ee",
      "parents": [
        "702f8d2e0d2c412edd283e04b602613c14975358"
      ],
      "author": {
        "name": "Chao Yu",
        "email": "chao2.yu@samsung.com",
        "time": "Mon Aug 04 10:10:07 2014 +0800"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:39:11 2015 -0500"
      },
      "message": "f2fs: use for_each_set_bit to simplify the code\n\nThis patch uses for_each_set_bit to simplify some codes in f2fs.\n\nSigned-off-by: Chao Yu \u003cchao2.yu@samsung.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk@kernel.org\u003e\n"
    },
    {
      "commit": "702f8d2e0d2c412edd283e04b602613c14975358",
      "tree": "1fafbbea551727abeaf00dfb9109f4c7fbb24807",
      "parents": [
        "767262e1bb94131688feb643a26107a91010161a"
      ],
      "author": {
        "name": "Chao Yu",
        "email": "chao2.yu@samsung.com",
        "time": "Mon Aug 04 10:11:17 2014 +0800"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:39:10 2015 -0500"
      },
      "message": "f2fs: add f2fs_balance_fs for expand_inode_data\n\nThis patch adds f2fs_balance_fs in expand_inode_data to avoid allocation failure\nwith segment.\n\nSigned-off-by: Chao Yu \u003cchao2.yu@samsung.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk@kernel.org\u003e\n"
    },
    {
      "commit": "767262e1bb94131688feb643a26107a91010161a",
      "tree": "83f6e224a6a03c0a1663b3f16783adc05cbec55b",
      "parents": [
        "54ecff1f8fa02f83a5f7d8dee55462333ae78730"
      ],
      "author": {
        "name": "Chao Yu",
        "email": "chao2.yu@samsung.com",
        "time": "Mon Aug 04 09:54:58 2014 +0800"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:39:09 2015 -0500"
      },
      "message": "f2fs: invalidate xattr node page when evict inode\n\nWhen inode is evicted, all the page cache belong to this inode should be\nreleased including the xattr node page. But previously we didn\u0027t do this, this\npatch fixed this issue.\n\nv2:\n o reposition invalidate_mapping_pages() to the right place suggested by\nJaegeuk Kim.\n\nSigned-off-by: Chao Yu \u003cchao2.yu@samsung.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk@kernel.org\u003e\n"
    },
    {
      "commit": "54ecff1f8fa02f83a5f7d8dee55462333ae78730",
      "tree": "fa2ea78e0fb72f32693a9501bd02c61a4a4b8eae",
      "parents": [
        "9f64de73b8363c4f104af4782f5e9b932ccc87a2"
      ],
      "author": {
        "name": "Chao Yu",
        "email": "chao2.yu@samsung.com",
        "time": "Sat Aug 02 15:26:04 2014 +0800"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:39:08 2015 -0500"
      },
      "message": "f2fs: avoid skipping recover_inline_xattr after recover_inline_data\n\nWhen we recover data of inode in roll-forward procedure, and the inode has both\ninline data and inline xattr. We may skip recovering inline xattr if we recover\ninline data form node page first.\nThis patch will fix the problem that we lost inline xattr data in above\nscenario.\n\nSigned-off-by: Chao Yu \u003cchao2.yu@samsung.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk@kernel.org\u003e\n"
    },
    {
      "commit": "9f64de73b8363c4f104af4782f5e9b932ccc87a2",
      "tree": "128ce3c214e3b972f19a50c840405226556ed388",
      "parents": [
        "0b14d477f193ec2af926b1e17cb759bbedbe208c"
      ],
      "author": {
        "name": "Chao Yu",
        "email": "chao2.yu@samsung.com",
        "time": "Thu Jul 31 21:11:22 2014 +0800"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:39:07 2015 -0500"
      },
      "message": "f2fs: add tracepoint for f2fs_direct_IO\n\nThis patch adds a tracepoint for f2fs_direct_IO.\n\nSigned-off-by: Chao Yu \u003cchao2.yu@samsung.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk@kernel.org\u003e\n\nConflicts:\n\tfs/f2fs/data.c\n\nChange-Id: I4153a8bd8bd5fb46c42c2917ec3405e3b4a4dce8\n"
    },
    {
      "commit": "0b14d477f193ec2af926b1e17cb759bbedbe208c",
      "tree": "99c05f2150c8504ca682d51a56441b062eec245f",
      "parents": [
        "d2c2169ca7fa082de23bb2c5f11d24a525575173"
      ],
      "author": {
        "name": "Chao Yu",
        "email": "chao2.yu@samsung.com",
        "time": "Thu Jul 03 18:58:39 2014 +0800"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:39:06 2015 -0500"
      },
      "message": "f2fs: reduce competition among node page writes\n\nWe do not need to block on -\u003enode_write among different node page writers e.g.\nfsync/flush, unless we have a node page writer from write_checkpoint.\nSo it\u0027s better use rw_semaphore instead of mutex type for -\u003enode_write to\npromote performance.\n\nSigned-off-by: Chao Yu \u003cchao2.yu@samsung.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk@kernel.org\u003e\n"
    },
    {
      "commit": "d2c2169ca7fa082de23bb2c5f11d24a525575173",
      "tree": "e5a9582096ac1494c70956ac589ef5ca017ec5aa",
      "parents": [
        "aee074de1d10a55699d12657f135250bb760c1a8"
      ],
      "author": {
        "name": "Jaegeuk Kim",
        "email": "jaegeuk@kernel.org",
        "time": "Wed Jul 30 17:25:54 2014 -0700"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:39:05 2015 -0500"
      },
      "message": "f2fs: fix coding style\n\nThis patch fixes wrong coding style.\n\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk@kernel.org\u003e\n"
    },
    {
      "commit": "aee074de1d10a55699d12657f135250bb760c1a8",
      "tree": "179099567f0fa1a4389dfcb8545d8bc15e575586",
      "parents": [
        "90421d2b5a3cd5f96dd6658434a02532a411c969"
      ],
      "author": {
        "name": "Dongho Sim",
        "email": "dh.sim@samsung.com",
        "time": "Wed Jul 30 06:52:41 2014 +0000"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:39:04 2015 -0500"
      },
      "message": "f2fs: remove redundant lines in allocate_data_block\n\nThere are redundant lines in allocate_data_block.\n\nIn this function, we call refresh_sit_entry with old seg and old curseg.\nAfter that, we call locate_dirty_segment with old curseg.\n\nBut, the new address is always allocated from old curseg and\nwe call locate_dirty_segment with old curseg in refresh_sit_entry.\nSo, we do not need to call locate_dirty_segment with old curseg again.\n\nWe\u0027ve discussed like below:\n\nJaegeuk said:\n \"When considering SSR, we need to take care of the following scenario.\n  - old segno : X\n  - new address : Z\n  - old curseg : Y\n  This means, a new block is supposed to be written to Z from X.\n  And Z is newly allocated in the same path from Y.\n\n  In that case, we should trigger locate_dirty_segment for Y, since\n  it was a current_segment and can be dirty owing to SSR.\n  But that was not included in the dirty list.\"\n\nChangman said:\n \"We already choosed old curseg(Y) and then we allocate new address(Z) from old\n  curseg(Y). After that we call refresh_sit_entry(old address, new address).\n  In the funcation, we call locate_dirty_segment with old seg and old curseg.\n  So calling locate_dirty_segment after refresh_sit_entry again is redundant.\"\n\nJaegeuk said:\n \"Right. The new address is always allocated from old_curseg.\"\n\nReviewed-by: Chao Yu \u003cchao2.yu@samsung.com\u003e\nSigned-off-by: Dongho Sim \u003cdh.sim@samsung.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk@kernel.org\u003e\n"
    },
    {
      "commit": "90421d2b5a3cd5f96dd6658434a02532a411c969",
      "tree": "2ee68425819ae94e6e3eb81455185741941d592a",
      "parents": [
        "1e3c2db7ff60a5005f21fa315986d18d0d43b62a"
      ],
      "author": {
        "name": "Jaegeuk Kim",
        "email": "jaegeuk@kernel.org",
        "time": "Fri Jul 25 17:46:10 2014 -0700"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:39:03 2015 -0500"
      },
      "message": "f2fs: add tracepoint for f2fs_issue_flush\n\nThis patch adds a tracepoint for f2fs_issue_flush.\n\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk@kernel.org\u003e\n"
    },
    {
      "commit": "1e3c2db7ff60a5005f21fa315986d18d0d43b62a",
      "tree": "f8cbd51007bb4029babc6a0db681eef32836f201",
      "parents": [
        "eed0ef6b9b11d910c7541ef79f8a1eda4e078951"
      ],
      "author": {
        "name": "Jaegeuk Kim",
        "email": "jaegeuk@kernel.org",
        "time": "Fri Jul 25 15:47:23 2014 -0700"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:38:53 2015 -0500"
      },
      "message": "f2fs: test before set/clear bits\n\nIf the bit is already set, we don\u0027t need to reset it, and vice versa.\nBecause we don\u0027t need to make the caches dirty for that.\n\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk@kernel.org\u003e\n"
    },
    {
      "commit": "eed0ef6b9b11d910c7541ef79f8a1eda4e078951",
      "tree": "8c8f11c2dd7bfc96e3ee195fc2fac8d906d554d6",
      "parents": [
        "f421ceb3bf57efda3436bed0166cd7fb4611615c"
      ],
      "author": {
        "name": "Jaegeuk Kim",
        "email": "jaegeuk@kernel.org",
        "time": "Fri Jul 25 07:41:43 2014 -0700"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:38:41 2015 -0500"
      },
      "message": "f2fs: fix wrong condition for unlikely\n\nThis patch fixes the wrongly used unlikely condition.\n\nReviewed-by: Chao Yu \u003cchao2.yu@samsung.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk@kernel.org\u003e\n"
    },
    {
      "commit": "f421ceb3bf57efda3436bed0166cd7fb4611615c",
      "tree": "f1d4f64b35510214449771185ede955a8033015f",
      "parents": [
        "9a11a8e120680173207e7cfe71dbb8729e758de9"
      ],
      "author": {
        "name": "Jaegeuk Kim",
        "email": "jaegeuk@kernel.org",
        "time": "Thu Jul 24 19:11:43 2014 -0700"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:38:40 2015 -0500"
      },
      "message": "f2fs: enable in-place-update for fdatasync\n\nThis patch enforces in-place-updates only when fdatasync is requested.\nIf we adopt this in-place-updates for the fdatasync, we can skip to write the\nrecovery information.\n\nReviewed-by: Chao Yu \u003cchao2.yu@samsung.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk@kernel.org\u003e\n"
    },
    {
      "commit": "9a11a8e120680173207e7cfe71dbb8729e758de9",
      "tree": "6bc4216f5f86f7ccb21476998feee0cc25a532c0",
      "parents": [
        "7ea3695d4337e9a69585905fee853d76e390d7cb"
      ],
      "author": {
        "name": "Jaegeuk Kim",
        "email": "jaegeuk@kernel.org",
        "time": "Thu Jul 24 19:08:02 2014 -0700"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:38:39 2015 -0500"
      },
      "message": "f2fs: skip unnecessary data writes during fsync\n\nThis patch intends to improve the fsync performance by skipping remaining the\nrecovery information, only when there is no data that we should recover.\n\nReviewed-by: Chao Yu \u003cchao2.yu@samsung.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk@kernel.org\u003e\n"
    },
    {
      "commit": "7ea3695d4337e9a69585905fee853d76e390d7cb",
      "tree": "957c4b1ac2ce847734b6a669757925e6bb913180",
      "parents": [
        "5a2c480824df27640cc17e552c1d2c1f2f4acf91"
      ],
      "author": {
        "name": "Jaegeuk Kim",
        "email": "jaegeuk@kernel.org",
        "time": "Fri Jul 25 07:40:59 2014 -0700"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:38:37 2015 -0500"
      },
      "message": "f2fs: add info of appended or updated data writes\n\nThis patch introduces a inode number list in which represents inodes having\nappended data writes or updated data writes after last checkpoint.\nThis will be used at fsync to determine whether the recovery information\nshould be written or not.\n\nReviewed-by: Chao Yu \u003cchao2.yu@samsung.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk@kernel.org\u003e\n\nConflicts:\n\tfs/f2fs/inode.c\n\nChange-Id: I94293cce161b66f4ac5f66dea230b9613aa9d68a\n"
    },
    {
      "commit": "5a2c480824df27640cc17e552c1d2c1f2f4acf91",
      "tree": "2440863e0ea1aa73be90fcd831f1a4d02e35e4e3",
      "parents": [
        "a6377a636d39a945e50f74ea56e3ec7490e1c224"
      ],
      "author": {
        "name": "Jaegeuk Kim",
        "email": "jaegeuk@kernel.org",
        "time": "Thu Jul 24 18:15:17 2014 -0700"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:38:36 2015 -0500"
      },
      "message": "f2fs: use radix_tree for ino management\n\nFor better ino management, this patch replaces the data structure from list\nto radix tree.\n\nReviewed-by: Chao Yu \u003cchao2.yu@samsung.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk@kernel.org\u003e\n"
    },
    {
      "commit": "a6377a636d39a945e50f74ea56e3ec7490e1c224",
      "tree": "9ed448eb57412fa32032a4bd0a9016a2b2241a51",
      "parents": [
        "3ff860901e43254199187e1ffc5344fa56149110"
      ],
      "author": {
        "name": "Jaegeuk Kim",
        "email": "jaegeuk@kernel.org",
        "time": "Fri Jul 25 15:47:17 2014 -0700"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:38:35 2015 -0500"
      },
      "message": "f2fs: add infra for ino management\n\nThis patch changes the naming of orphan-related data structures to use as\ninode numbers managed globally.\nLater, we can use this facility for managing any inode number lists.\n\nReviewed-by: Chao Yu \u003cchao2.yu@samsung.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk@kernel.org\u003e\n"
    },
    {
      "commit": "3ff860901e43254199187e1ffc5344fa56149110",
      "tree": "b4e50f4a62d203a9cfc73f00da187582ccd2e51d",
      "parents": [
        "6f6541bc128fc2ea30218519e3d6509097eeb17a"
      ],
      "author": {
        "name": "Jaegeuk Kim",
        "email": "jaegeuk@kernel.org",
        "time": "Fri Jul 25 15:47:16 2014 -0700"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:38:34 2015 -0500"
      },
      "message": "f2fs: punch the core function for inode management\n\nThis patch punches out the core functions to manage the inode numbers.\n\nReviewed-by: Chao Yu \u003cchao2.yu@samsung.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk@kernel.org\u003e\n"
    },
    {
      "commit": "6f6541bc128fc2ea30218519e3d6509097eeb17a",
      "tree": "ebefb689ef6deb84ec5ea069a22ca0b5ae698024",
      "parents": [
        "7384b1622a1d33f8791358dd87105a920f722b57"
      ],
      "author": {
        "name": "Jaegeuk Kim",
        "email": "jaegeuk@kernel.org",
        "time": "Wed Jul 23 09:57:31 2014 -0700"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:38:33 2015 -0500"
      },
      "message": "f2fs: add nobarrier mount option\n\nThis patch adds a mount option, nobarrier, in f2fs.\nThe assumption in here is that file system keeps the IO ordering, but\ndoesn\u0027t care about cache flushes inside the storages.\n\nReviewed-by: Chao Yu \u003cchao2.yu@samsung.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk@kernel.org\u003e\n\nConflicts:\n\tDocumentation/filesystems/f2fs.txt\n\nChange-Id: I2947cb10128efcf5647eff432d5fd959b2d2f5bc\n"
    },
    {
      "commit": "7384b1622a1d33f8791358dd87105a920f722b57",
      "tree": "c76f2c449ca30385bd211650a5010a3672224930",
      "parents": [
        "3a8e4f57d5e695721466328d86532d54765d3959"
      ],
      "author": {
        "name": "Chao Yu",
        "email": "chao2.yu@samsung.com",
        "time": "Fri Jul 25 12:55:09 2014 +0800"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:38:32 2015 -0500"
      },
      "message": "f2fs: fix to put root inode in error path of fill_super\n\nWe should put root inode correctly in error path of fill_super, otherwise we\nmay encounter a leak case of inode resource.\n\nSigned-off-by: Chao Yu \u003cchao2.yu@samsung.com\u003e\nReviewed-by: Gu Zheng \u003cguz.fnst@cn.fujitsu.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk@kernel.org\u003e\n"
    },
    {
      "commit": "3a8e4f57d5e695721466328d86532d54765d3959",
      "tree": "24cd056db2c72c711077335a6496477f94b252c1",
      "parents": [
        "51716f3c1947d1a7a41789361dc6c2c65513fce2"
      ],
      "author": {
        "name": "Huang Ying",
        "email": "ying.huang@intel.com",
        "time": "Sat Jul 12 20:10:00 2014 +0800"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:38:31 2015 -0500"
      },
      "message": "f2fs: add f2fs_balance_fs for direct IO\n\nOtherwise, if a large amount of direct IO writes were done, the\nsegment allocation may be failed because no enough segments are gced.\n\nChanges:\n\nv2: add f2fs_balance_fs into __get_data_block instead of f2fs_direct_IO.\n\nSigned-off-by: Huang, Ying \u003cying.huang@intel.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk@kernel.org\u003e\n"
    },
    {
      "commit": "51716f3c1947d1a7a41789361dc6c2c65513fce2",
      "tree": "f4d05ed2bfda79dca1cb9df165eb1e6769333efa",
      "parents": [
        "97e8a34931f1549b4f0bf66a2a171a9177020d25"
      ],
      "author": {
        "name": "Chao Yu",
        "email": "chao2.yu@samsung.com",
        "time": "Mon Jul 14 16:45:15 2014 +0800"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:38:30 2015 -0500"
      },
      "message": "f2fs: reduce searching region of segmap when free section\n\nIn __set_test_and_free we will check whether all segment are free in one section\nWhen free one segment, in order to set section to free status.\nBut the searching region of segmap is from start segno to last segno of f2fs,\nit\u0027s not necessary. So let\u0027s just only check all segment bitmap of target\nsection.\n\nSigned-off-by: Chao Yu \u003cchao2.yu@samsung.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk@kernel.org\u003e\n"
    },
    {
      "commit": "97e8a34931f1549b4f0bf66a2a171a9177020d25",
      "tree": "9e8b8e428f7ac85d7a4a6668131689163f500d76",
      "parents": [
        "30446592ff797f220ee14aa523646e51f66360ea"
      ],
      "author": {
        "name": "Dan Pasanen",
        "email": "dan.pasanen@gmail.com",
        "time": "Mon Aug 25 19:11:31 2014 -0500"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:38:11 2015 -0500"
      },
      "message": "Revert \"f2fs: resync with upstream 3.4 branch (forced update)\"\n\nThis reverts commit 6a1be380100e402aacca6a0a3ac829c059768d79.\n"
    },
    {
      "commit": "30446592ff797f220ee14aa523646e51f66360ea",
      "tree": "e1ad52299dbe6d463fe68b5eff32a5c8b9c20757",
      "parents": [
        "f3f030d1bcfad3165cb8b19709345bb05d1e81bf"
      ],
      "author": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Fri Aug 08 08:58:58 2014 -0400"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:37:57 2015 -0500"
      },
      "message": "f2fs: resync with upstream 3.4 branch (forced update)\n\nChange-Id: I0307382d983e8ef806cfdfe57dcde500fd060995\n"
    },
    {
      "commit": "f3f030d1bcfad3165cb8b19709345bb05d1e81bf",
      "tree": "9e8b8e428f7ac85d7a4a6668131689163f500d76",
      "parents": [
        "5d8bad1c6711707e2d373e43d93b39c92228b59f"
      ],
      "author": {
        "name": "Evan McClain",
        "email": "aeroevan@gmail.com",
        "time": "Thu Jul 17 21:16:35 2014 -0400"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:37:51 2015 -0500"
      },
      "message": "f2fs: Update to proper 3.4 support\n\nhttp://git.kernel.org/cgit/linux/kernel/git/jaegeuk/f2fs.git/log/?h\u003dlinux-3.4\n\nChange-Id: Ica17871e847d4807c7ef24ea77dd4bff5451f5c7\n\nConflicts:\n\tfs/f2fs/f2fs.h\n"
    },
    {
      "commit": "5d8bad1c6711707e2d373e43d93b39c92228b59f",
      "tree": "e9c7947d584a1d46b7b714bc1be8e206e64725bf",
      "parents": [
        "3da1d095bb1547c6a7bbe0a0c700bb419117eb89"
      ],
      "author": {
        "name": "Jaegeuk Kim",
        "email": "jaegeuk@kernel.org",
        "time": "Sat Jun 28 01:00:41 2014 +0900"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:37:50 2015 -0500"
      },
      "message": "f2fs: check bdi-\u003edirty_exceeded when trying to skip data writes\n\nIf we don\u0027t check the current backing device status, balance_dirty_pages can\nfall into infinite pausing routine.\n\nThis can be occurred when a lot of directories make a small number of dirty\ndentry pages including files.\n\nReported-by: Brian Chadwick \u003cbrianchad@westnet.com.au\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk@kernel.org\u003e\n"
    },
    {
      "commit": "3da1d095bb1547c6a7bbe0a0c700bb419117eb89",
      "tree": "b749e4397292a9f2cb5aa15d8927f38509181705",
      "parents": [
        "0d9d76cd53b56ffdbc88145763f12e35f3bbe7f2"
      ],
      "author": {
        "name": "Jaegeuk Kim",
        "email": "jaegeuk@kernel.org",
        "time": "Mon Jun 30 18:09:55 2014 +0900"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:37:49 2015 -0500"
      },
      "message": "f2fs: do checkpoint for the renamed inode\n\nIf an inode is renamed, it should be registered as file_lost_pino to conduct\ncheckpoint at f2fs_sync_file.\nOtherwise, the inode cannot be recovered due to no dent_mark in the following\nscenario.\n\nNote that, this scenario is from xfstests/322.\n\n1. create \"a\"\n2. fsync \"a\"\n3. rename \"a\" to \"b\"\n4. fsync \"b\"\n5. Sudden power-cut\n\nAfter recovery is done, \"b\" should be seen.\nHowever, the result shows \"a\", since the recovery procedure does not enter\nrecover_dentry due to no dent_mark.\n\nThe reason is like below.\n- The nid of \"a\" is checkpointed during #2, f2fs_sync_file.\n- The inode page for \"b\" produced by #3 is written without dent_mark by\nsync_node_pages.\n\nSo, this patch fixes this bug by assinging file_lost_pino to the \"a\"\u0027s inode.\nIf the pino is lost, f2fs_sync_file conducts checkpoint, and then recovers\nthe latest pino and its dentry information for further recovery.\n\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk@kernel.org\u003e\n"
    },
    {
      "commit": "0d9d76cd53b56ffdbc88145763f12e35f3bbe7f2",
      "tree": "2fdded23f70fd670f49f964de3208e58b9f10c7f",
      "parents": [
        "bf7657d0b506eab12975585d4d1865e3f5435749"
      ],
      "author": {
        "name": "Chao Yu",
        "email": "chao2.yu@samsung.com",
        "time": "Tue Jun 24 14:13:13 2014 +0800"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:37:48 2015 -0500"
      },
      "message": "f2fs: release new entry page correctly in error path of f2fs_rename\n\nThis patch correct releasing code of new_page to avoid BUG_ON in error patch of\nf2fs_rename.\n\nSigned-off-by: Chao Yu \u003cchao2.yu@samsung.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk@kernel.org\u003e\n"
    },
    {
      "commit": "bf7657d0b506eab12975585d4d1865e3f5435749",
      "tree": "a052b532d2faa944a5f99225527faaae01178afd",
      "parents": [
        "ada8ce22e54d6a873e9584751c524e66161a6f38"
      ],
      "author": {
        "name": "Chao Yu",
        "email": "chao2.yu@samsung.com",
        "time": "Tue Jun 24 10:34:00 2014 +0800"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:37:47 2015 -0500"
      },
      "message": "f2fs: fix error path in init_inode_metadata\n\nIf we fail in this path:\n-\u003einit_inode_metadata\n  -\u003emake_empty_dir\n    -\u003eget_new_data_page\n      -\u003egrab_cache_page return -ENOMEM\n\nWe will bug on in error path of init_inode_metadata when call remove_inode_page\nbecause i_block \u003d 2 (one inode block will be released later \u0026 one dentry block).\n\nWe should release the dentry block in init_inode_metadata to avoid this BUG_ON,\nand avoid leak of dentry block resource, because we never have second chance to\nrelease that block in -\u003eevict_inode as in upper error path we make this inode\n\u0027bad\u0027.\n\nSigned-off-by: Chao Yu \u003cchao2.yu@samsung.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk@kernel.org\u003e\n"
    },
    {
      "commit": "ada8ce22e54d6a873e9584751c524e66161a6f38",
      "tree": "d9a29347235e6987cb7f694bb1b64afdcca4868c",
      "parents": [
        "bf7896ed0b63875fa203e7d5f6c524ef0de8f55b"
      ],
      "author": {
        "name": "Chao Yu",
        "email": "chao2.yu@samsung.com",
        "time": "Thu Jun 12 13:23:41 2014 +0800"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:37:46 2015 -0500"
      },
      "message": "f2fs: check lower bound nid value in check_nid_range\n\nThis patch add lower bound verification for nid in check_nid_range, so nids\nreserved like 0, node, meta passed by caller could be checked there.\n\nAnd then check_nid_range could be used in f2fs_nfs_get_inode for simplifying\ncode.\n\nSigned-off-by: Chao Yu \u003cchao2.yu@samsung.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk@kernel.org\u003e\n"
    },
    {
      "commit": "bf7896ed0b63875fa203e7d5f6c524ef0de8f55b",
      "tree": "5732a862e417d28bcaf5797b89ccbc88aea8d1ea",
      "parents": [
        "cfcaaf09385085d4ae5d9447fe8f49eab804ff94"
      ],
      "author": {
        "name": "Chao Yu",
        "email": "chao2.yu@samsung.com",
        "time": "Wed Jun 11 18:32:23 2014 +0800"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:37:45 2015 -0500"
      },
      "message": "f2fs: remove unused variables in f2fs_sm_info\n\nRemove unused variables in struct f2fs_sm_info.\n\nSigned-off-by: Chao Yu \u003cchao2.yu@samsung.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk@kernel.org\u003e\n"
    },
    {
      "commit": "cfcaaf09385085d4ae5d9447fe8f49eab804ff94",
      "tree": "d3b0b7a6bd79946f67a8540e7ad50738d7bb3e2f",
      "parents": [
        "316b479e6e9006f5020bf1ec2c8d5741e3f66ac3"
      ],
      "author": {
        "name": "Jaegeuk Kim",
        "email": "jaegeuk@kernel.org",
        "time": "Fri Jun 13 13:07:31 2014 +0900"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:37:44 2015 -0500"
      },
      "message": "f2fs: fix not to allocate unnecessary blocks during fallocate\n\nThis patch fixes the fallocate bug like below. (See xfstests/255)\n\nIn fallocate(fd, 0, 20480),\nexpand_inode_data processes\n\tfor (index \u003d pg_start; index \u003c\u003d pg_end; index++) {\n\t\tf2fs_reserve_block();\n\t\t...\n\t}\n\nSo, even though fallocate requests 20480, 5 blocks, f2fs allocates 6 blocks\nincluding pg_end.\nSo, this patch adds one condition to avoid block allocation.\n\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk@kernel.org\u003e\n"
    },
    {
      "commit": "316b479e6e9006f5020bf1ec2c8d5741e3f66ac3",
      "tree": "5b25fbd6eb3658ae393ab7e7f713b70f1b84115c",
      "parents": [
        "8728de5d99098d2092d74a984b5d636d733e6250"
      ],
      "author": {
        "name": "Jaegeuk Kim",
        "email": "jaegeuk@kernel.org",
        "time": "Fri Jun 13 13:05:55 2014 +0900"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:37:43 2015 -0500"
      },
      "message": "f2fs: recover fallocated data and its i_size together\n\nThis patch arranges the f2fs_locks to cover the fallocated data and its i_size.\n\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk@kernel.org\u003e\n"
    },
    {
      "commit": "8728de5d99098d2092d74a984b5d636d733e6250",
      "tree": "b1f8ff759282eeac00e295ce1e6a448f107ad0f8",
      "parents": [
        "8ff1d5253f1f49f8807baef064f96ae72af0b9a5"
      ],
      "author": {
        "name": "Jaegeuk Kim",
        "email": "jaegeuk@kernel.org",
        "time": "Fri Jun 13 13:02:11 2014 +0900"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:37:41 2015 -0500"
      },
      "message": "f2fs: fix to report newly allocate region as extent\n\nPrevious get_block in f2fs didn\u0027t report the newly allocated region which has\nNEW_ADDR.\nFor reader, it should not report, but fiemap needs this.\nSo, this patch introduces two get_block sharing core function.\n\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk@kernel.org\u003e\n"
    },
    {
      "commit": "8ff1d5253f1f49f8807baef064f96ae72af0b9a5",
      "tree": "aea863b84433d34ea9e0468a7355fec3684b7f04",
      "parents": [
        "84d4b9cf120aa5ac7c0d4d8b1f43eeb286d69b2c"
      ],
      "author": {
        "name": "Jaegeuk Kim",
        "email": "jaegeuk@kernel.org",
        "time": "Sun Jun 08 04:30:14 2014 +0900"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:37:40 2015 -0500"
      },
      "message": "f2fs: support f2fs_fiemap\n\nThis patch links f2fs_fiemap with generic function with get_block.\n\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk@kernel.org\u003e\n"
    },
    {
      "commit": "84d4b9cf120aa5ac7c0d4d8b1f43eeb286d69b2c",
      "tree": "010bba0e9ee6fb48448f82577359845b4d77bee4",
      "parents": [
        "ca13aad55e9853a5c4ce3816647c2ca52c338c12"
      ],
      "author": {
        "name": "Jaegeuk Kim",
        "email": "jaegeuk@kernel.org",
        "time": "Sat Jun 07 03:05:03 2014 +0900"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:37:39 2015 -0500"
      },
      "message": "f2fs: avoid not to call remove_dirty_inode\n\nThere is an errorneous case during the recovery like below.\n\nIn recovery_dentry,\n 1) dir \u003d f2fs_iget();\n 2) mark the dir with FI_DELAY_IPUT\n 3) goto unmap_out\n\nAfter the end of recovery routine, there is no dirty dentries so the dir cannot\nbe released by iput in remove_dirty_dir_inode.\n\nThis patch fixes such the bug case by handling the iget and iput in the\nrecovery_dentry procedure.\n\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk@kernel.org\u003e\n"
    },
    {
      "commit": "ca13aad55e9853a5c4ce3816647c2ca52c338c12",
      "tree": "837e9350fbbb51b8af460d8d3abfbac5d10088a7",
      "parents": [
        "44f7a3b63b7e8453af30753ed7099f182cbde166"
      ],
      "author": {
        "name": "Jaegeuk Kim",
        "email": "jaegeuk@kernel.org",
        "time": "Fri Jun 06 02:12:59 2014 +0900"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:37:38 2015 -0500"
      },
      "message": "f2fs: recover fallocated space\n\nIf a fallocated file is fsynced, we should recover the i_size after sudden\npower cut.\n\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk@kernel.org\u003e\n"
    },
    {
      "commit": "44f7a3b63b7e8453af30753ed7099f182cbde166",
      "tree": "0ff5ef5cec0b85daba7c03835dbf045f5ef2996d",
      "parents": [
        "c8f5ffb072797e95452cb27bc2ab7571b1aa4942"
      ],
      "author": {
        "name": "Jaegeuk Kim",
        "email": "jaegeuk@kernel.org",
        "time": "Wed Jun 04 00:39:42 2014 +0900"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:37:37 2015 -0500"
      },
      "message": "f2fs: fix to recover data written by dio\n\nIf data are overwritten through dio, previous f2fs doesn\u0027t remain the fsync mark\ndue to no additional node writes.\n\nNote that this patch should resolve the xfstests:311.\n\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk@kernel.org\u003e\n"
    },
    {
      "commit": "c8f5ffb072797e95452cb27bc2ab7571b1aa4942",
      "tree": "cf3cf82f4c991527e07aa3e0e5286ca317285248",
      "parents": [
        "53826b575fc02687d3a444ed57a75cd31e561873"
      ],
      "author": {
        "name": "Changman Lee",
        "email": "cm224.lee@samsung.com",
        "time": "Mon May 12 12:27:43 2014 +0900"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:37:36 2015 -0500"
      },
      "message": "f2fs: large volume support\n\nf2fs\u0027s cp has one page which consists of struct f2fs_checkpoint and\nversion bitmap of sit and nat. To support lots of segments, we need more\nblocks for sit bitmap. So let\u0027s arrange sit bitmap as following:\n+-----------------+------------+\n| f2fs_checkpoint | sit bitmap |\n| + nat bitmap    |            |\n+-----------------+------------+\n0                 4k        N blocks\n\nSigned-off-by: Changman Lee \u003ccm224.lee@samsung.com\u003e\n[Jaegeuk Kim: simple code change for readability]\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk@kernel.org\u003e\n"
    },
    {
      "commit": "53826b575fc02687d3a444ed57a75cd31e561873",
      "tree": "456f92f6d719af6992d46e0b11b624833e947de9",
      "parents": [
        "2568ffc2a36317fb02a6007c98cb10d1a4d56792"
      ],
      "author": {
        "name": "Chao Yu",
        "email": "chao2.yu@samsung.com",
        "time": "Tue May 27 08:41:07 2014 +0800"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:37:35 2015 -0500"
      },
      "message": "f2fs: avoid crash when trace f2fs_submit_page_mbio event in ra_sum_pages\n\nPreviously we allocate pages with no mapping in ra_sum_pages(), so we may\nencounter a crash in event trace of f2fs_submit_page_mbio where we access\nmapping data of the page.\n\nWe\u0027d better allocate pages in bd_inode mapping and invalidate these pages after\nwe restore data from pages. It could avoid crash in above scenario.\n\nChanges from V1\n o remove redundant code in ra_sum_pages() suggested by Jaegeuk Kim.\n\nCall Trace:\n [\u003cf1031630\u003e] ? ftrace_raw_event_f2fs_write_checkpoint+0x80/0x80 [f2fs]\n [\u003cf10377bb\u003e] f2fs_submit_page_mbio+0x1cb/0x200 [f2fs]\n [\u003cf103c5da\u003e] restore_node_summary+0x13a/0x280 [f2fs]\n [\u003cf103e22d\u003e] build_curseg+0x2bd/0x620 [f2fs]\n [\u003cf104043b\u003e] build_segment_manager+0x1cb/0x920 [f2fs]\n [\u003cf1032c85\u003e] f2fs_fill_super+0x535/0x8e0 [f2fs]\n [\u003cc115b66a\u003e] mount_bdev+0x16a/0x1a0\n [\u003cf102f63f\u003e] f2fs_mount+0x1f/0x30 [f2fs]\n [\u003cc115c096\u003e] mount_fs+0x36/0x170\n [\u003cc1173635\u003e] vfs_kern_mount+0x55/0xe0\n [\u003cc1175388\u003e] do_mount+0x1e8/0x900\n [\u003cc1175d72\u003e] SyS_mount+0x82/0xc0\n [\u003cc16059cc\u003e] sysenter_do_call+0x12/0x22\n\nSuggested-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\nSigned-off-by: Chao Yu \u003cchao2.yu@samsung.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk@kernel.org\u003e\n"
    },
    {
      "commit": "2568ffc2a36317fb02a6007c98cb10d1a4d56792",
      "tree": "24c12e535ff3393498746f41acb59ef94426458e",
      "parents": [
        "26d712d5df37ae866a87a200d6f5599b4ac344c6"
      ],
      "author": {
        "name": "Chao Yu",
        "email": "chao2.yu@samsung.com",
        "time": "Wed May 28 08:56:09 2014 +0800"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:37:34 2015 -0500"
      },
      "message": "f2fs: avoid overflow when large directory feathure is enabled\n\nWhen large directory feathure is enable, We have one case which could cause\noverflow in dir_buckets() as following:\nspecial case: level + dir_level \u003e\u003d 32 and level \u003c MAX_DIR_HASH_DEPTH / 2.\n\nHere we define MAX_DIR_BUCKETS to limit the return value when the condition\ncould trigger potential overflow.\n\nChanges from V1\n o modify description of calculation in f2fs.txt suggested by Changman Lee.\n\nSuggested-by: Changman Lee \u003ccm224.lee@samsung.com\u003e\nSigned-off-by: Chao Yu \u003cchao2.yu@samsung.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk@kernel.org\u003e\n"
    },
    {
      "commit": "26d712d5df37ae866a87a200d6f5599b4ac344c6",
      "tree": "b9c52732799603194518f94336b8b1fb8331bc73",
      "parents": [
        "12d38fc533c4c61b2d5c2b2bae2cc3b1806a19da"
      ],
      "author": {
        "name": "Jaegeuk Kim",
        "email": "jaegeuk@kernel.org",
        "time": "Sun Jun 01 23:24:30 2014 +0900"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:37:33 2015 -0500"
      },
      "message": "f2fs: fix recursive lock by f2fs_setxattr\n\nThis patch should resolve the following recursive lock.\n\n[\u003cffffffff8135a9c3\u003e] call_rwsem_down_write_failed+0x13/0x20\n[\u003cffffffffa01749dc\u003e] f2fs_setxattr+0x5c/0xa0 [f2fs]\n[\u003cffffffffa0174c99\u003e] __f2fs_set_acl+0x1b9/0x340 [f2fs]\n[\u003cffffffffa017515a\u003e] f2fs_init_acl+0x4a/0xcb [f2fs]\n[\u003cffffffffa0159abe\u003e] __f2fs_add_link+0x26e/0x780 [f2fs]\n[\u003cffffffffa015d4d8\u003e] f2fs_mkdir+0xb8/0x150 [f2fs]\n[\u003cffffffff811cebd7\u003e] vfs_mkdir+0xb7/0x160\n[\u003cffffffff811cf89b\u003e] SyS_mkdir+0xab/0xe0\n[\u003cffffffff817244bf\u003e] tracesys+0xe1/0xe6\n[\u003cffffffffffffffff\u003e] 0xffffffffffffffff\n\nThe call path indicates:\n- f2fs_add_link\n   : down_write(\u0026fi-\u003ei_sem);\n\n - init_inode_metadata\n   - f2fs_init_acl\n     - __f2fs_set_acl\n       - f2fs_setxattr\n         : down_write(\u0026fi-\u003ei_sem);\n\nHere we should not call f2fs_setxattr, but __f2fs_setxattr.\nBut __f2fs_setxattr is a static function in xattr.c, so that I found the other\ngeneric approach to use f2fs_setxattr.\n\nIn f2fs_setxattr, the page pointer is only given from init_inode_metadata.\nSo, this patch adds this condition to avoid this in f2fs_setxattr.\n\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk@kernel.org\u003e\n"
    }
  ],
  "next": "12d38fc533c4c61b2d5c2b2bae2cc3b1806a19da"
}
