)]}'
{
  "log": [
    {
      "commit": "f92cc7fda58db7598db0eb490d2dd31f65d4ff02",
      "tree": "81ad323d2d7b65af7f8a0fff95e6cd8fa32d4efd",
      "parents": [
        "5c2f973be0c3bb0d7670d342a29f6256ffbdb667"
      ],
      "author": {
        "name": "Nick Reuter",
        "email": "nreuter85@gmail.com",
        "time": "Mon Mar 02 21:35:28 2015 -0600"
      },
      "committer": {
        "name": "Nick Reuter",
        "email": "nreuter85@gmail.com",
        "time": "Mon Mar 02 21:35:28 2015 -0600"
      },
      "message": "input: misc: fix Kconfig\n\n no need to use different Kconfigs for mpu3050\n\nChange-Id: Ia073350fc8435a0c40248ed32e18d0cd98ece683\n"
    },
    {
      "commit": "5c2f973be0c3bb0d7670d342a29f6256ffbdb667",
      "tree": "18ac54f5df6d5c3397df827dbc426896c7fc49f3",
      "parents": [
        "3d773fa29ba6d335be178633aa2a939e3a65e42a"
      ],
      "author": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Mon Aug 11 21:52:25 2014 -0400"
      },
      "committer": {
        "name": "Nick Reuter",
        "email": "nreuter85@gmail.com",
        "time": "Mon Mar 02 21:33:06 2015 -0600"
      },
      "message": "cdc:  update with patches from mbm userspace\n\nChange-Id: I74b0b41bc87071be538c9b26e44f8f1a3907c74a\n"
    },
    {
      "commit": "3d773fa29ba6d335be178633aa2a939e3a65e42a",
      "tree": "42f98c3fab64e045acc5efbc410575696261d971",
      "parents": [
        "34b6b2bfef6507f7539f499d85625693cb68442b"
      ],
      "author": {
        "name": "Nick Reuter",
        "email": "nreuter85@gmail.com",
        "time": "Sun Jul 06 19:34:12 2014 -0500"
      },
      "committer": {
        "name": "Nick Reuter",
        "email": "nreuter85@gmail.com",
        "time": "Mon Mar 02 21:14:25 2015 -0600"
      },
      "message": "clock-8x60: add clk_ignor_list_add\n\nChange-Id: I5e99aff13b6a7aa7e8c46fff222899fdc2f8cde2\n"
    },
    {
      "commit": "34b6b2bfef6507f7539f499d85625693cb68442b",
      "tree": "8f7b18377b1204b6eae87de1ec2d47ed4cdd90c4",
      "parents": [
        "b0d3905f333cd7f76617c354e40af7f65c254283"
      ],
      "author": {
        "name": "Nick Reuter",
        "email": "nreuter85@gmail.com",
        "time": "Sun Jul 06 19:36:19 2014 -0500"
      },
      "committer": {
        "name": "Nick Reuter",
        "email": "nreuter85@gmail.com",
        "time": "Mon Mar 02 21:14:18 2015 -0600"
      },
      "message": "mpm: add msm_mpm_set_irq_ignore_list\n\nChange-Id: I58e09811d28275b1e9d90918b967c9c04192e4f7\n"
    },
    {
      "commit": "b0d3905f333cd7f76617c354e40af7f65c254283",
      "tree": "bc54582ab42c21ec343d2dede9ffbf735fc0423b",
      "parents": [
        "b0e1b91999e3c60b1adf93f7e9c34db980b3e812"
      ],
      "author": {
        "name": "Bryan Huntsman",
        "email": "bryanh@codeaurora.org",
        "time": "Mon Jun 03 18:48:08 2013 -0700"
      },
      "committer": {
        "name": "Nick Reuter",
        "email": "nreuter85@gmail.com",
        "time": "Mon Mar 02 21:14:10 2015 -0600"
      },
      "message": "msm: fix in-tree compilation for perf_trace_counters\n\nIn-tree compilation for arch/arm/mach-msm/perf_trace_counters.c was\nhitting this error:\n\n    In file included from arch/arm/mach-msm/perf_trace_counters.h:127:0,\n                     from arch/arm/mach-msm/perf_trace_counters.c:14:\n    include/trace/define_trace.h:79:43: fatal error: ./perf_trace_counters.h: No such file or directory\n\nInstructions for TRACE_INCLUDE_FILE in include/trace/define_trace.h say\n\"the path is relative to define_trace.h, not the file including it\".\nFix in-tree compilation by making the path relative to define_trace.h.\n\nSigned-off-by: Bryan Huntsman \u003cbryanh@codeaurora.org\u003e\n"
    },
    {
      "commit": "b0e1b91999e3c60b1adf93f7e9c34db980b3e812",
      "tree": "c542ec66a91e69da4abb626bff38184322c67727",
      "parents": [
        "1e83f6864febc1027394ed38e7a24af87a912528",
        "b4d27f2f2e68afea0fc828ba42f41b3efa231e42"
      ],
      "author": {
        "name": "Nick Reuter",
        "email": "nreuter85@gmail.com",
        "time": "Mon Mar 02 21:12:39 2015 -0600"
      },
      "committer": {
        "name": "Nick Reuter",
        "email": "nreuter85@gmail.com",
        "time": "Mon Mar 02 21:13:53 2015 -0600"
      },
      "message": "Merge remote-tracking branch \u0027cm/cm-12.0\u0027 into HEAD\n\nChange-Id: Ibcea3bd8608b82692494e87b5ff256a254807520\n"
    },
    {
      "commit": "1e83f6864febc1027394ed38e7a24af87a912528",
      "tree": "a816cc7e1dbec52b2b19ce5cbbe357069df113d7",
      "parents": [
        "ecf1ffe6158be7950fcff6c9dc60434eb95c7c91"
      ],
      "author": {
        "name": "Nick Reuter",
        "email": "nreuter85@gmail.com",
        "time": "Mon Mar 02 20:48:28 2015 -0600"
      },
      "committer": {
        "name": "Nick Reuter",
        "email": "nreuter85@gmail.com",
        "time": "Mon Mar 02 20:49:27 2015 -0600"
      },
      "message": "htc: rename htc_sleep_clk.c to htc_sleep_clk_8k.c\n\n - a new htc_sleep_clk is present in upstream cm, lets not cause merge issues\n\nChange-Id: I459afa07522a52fab4cf6695aa8a8e81ae220aa3\n"
    },
    {
      "commit": "ecf1ffe6158be7950fcff6c9dc60434eb95c7c91",
      "tree": "ae1c2e54d6f64a507e8d6c9920471613b9cd745c",
      "parents": [
        "715d05f7c9a84f89d00835c7b6c393bf32f45f6a"
      ],
      "author": {
        "name": "Nick Reuter",
        "email": "nreuter85@gmail.com",
        "time": "Mon Mar 02 20:44:01 2015 -0600"
      },
      "committer": {
        "name": "Nick Reuter",
        "email": "nreuter85@gmail.com",
        "time": "Mon Mar 02 20:45:34 2015 -0600"
      },
      "message": "input: misc: flip the mpu3050 folder naming\n\n - since htc is the primary vendor used it should be the default mpu3050 folder\n - as for other devices use the mpu3050_hp driver folder\n\nChange-Id: I9b353d6770da8fe585d46f034968c6973766d57e\n"
    },
    {
      "commit": "b4d27f2f2e68afea0fc828ba42f41b3efa231e42",
      "tree": "57f8c2dab736164da025124afa08082e530115b7",
      "parents": [
        "a30004292b50e3e80c4dccee2fd54e48b7908504"
      ],
      "author": {
        "name": "Brinly Taylor",
        "email": "uberlaggydarwin@gmail.com",
        "time": "Sun Mar 01 19:12:28 2015 +1030"
      },
      "committer": {
        "name": "Brinly Taylor",
        "email": "uberlaggydarwin@gmail.com",
        "time": "Sun Mar 01 19:14:28 2015 +1030"
      },
      "message": "msm: HTC: m7: cleanup board files.\n\nChange-Id: I5ff253149fb39f562513e2fcbc025c094cb5bfb7\n"
    },
    {
      "commit": "a30004292b50e3e80c4dccee2fd54e48b7908504",
      "tree": "d94b5a28b2337f8d675354fa3a3479332079fccb",
      "parents": [
        "87f5b926ec03107508df94f98d9e0c1a79f84f1b"
      ],
      "author": {
        "name": "Simon Que",
        "email": "sque@chromium.org",
        "time": "Thu Jan 17 13:02:52 2013 -0800"
      },
      "committer": {
        "name": "jrior001",
        "email": "jriordan001@gmail.com",
        "time": "Wed Feb 25 21:28:40 2015 -0500"
      },
      "message": "HID: Fix uninitialized variable \"size\" in hid-wiimote-debug\n\nThis variable is initialized conditionally, based on whether a wiimote\ncall succeeds.  However, the logic is not obvious to the compiler so it\nthrows a warning.  Eliminate the warning by initializing \"size\" to 0.\n\nThe warning is:\nfiles/drivers/hid/hid-wiimote-debug.c:69:18: warning: \u0027size\u0027 may be used\nuninitialized in this function [-Wmaybe-uninitialized]\n\nSigned-off-by: Simon Que \u003csque@chromium.org\u003e\nSigned-off-by: David Herrmann \u003cdh.herrmann@googlemail.com\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n\nChange-Id: Ibc33240de22176b34dd93abdb731ca52ca133a38\n"
    },
    {
      "commit": "87f5b926ec03107508df94f98d9e0c1a79f84f1b",
      "tree": "527b6ac93e08a6e65eab5a8025edcafd99b48131",
      "parents": [
        "f767fcaf41fe25dc5df1184d5423cd8497372df8"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Wed Oct 08 10:42:27 2014 -0700"
      },
      "committer": {
        "name": "Brinly Taylor",
        "email": "uberlaggydarwin@gmail.com",
        "time": "Tue Feb 24 07:36:21 2015 +1030"
      },
      "message": "mnt: Prevent pivot_root from creating a loop in the mount tree\n\ncommit 0d0826019e529f21c84687521d03f60cd241ca7d upstream.\n\nAndy Lutomirski recently demonstrated that when chroot is used to set\nthe root path below the path for the new ``root\u0027\u0027 passed to pivot_root\nthe pivot_root system call succeeds and leaks mounts.\n\nIn examining the code I see that starting with a new root that is\nbelow the current root in the mount tree will result in a loop in the\nmount tree after the mounts are detached and then reattached to one\nanother.  Resulting in all kinds of ugliness including a leak of that\nmounts involved in the leak of the mount loop.\n\nPrevent this problem by ensuring that the new mount is reachable from\nthe current root of the mount tree.\n\n[Added stable cc.  Fixes CVE-2014-7970.  --Andy]\n\nChange-Id: I54fc361d735b57b42c9a99d1125074b31058fbbe\nReported-by: Andy Lutomirski \u003cluto@amacapital.net\u003e\nReviewed-by: Andy Lutomirski \u003cluto@amacapital.net\u003e\nLink: http://lkml.kernel.org/r/87bnpmihks.fsf@x220.int.ebiederm.org\nSigned-off-by: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andy Lutomirski \u003cluto@amacapital.net\u003e\n[lizf: Backported to 3.4: adjust context]\nSigned-off-by: Zefan Li \u003clizefan@huawei.com\u003e\n"
    },
    {
      "commit": "715d05f7c9a84f89d00835c7b6c393bf32f45f6a",
      "tree": "95b234f490e6cecc7f31435b8f99b7aa2c786e6f",
      "parents": [
        "e0cea84ef8c3cf1d417c952633d6a4a07c798709"
      ],
      "author": {
        "name": "Jaegeuk Kim",
        "email": "jaegeuk@kernel.org",
        "time": "Mon Jan 19 11:06:13 2015 -0600"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Mon Feb 23 10:53:58 2015 -0500"
      },
      "message": "fs: introduce a generic shutdown ioctl\n\nThis patch introduces a generic ioctl for fs shutdown.\n\nChange-Id: I452ee16b0078a2704b8026962e5bd07b67710c06\n"
    },
    {
      "commit": "e0cea84ef8c3cf1d417c952633d6a4a07c798709",
      "tree": "a57febee5c9aec375c68f3904bcb3599514c32a9",
      "parents": [
        "df20f77453c33fab57d3a2ed67a5723dd27f36d2"
      ],
      "author": {
        "name": "Jaegeuk Kim",
        "email": "jaegeuk@kernel.org",
        "time": "Wed Feb 18 20:43:11 2015 -0600"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Mon Feb 23 10:53:57 2015 -0500"
      },
      "message": "f2fs: update from git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs.git\n\nUpdated as of commit b3b06a14a26af368dd58f9265cf5a9927067b768\n\nChange-Id: I3dfbbf52d069a397de662058bb72bf96c6393bc6\n"
    },
    {
      "commit": "df20f77453c33fab57d3a2ed67a5723dd27f36d2",
      "tree": "7cebbe1e68089653c7cab4f0916382aa954c7b0d",
      "parents": [
        "42ab826d4de0090aa19ef0a35ade21ae58939266"
      ],
      "author": {
        "name": "Florian Westphal",
        "email": "fw@strlen.de",
        "time": "Fri Sep 26 11:35:42 2014 +0200"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Mon Feb 23 10:53:56 2015 -0500"
      },
      "message": "netfilter: conntrack: disable generic tracking for known protocols\n\nGiven following iptables ruleset:\n\n-P FORWARD DROP\n-A FORWARD -m sctp --dport 9 -j ACCEPT\n-A FORWARD -p tcp --dport 80 -j ACCEPT\n-A FORWARD -p tcp -m conntrack -m state ESTABLISHED,RELATED -j ACCEPT\n\nOne would assume that this allows SCTP on port 9 and TCP on port 80.\nUnfortunately, if the SCTP conntrack module is not loaded, this allows\n*all* SCTP communication, to pass though, i.e. -p sctp -j ACCEPT,\nwhich we think is a security issue.\n\nThis is because on the first SCTP packet on port 9, we create a dummy\n\"generic l4\" conntrack entry without any port information (since\nconntrack doesn\u0027t know how to extract this information).\n\nAll subsequent packets that are unknown will then be in established\nstate since they will fallback to proto_generic and will match the\n\u0027generic\u0027 entry.\n\nOur originally proposed version [1] completely disabled generic protocol\ntracking, but Jozsef suggests to not track protocols for which a more\nsuitable helper is available, hence we now mitigate the issue for in\ntree known ct protocol helpers only, so that at least NAT and direction\ninformation will still be preserved for others.\n\n [1] http://www.spinics.net/lists/netfilter-devel/msg33430.html\n\nJoint work with Daniel Borkmann.\n\nSigned-off-by: Florian Westphal \u003cfw@strlen.de\u003e\nSigned-off-by: Daniel Borkmann \u003cdborkman@redhat.com\u003e\nAcked-by: Jozsef Kadlecsik \u003ckadlec@blackhole.kfki.hu\u003e\nSigned-off-by: Pablo Neira Ayuso \u003cpablo@netfilter.org\u003e\n\nConflicts:\n\tnet/netfilter/nf_conntrack_proto_generic.c\n\nChange-Id: I7ba4a94bc6ef045ddd6898546a100c77d5172bcd\n"
    },
    {
      "commit": "42ab826d4de0090aa19ef0a35ade21ae58939266",
      "tree": "a791e918d86cba030249ef79569cb340ee377c8a",
      "parents": [
        "64d1a0d9f7bb11d447b890f45a31eca60314293d"
      ],
      "author": {
        "name": "Michael Halcrow",
        "email": "mhalcrow@google.com",
        "time": "Wed Nov 26 09:09:16 2014 -0800"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Mon Feb 23 10:53:55 2015 -0500"
      },
      "message": "eCryptfs: Remove buggy and unnecessary write in file name decode routine\n\nDmitry Chernenkov used KASAN to discover that eCryptfs writes past the\nend of the allocated buffer during encrypted filename decoding. This\nfix corrects the issue by getting rid of the unnecessary 0 write when\nthe current bit offset is 2.\n\nSigned-off-by: Michael Halcrow \u003cmhalcrow@google.com\u003e\nReported-by: Dmitry Chernenkov \u003cdmitryc@google.com\u003e\nSuggested-by: Kees Cook \u003ckeescook@chromium.org\u003e\nCc: stable@vger.kernel.org # v2.6.29+: 51ca58d eCryptfs: Filename Encryption: Encoding and encryption functions\nSigned-off-by: Tyler Hicks \u003ctyhicks@canonical.com\u003e\n"
    },
    {
      "commit": "64d1a0d9f7bb11d447b890f45a31eca60314293d",
      "tree": "7a9065968fd657f4ddb613e8f89706b93f21585f",
      "parents": [
        "c6ff06ec83644ee83ce45551d5b1d223520c7f2d"
      ],
      "author": {
        "name": "Dave Martin",
        "email": "dave.martin@linaro.org",
        "time": "Thu Nov 22 12:50:43 2012 +0100"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Mon Feb 23 10:53:36 2015 -0500"
      },
      "message": "ARM: 7583/1: decompressor: Enable unaligned memory access for v6 and above\n\nModern GCC can generate code which makes use of the CPU\u0027s native\nunaligned memory access capabilities.  This is useful for the C\ndecompressor implementations used for unpacking compressed kernels.\n\nThis patch disables alignment faults and enables the v6 unaligned\naccess model on CPUs which support these features (i.e., v6 and\nlater), allowing full unaligned access support for C code in the\ndecompressor.\n\nThe decompressor C code must not be built to assume that unaligned\naccess works if support for v5 or older platforms is included in\nthe kernel.\n\nFor correct code generation, C decompressor code must always use\nthe get_unaligned and put_unaligned accessors when dealing with\nunaligned pointers, regardless of this patch.\n\nSigned-off-by: Dave Martin \u003cdave.martin@linaro.org\u003e\nAcked-by: Nicolas Pitre \u003cnico@linaro.org\u003e\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\n"
    },
    {
      "commit": "f767fcaf41fe25dc5df1184d5423cd8497372df8",
      "tree": "af8023a2401871ece1f6610691f52fec11cd62ff",
      "parents": [
        "f276d14b801f18064e4bdc75bb0f7e29bc01bb8e"
      ],
      "author": {
        "name": "Brinly Taylor",
        "email": "uberlaggydarwin@gmail.com",
        "time": "Sat Feb 21 21:44:40 2015 +1030"
      },
      "committer": {
        "name": "Brinly Taylor",
        "email": "uberlaggydarwin@gmail.com",
        "time": "Mon Feb 23 20:55:26 2015 +1030"
      },
      "message": "msm: HTC: zara: Unbreak Bluetooth\n\nBT working again \\o/!!\n\nChange-Id: Id075d93b54fde0b15e4e6b1123c7db301cd70c41\n"
    },
    {
      "commit": "f276d14b801f18064e4bdc75bb0f7e29bc01bb8e",
      "tree": "f0ad909c6356c7319a0ae2f6ddca95beb006a97b",
      "parents": [
        "40f38918bc49f7cd2bb35ec9d6a9e44ef22b282a"
      ],
      "author": {
        "name": "Brinly Taylor",
        "email": "uberlaggydarwin@gmail.com",
        "time": "Sat Feb 21 22:04:17 2015 +1030"
      },
      "committer": {
        "name": "Brin Taylor",
        "email": "uberlaggydarwin@gmail.com",
        "time": "Mon Feb 23 01:47:46 2015 +0000"
      },
      "message": "msm: HTC: zara: regen defconfig\n\nChange-Id: Ia4de8f8f0684201ab895a29f28a307773a506b80\n"
    },
    {
      "commit": "40f38918bc49f7cd2bb35ec9d6a9e44ef22b282a",
      "tree": "c39b820918205125d119d8352981a11b57691f23",
      "parents": [
        "79f424cb9031ea675a798321484f700228c4dfe8"
      ],
      "author": {
        "name": "Brinly Taylor",
        "email": "uberlaggydarwin@gmail.com",
        "time": "Sun Feb 22 16:10:51 2015 +1030"
      },
      "committer": {
        "name": "Brin Taylor",
        "email": "uberlaggydarwin@gmail.com",
        "time": "Sun Feb 22 22:39:47 2015 +0000"
      },
      "message": "msm: HTC: zara: Cleanup defconfig\n\nDead entries from the Sense kernel.\n\nChange-Id: I528c717d090a8c610c82b9603d9d640338b6a8a3\n"
    },
    {
      "commit": "79f424cb9031ea675a798321484f700228c4dfe8",
      "tree": "4ca59c09673a71b4348536211c69667ddc3e12cd",
      "parents": [
        "e2c5170514fb503d65b17ade60d0d0834b73da83"
      ],
      "author": {
        "name": "Iliyan Malchev",
        "email": "malchev@google.com",
        "time": "Thu Nov 20 05:16:50 2014 -0600"
      },
      "committer": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Sun Feb 22 22:07:12 2015 +0000"
      },
      "message": "kgsl: do not vmap/memset to zero-out pages\n\nb/18402205 External reports: Video playback failing on Flo after upgrade to\n\t   Lollipop\n\nChange-Id: I358328ba2bd543d77e4218f32b0695c2f6f6e6c9\nSigned-off-by: Iliyan Malchev \u003cmalchev@google.com\u003e\n"
    },
    {
      "commit": "e2c5170514fb503d65b17ade60d0d0834b73da83",
      "tree": "d80116d3e8f006b77f163a1086349cf25ae5c14d",
      "parents": [
        "6e522ba82f5a65cd77f8a84dc5155ad1b87aaa4c"
      ],
      "author": {
        "name": "Brinly Taylor",
        "email": "uberlaggydarwin@gmail.com",
        "time": "Sat Feb 21 22:02:49 2015 +1030"
      },
      "committer": {
        "name": "Brin Taylor",
        "email": "uberlaggydarwin@gmail.com",
        "time": "Sun Feb 22 00:59:12 2015 +0000"
      },
      "message": "msm: HTC: m4: regen defconfig\n\nChange-Id: Ibb6fda77c2de524097b9839579aa73d0769dd96b\n"
    },
    {
      "commit": "6e522ba82f5a65cd77f8a84dc5155ad1b87aaa4c",
      "tree": "a6b2a56b36659a82c958fc1c4ef5beddef532ee4",
      "parents": [
        "672095ef0fa425ac15e39e39a997c1c610019e4a"
      ],
      "author": {
        "name": "Brinly Taylor",
        "email": "uberlaggydarwin@gmail.com",
        "time": "Sat Feb 21 21:42:21 2015 +1030"
      },
      "committer": {
        "name": "Brinly Taylor",
        "email": "uberlaggydarwin@gmail.com",
        "time": "Sun Feb 22 11:12:22 2015 +1030"
      },
      "message": "msm: HTC: m4: Cleanup tabs.\n\nChange-Id: Ib2d239c4a5752e5f8603b6912aafc666c1aa167e\n"
    },
    {
      "commit": "672095ef0fa425ac15e39e39a997c1c610019e4a",
      "tree": "544abdc46d6c8aa55014d95e8aac4ca9ab1698a3",
      "parents": [
        "3b4eaf2517b560772db3ccb80a5d76e03641fa5c"
      ],
      "author": {
        "name": "Michael Halcrow",
        "email": "mhalcrow@google.com",
        "time": "Wed Nov 26 09:09:16 2014 -0800"
      },
      "committer": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Wed Feb 18 01:07:28 2015 +0000"
      },
      "message": "eCryptfs: Remove buggy and unnecessary write in file name decode routine\n\nDmitry Chernenkov used KASAN to discover that eCryptfs writes past the\nend of the allocated buffer during encrypted filename decoding. This\nfix corrects the issue by getting rid of the unnecessary 0 write when\nthe current bit offset is 2.\n\nSigned-off-by: Michael Halcrow \u003cmhalcrow@google.com\u003e\nReported-by: Dmitry Chernenkov \u003cdmitryc@google.com\u003e\nSuggested-by: Kees Cook \u003ckeescook@chromium.org\u003e\nCc: stable@vger.kernel.org # v2.6.29+: 51ca58d eCryptfs: Filename Encryption: Encoding and encryption functions\nSigned-off-by: Tyler Hicks \u003ctyhicks@canonical.com\u003e\nChange-Id: I656ca61b853582d36ee81b574a96f37f071d2bd9\n"
    },
    {
      "commit": "3b4eaf2517b560772db3ccb80a5d76e03641fa5c",
      "tree": "1b6017e220cc750ab11c9f007bc7e709124dd8ea",
      "parents": [
        "20f1de7533c8ddbc696f3561b97b694794aa46c4"
      ],
      "author": {
        "name": "Florian Westphal",
        "email": "fw@strlen.de",
        "time": "Fri Sep 26 11:35:42 2014 +0200"
      },
      "committer": {
        "name": "Brinly Taylor",
        "email": "uberlaggydarwin@gmail.com",
        "time": "Wed Feb 18 10:45:23 2015 +1030"
      },
      "message": "netfilter: conntrack: disable generic tracking for known protocols\n\nGiven following iptables ruleset:\n\n-P FORWARD DROP\n-A FORWARD -m sctp --dport 9 -j ACCEPT\n-A FORWARD -p tcp --dport 80 -j ACCEPT\n-A FORWARD -p tcp -m conntrack -m state ESTABLISHED,RELATED -j ACCEPT\n\nOne would assume that this allows SCTP on port 9 and TCP on port 80.\nUnfortunately, if the SCTP conntrack module is not loaded, this allows\n*all* SCTP communication, to pass though, i.e. -p sctp -j ACCEPT,\nwhich we think is a security issue.\n\nThis is because on the first SCTP packet on port 9, we create a dummy\n\"generic l4\" conntrack entry without any port information (since\nconntrack doesn\u0027t know how to extract this information).\n\nAll subsequent packets that are unknown will then be in established\nstate since they will fallback to proto_generic and will match the\n\u0027generic\u0027 entry.\n\nOur originally proposed version [1] completely disabled generic protocol\ntracking, but Jozsef suggests to not track protocols for which a more\nsuitable helper is available, hence we now mitigate the issue for in\ntree known ct protocol helpers only, so that at least NAT and direction\ninformation will still be preserved for others.\n\n [1] http://www.spinics.net/lists/netfilter-devel/msg33430.html\n\nJoint work with Daniel Borkmann.\n\nSigned-off-by: Florian Westphal \u003cfw@strlen.de\u003e\nSigned-off-by: Daniel Borkmann \u003cdborkman@redhat.com\u003e\nAcked-by: Jozsef Kadlecsik \u003ckadlec@blackhole.kfki.hu\u003e\nSigned-off-by: Pablo Neira Ayuso \u003cpablo@netfilter.org\u003e\n\nChange-Id: I9bac2de7bc1eb406c1df53510dedaba6440a9f07\n"
    },
    {
      "commit": "c6ff06ec83644ee83ce45551d5b1d223520c7f2d",
      "tree": "6b84d0f1423a8f2a7da8e075e11d01ef96a9ac58",
      "parents": [
        "f1a3bbab4d1f6bea694950ab534b72993bb83c7d"
      ],
      "author": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Wed Mar 26 13:03:12 2014 +0900"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sun Feb 15 09:57:04 2015 -0500"
      },
      "message": "net: support marking accepting TCP sockets\n\nWhen using mark-based routing, sockets returned from accept()\nmay need to be marked differently depending on the incoming\nconnection request.\n\nThis is the case, for example, if different socket marks identify\ndifferent networks: a listening socket may want to accept\nconnections from all networks, but each connection should be\nmarked with the network that the request came in on, so that\nsubsequent packets are sent on the correct network.\n\nThis patch adds a sysctl to mark TCP sockets based on the fwmark\nof the incoming SYN packet. If enabled, and an unmarked socket\nreceives a SYN, then the SYN packet\u0027s fwmark is written to the\nconnection\u0027s inet_request_sock, and later written back to the\naccepted socket when the connection is established.  If the\nsocket already has a nonzero mark, then the behaviour is the same\nas it is today, i.e., the listening socket\u0027s fwmark is used.\n\nBlack-box tested using user-mode linux:\n\n- IPv4/IPv6 SYN+ACK, FIN, etc. packets are routed based on the\n  mark of the incoming SYN packet.\n- The socket returned by accept() is marked with the mark of the\n  incoming SYN packet.\n- Tested with syncookies\u003d1 and syncookies\u003d2.\n\nChange-Id: I5e8c9b989762a93f3eb5a0c1b4df44f62d57f3cb\nSigned-off-by: Lorenzo Colitti \u003clorenzo@google.com\u003e\n"
    },
    {
      "commit": "f1a3bbab4d1f6bea694950ab534b72993bb83c7d",
      "tree": "05a73a1b413a92e90a52d961787ad855c3a0d1ed",
      "parents": [
        "60914bc50c6e550dbeaf6ddf044a7888c345de14"
      ],
      "author": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Tue Mar 18 20:52:27 2014 +0900"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sun Feb 15 09:57:03 2015 -0500"
      },
      "message": "net: add a sysctl to reflect the fwmark on replies\n\nKernel-originated IP packets that have no user socket associated\nwith them (e.g., ICMP errors and echo replies, TCP RSTs, etc.)\nare emitted with a mark of zero. Add a sysctl to make them have\nthe same mark as the packet they are replying to.\n\nThis allows an administrator that wishes to do so to use\nmark-based routing, firewalling, etc. for these replies by\nmarking the original packets inbound.\n\nTested using user-mode linux:\n- ICMP/ICMPv6 echo replies and errors.\n- TCP RST packets (IPv4 and IPv6).\n\nChange-Id: I95d896647b278d092ef331d1377b959da1deb042\nSigned-off-by: Lorenzo Colitti \u003clorenzo@google.com\u003e\n\nConflicts:\n\tDocumentation/networking/ip-sysctl.txt\n"
    },
    {
      "commit": "60914bc50c6e550dbeaf6ddf044a7888c345de14",
      "tree": "519e5eedd074c6854b7d2cc385ceb79a2f221dbc",
      "parents": [
        "da07cddb22c983161d7e7f1039625edf1076ccc2"
      ],
      "author": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Wed Mar 26 19:35:41 2014 +0900"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sun Feb 15 09:57:01 2015 -0500"
      },
      "message": "net: ipv6: autoconf routes into per-device tables\n\nCurrently, IPv6 router discovery always puts routes into\nRT6_TABLE_MAIN. This causes problems for connection managers\nthat want to support multiple simultaneous network connections\nand want control over which one is used by default (e.g., wifi\nand wired).\n\nTo work around this connection managers typically take the routes\nthey prefer and copy them to static routes with low metrics in\nthe main table. This puts the burden on the connection manager\nto watch netlink to see if the routes have changed, delete the\nroutes when their lifetime expires, etc.\n\nInstead, this patch adds a per-interface sysctl to have the\nkernel put autoconf routes into different tables. This allows\neach interface to have its own autoconf table, and choosing the\ndefault interface (or using different interfaces at the same\ntime for different types of traffic) can be done using\nappropriate ip rules.\n\nThe sysctl behaves as follows:\n\n- \u003d 0: default. Put routes into RT6_TABLE_MAIN as before.\n- \u003e 0: manual. Put routes into the specified table.\n- \u003c 0: automatic. Add the absolute value of the sysctl to the\n       device\u0027s ifindex, and use that table.\n\nThe automatic mode is most useful in conjunction with\nnet.ipv6.conf.default.accept_ra_rt_table. A connection manager\nor distribution could set it to, say, -100 on boot, and\nthereafter just use IP rules.\n\nChange-Id: I093d39fb06ec413905dc0d0d5792c1bc5d5c73a9\nSigned-off-by: Lorenzo Colitti \u003clorenzo@google.com\u003e\n\nConflicts:\n\tinclude/linux/ipv6.h\n\tnet/ipv6/route.c\n"
    },
    {
      "commit": "da07cddb22c983161d7e7f1039625edf1076ccc2",
      "tree": "1fe5b960c4c65c4c354f09210ff8172fd7e795e0",
      "parents": [
        "53d6392f09418b7a61ebf06377a76798821ae29d"
      ],
      "author": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Thu Feb 27 13:38:26 2014 +0900"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sun Feb 15 09:57:00 2015 -0500"
      },
      "message": "net: ipv6: ping: Use socket mark in routing lookup\n\n[net-next commit bf439b3154ce49d81a79b14f9fab18af99018ae2]\n\nChange-Id: I8356e9132088c75d4510021c6e4c2641d772087a\nSigned-off-by: Lorenzo Colitti \u003clorenzo@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "53d6392f09418b7a61ebf06377a76798821ae29d",
      "tree": "7297c59cd1817e62dc590f11155398c379724a1a",
      "parents": [
        "2b443dcb94a694cbf660ed21e2a9d6244fc92283"
      ],
      "author": {
        "name": "Hannes Frederic Sowa",
        "email": "hannes@stressinduktion.org",
        "time": "Fri Jan 23 12:01:26 2015 +0100"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sun Feb 15 09:56:50 2015 -0500"
      },
      "message": "ipv4: try to cache dst_entries which would cause a redirect\n\nNot caching dst_entries which cause redirects could be exploited by hosts\non the same subnet, causing a severe DoS attack. This effect aggravated\nsince commit f88649721268999 (\"ipv4: fix dst race in sk_dst_get()\").\n\nLookups causing redirects will be allocated with DST_NOCACHE set which\nwill force dst_release to free them via RCU.  Unfortunately waiting for\nRCU grace period just takes too long, we can end up with \u003e1M dst_entries\nwaiting to be released and the system will run OOM. rcuos threads cannot\ncatch up under high softirq load.\n\nAttaching the flag to emit a redirect later on to the specific skb allows\nus to cache those dst_entries thus reducing the pressure on allocation\nand deallocation.\n\nThis issue was discovered by Marcelo Leitner.\n\nCc: Julian Anastasov \u003cja@ssi.bg\u003e\nSigned-off-by: Marcelo Leitner \u003cmleitner@redhat.com\u003e\nSigned-off-by: Florian Westphal \u003cfw@strlen.de\u003e\nSigned-off-by: Hannes Frederic Sowa \u003channes@stressinduktion.org\u003e\nSigned-off-by: Julian Anastasov \u003cja@ssi.bg\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n\nConflicts:\n\tinclude/net/ip.h\n\tnet/ipv4/route.c\n\nChange-Id: I53e4b500a4db2f5fece937a42a3bd810b2640c44\n"
    },
    {
      "commit": "2b443dcb94a694cbf660ed21e2a9d6244fc92283",
      "tree": "fd5ac2804efbc2621ba2c3f10418f7544dd4166c",
      "parents": [
        "a721d2d5461a3785b1acdf274669b10442de7408"
      ],
      "author": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Thu Feb 12 06:04:56 2015 -0500"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Fri Feb 13 10:29:36 2015 -0500"
      },
      "message": "acpuclock:  Add in CONFIG_MSM_FORCE_MAX_CPU_TABLE\n\nported from JCSullins 3.0 kernel\n\nChange-Id: I62d5692a5aaf2f356a734c97ba61b0099071cc2e\n"
    },
    {
      "commit": "a721d2d5461a3785b1acdf274669b10442de7408",
      "tree": "003f737c04f8bd5e431010fe06bb833c9c217c72",
      "parents": [
        "49989936ce339e6107de78d6b69d59571df59928"
      ],
      "author": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Fri Feb 13 07:12:58 2015 -0500"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Fri Feb 13 07:12:58 2015 -0500"
      },
      "message": "defconfig:  Update 4g defconfig\n\nChange-Id: I42b6b0ba1663fccc8e354be5544f81bdc658bebf\n"
    },
    {
      "commit": "20f1de7533c8ddbc696f3561b97b694794aa46c4",
      "tree": "3fc94df96b026e156bfe2a3cf50cbab88963d29e",
      "parents": [
        "b1d047d055fd03163cdfcdbeba3555db3218ed8b"
      ],
      "author": {
        "name": "Brinly Taylor",
        "email": "uberlaggydarwin@gmail.com",
        "time": "Fri Feb 13 07:42:51 2015 +1030"
      },
      "committer": {
        "name": "Brinly Taylor",
        "email": "uberlaggydarwin@gmail.com",
        "time": "Fri Feb 13 07:46:11 2015 +1030"
      },
      "message": "msm: HTC: zara: Remove NFC\n\nWe don\u0027t actually have NFC. No need to include it.\n\nChange-Id: I6bb96e1cf6628bae295edf1a82adad9dbc93dfdb\n"
    },
    {
      "commit": "49989936ce339e6107de78d6b69d59571df59928",
      "tree": "387b5c06276a73c400243b1d458c8b7adfae3ea7",
      "parents": [
        "acac1ffdf00394383cd76cd1cdcd9d04545ba8ab"
      ],
      "author": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Thu Feb 12 05:55:49 2015 -0500"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Thu Feb 12 05:55:49 2015 -0500"
      },
      "message": "defconfig:  Update recovery to support f2fs\n\nChange-Id: I21a17d6d982b5af4b6f1b7158c049177ba75af8f\n"
    },
    {
      "commit": "b1d047d055fd03163cdfcdbeba3555db3218ed8b",
      "tree": "138c9a7774417db4e93f097aa76e3e5693c57886",
      "parents": [
        "1b81c1bf14a4f9628eeccac0881d8919c0a063a6"
      ],
      "author": {
        "name": "Matt Mower",
        "email": "mowerm@gmail.com",
        "time": "Tue Feb 10 22:09:24 2015 -0600"
      },
      "committer": {
        "name": "Matt Mower",
        "email": "mowerm@gmail.com",
        "time": "Wed Feb 11 04:15:24 2015 +0000"
      },
      "message": "drivers: net: bcmdhd_4335_mcc: Update from m7gpe 5.0.1\n\nFrom m7stockui-g3a7d36e (m7gpe 5.11.1700.3).\n\nDefconfig regenerated and CONFIG_DHD_USE_SCHED_SCAN enabled.\n\nChange-Id: I7e94315e2aba719bfd6fab9e64903c17884f9e7e\n"
    },
    {
      "commit": "1b81c1bf14a4f9628eeccac0881d8919c0a063a6",
      "tree": "dd200c19034c54ff6a588b8b4fb52ee49d8ac30b",
      "parents": [
        "ae436e93e3c0f5f90e0cb32a78e684964eabe420"
      ],
      "author": {
        "name": "Brinly Taylor",
        "email": "uberlaggydarwin@gmail.com",
        "time": "Tue Feb 10 06:44:39 2015 +1030"
      },
      "committer": {
        "name": "Brinly Taylor",
        "email": "uberlaggydarwin@gmail.com",
        "time": "Tue Feb 10 07:04:59 2015 +1030"
      },
      "message": "msm: HTC: ZARA: Import ZARA board files\n\n* Add support for HTC ZARA (HTC Desire 601 - GSM)\n* HTC kernel package: zara-3.4.10-ga7c2f6e\n\nChange-Id: Iab92a4d5886afb542370eb77843912af9d5be0c3\n"
    },
    {
      "commit": "ae436e93e3c0f5f90e0cb32a78e684964eabe420",
      "tree": "703dd8f400bd239ead2fe3d3074339e9694e813f",
      "parents": [
        "db13521323cf9f3d03240a031a07c9687269d2cf"
      ],
      "author": {
        "name": "Hannes Frederic Sowa",
        "email": "hannes@stressinduktion.org",
        "time": "Fri Jan 23 12:01:26 2015 +0100"
      },
      "committer": {
        "name": "Brinly Taylor",
        "email": "uberlaggydarwin@gmail.com",
        "time": "Thu Feb 05 08:46:17 2015 +1030"
      },
      "message": "ipv4: try to cache dst_entries which would cause a redirect\n\nNot caching dst_entries which cause redirects could be exploited by hosts\non the same subnet, causing a severe DoS attack. This effect aggravated\nsince commit f88649721268999 (\"ipv4: fix dst race in sk_dst_get()\").\n\nLookups causing redirects will be allocated with DST_NOCACHE set which\nwill force dst_release to free them via RCU.  Unfortunately waiting for\nRCU grace period just takes too long, we can end up with \u003e1M dst_entries\nwaiting to be released and the system will run OOM. rcuos threads cannot\ncatch up under high softirq load.\n\nAttaching the flag to emit a redirect later on to the specific skb allows\nus to cache those dst_entries thus reducing the pressure on allocation\nand deallocation.\n\nThis issue was discovered by Marcelo Leitner.\n\nCc: Julian Anastasov \u003cja@ssi.bg\u003e\nSigned-off-by: Marcelo Leitner \u003cmleitner@redhat.com\u003e\nSigned-off-by: Florian Westphal \u003cfw@strlen.de\u003e\nSigned-off-by: Hannes Frederic Sowa \u003channes@stressinduktion.org\u003e\nSigned-off-by: Julian Anastasov \u003cja@ssi.bg\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n\nConflicts:\n\tinclude/net/ip.h\n\tnet/ipv4/route.c\n\nChange-Id: I53e4b500a4db2f5fece937a42a3bd810b2640c44\n"
    },
    {
      "commit": "db13521323cf9f3d03240a031a07c9687269d2cf",
      "tree": "295df16da8ceae5af6e83b1016a51bfd82c89ff3",
      "parents": [
        "07860d0224b44b45a6278e9a07cbf7780488870c"
      ],
      "author": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Tue Jan 27 00:56:09 2015 -0800"
      },
      "committer": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Tue Jan 27 20:01:57 2015 -0800"
      },
      "message": "msm: HTC: m7: Add delay for PWM\n\n* PWM requires enough delay to function without errors\n\nChange-Id: I53fc6efb7e606d986c9a6a1dc12f5e51aa0af2d4\n"
    },
    {
      "commit": "07860d0224b44b45a6278e9a07cbf7780488870c",
      "tree": "f99559d0fa861aec0ab47c0f7ac14f1f6d57c866",
      "parents": [
        "21792bdac17d75f1a9a174d862f51e1dff52ed3c"
      ],
      "author": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Mon Jan 26 23:15:28 2015 -0800"
      },
      "committer": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Mon Jan 26 23:15:35 2015 -0800"
      },
      "message": "Revert \"msm: HTC: m7: merge display on commands\"\n\n* Separate them, so CLK_CTRL is properly enabled when necessary.\n\nThis reverts commit 559a78c0a5a2dcb156f6f4a46e1e9c374cc408bc.\n\nChange-Id: I8866f825c13283b23466e7d78420162004ea3e00\n"
    },
    {
      "commit": "21792bdac17d75f1a9a174d862f51e1dff52ed3c",
      "tree": "0b3cde8e90860ccd51d206e74a0f4419b92b0886",
      "parents": [
        "3086499d32a52a1652738c116cd36f5d7043deb4"
      ],
      "author": {
        "name": "David Hays",
        "email": "dhays90@gmail.com",
        "time": "Fri Jan 16 16:23:58 2015 -0600"
      },
      "committer": {
        "name": "David Hays",
        "email": "dhays90@gmail.com",
        "time": "Sat Jan 24 21:35:23 2015 +0000"
      },
      "message": "msm: HTC: t6: align with CAF values\n\n* Nothing to see here. Move a long.\n\nChange-Id: Iaf01edc22377ea9adf2910b1a7fe6f6eaf303c42\n"
    },
    {
      "commit": "acac1ffdf00394383cd76cd1cdcd9d04545ba8ab",
      "tree": "7586873af282935f5113f490fa74c7977d0b27f4",
      "parents": [
        "8d03d55473e83315c628cc6e3309fc304f4713a4"
      ],
      "author": {
        "name": "Xi Wang",
        "email": "xi.wang@gmail.com",
        "time": "Thu May 31 16:26:04 2012 -0700"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 14:29:42 2015 -0500"
      },
      "message": "introduce SIZE_MAX\n\ncommit a3860c1c5dd1137db23d7786d284939c5761d517 upstream.\n\nULONG_MAX is often used to check for integer overflow when calculating\nallocation size.  While ULONG_MAX happens to work on most systems, there\nis no guarantee that `size_t\u0027 must be the same size as `long\u0027.\n\nThis patch introduces SIZE_MAX, the maximum value of `size_t\u0027, to improve\nportability and readability for allocation size validation.\n\nSigned-off-by: Xi Wang \u003cxi.wang@gmail.com\u003e\nAcked-by: Alex Elder \u003celder@dreamhost.com\u003e\nCc: David Airlie \u003cairlied@linux.ie\u003e\nCc: Pekka Enberg \u003cpenberg@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Qiang Huang \u003ch.huangqiang@huawei.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "8d03d55473e83315c628cc6e3309fc304f4713a4",
      "tree": "6e715399e6a1db04b38c05b1d57039fd488a8aaf",
      "parents": [
        "ccb4b8c0e06a81eaa15ae417cf80a2a27d252906"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@linux.intel.com",
        "time": "Sat Jun 09 02:40:03 2012 -0700"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 14:20:58 2015 -0500"
      },
      "message": "slab/mempolicy: always use local policy from interrupt context\n\ncommit e7b691b085fda913830e5280ae6f724b2a63c824 upstream.\n\nslab_node() could access current-\u003emempolicy from interrupt context.\nHowever there\u0027s a race condition during exit where the mempolicy\nis first freed and then the pointer zeroed.\n\nUsing this from interrupts seems bogus anyways. The interrupt\nwill interrupt a random process and therefore get a random\nmempolicy. Many times, this will be idle\u0027s, which noone can change.\n\nJust disable this here and always use local for slab\nfrom interrupts. I also cleaned up the callers of slab_node a bit\nwhich always passed the same argument.\n\nI believe the original mempolicy code did that in fact,\nso it\u0027s likely a regression.\n\nv2: send version with correct logic\nv3: simplify. fix typo.\nReported-by: Arun Sharma \u003casharma@fb.com\u003e\nCc: penberg@kernel.org\nCc: cl@linux.com\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\n[tdmackey@twitter.com: Rework control flow based on feedback from\ncl@linux.com, fix logic, and cleanup current task_struct reference]\nAcked-by: David Rientjes \u003crientjes@google.com\u003e\nAcked-by: Christoph Lameter \u003ccl@linux.com\u003e\nAcked-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nSigned-off-by: David Mackey \u003ctdmackey@twitter.com\u003e\nSigned-off-by: Pekka Enberg \u003cpenberg@kernel.org\u003e\nSigned-off-by: Zefan Li \u003clizefan@huawei.com\u003e\n"
    },
    {
      "commit": "ccb4b8c0e06a81eaa15ae417cf80a2a27d252906",
      "tree": "133debcecf71d98f6933daf31a79d54d5347944e",
      "parents": [
        "7b01eca4475078dd3009c4f075b1955fd7f89910"
      ],
      "author": {
        "name": "Vlastimil Babka",
        "email": "vbabka@suse.cz",
        "time": "Mon Apr 07 15:37:50 2014 -0700"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 14:18:35 2015 -0500"
      },
      "message": "mm: try_to_unmap_cluster() should lock_page() before mlocking\n\ncommit 57e68e9cd65b4b8eb4045a1e0d0746458502554c upstream.\n\nA BUG_ON(!PageLocked) was triggered in mlock_vma_page() by Sasha Levin\nfuzzing with trinity.  The call site try_to_unmap_cluster() does not lock\nthe pages other than its check_page parameter (which is already locked).\n\nThe BUG_ON in mlock_vma_page() is not documented and its purpose is\nsomewhat unclear, but apparently it serializes against page migration,\nwhich could otherwise fail to transfer the PG_mlocked flag.  This would\nnot be fatal, as the page would be eventually encountered again, but\nNR_MLOCK accounting would become distorted nevertheless.  This patch adds\na comment to the BUG_ON in mlock_vma_page() and munlock_vma_page() to that\neffect.\n\nThe call site try_to_unmap_cluster() is fixed so that for page !\u003d\ncheck_page, trylock_page() is attempted (to avoid possible deadlocks as we\nalready have check_page locked) and mlock_vma_page() is performed only\nupon success.  If the page lock cannot be obtained, the page is left\nwithout PG_mlocked, which is again not a problem in the whole unevictable\nmemory design.\n\nSigned-off-by: Vlastimil Babka \u003cvbabka@suse.cz\u003e\nSigned-off-by: Bob Liu \u003cbob.liu@oracle.com\u003e\nReported-by: Sasha Levin \u003csasha.levin@oracle.com\u003e\nCc: Wanpeng Li \u003cliwanp@linux.vnet.ibm.com\u003e\nCc: Michel Lespinasse \u003cwalken@google.com\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nAcked-by: Rik van Riel \u003criel@redhat.com\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: Mel Gorman \u003cmgorman@suse.de\u003e\nCc: Hugh Dickins \u003chughd@google.com\u003e\nCc: Joonsoo Kim \u003ciamjoonsoo.kim@lge.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: Yijing Wang \u003cwangyijing@huawei.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "7b01eca4475078dd3009c4f075b1955fd7f89910",
      "tree": "040331c71dcd369febb827f6856f35997f397952",
      "parents": [
        "83b9c3d56a8a31b0f2fec8ef8988c6f2b688d07e"
      ],
      "author": {
        "name": "David Rientjes",
        "email": "rientjes@google.com",
        "time": "Wed Jul 30 16:08:24 2014 -0700"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 14:18:21 2015 -0500"
      },
      "message": "mm, thp: do not allow thp faults to avoid cpuset restrictions\n\ncommit b104a35d32025ca740539db2808aa3385d0f30eb upstream.\n\nThe page allocator relies on __GFP_WAIT to determine if ALLOC_CPUSET\nshould be set in allocflags.  ALLOC_CPUSET controls if a page allocation\nshould be restricted only to the set of allowed cpuset mems.\n\nTransparent hugepages clears __GFP_WAIT when defrag is disabled to prevent\nthe fault path from using memory compaction or direct reclaim.  Thus, it\nis unfairly able to allocate outside of its cpuset mems restriction as a\nside-effect.\n\nThis patch ensures that ALLOC_CPUSET is only cleared when the gfp mask is\ntruly GFP_ATOMIC by verifying it is also not a thp allocation.\n\nSigned-off-by: David Rientjes \u003crientjes@google.com\u003e\nReported-by: Alex Thorlton \u003cathorlton@sgi.com\u003e\nTested-by: Alex Thorlton \u003cathorlton@sgi.com\u003e\nCc: Bob Liu \u003clliubbo@gmail.com\u003e\nCc: Dave Hansen \u003cdave.hansen@linux.intel.com\u003e\nCc: Hedi Berriche \u003chedi@sgi.com\u003e\nCc: Hugh Dickins \u003chughd@google.com\u003e\nCc: Johannes Weiner \u003channes@cmpxchg.org\u003e\nCc: Kirill A. Shutemov \u003ckirill.shutemov@linux.intel.com\u003e\nCc: Mel Gorman \u003cmgorman@suse.de\u003e\nCc: Rik van Riel \u003criel@redhat.com\u003e\nCc: Srivatsa S. Bhat \u003csrivatsa.bhat@linux.vnet.ibm.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": "83b9c3d56a8a31b0f2fec8ef8988c6f2b688d07e",
      "tree": "987d8a696afa9e4d9c762aaa9b382905bf846113",
      "parents": [
        "9468771f0d104b3986766763fffa1809cc6e5b23"
      ],
      "author": {
        "name": "Catalin Marinas",
        "email": "catalin.marinas@arm.com",
        "time": "Tue Nov 12 15:07:45 2013 -0800"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 14:18:10 2015 -0500"
      },
      "message": "mm: kmemleak: avoid false negatives on vmalloc\u0027ed objects\n\ncommit 7f88f88f83ed609650a01b18572e605ea50cd163 upstream.\n\nCommit 248ac0e1943a (\"mm/vmalloc: remove guard page from between vmap\nblocks\") had the side effect of making vmap_area.va_end member point to\nthe next vmap_area.va_start.  This was creating an artificial reference\nto vmalloc\u0027ed objects and kmemleak was rarely reporting vmalloc() leaks.\n\nThis patch marks the vmap_area containing pointers explicitly and\nreduces the min ref_count to 2 as vm_struct still contains a reference\nto the vmalloc\u0027ed object.  The kmemleak add_scan_area() function has\nbeen improved to allow a SIZE_MAX argument covering the rest of the\nobject (for simpler calling sites).\n\nSigned-off-by: Catalin Marinas \u003ccatalin.marinas@arm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n[hq: Backported to 3.4: Adjust context]\nSigned-off-by: Qiang Huang \u003ch.huangqiang@huawei.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "9468771f0d104b3986766763fffa1809cc6e5b23",
      "tree": "4c3760892f7ec231082f4db892c7b7cc1816b845",
      "parents": [
        "008ef7eb94449c2843a725d1aeacb0296dbbb68a"
      ],
      "author": {
        "name": "Naoya Horiguchi",
        "email": "n-horiguchi@ah.jp.nec.com",
        "time": "Wed Jul 23 14:00:19 2014 -0700"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 14:17:58 2015 -0500"
      },
      "message": "mm: hugetlb: fix copy_hugetlb_page_range()\n\ncommit 0253d634e0803a8376a0d88efee0bf523d8673f9 upstream.\n\nCommit 4a705fef9862 (\"hugetlb: fix copy_hugetlb_page_range() to handle\nmigration/hwpoisoned entry\") changed the order of\nhuge_ptep_set_wrprotect() and huge_ptep_get(), which leads to breakage\nin some workloads like hugepage-backed heap allocation via libhugetlbfs.\nThis patch fixes it.\n\nThe test program for the problem is shown below:\n\n  $ cat heap.c\n  #include \u003cunistd.h\u003e\n  #include \u003cstdlib.h\u003e\n  #include \u003cstring.h\u003e\n\n  #define HPS 0x200000\n\n  int main() {\n  \tint i;\n  \tchar *p \u003d malloc(HPS);\n  \tmemset(p, \u00271\u0027, HPS);\n  \tfor (i \u003d 0; i \u003c 5; i++) {\n  \t\tif (!fork()) {\n  \t\t\tmemset(p, \u00272\u0027, HPS);\n  \t\t\tp \u003d malloc(HPS);\n  \t\t\tmemset(p, \u00273\u0027, HPS);\n  \t\t\tfree(p);\n  \t\t\treturn 0;\n  \t\t}\n  \t}\n  \tsleep(1);\n  \tfree(p);\n  \treturn 0;\n  }\n\n  $ export HUGETLB_MORECORE\u003dyes ; export HUGETLB_NO_PREFAULT\u003d ; hugectl --heap ./heap\n\nFixes 4a705fef9862 (\"hugetlb: fix copy_hugetlb_page_range() to handle\nmigration/hwpoisoned entry\"), so is applicable to -stable kernels which\ninclude it.\n\nSigned-off-by: Naoya Horiguchi \u003cn-horiguchi@ah.jp.nec.com\u003e\nReported-by: Guillaume Morin \u003cguillaume@morinfr.org\u003e\nSuggested-by: Guillaume Morin \u003cguillaume@morinfr.org\u003e\nAcked-by: Hugh Dickins \u003chughd@google.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": "008ef7eb94449c2843a725d1aeacb0296dbbb68a",
      "tree": "8397f7b08245dd897f37ae7ed3df4331a7095a3c",
      "parents": [
        "9e196b75449322db36243094d9846af3fe159c5a"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hughd@google.com",
        "time": "Wed Jul 23 14:00:13 2014 -0700"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 14:17:47 2015 -0500"
      },
      "message": "shmem: fix splicing from a hole while it\u0027s punched\n\ncommit b1a366500bd537b50c3aad26dc7df083ec03a448 upstream.\n\nshmem_fault() is the actual culprit in trinity\u0027s hole-punch starvation,\nand the most significant cause of such problems: since a page faulted is\none that then appears page_mapped(), needing unmap_mapping_range() and\ni_mmap_mutex to be unmapped again.\n\nBut it is not the only way in which a page can be brought into a hole in\nthe radix_tree while that hole is being punched; and Vlastimil\u0027s testing\nimplies that if enough other processors are busy filling in the hole,\nthen shmem_undo_range() can be kept from completing indefinitely.\n\nshmem_file_splice_read() is the main other user of SGP_CACHE, which can\ninstantiate shmem pagecache pages in the read-only case (without holding\ni_mutex, so perhaps concurrently with a hole-punch).  Probably it\u0027s\nsilly not to use SGP_READ already (using the ZERO_PAGE for holes): which\nought to be safe, but might bring surprises - not a change to be rushed.\n\nshmem_read_mapping_page_gfp() is an internal interface used by\ndrivers/gpu/drm GEM (and next by uprobes): it should be okay.  And\nshmem_file_read_iter() uses the SGP_DIRTY variant of SGP_CACHE, when\ncalled internally by the kernel (perhaps for a stacking filesystem,\nwhich might rely on holes to be reserved): it\u0027s unclear whether it could\nbe provoked to keep hole-punch busy or not.\n\nWe could apply the same umbrella as now used in shmem_fault() to\nshmem_file_splice_read() and the others; but it looks ugly, and use over\na range raises questions - should it actually be per page? can these get\nstarved themselves?\n\nThe origin of this part of the problem is my v3.1 commit d0823576bf4b\n(\"mm: pincer in truncate_inode_pages_range\"), once it was duplicated\ninto shmem.c.  It seemed like a nice idea at the time, to ensure\n(barring RCU lookup fuzziness) that there\u0027s an instant when the entire\nhole is empty; but the indefinitely repeated scans to ensure that make\nit vulnerable.\n\nRevert that \"enhancement\" to hole-punch from shmem_undo_range(), but\nretain the unproblematic rescanning when it\u0027s truncating; add a couple\nof comments there.\n\nRemove the \"indices[0] \u003e\u003d end\" test: that is now handled satisfactorily\nby the inner loop, and mem_cgroup_uncharge_start()/end() are too light\nto be worth avoiding here.\n\nBut if we do not always loop indefinitely, we do need to handle the case\nof swap swizzled back to page before shmem_free_swap() gets it: add a\nretry for that case, as suggested by Konstantin Khlebnikov; and for the\ncase of page swizzled back to swap, as suggested by Johannes Weiner.\n\nSigned-off-by: Hugh Dickins \u003chughd@google.com\u003e\nReported-by: Sasha Levin \u003csasha.levin@oracle.com\u003e\nSuggested-by: Vlastimil Babka \u003cvbabka@suse.cz\u003e\nCc: Konstantin Khlebnikov \u003ckoct9i@gmail.com\u003e\nCc: Johannes Weiner \u003channes@cmpxchg.org\u003e\nCc: Lukas Czerner \u003clczerner@redhat.com\u003e\nCc: Dave Jones \u003cdavej@redhat.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": "9e196b75449322db36243094d9846af3fe159c5a",
      "tree": "49d95c2f45dd8988bfa038a21e119ec2e4f2c7d9",
      "parents": [
        "2d989366ef8a01be1c93bd237c8d27fc4a7eaa19"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hughd@google.com",
        "time": "Wed Jul 23 14:00:10 2014 -0700"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 14:17:37 2015 -0500"
      },
      "message": "shmem: fix faulting into a hole, not taking i_mutex\n\ncommit 8e205f779d1443a94b5ae81aa359cb535dd3021e upstream.\n\nCommit f00cdc6df7d7 (\"shmem: fix faulting into a hole while it\u0027s\npunched\") was buggy: Sasha sent a lockdep report to remind us that\ngrabbing i_mutex in the fault path is a no-no (write syscall may already\nhold i_mutex while faulting user buffer).\n\nWe tried a completely different approach (see following patch) but that\nproved inadequate: good enough for a rational workload, but not good\nenough against trinity - which forks off so many mappings of the object\nthat contention on i_mmap_mutex while hole-puncher holds i_mutex builds\ninto serious starvation when concurrent faults force the puncher to fall\nback to single-page unmap_mapping_range() searches of the i_mmap tree.\n\nSo return to the original umbrella approach, but keep away from i_mutex\nthis time.  We really don\u0027t want to bloat every shmem inode with a new\nmutex or completion, just to protect this unlikely case from trinity.\nSo extend the original with wait_queue_head on stack at the hole-punch\nend, and wait_queue item on the stack at the fault end.\n\nThis involves further use of i_lock to guard against the races: lockdep\nhas been happy so far, and I see fs/inode.c:unlock_new_inode() holds\ni_lock around wake_up_bit(), which is comparable to what we do here.\ni_lock is more convenient, but we could switch to shmem\u0027s info-\u003elock.\n\nThis issue has been tagged with CVE-2014-4171, which will require commit\nf00cdc6df7d7 and this and the following patch to be backported: we\nsuggest to 3.1+, though in fact the trinity forkbomb effect might go\nback as far as 2.6.16, when madvise(,,MADV_REMOVE) came in - or might\nnot, since much has changed, with i_mmap_mutex a spinlock before 3.0.\nAnyone running trinity on 3.0 and earlier? I don\u0027t think we need care.\n\nSigned-off-by: Hugh Dickins \u003chughd@google.com\u003e\nReported-by: Sasha Levin \u003csasha.levin@oracle.com\u003e\nTested-by: Sasha Levin \u003csasha.levin@oracle.com\u003e\nCc: Vlastimil Babka \u003cvbabka@suse.cz\u003e\nCc: Konstantin Khlebnikov \u003ckoct9i@gmail.com\u003e\nCc: Johannes Weiner \u003channes@cmpxchg.org\u003e\nCc: Lukas Czerner \u003clczerner@redhat.com\u003e\nCc: Dave Jones \u003cdavej@redhat.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": "2d989366ef8a01be1c93bd237c8d27fc4a7eaa19",
      "tree": "03682c44703402a28e32577ac30c08375f33e4be",
      "parents": [
        "f91fb4efc70055073c75320b744f673057a3f135"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hughd@google.com",
        "time": "Mon Jun 23 13:22:06 2014 -0700"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 14:17:24 2015 -0500"
      },
      "message": "shmem: fix faulting into a hole while it\u0027s punched\n\ncommit f00cdc6df7d7cfcabb5b740911e6788cb0802bdb upstream.\n\nTrinity finds that mmap access to a hole while it\u0027s punched from shmem\ncan prevent the madvise(MADV_REMOVE) or fallocate(FALLOC_FL_PUNCH_HOLE)\nfrom completing, until the reader chooses to stop; with the puncher\u0027s\nhold on i_mutex locking out all other writers until it can complete.\n\nIt appears that the tmpfs fault path is too light in comparison with its\nhole-punching path, lacking an i_data_sem to obstruct it; but we don\u0027t\nwant to slow down the common case.\n\nExtend shmem_fallocate()\u0027s existing range notification mechanism, so\nshmem_fault() can refrain from faulting pages into the hole while it\u0027s\npunched, waiting instead on i_mutex (when safe to sleep; or repeatedly\nfaulting when not).\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Hugh Dickins \u003chughd@google.com\u003e\nReported-by: Sasha Levin \u003csasha.levin@oracle.com\u003e\nTested-by: Sasha Levin \u003csasha.levin@oracle.com\u003e\nCc: Dave Jones \u003cdavej@redhat.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": "f91fb4efc70055073c75320b744f673057a3f135",
      "tree": "c2681fdc571917111f93c5463cc3f3f6017e4769",
      "parents": [
        "b20ea6d3cf4ae8b8b146c7543dafed83aa262805"
      ],
      "author": {
        "name": "Gu Zheng",
        "email": "guz.fnst@cn.fujitsu.com",
        "time": "Wed Jun 25 09:57:18 2014 +0800"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 14:17:08 2015 -0500"
      },
      "message": "cpuset,mempolicy: fix sleeping function called from invalid context\n\ncommit 391acf970d21219a2a5446282d3b20eace0c0d7a upstream.\n\nWhen runing with the kernel(3.15-rc7+), the follow bug occurs:\n[ 9969.258987] BUG: sleeping function called from invalid context at kernel/locking/mutex.c:586\n[ 9969.359906] in_atomic(): 1, irqs_disabled(): 0, pid: 160655, name: python\n[ 9969.441175] INFO: lockdep is turned off.\n[ 9969.488184] CPU: 26 PID: 160655 Comm: python Tainted: G       A      3.15.0-rc7+ #85\n[ 9969.581032] Hardware name: FUJITSU-SV PRIMEQUEST 1800E/SB, BIOS PRIMEQUEST 1000 Series BIOS Version 1.39 11/16/2012\n[ 9969.706052]  ffffffff81a20e60 ffff8803e941fbd0 ffffffff8162f523 ffff8803e941fd18\n[ 9969.795323]  ffff8803e941fbe0 ffffffff8109995a ffff8803e941fc58 ffffffff81633e6c\n[ 9969.884710]  ffffffff811ba5dc ffff880405c6b480 ffff88041fdd90a0 0000000000002000\n[ 9969.974071] Call Trace:\n[ 9970.003403]  [\u003cffffffff8162f523\u003e] dump_stack+0x4d/0x66\n[ 9970.065074]  [\u003cffffffff8109995a\u003e] __might_sleep+0xfa/0x130\n[ 9970.130743]  [\u003cffffffff81633e6c\u003e] mutex_lock_nested+0x3c/0x4f0\n[ 9970.200638]  [\u003cffffffff811ba5dc\u003e] ? kmem_cache_alloc+0x1bc/0x210\n[ 9970.272610]  [\u003cffffffff81105807\u003e] cpuset_mems_allowed+0x27/0x140\n[ 9970.344584]  [\u003cffffffff811b1303\u003e] ? __mpol_dup+0x63/0x150\n[ 9970.409282]  [\u003cffffffff811b1385\u003e] __mpol_dup+0xe5/0x150\n[ 9970.471897]  [\u003cffffffff811b1303\u003e] ? __mpol_dup+0x63/0x150\n[ 9970.536585]  [\u003cffffffff81068c86\u003e] ? copy_process.part.23+0x606/0x1d40\n[ 9970.613763]  [\u003cffffffff810bf28d\u003e] ? trace_hardirqs_on+0xd/0x10\n[ 9970.683660]  [\u003cffffffff810ddddf\u003e] ? monotonic_to_bootbased+0x2f/0x50\n[ 9970.759795]  [\u003cffffffff81068cf0\u003e] copy_process.part.23+0x670/0x1d40\n[ 9970.834885]  [\u003cffffffff8106a598\u003e] do_fork+0xd8/0x380\n[ 9970.894375]  [\u003cffffffff81110e4c\u003e] ? __audit_syscall_entry+0x9c/0xf0\n[ 9970.969470]  [\u003cffffffff8106a8c6\u003e] SyS_clone+0x16/0x20\n[ 9971.030011]  [\u003cffffffff81642009\u003e] stub_clone+0x69/0x90\n[ 9971.091573]  [\u003cffffffff81641c29\u003e] ? system_call_fastpath+0x16/0x1b\n\nThe cause is that cpuset_mems_allowed() try to take\nmutex_lock(\u0026callback_mutex) under the rcu_read_lock(which was hold in\n__mpol_dup()). And in cpuset_mems_allowed(), the access to cpuset is\nunder rcu_read_lock, so in __mpol_dup, we can reduce the rcu_read_lock\nprotection region to protect the access to cpuset only in\ncurrent_cpuset_is_being_rebound(). So that we can avoid this bug.\n\nThis patch is a temporary solution that just addresses the bug\nmentioned above, can not fix the long-standing issue about cpuset.mems\nrebinding on fork():\n\n\"When the forker\u0027s task_struct is duplicated (which includes\n -\u003emems_allowed) and it races with an update to cpuset_being_rebound\n in update_tasks_nodemask() then the task\u0027s mems_allowed doesn\u0027t get\n updated. And the child task\u0027s mems_allowed can be wrong if the\n cpuset\u0027s nodemask changes before the child has been added to the\n cgroup\u0027s tasklist.\"\n\nSigned-off-by: Gu Zheng \u003cguz.fnst@cn.fujitsu.com\u003e\nAcked-by: Li Zefan \u003clizefan@huawei.com\u003e\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "b20ea6d3cf4ae8b8b146c7543dafed83aa262805",
      "tree": "c6ed454ccfe0bd956ffacb46a2839e05ea5f5b6d",
      "parents": [
        "91389ccddb64b6c33e984d52d3dc601661a861b8"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hughd@google.com",
        "time": "Mon Jun 23 13:22:07 2014 -0700"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 14:16:55 2015 -0500"
      },
      "message": "mm: fix crashes from mbind() merging vmas\n\ncommit d05f0cdcbe6388723f1900c549b4850360545201 upstream.\n\nIn v2.6.34 commit 9d8cebd4bcd7 (\"mm: fix mbind vma merge problem\")\nintroduced vma merging to mbind(), but it should have also changed the\nconvention of passing start vma from queue_pages_range() (formerly\ncheck_range()) to new_vma_page(): vma merging may have already freed\nthat structure, resulting in BUG at mm/mempolicy.c:1738 and probably\nworse crashes.\n\nFixes: 9d8cebd4bcd7 (\"mm: fix mbind vma merge problem\")\nReported-by: Naoya Horiguchi \u003cn-horiguchi@ah.jp.nec.com\u003e\nTested-by: Naoya Horiguchi \u003cn-horiguchi@ah.jp.nec.com\u003e\nSigned-off-by: Hugh Dickins \u003chughd@google.com\u003e\nAcked-by: Christoph Lameter \u003ccl@linux.com\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Minchan Kim \u003cminchan.kim@gmail.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": "91389ccddb64b6c33e984d52d3dc601661a861b8",
      "tree": "ecdbe8ca19cb4e2c36bcf0a299e3a1fd55d3f551",
      "parents": [
        "3467d5b146e155460d88eeafbeff2011b57a5f7a"
      ],
      "author": {
        "name": "Naoya Horiguchi",
        "email": "n-horiguchi@ah.jp.nec.com",
        "time": "Mon Jun 23 13:22:03 2014 -0700"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 14:16:42 2015 -0500"
      },
      "message": "hugetlb: fix copy_hugetlb_page_range() to handle migration/hwpoisoned entry\n\ncommit 4a705fef986231a3e7a6b1a6d3c37025f021f49f upstream.\n\nThere\u0027s a race between fork() and hugepage migration, as a result we try\nto \"dereference\" a swap entry as a normal pte, causing kernel panic.\nThe cause of the problem is that copy_hugetlb_page_range() can\u0027t handle\n\"swap entry\" family (migration entry and hwpoisoned entry) so let\u0027s fix\nit.\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Naoya Horiguchi \u003cn-horiguchi@ah.jp.nec.com\u003e\nAcked-by: Hugh Dickins \u003chughd@google.com\u003e\nCc: Christoph Lameter \u003ccl@linux.com\u003e\nCc: \u003cstable@vger.kernel.org\u003e\t[2.6.37+]\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": "3467d5b146e155460d88eeafbeff2011b57a5f7a",
      "tree": "ffae3bb5a2771ecc500cc9d5c1eedef8c6b24e59",
      "parents": [
        "850a89cd7c07c9334c90f219b4ad427f37b62d1c"
      ],
      "author": {
        "name": "Johannes Weiner",
        "email": "hannes@cmpxchg.org",
        "time": "Fri Jun 06 14:35:35 2014 -0700"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 14:15:56 2015 -0500"
      },
      "message": "mm: vmscan: clear kswapd\u0027s special reclaim powers before exiting\n\ncommit 71abdc15adf8c702a1dd535f8e30df50758848d2 upstream.\n\nWhen kswapd exits, it can end up taking locks that were previously held\nby allocating tasks while they waited for reclaim.  Lockdep currently\nwarns about this:\n\nOn Wed, May 28, 2014 at 06:06:34PM +0800, Gu Zheng wrote:\n\u003e  inconsistent {RECLAIM_FS-ON-W} -\u003e {IN-RECLAIM_FS-R} usage.\n\u003e  kswapd2/1151 [HC0[0]:SC0[0]:HE1:SE1] takes:\n\u003e   (\u0026sig-\u003egroup_rwsem){+++++?}, at: exit_signals+0x24/0x130\n\u003e  {RECLAIM_FS-ON-W} state was registered at:\n\u003e     mark_held_locks+0xb9/0x140\n\u003e     lockdep_trace_alloc+0x7a/0xe0\n\u003e     kmem_cache_alloc_trace+0x37/0x240\n\u003e     flex_array_alloc+0x99/0x1a0\n\u003e     cgroup_attach_task+0x63/0x430\n\u003e     attach_task_by_pid+0x210/0x280\n\u003e     cgroup_procs_write+0x16/0x20\n\u003e     cgroup_file_write+0x120/0x2c0\n\u003e     vfs_write+0xc0/0x1f0\n\u003e     SyS_write+0x4c/0xa0\n\u003e     tracesys+0xdd/0xe2\n\u003e  irq event stamp: 49\n\u003e  hardirqs last  enabled at (49):  _raw_spin_unlock_irqrestore+0x36/0x70\n\u003e  hardirqs last disabled at (48):  _raw_spin_lock_irqsave+0x2b/0xa0\n\u003e  softirqs last  enabled at (0):  copy_process.part.24+0x627/0x15f0\n\u003e  softirqs last disabled at (0):            (null)\n\u003e\n\u003e  other info that might help us debug this:\n\u003e   Possible unsafe locking scenario:\n\u003e\n\u003e         CPU0\n\u003e         ----\n\u003e    lock(\u0026sig-\u003egroup_rwsem);\n\u003e    \u003cInterrupt\u003e\n\u003e      lock(\u0026sig-\u003egroup_rwsem);\n\u003e\n\u003e   *** DEADLOCK ***\n\u003e\n\u003e  no locks held by kswapd2/1151.\n\u003e\n\u003e  stack backtrace:\n\u003e  CPU: 30 PID: 1151 Comm: kswapd2 Not tainted 3.10.39+ #4\n\u003e  Call Trace:\n\u003e    dump_stack+0x19/0x1b\n\u003e    print_usage_bug+0x1f7/0x208\n\u003e    mark_lock+0x21d/0x2a0\n\u003e    __lock_acquire+0x52a/0xb60\n\u003e    lock_acquire+0xa2/0x140\n\u003e    down_read+0x51/0xa0\n\u003e    exit_signals+0x24/0x130\n\u003e    do_exit+0xb5/0xa50\n\u003e    kthread+0xdb/0x100\n\u003e    ret_from_fork+0x7c/0xb0\n\nThis is because the kswapd thread is still marked as a reclaimer at the\ntime of exit.  But because it is exiting, nobody is actually waiting on\nit to make reclaim progress anymore, and it\u0027s nothing but a regular\nthread at this point.  Be tidy and strip it of all its powers\n(PF_MEMALLOC, PF_SWAPWRITE, PF_KSWAPD, and the lockdep reclaim state)\nbefore returning from the thread function.\n\nSigned-off-by: Johannes Weiner \u003channes@cmpxchg.org\u003e\nReported-by: Gu Zheng \u003cguz.fnst@cn.fujitsu.com\u003e\nCc: Yasuaki Ishimatsu \u003cisimatu.yasuaki@jp.fujitsu.com\u003e\nCc: Tang Chen \u003ctangchen@cn.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": "850a89cd7c07c9334c90f219b4ad427f37b62d1c",
      "tree": "db297c8621b8901a891b3c86019d8dcc4d8243ae",
      "parents": [
        "289c45cad5173838d166e9dac8276a9992da9001"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hughd@google.com",
        "time": "Wed Jun 04 16:05:33 2014 -0700"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 14:15:43 2015 -0500"
      },
      "message": "mm: fix sleeping function warning from __put_anon_vma\n\ncommit 7f39dda9d86fb4f4f17af0de170decf125726f8c upstream.\n\nTrinity reports BUG:\n\n  sleeping function called from invalid context at kernel/locking/rwsem.c:47\n  in_atomic(): 0, irqs_disabled(): 0, pid: 5787, name: trinity-c27\n\n__might_sleep \u003c down_write \u003c __put_anon_vma \u003c page_get_anon_vma \u003c\nmigrate_pages \u003c compact_zone \u003c compact_zone_order \u003c try_to_compact_pages ..\n\nRight, since conversion to mutex then rwsem, we should not put_anon_vma()\nfrom inside an rcu_read_lock()ed section: fix the two places that did so.\nAnd add might_sleep() to anon_vma_free(), as suggested by Peter Zijlstra.\n\nFixes: 88c22088bf23 (\"mm: optimize page_lock_anon_vma() fast-path\")\nReported-by: Dave Jones \u003cdavej@redhat.com\u003e\nSigned-off-by: Hugh Dickins \u003chughd@google.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.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": "289c45cad5173838d166e9dac8276a9992da9001",
      "tree": "689674b90d91feeec086de00e4d2ec24bc1b821f",
      "parents": [
        "cf8c8aef7b798594645f29e42b3479ed64fc98dc"
      ],
      "author": {
        "name": "Tony Luck",
        "email": "tony.luck@intel.com",
        "time": "Wed Jun 04 16:11:01 2014 -0700"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 14:15:28 2015 -0500"
      },
      "message": "mm/memory-failure.c: don\u0027t let collect_procs() skip over processes for MF_ACTION_REQUIRED\n\ncommit 74614de17db6fb472370c426d4f934d8d616edf2 upstream.\n\nWhen Linux sees an \"action optional\" machine check (where h/w has reported\nan error that is not in the current execution path) we generally do not\nwant to signal a process, since most processes do not have a SIGBUS\nhandler - we\u0027d just prematurely terminate the process for a problem that\nthey might never actually see.\n\ntask_early_kill() decides whether to consider a process - and it checks\nwhether this specific process has been marked for early signals with\n\"prctl\", or if the system administrator has requested early signals for\nall processes using /proc/sys/vm/memory_failure_early_kill.\n\nBut for MF_ACTION_REQUIRED case we must not defer.  The error is in the\nexecution path of the current thread so we must send the SIGBUS\nimmediatley.\n\nFix by passing a flag argument through collect_procs*() to\ntask_early_kill() so it knows whether we can defer or must take action.\n\nSigned-off-by: Tony Luck \u003ctony.luck@intel.com\u003e\nSigned-off-by: Naoya Horiguchi \u003cn-horiguchi@ah.jp.nec.com\u003e\nCc: Andi Kleen \u003candi@firstfloor.org\u003e\nCc: Borislav Petkov \u003cbp@suse.de\u003e\nCc: Chen Gong \u003cgong.chen@linux.jf.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": "cf8c8aef7b798594645f29e42b3479ed64fc98dc",
      "tree": "53488434373080edb0fd85247957de469082a238",
      "parents": [
        "d94ff0008b1600a4b4ac1384200ced772ac6c4ce"
      ],
      "author": {
        "name": "Tony Luck",
        "email": "tony.luck@intel.com",
        "time": "Wed Jun 04 16:10:59 2014 -0700"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 14:15:16 2015 -0500"
      },
      "message": "mm/memory-failure.c-failure: send right signal code to correct thread\n\ncommit a70ffcac741d31a406c1d2b832ae43d658e7e1cf upstream.\n\nWhen a thread in a multi-threaded application hits a machine check because\nof an uncorrectable error in memory - we want to send the SIGBUS with\nsi.si_code \u003d BUS_MCEERR_AR to that thread.  Currently we fail to do that\nif the active thread is not the primary thread in the process.\ncollect_procs() just finds primary threads and this test:\n\n\tif ((flags \u0026 MF_ACTION_REQUIRED) \u0026\u0026 t \u003d\u003d current) {\n\nwill see that the thread we found isn\u0027t the current thread and so send a\nsi.si_code \u003d BUS_MCEERR_AO to the primary (and nothing to the active\nthread at this time).\n\nWe can fix this by checking whether \"current\" shares the same mm with the\nprocess that collect_procs() said owned the page.  If so, we send the\nSIGBUS to current (with code BUS_MCEERR_AR).\n\nSigned-off-by: Tony Luck \u003ctony.luck@intel.com\u003e\nSigned-off-by: Naoya Horiguchi \u003cn-horiguchi@ah.jp.nec.com\u003e\nReported-by: Otto Bruggeman \u003cotto.g.bruggeman@intel.com\u003e\nCc: Andi Kleen \u003candi@firstfloor.org\u003e\nCc: Borislav Petkov \u003cbp@suse.de\u003e\nCc: Chen Gong \u003cgong.chen@linux.jf.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": "d94ff0008b1600a4b4ac1384200ced772ac6c4ce",
      "tree": "32e0c905548caa6092c1d91047af0a92f8778551",
      "parents": [
        "a9059c022277a8d2d477ade2ca7235fb6d0c9769"
      ],
      "author": {
        "name": "Will Deacon",
        "email": "will.deacon@arm.com",
        "time": "Fri Nov 16 14:15:00 2012 -0800"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 14:15:00 2015 -0500"
      },
      "message": "mm: highmem: don\u0027t treat PKMAP_ADDR(LAST_PKMAP) as a highmem address\n\ncommit 498c2280212327858e521e9d21345d4cc2637f54 upstream.\n\nkmap_to_page returns the corresponding struct page for a virtual address\nof an arbitrary mapping.  This works by checking whether the address\nfalls in the pkmap region and using the pkmap page tables instead of the\nlinear mapping if appropriate.\n\nUnfortunately, the bounds checking means that PKMAP_ADDR(LAST_PKMAP) is\nincorrectly treated as a highmem address and we can end up walking off\nthe end of pkmap_page_table and subsequently passing junk to pte_page.\n\nThis patch fixes the bound check to stay within the pkmap tables.\n\nSigned-off-by: Will Deacon \u003cwill.deacon@arm.com\u003e\nCc: Mel Gorman \u003cmgorman@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Yijing Wang \u003cwangyijing@huawei.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "a9059c022277a8d2d477ade2ca7235fb6d0c9769",
      "tree": "a16682b28b88c8a9afde6040fe1979112bb1e568",
      "parents": [
        "471e11aee28aa195d78ee0b6f935dfa811d94eb2"
      ],
      "author": {
        "name": "Will Deacon",
        "email": "will.deacon@arm.com",
        "time": "Fri Oct 19 14:03:31 2012 +0100"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 14:14:52 2015 -0500"
      },
      "message": "mm: highmem: export kmap_to_page for modules\n\ncommit f0263d2d222e9e25f2587e51a9dc58c6fb2a9352 upstream.\n\nSome virtio device drivers (9p) need to translate high virtual addresses\nto physical addresses, which are inserted into the virtqueue for\nprocessing by userspace.\n\nThis patch exports the kmap_to_page symbol, so that the affected drivers\ncan be compiled as modules.\n\nSigned-off-by: Will Deacon \u003cwill.deacon@arm.com\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Ben Hutchings \u003cben@decadent.org.uk\u003e\nCc: Yijing Wang \u003cwangyijing@huawei.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "471e11aee28aa195d78ee0b6f935dfa811d94eb2",
      "tree": "c5828d8736b6d4fc48051cf5a055c26bca77655b",
      "parents": [
        "48a32e5fbd4c0bd5df5694fc8fdd2e0c95953f82"
      ],
      "author": {
        "name": "Ben Hutchings",
        "email": "ben@decadent.org.uk",
        "time": "Tue Jul 31 16:45:02 2012 -0700"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 14:14:40 2015 -0500"
      },
      "message": "mm: add kmap_to_page()\n\ncommit fcb8996728fb59eddf84678df7cb213b2c9a2e26 upstream.\n\nThis is extracted from Mel Gorman\u0027s commit 5a178119b0fb (\u0027mm: add\nsupport for direct_IO to highmem pages\u0027) upstream.\n\nRequired to backport commit b9cdc88df8e6 (\u0027virtio: 9p: correctly pass\nphysical address to userspace for high pages\u0027).\n\nCc: Mel Gorman \u003cmgorman@suse.de\u003e\nCc: Rik van Riel \u003criel@redhat.com\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Ben Hutchings \u003cben@decadent.org.uk\u003e\nCc: Yijing Wang \u003cwangyijing@huawei.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "48a32e5fbd4c0bd5df5694fc8fdd2e0c95953f82",
      "tree": "0847083f1af2bd001d4e9f10ae9a057fc0bf8297",
      "parents": [
        "0c193886b8ae3c92ea8741a82bcec41856b987e2"
      ],
      "author": {
        "name": "Andrey Ryabinin",
        "email": "a.ryabinin@samsung.com",
        "time": "Fri Jun 06 19:09:30 2014 +0400"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 14:14:30 2015 -0500"
      },
      "message": "mm: rmap: fix use-after-free in __put_anon_vma\n\ncommit 624483f3ea82598ab0f62f1bdb9177f531ab1892 upstream.\n\nWhile working address sanitizer for kernel I\u0027ve discovered\nuse-after-free bug in __put_anon_vma.\n\nFor the last anon_vma, anon_vma-\u003eroot freed before child anon_vma.\nLater in anon_vma_free(anon_vma) we are referencing to already freed\nanon_vma-\u003eroot to check rwsem.\n\nThis fixes it by freeing the child anon_vma before freeing\nanon_vma-\u003eroot.\n\nSigned-off-by: Andrey Ryabinin \u003ca.ryabinin@samsung.com\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "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"
    }
  ],
  "next": "eb54a73b6ac3955ef74571915428b2f087eaae4e"
}
