)]}'
{
  "log": [
    {
      "commit": "511c2aba8f07fc45bdcba548cb63f7b8a450c6dc",
      "tree": "6a1a853e60e0004f5895d78231ed1bea33fecaac",
      "parents": [
        "fcf07d22f089856631b52a75c35ba3c33b70a1b4"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Tue Dec 11 16:03:16 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 11 17:22:28 2012 -0800"
      },
      "message": "mm, memory-hotplug: dynamic configure movable memory and portion memory\n\nAdd online_movable and online_kernel for logic memory hotplug.  This is\nthe dynamic version of \"movablecore\" \u0026 \"kernelcore\".\n\nWe have the same reason to introduce it as to introduce \"movablecore\" \u0026\n\"kernelcore\".  It has the same motive as \"movablecore\" \u0026 \"kernelcore\", but\nit is dynamic/running-time:\n\no We can configure memory as kernelcore or movablecore after boot.\n\n  Userspace workload is increased, we need more hugepage, we can\u0027t use\n  \"online_movable\" to add memory and allow the system use more\n  THP(transparent-huge-page), vice-verse when kernel workload is increase.\n\n  Also help for virtualization to dynamic configure host/guest\u0027s memory,\n  to save/(reduce waste) memory.\n\n  Memory capacity on Demand\n\no When a new node is physically online after boot, we need to use\n  \"online_movable\" or \"online_kernel\" to configure/portion it as we\n  expected when we logic-online it.\n\n  This configuration also helps for physically-memory-migrate.\n\no all benefit as the same as existed \"movablecore\" \u0026 \"kernelcore\".\n\no Preparing for movable-node, which is very important for power-saving,\n  hardware partitioning and high-available-system(hardware fault\n  management).\n\n(Note, we don\u0027t introduce movable-node here.)\n\nAction behavior:\nWhen a memoryblock/memorysection is onlined by \"online_movable\", the kernel\nwill not have directly reference to the page of the memoryblock,\nthus we can remove that memory any time when needed.\n\nWhen it is online by \"online_kernel\", the kernel can use it.\nWhen it is online by \"online\", the zone type doesn\u0027t changed.\n\nCurrent constraints:\nOnly the memoryblock which is adjacent to the ZONE_MOVABLE\ncan be online from ZONE_NORMAL to ZONE_MOVABLE.\n\n[akpm@linux-foundation.org: use min_t, cleanups]\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nSigned-off-by: Wen Congyang \u003cwency@cn.fujitsu.com\u003e\nCc: Yasuaki Ishimatsu \u003cisimatu.yasuaki@jp.fujitsu.com\u003e\nCc: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nCc: Jiang Liu \u003cjiang.liu@huawei.com\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Minchan Kim \u003cminchan.kim@gmail.com\u003e\nCc: Mel Gorman \u003cmgorman@suse.de\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: Yinghai Lu \u003cyinghai@kernel.org\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "81df9bff2609f07cef4690ac2ebda1611b55b05a",
      "tree": "52c5ebc7e9e5efd93040cba5f0439e043eec368e",
      "parents": [
        "e9b2e78c6a4247b1bb3e89c61e7d73636d2e48d1"
      ],
      "author": {
        "name": "Joonsoo Kim",
        "email": "js1304@gmail.com",
        "time": "Tue Dec 11 16:03:10 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 11 17:22:28 2012 -0800"
      },
      "message": "bootmem: fix wrong call parameter for free_bootmem()\n\nIt is strange that alloc_bootmem() returns a virtual address and\nfree_bootmem() requires a physical address.  Anyway, free_bootmem()\u0027s\nfirst parameter should be physical address.\n\nThere are some call sites for free_bootmem() with virtual address.  So fix\nthem.\n\n[akpm@linux-foundation.org: improve free_bootmem() and free_bootmem_pate() documentation]\nSigned-off-by: Joonsoo Kim \u003cjs1304@gmail.com\u003e\nCc: Haavard Skinnemoen \u003chskinnemoen@gmail.com\u003e\nCc: Hans-Christian Egtvedt \u003cegtvedt@samfundet.no\u003e\nCc: Johannes Weiner \u003channes@cmpxchg.org\u003e\nCc: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "bc357f431c836c6631751e3ef7dfe7882394ad67",
      "tree": "b67904e354a30c9ecc0a53b8288a3a74c37b9bc2",
      "parents": [
        "2e30abd1730751d58463d88bc0844ab8fd7112a9"
      ],
      "author": {
        "name": "Marek Szyprowski",
        "email": "m.szyprowski@samsung.com",
        "time": "Tue Dec 11 16:02:59 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 11 17:22:27 2012 -0800"
      },
      "message": "mm: cma: remove watermark hacks\n\nCommits 2139cbe627b8 (\"cma: fix counting of isolated pages\") and\nd95ea5d18e69 (\"cma: fix watermark checking\") introduced a reliable\nmethod of free page accounting when memory is being allocated from CMA\nregions, so the workaround introduced earlier by commit 49f223a9cd96\n(\"mm: trigger page reclaim in alloc_contig_range() to stabilise\nwatermarks\") can be finally removed.\n\nSigned-off-by: Marek Szyprowski \u003cm.szyprowski@samsung.com\u003e\nCc: Kyungmin Park \u003ckyungmin.park@samsung.com\u003e\nCc: Arnd Bergmann \u003carnd@arndb.de\u003e\nCc: Mel Gorman \u003cmel@csn.ul.ie\u003e\nAcked-by: Michal Nazarewicz \u003cmina86@mina86.com\u003e\nCc: Minchan Kim \u003cminchan@kernel.org\u003e\nCc: Bartlomiej Zolnierkiewicz \u003cb.zolnierkie@samsung.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e1e12d2f3104be886073ac6c5c4678f30b1b9e51",
      "tree": "b08cba1dba28e18cf7c2ffd8d076ce744e368b5f",
      "parents": [
        "a9c58b907dbc6821533dfc295b63caf111ff1f16"
      ],
      "author": {
        "name": "David Rientjes",
        "email": "rientjes@google.com",
        "time": "Tue Dec 11 16:02:56 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 11 17:22:27 2012 -0800"
      },
      "message": "mm, oom: fix race when specifying a thread as the oom origin\n\ntest_set_oom_score_adj() and compare_swap_oom_score_adj() are used to\nspecify that current should be killed first if an oom condition occurs in\nbetween the two calls.\n\nThe usage is\n\n\tshort oom_score_adj \u003d test_set_oom_score_adj(OOM_SCORE_ADJ_MAX);\n\t...\n\tcompare_swap_oom_score_adj(OOM_SCORE_ADJ_MAX, oom_score_adj);\n\nto store the thread\u0027s oom_score_adj, temporarily change it to the maximum\nscore possible, and then restore the old value if it is still the same.\n\nThis happens to still be racy, however, if the user writes\nOOM_SCORE_ADJ_MAX to /proc/pid/oom_score_adj in between the two calls.\nThe compare_swap_oom_score_adj() will then incorrectly reset the old value\nprior to the write of OOM_SCORE_ADJ_MAX.\n\nTo fix this, introduce a new oom_flags_t member in struct signal_struct\nthat will be used for per-thread oom killer flags.  KSM and swapoff can\nnow use a bit in this member to specify that threads should be killed\nfirst in oom conditions without playing around with oom_score_adj.\n\nThis also allows the correct oom_score_adj to always be shown when reading\n/proc/pid/oom_score.\n\nSigned-off-by: David Rientjes \u003crientjes@google.com\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nReviewed-by: Michal Hocko \u003cmhocko@suse.cz\u003e\nCc: Anton Vorontsov \u003canton.vorontsov@linaro.org\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a9c58b907dbc6821533dfc295b63caf111ff1f16",
      "tree": "e50714c48de89400a02a8e92ef4e240c5206bbcc",
      "parents": [
        "fa264375175a382621c5344a6508e02ec4d1c3c0"
      ],
      "author": {
        "name": "David Rientjes",
        "email": "rientjes@google.com",
        "time": "Tue Dec 11 16:02:54 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 11 17:22:27 2012 -0800"
      },
      "message": "mm, oom: change type of oom_score_adj to short\n\nThe maximum oom_score_adj is 1000 and the minimum oom_score_adj is -1000,\nso this range can be represented by the signed short type with no\nfunctional change.  The extra space this frees up in struct signal_struct\nwill be used for per-thread oom kill flags in the next patch.\n\nSigned-off-by: David Rientjes \u003crientjes@google.com\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nReviewed-by: Michal Hocko \u003cmhocko@suse.cz\u003e\nCc: Anton Vorontsov \u003canton.vorontsov@linaro.org\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "fa264375175a382621c5344a6508e02ec4d1c3c0",
      "tree": "e0641d14919f69c39db1e53353e3b5e21c1b455f",
      "parents": [
        "212a0a6f28dda0a1e732d20d57abb465750d473c"
      ],
      "author": {
        "name": "Yasuaki Ishimatsu",
        "email": "isimatu.yasuaki@jp.fujitsu.com",
        "time": "Tue Dec 11 16:02:52 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 11 17:22:27 2012 -0800"
      },
      "message": "mm: cleanup register_node()\n\nregister_node() is defined as extern in include/linux/node.h.  But the\nfunction is only called from register_one_node() in driver/base/node.c.\n\nSo the patch defines register_node() as static.\n\nSigned-off-by: Yasuaki Ishimatsu \u003cisimatu.yasuaki@jp.fujitsu.com\u003e\nAcked-by: David Rientjes \u003crientjes@google.com\u003e\nAcked-by: 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\n"
    },
    {
      "commit": "5733c7d11dff44e98d2ca16617886a78086b354f",
      "tree": "2d7b982297b3be46b765123fad9d7d446b4cbdb3",
      "parents": [
        "e22504296d4f64fbbbd741602ab47ee874649c18"
      ],
      "author": {
        "name": "Rafael Aquini",
        "email": "aquini@redhat.com",
        "time": "Tue Dec 11 16:02:47 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 11 17:22:27 2012 -0800"
      },
      "message": "mm: introduce putback_movable_pages()\n\nThe PATCH \"mm: introduce compaction and migration for virtio ballooned pages\"\nhacks around putback_lru_pages() in order to allow ballooned pages to be\nre-inserted on balloon page list as if a ballooned page was like a LRU page.\n\nAs ballooned pages are not legitimate LRU pages, this patch introduces\nputback_movable_pages() to properly cope with cases where the isolated\npageset contains ballooned pages and LRU pages, thus fixing the mentioned\ninelegant hack around putback_lru_pages().\n\nSigned-off-by: Rafael Aquini \u003caquini@redhat.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: \"Michael S. Tsirkin\" \u003cmst@redhat.com\u003e\nCc: Rik van Riel \u003criel@redhat.com\u003e\nCc: Mel Gorman \u003cmel@csn.ul.ie\u003e\nCc: Andi Kleen \u003candi@firstfloor.org\u003e\nCc: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\nCc: Minchan Kim \u003cminchan@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "18468d93e53b037e1a04ec58398eab763d054064",
      "tree": "74392b876400391567f55bb5292107b65e3791a2",
      "parents": [
        "252aa6f5be64c90c67b9f066ccff880f6b487d32"
      ],
      "author": {
        "name": "Rafael Aquini",
        "email": "aquini@redhat.com",
        "time": "Tue Dec 11 16:02:38 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 11 17:22:26 2012 -0800"
      },
      "message": "mm: introduce a common interface for balloon pages mobility\n\nMemory fragmentation introduced by ballooning might reduce significantly\nthe number of 2MB contiguous memory blocks that can be used within a guest,\nthus imposing performance penalties associated with the reduced number of\ntransparent huge pages that could be used by the guest workload.\n\nThis patch introduces a common interface to help a balloon driver on\nmaking its page set movable to compaction, and thus allowing the system\nto better leverage the compation efforts on memory defragmentation.\n\n[akpm@linux-foundation.org: use PAGE_FLAGS_CHECK_AT_PREP, s/__balloon_page_flags/page_flags_cleared/, small cleanups]\n[rientjes@google.com: allow balloon compaction for any system with memory compaction enabled, which is the defconfig]\nSigned-off-by: Rafael Aquini \u003caquini@redhat.com\u003e\nAcked-by: Mel Gorman \u003cmel@csn.ul.ie\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: \"Michael S. Tsirkin\" \u003cmst@redhat.com\u003e\nCc: Rik van Riel \u003criel@redhat.com\u003e\nCc: Andi Kleen \u003candi@firstfloor.org\u003e\nCc: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\nCc: Minchan Kim \u003cminchan@kernel.org\u003e\nSigned-off-by: David Rientjes \u003crientjes@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "252aa6f5be64c90c67b9f066ccff880f6b487d32",
      "tree": "9bb13ada4d838d232d761f45aa9e1a0b26a40cff",
      "parents": [
        "78bd52097d04205a33a8014a1b8ac01cf1ae9d06"
      ],
      "author": {
        "name": "Rafael Aquini",
        "email": "aquini@redhat.com",
        "time": "Tue Dec 11 16:02:35 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 11 17:22:26 2012 -0800"
      },
      "message": "mm: redefine address_space.assoc_mapping\n\nOverhaul struct address_space.assoc_mapping renaming it to\naddress_space.private_data and its type is redefined to void*.  By this\napproach we consistently name the .private_* elements from struct\naddress_space as well as allow extended usage for address_space\nassociation with other data structures through -\u003eprivate_data.\n\nAlso, all users of old -\u003eassoc_mapping element are converted to reflect\nits new name and type change (-\u003eprivate_data).\n\nSigned-off-by: Rafael Aquini \u003caquini@redhat.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: \"Michael S. Tsirkin\" \u003cmst@redhat.com\u003e\nCc: Rik van Riel \u003criel@redhat.com\u003e\nCc: Mel Gorman \u003cmel@csn.ul.ie\u003e\nCc: Andi Kleen \u003candi@firstfloor.org\u003e\nCc: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\nCc: Minchan Kim \u003cminchan@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "78bd52097d04205a33a8014a1b8ac01cf1ae9d06",
      "tree": "4f86e6e56a9e3a3d49e9c46042b3ce980cc04dbc",
      "parents": [
        "748ba883ba2818890a73461ef7dde1eed17ad89f"
      ],
      "author": {
        "name": "Rafael Aquini",
        "email": "aquini@redhat.com",
        "time": "Tue Dec 11 16:02:31 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 11 17:22:26 2012 -0800"
      },
      "message": "mm: adjust address_space_operations.migratepage() return code\n\nMemory fragmentation introduced by ballooning might reduce significantly\nthe number of 2MB contiguous memory blocks that can be used within a\nguest, thus imposing performance penalties associated with the reduced\nnumber of transparent huge pages that could be used by the guest workload.\n\nThis patch-set follows the main idea discussed at 2012 LSFMMS session:\n\"Ballooning for transparent huge pages\" -- http://lwn.net/Articles/490114/\nto introduce the required changes to the virtio_balloon driver, as well as\nthe changes to the core compaction \u0026 migration bits, in order to make\nthose subsystems aware of ballooned pages and allow memory balloon pages\nbecome movable within a guest, thus avoiding the aforementioned\nfragmentation issue\n\nFollowing are numbers that prove this patch benefits on allowing\ncompaction to be more effective at memory ballooned guests.\n\nResults for STRESS-HIGHALLOC benchmark, from Mel Gorman\u0027s mmtests suite,\nrunning on a 4gB RAM KVM guest which was ballooning 512mB RAM in 64mB\nchunks, at every minute (inflating/deflating), while test was running:\n\n\u003d\u003d\u003dBEGIN stress-highalloc\n\nSTRESS-HIGHALLOC\n                 highalloc-3.7     highalloc-3.7\n                     rc4-clean         rc4-patch\nPass 1          55.00 ( 0.00%)    62.00 ( 7.00%)\nPass 2          54.00 ( 0.00%)    62.00 ( 8.00%)\nwhile Rested    75.00 ( 0.00%)    80.00 ( 5.00%)\n\nMMTests Statistics: duration\n                 3.7         3.7\n           rc4-clean   rc4-patch\nUser         1207.59     1207.46\nSystem       1300.55     1299.61\nElapsed      2273.72     2157.06\n\nMMTests Statistics: vmstat\n                                3.7         3.7\n                          rc4-clean   rc4-patch\nPage Ins                    3581516     2374368\nPage Outs                  11148692    10410332\nSwap Ins                         80          47\nSwap Outs                      3641         476\nDirect pages scanned          37978       33826\nKswapd pages scanned        1828245     1342869\nKswapd pages reclaimed      1710236     1304099\nDirect pages reclaimed        32207       31005\nKswapd efficiency               93%         97%\nKswapd velocity             804.077     622.546\nDirect efficiency               84%         91%\nDirect velocity              16.703      15.682\nPercentage direct scans          2%          2%\nPage writes by reclaim        79252        9704\nPage writes file              75611        9228\nPage writes anon               3641         476\nPage reclaim immediate        16764       11014\nPage rescued immediate            0           0\nSlabs scanned               2171904     2152448\nDirect inode steals             385        2261\nKswapd inode steals          659137      609670\nKswapd skipped wait               1          69\nTHP fault alloc                 546         631\nTHP collapse alloc              361         339\nTHP splits                      259         263\nTHP fault fallback               98          50\nTHP collapse fail                20          17\nCompaction stalls               747         499\nCompaction success              244         145\nCompaction failures             503         354\nCompaction pages moved       370888      474837\nCompaction move failure       77378       65259\n\n\u003d\u003d\u003dEND stress-highalloc\n\nThis patch:\n\nIntroduce MIGRATEPAGE_SUCCESS as the default return code for\naddress_space_operations.migratepage() method and documents the expected\nreturn code for the same method in failure cases.\n\nSigned-off-by: Rafael Aquini \u003caquini@redhat.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: \"Michael S. Tsirkin\" \u003cmst@redhat.com\u003e\nCc: Rik van Riel \u003criel@redhat.com\u003e\nCc: Mel Gorman \u003cmel@csn.ul.ie\u003e\nCc: Andi Kleen \u003candi@firstfloor.org\u003e\nCc: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\nCc: Minchan Kim \u003cminchan@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "db4fbfb9523c93583c339e66023506f651c1d54b",
      "tree": "8dfc250bb2249feaafe27c11cc4de5a654815833",
      "parents": [
        "e4c6bfd2d79d063017ab19a18915f0bc759f32d9"
      ],
      "author": {
        "name": "Michel Lespinasse",
        "email": "walken@google.com",
        "time": "Tue Dec 11 16:01:49 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 11 17:22:25 2012 -0800"
      },
      "message": "mm: vm_unmapped_area() lookup function\n\nImplement vm_unmapped_area() using the rb_subtree_gap and highest_vm_end\ninformation to look up for suitable virtual address space gaps.\n\nstruct vm_unmapped_area_info is used to define the desired allocation\nrequest:\n - lowest or highest possible address matching the remaining constraints\n - desired gap length\n - low/high address limits that the gap must fit into\n - alignment mask and offset\n\nAlso update the generic arch_get_unmapped_area[_topdown] functions to make\nuse of vm_unmapped_area() instead of implementing a brute force search.\n\n[akpm@linux-foundation.org: checkpatch fixes]\nSigned-off-by: Michel Lespinasse \u003cwalken@google.com\u003e\nReviewed-by: Rik van Riel \u003criel@redhat.com\u003e\nCc: Hugh Dickins \u003chughd@google.com\u003e\nCc: Russell King \u003clinux@arm.linux.org.uk\u003e\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e4c6bfd2d79d063017ab19a18915f0bc759f32d9",
      "tree": "4f97a0303f939a7846a86c7ade2533a8e2712f29",
      "parents": [
        "5a0768f641a5bad844860e67250baf0d1aa5e03c"
      ],
      "author": {
        "name": "Rik van Riel",
        "email": "riel@surriel.com",
        "time": "Tue Dec 11 16:01:44 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 11 17:22:25 2012 -0800"
      },
      "message": "mm: rearrange vm_area_struct for fewer cache misses\n\nThe kernel walks the VMA rbtree in various places, including the page\nfault path.  However, the vm_rb node spanned two cache lines, on 64 bit\nsystems with 64 byte cache lines (most x86 systems).\n\nRearrange vm_area_struct a little, so all the information we need to do a\nVMA tree walk is in the first cache line.\n\n[akpm@linux-foundation.org: checkpatch fixes]\nSigned-off-by: Michel Lespinasse \u003cwalken@google.com\u003e\nSigned-off-by: Rik van Riel \u003criel@redhat.com\u003e\nCc: Hugh Dickins \u003chughd@google.com\u003e\nCc: Russell King \u003clinux@arm.linux.org.uk\u003e\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d37371870ceb1d2165397dc36114725b6dca946c",
      "tree": "907bed40a8b2b3a66da1531fe8ff7183639a5cc3",
      "parents": [
        "fcc1f2d5dd3480214ab52e06d081d123019814ed"
      ],
      "author": {
        "name": "Michel Lespinasse",
        "email": "walken@google.com",
        "time": "Tue Dec 11 16:01:38 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 11 17:22:25 2012 -0800"
      },
      "message": "mm: augment vma rbtree with rb_subtree_gap\n\nDefine vma-\u003erb_subtree_gap as the largest gap between any vma in the\nsubtree rooted at that vma, and their predecessor.  Or, for a recursive\ndefinition, vma-\u003erb_subtree_gap is the max of:\n\n - vma-\u003evm_start - vma-\u003evm_prev-\u003evm_end\n - rb_subtree_gap fields of the vmas pointed by vma-\u003erb.rb_left and\n   vma-\u003erb.rb_right\n\nThis will allow get_unmapped_area_* to find a free area of the right\nsize in O(log(N)) time, instead of potentially having to do a linear\nwalk across all the VMAs.\n\nAlso define mm-\u003ehighest_vm_end as the vm_end field of the highest vma,\nso that we can easily check if the following gap is suitable.\n\nThis does have the potential to make unmapping VMAs more expensive,\nespecially for processes with very large numbers of VMAs, where the VMA\nrbtree can grow quite deep.\n\nSigned-off-by: Michel Lespinasse \u003cwalken@google.com\u003e\nReviewed-by: Rik van Riel \u003criel@redhat.com\u003e\nCc: Hugh Dickins \u003chughd@google.com\u003e\nCc: Russell King \u003clinux@arm.linux.org.uk\u003e\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "42d7395feb56f0655cd8b68e06fc6063823449f8",
      "tree": "47cfbad1737d98d9752a2aab7e525f1fe5194d27",
      "parents": [
        "ff604cf6d41f1e05f34762e1d764fe14a0f5f964"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@linux.intel.com",
        "time": "Tue Dec 11 16:01:34 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 11 17:22:25 2012 -0800"
      },
      "message": "mm: support more pagesizes for MAP_HUGETLB/SHM_HUGETLB\n\nThere was some desire in large applications using MAP_HUGETLB or\nSHM_HUGETLB to use 1GB huge pages on some mappings, and stay with 2MB on\nothers.  This is useful together with NUMA policy: use 2MB interleaving\non some mappings, but 1GB on local mappings.\n\nThis patch extends the IPC/SHM syscall interfaces slightly to allow\nspecifying the page size.\n\nIt borrows some upper bits in the existing flag arguments and allows\nencoding the log of the desired page size in addition to the *_HUGETLB\nflag.  When 0 is specified the default size is used, this makes the\nchange fully compatible.\n\nExtending the internal hugetlb code to handle this is straight forward.\nInstead of a single mount it just keeps an array of them and selects the\nright mount based on the specified page size.  When no page size is\nspecified it uses the mount of the default page size.\n\nThe change is not visible in /proc/mounts because internal mounts don\u0027t\nappear there.  It also has very little overhead: the additional mounts\njust consume a super block, but not more memory when not used.\n\nI also exported the new flags to the user headers (they were previously\nunder __KERNEL__).  Right now only symbols for x86 and some other\narchitecture for 1GB and 2MB are defined.  The interface should already\nwork for all other architectures though.  Only architectures that define\nmultiple hugetlb sizes actually need it (that is currently x86, tile,\npowerpc).  However tile and powerpc have user configurable hugetlb\nsizes, so it\u0027s not easy to add defines.  A program on those\narchitectures would need to query sysfs and use the appropiate log2.\n\n[akpm@linux-foundation.org: cleanups]\n[rientjes@google.com: fix build]\n[akpm@linux-foundation.org: checkpatch fixes]\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\nCc: Michael Kerrisk \u003cmtk.manpages@gmail.com\u003e\nAcked-by: Rik van Riel \u003criel@redhat.com\u003e\nAcked-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Hillf Danton \u003cdhillf@gmail.com\u003e\nSigned-off-by: David Rientjes \u003crientjes@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a1dd450bcb1a05e8218b9aac0ee36f8755d8a140",
      "tree": "a46f3306e3802b59ed5df6eef0e03b8b11cca30c",
      "parents": [
        "eb2db439a3203ae86c35ad277ac4a3268a94baa1"
      ],
      "author": {
        "name": "Will Deacon",
        "email": "will.deacon@arm.com",
        "time": "Tue Dec 11 16:01:27 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 11 17:22:24 2012 -0800"
      },
      "message": "mm: thp: set the accessed flag for old pages on access fault\n\nOn x86 memory accesses to pages without the ACCESSED flag set result in\nthe ACCESSED flag being set automatically.  With the ARM architecture a\npage access fault is raised instead (and it will continue to be raised\nuntil the ACCESSED flag is set for the appropriate PTE/PMD).\n\nFor normal memory pages, handle_pte_fault will call pte_mkyoung\n(effectively setting the ACCESSED flag).  For transparent huge pages,\npmd_mkyoung will only be called for a write fault.\n\nThis patch ensures that faults on transparent hugepages which do not\nresult in a CoW update the access flags for the faulting pmd.\n\nSigned-off-by: Will Deacon \u003cwill.deacon@arm.com\u003e\nCc: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\nAcked-by: Kirill A. Shutemov \u003ckirill@shutemov.name\u003e\nCc: Andrea Arcangeli \u003caarcange@redhat.com\u003e\nAcked-by: Johannes Weiner \u003channes@cmpxchg.org\u003e\nCc: Ni zhan Chen \u003cnizhan.chen@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d9713679dbd2a6ecb840cd5b65a3ec555c1ec3d4",
      "tree": "b998ae43dc18e7459cab5a2cb5ba12900c96c7e1",
      "parents": [
        "6dcd73d7011ba9046f9b98e7f7c9d958f5810e6b"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Tue Dec 11 16:01:03 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 11 17:22:23 2012 -0800"
      },
      "message": "memory_hotplug: fix possible incorrect node_states[N_NORMAL_MEMORY]\n\nCurrently memory_hotplug only manages the node_states[N_HIGH_MEMORY], it\nforgets to manage node_states[N_NORMAL_MEMORY].  This may cause\nnode_states[N_NORMAL_MEMORY] to become incorrect.\n\nExample, if a node is empty before online, and we online a memory which is\nin ZONE_NORMAL.  And after online, node_states[N_HIGH_MEMORY] is correct,\nbut node_states[N_NORMAL_MEMORY] is incorrect, the online code doesn\u0027t set\nthe new online node to node_states[N_NORMAL_MEMORY].\n\nThe same thing will happen when offlining (the offline code doesn\u0027t clear\nthe node from node_states[N_NORMAL_MEMORY] when needed).  Some memory\nmanagment code depends node_states[N_NORMAL_MEMORY], so we have to fix up\nthe node_states[N_NORMAL_MEMORY].\n\nWe add node_states_check_changes_online() and\nnode_states_check_changes_offline() to detect whether\nnode_states[N_HIGH_MEMORY] and node_states[N_NORMAL_MEMORY] are changed\nwhile hotpluging.\n\nAlso add @status_change_nid_normal to struct memory_notify, thus the\nmemory hotplug callbacks know whether the node_states[N_NORMAL_MEMORY] are\nchanged.  (We can add a @flags and reuse @status_change_nid instead of\nintroducing @status_change_nid_normal, but it will add much more\ncomplexity in memory hotplug callback in every subsystem.  So introducing\n@status_change_nid_normal is better and it doesn\u0027t change the sematics of\n@status_change_nid)\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: Minchan Kim \u003cminchan.kim@gmail.com\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Yasuaki Ishimatsu \u003cisimatu.yasuaki@jp.fujitsu.com\u003e\nCc: Rob Landley \u003crob@landley.net\u003e\nCc: Jiang Liu \u003cjiang.liu@huawei.com\u003e\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nCc: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nCc: Mel Gorman \u003cmgorman@suse.de\u003e\nCc: Wen Congyang \u003cwency@cn.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8732794b166196cc501c2ddd9e7c97cf45ab64c5",
      "tree": "f9a3f04d08054de5d296e0104f61d4a1b13fbfb6",
      "parents": [
        "97d0da2204ed9e34d9d42c2024c5bea5543f13c6"
      ],
      "author": {
        "name": "Wen Congyang",
        "email": "wency@cn.fujitsu.com",
        "time": "Tue Dec 11 16:00:56 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 11 17:22:23 2012 -0800"
      },
      "message": "numa: convert static memory to dynamically allocated memory for per node device\n\nWe use a static array to store struct node.  In many cases, we don\u0027t have\ntoo many nodes, and some memory will be unused.  Convert it to per-device\ndynamically allocated memory.\n\nSigned-off-by: Wen Congyang \u003cwency@cn.fujitsu.com\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: Jiang Liu \u003cliuj97@gmail.com\u003e\nCc: Minchan Kim \u003cminchan.kim@gmail.com\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Yasuaki Ishimatsu \u003cisimatu.yasuaki@jp.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b023f46813cde6e3b8a8c24f432ff9c1fd8e9a64",
      "tree": "edac3509e7c44136450e20d7f9cc81de35926650",
      "parents": [
        "fa7194eb99b8e9fefe96f045002648ffb55f53c0"
      ],
      "author": {
        "name": "Wen Congyang",
        "email": "wency@cn.fujitsu.com",
        "time": "Tue Dec 11 16:00:45 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 11 17:22:22 2012 -0800"
      },
      "message": "memory-hotplug: skip HWPoisoned page when offlining pages\n\nhwpoisoned may be set when we offline a page by the sysfs interface\n/sys/devices/system/memory/soft_offline_page or\n/sys/devices/system/memory/hard_offline_page. If we don\u0027t clear\nthis flag when onlining pages, this page can\u0027t be freed, and will\nnot in free list. So we can\u0027t offline these pages again. So we\nshould skip such page when offlining pages.\n\nSigned-off-by: Wen Congyang \u003cwency@cn.fujitsu.com\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: Jiang Liu \u003cliuj97@gmail.com\u003e\nCc: Len Brown \u003clen.brown@intel.com\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Christoph Lameter \u003ccl@linux.com\u003e\nCc: Minchan Kim \u003cminchan.kim@gmail.com\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Yasuaki Ishimatsu \u003cisimatu.yasuaki@jp.fujitsu.com\u003e\nCc: Andi Kleen \u003candi@firstfloor.org\u003e\nCc: Mel Gorman \u003cmel@csn.ul.ie\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d84da3f9e4f18809821562bd960e00a10673b341",
      "tree": "b2e6c97c8cd4cb94977ce4fba0770f6cf91eff75",
      "parents": [
        "e5adfffc857788c8b7eca0e98cf1e26f1964b292"
      ],
      "author": {
        "name": "Kirill A. Shutemov",
        "email": "kirill.shutemov@linux.intel.com",
        "time": "Tue Dec 11 16:00:31 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 11 17:22:22 2012 -0800"
      },
      "message": "mm: use IS_ENABLED(CONFIG_COMPACTION) instead of COMPACTION_BUILD\n\nWe don\u0027t need custom COMPACTION_BUILD anymore, since we have handy\nIS_ENABLED().\n\nSigned-off-by: Kirill A. Shutemov \u003ckirill.shutemov@linux.intel.com\u003e\nAcked-by: Minchan Kim \u003cminchan@kernel.org\u003e\nAcked-by: David Rientjes \u003crientjes@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e5adfffc857788c8b7eca0e98cf1e26f1964b292",
      "tree": "8d1ac37aa649a060055162b59cb06e8ca63f7a68",
      "parents": [
        "19965460e31c73a934d2c19c152f876a75bdff3e"
      ],
      "author": {
        "name": "Kirill A. Shutemov",
        "email": "kirill.shutemov@linux.intel.com",
        "time": "Tue Dec 11 16:00:29 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 11 17:22:22 2012 -0800"
      },
      "message": "mm: use IS_ENABLED(CONFIG_NUMA) instead of NUMA_BUILD\n\nWe don\u0027t need custom NUMA_BUILD anymore, since we have handy\nIS_ENABLED().\n\nSigned-off-by: Kirill A. Shutemov \u003ckirill.shutemov@linux.intel.com\u003e\nAcked-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nAcked-by: David Rientjes \u003crientjes@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "19965460e31c73a934d2c19c152f876a75bdff3e",
      "tree": "662e3de7f6015225b650f8a24fbacf8b33938714",
      "parents": [
        "377e4f167664d8bc390c04c911d846366000159c"
      ],
      "author": {
        "name": "David Rientjes",
        "email": "rientjes@google.com",
        "time": "Tue Dec 11 16:00:26 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 11 17:22:22 2012 -0800"
      },
      "message": "mm, memcg: make mem_cgroup_out_of_memory() static\n\nmem_cgroup_out_of_memory() is only referenced from within file scope, so\nit can be marked static.\n\nSigned-off-by: David Rientjes \u003crientjes@google.com\u003e\nAcked-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nAcked-by: Michal Hocko \u003cmhocko@suse.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d0e1d66b5aa1ec9f556f951aa9a114cc192cd01c",
      "tree": "3c3d9d8a1575a5fff0233d70951ed7d94c9a1e7e",
      "parents": [
        "b58ed041a360ed051fab17e4d9b0f451c6fedba7"
      ],
      "author": {
        "name": "Namjae Jeon",
        "email": "linkinjeon@gmail.com",
        "time": "Tue Dec 11 16:00:21 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 11 17:22:21 2012 -0800"
      },
      "message": "writeback: remove nr_pages_dirtied arg from balance_dirty_pages_ratelimited_nr()\n\nThere is no reason to pass the nr_pages_dirtied argument, because\nnr_pages_dirtied value from the caller is unused in\nbalance_dirty_pages_ratelimited_nr().\n\nSigned-off-by: Namjae Jeon \u003clinkinjeon@gmail.com\u003e\nSigned-off-by: Vivek Trivedi \u003cvtrivedi018@gmail.com\u003e\nCc: Wu Fengguang \u003cfengguang.wu@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b58ed041a360ed051fab17e4d9b0f451c6fedba7",
      "tree": "c21db4bc5042821cae320213652b2dbec880a58d",
      "parents": [
        "259cdbee2094d28b72f0f3d77bc9203d682994ff",
        "58fea354d887fddddd342a8d14b02069161ca904"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 11 11:30:41 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 11 11:30:41 2012 -0800"
      },
      "message": "Merge tag \u0027devicetree-for-linus\u0027 of git://git.secretlab.ca/git/linux-2.6\n\nPull device tree changes from Grant Likely:\n \"Here are the DT changes I\u0027ve got queued up for v3.8.  As described\n  below, there are a lot of bug fixes here and documentation updates but\n  nothing major:\n\n  Bug fixes, little cleanups, and documentation changes.  The most\n  invasive thing here touches a bunch of the arch directories to use a\n  common build rule for .dtb files.  There are no major changes to\n  functionality here other than a few new helper functions.\"\n\n* tag \u0027devicetree-for-linus\u0027 of git://git.secretlab.ca/git/linux-2.6: (34 commits)\n  arm64: Fix the dtbs target building\n  mtd: nand: davinci: fix the binding documentation\n  rtc: rtc-mv: Add the device tree binding documentation\n  devicetree/bindings: Move gpio-leds binding into leds directory\n  of/vendor-prefixes: add Imagination Technologies\n  microblaze: use new common dtc rule\n  c6x: use new common dtc rule\n  openrisc: use new common dtc rule\n  arm64: Add dtbs target for building all the enabled dtb files\n  arm64: use new common dtc rule\n  ARM: dt: change .dtb build rules to build in dts directory\n  kbuild: centralize .dts-\u003e.dtb rule\n  Fix build when CONFIG_W1_MASTER_GPIO\u003dm b exporting \"allnodes\"\n  of/spi: Honour \"status\u003ddisabled\" property of device\n  of_mdio: Honour \"status\u003ddisabled\" property of device\n  of_i2c: Honour \"status\u003ddisabled\" property of device\n  powerpc: Fix fallout from device_node-\u003ename constification\n  of: add \u0027const\u0027 for of_parse_phandle parameter *np\n  Documentation: correct of_platform_populate() argument list\n  script: dtc: clean generated files\n  ...\n"
    },
    {
      "commit": "9ada9fd5dfaf0076eadf42cecc68f7adc1717c58",
      "tree": "543ef3147e5a63c1a877efbf2f1a9e0125273c85",
      "parents": [
        "c45564e91604ca4d03505ba4d567541c7e4f86fe",
        "3bfe5aae8edd8436d26cddfeab783492d8950821"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 11 11:28:43 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 11 11:28:43 2012 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp\n\nPull EDAC fixes from Borislav Petkov:\n\n - EDAC core error path fix, from Denis Kirjanov.\n\n - Generalization of AMD MCE bank names and some minor error reporting\n   improvements.\n\n - EDAC core cleanups and simplifications, from Wei Yongjun.\n\n - amd64_edac fixes for sysfs-reported values, from Josh Hunt.\n\n - some heavy amd64_edac error reporting path shaving, leading to\n   removing a bunch of code.\n\n - amd64_edac error injection method improvements.\n\n - EDAC core cleanups and fixes\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp: (24 commits)\n  EDAC, pci_sysfs: Use for_each_pci_dev to simplify the code\n  EDAC: Handle error path in edac_mc_sysfs_init() properly\n  MCE, AMD: Dump error status\n  MCE, AMD: Report decoded error type first\n  MCE, AMD: Dump CPU f/m/s triple with the error\n  MCE, AMD: Remove functional unit references\n  EDAC: Convert to use simple_open()\n  EDAC, Calxeda highbank: Convert to use simple_open()\n  EDAC: Fix mc size reported in sysfs\n  EDAC: Fix csrow size reported in sysfs\n  EDAC: Pass mci parent\n  EDAC: Add memory controller flags\n  amd64_edac: Fix csrows size and pages computation\n  amd64_edac: Use DBAM_DIMM macro\n  amd64_edac: Fix K8 chip select reporting\n  amd64_edac: Reorganize error reporting path\n  amd64_edac: Do not check whether error address is valid\n  amd64_edac: Improve error injection\n  amd64_edac: Cleanup error injection code\n  amd64_edac: Small fixlets and cleanups\n  ...\n"
    },
    {
      "commit": "c45564e91604ca4d03505ba4d567541c7e4f86fe",
      "tree": "f686dce956b8ceef91215aff55009555875b394c",
      "parents": [
        "93874681aa3f538a2b9d59a6c5b7c0e882a36978",
        "4009793e15d44469da1547a46ab129cc08ffa503"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 11 11:27:10 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 11 11:27:10 2012 -0800"
      },
      "message": "Merge branch \u0027for-v3.8\u0027 of git://git.linaro.org/people/mszyprowski/linux-dma-mapping\n\nPull CMA and DMA-mapping update from Marek Szyprowski:\n \"Another set of Contiguous Memory Allocator and DMA-mapping framework\n  updates for v3.8.\n\n  This pull request consists only of two patches.  The first fixes a\n  long standing issue with dmapools (the code predates current GIT\n  history), which forced all allocations to use GFP_ATOMIC flag,\n  ignoring the flags passed by the caller.  The second patch changes CMA\n  code to correctly use phys_addr_t type what enables support for LPAE\n  systems.\"\n\n* \u0027for-v3.8\u0027 of git://git.linaro.org/people/mszyprowski/linux-dma-mapping:\n  drivers: cma: represent physical addresses as phys_addr_t\n  mm: dmapool: use provided gfp flags for all dma_alloc_coherent() calls\n"
    },
    {
      "commit": "93874681aa3f538a2b9d59a6c5b7c0e882a36978",
      "tree": "6ec88fb9fb50e2b5e15b008e7353cc7d6395e1f8",
      "parents": [
        "505cbedab9c7c565957e64af6348e5d84acd510e",
        "8f87189653d60656e262060665f52c855508a301"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 11 11:25:08 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 11 11:25:08 2012 -0800"
      },
      "message": "Merge tag \u0027clk-for-linus\u0027 of git://git.linaro.org/people/mturquette/linux\n\nPull clock framework changes from Mike Turquette:\n \"The common clock framework changes for 3.8 are comprised of lots of\n  fixes for existing platforms as well as new ports for some ARM\n  platforms.  In addition there are new clk drivers for audio devices\n  and MFDs.\"\n\nFix up trivial conflict in \u003clinux/clk-provider.h\u003e (removal of \u0027inline\u0027\nclashing with return type fixes)\n\n* tag \u0027clk-for-linus\u0027 of git://git.linaro.org/people/mturquette/linux: (51 commits)\n  MAINTAINERS: bad email address for Mike Turquette\n  clk: introduce optional disable_unused callback\n  clk: ux500: fix bit error\n  clk: clock multiplexers may register out of order\n  clk: ux500: Initial support for abx500 clock driver\n  CLK: SPEAr: Remove unused dummy apb_pclk\n  CLK: SPEAr: Correct index scanning done for clock synths\n  CLK: SPEAr: Update clock rate table\n  CLK: SPEAr: Add missing clocks\n  CLK: SPEAr: Set CLK_SET_RATE_PARENT for few clocks\n  CLK: SPEAr13xx: fix parent names of multiple clocks\n  CLK: SPEAr13xx: Fix mux clock names\n  CLK: SPEAr: Fix dev_id \u0026 con_id for multiple clocks\n  clk: move IM-PD1 clocks to drivers/clk\n  clk: make ICST driver handle the VCO registers\n  clk: add GPLv2 headers to the Versatile clock files\n  clk: mxs: Use a better name for the USB PHY clock\n  clk: spear: Add stub functions for spear3[0|1|2]0_clk_init()\n  CLK: clk-twl6040: fix return value check in twl6040_clk_probe()\n  clk: ux500: Register nomadik keypad clock lookups for u8500\n  ...\n"
    },
    {
      "commit": "505cbedab9c7c565957e64af6348e5d84acd510e",
      "tree": "4855caf82c434629432e22f03c96892d73383ba2",
      "parents": [
        "a8936db7c2d9ef7f8e080d629301e448291f3b75",
        "7c8f86a451fe8c010eb93c62d4d69727ccdbe435"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 11 11:21:33 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 11 11:21:33 2012 -0800"
      },
      "message": "Merge tag \u0027pinctrl-for-v3.8\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl\n\nPull pinctrl changes from Linus Walleij:\n \"These are the first and major pinctrl changes for the v3.8 merge\n  cycle.  Some of this is used as merge base for other trees so I better\n  be early on the trigger.\n\n  As can be seen from the diffstat the major changes are:\n\n  - A big conversion of the AT91 pinctrl driver and the associated ACKed\n    platform changes under arch/arm/max-at91 and its device trees.  This\n    has been coordinated with the AT91 maintainers to go in through the\n    pinctrl tree.\n\n  - A larger chunk of changes to the SPEAr drivers and the addition of\n    the \"plgpio\" driver for the SPEAr as well.\n\n  - The removal of the remnants of the Nomadik driver from the arch/arm\n    tree and fusion of that into the Nomadik driver and platform data\n    header files.\n\n  - Some local movement in the Marvell MVEBU drivers, these now have\n    their own subdirectory.\n\n  - The addition of a chunk of code to gpiolib under drivers/gpio to\n    register gpio-to-pin range mappings from the GPIO side of things.\n    This has been requested by Grant Likely and is now implemented, it\n    is particularly useful for device tree work.\n\n  Then we have incremental updates all over the place, many of these are\n  cleanups and fixes from Axel Lin who has done a great job of removing\n  minor mistakes and compilation annoyances.\"\n\n* tag \u0027pinctrl-for-v3.8\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl: (114 commits)\n  ARM: mmp: select PINCTRL for ARCH_MMP\n  pinctrl: Drop selecting PINCONF for MMP2, PXA168 and PXA910\n  pinctrl: pinctrl-single: Fix error check condition\n  pinctrl: SPEAr: Update error check for unsigned variables\n  gpiolib: Fix use after free in gpiochip_add_pin_range\n  gpiolib: rename pin range arguments\n  pinctrl: single: support gpio request and free\n  pinctrl: generic: add input schmitt disable parameter\n  pinctrl/u300/coh901: stop spawning pinctrl from GPIO\n  pinctrl/u300/coh901: let the gpio_chip register the range\n  pinctrl: add function to retrieve range from pin\n  gpiolib: return any error code from range creation\n  pinctrl: make range registration defer properly\n  gpiolib: rename find_pinctrl_*\n  gpiolib: let gpiochip_add_pin_range() specify offset\n  ARM: at91: pm9g45: add mmc support\n  ARM: at91: Animeo IP: add mmc support\n  ARM: at91: dt: add mmc pinctrl for Atmel reference boards\n  ARM: at91: dt: at91sam9: add mmc pinctrl support\n  ARM: at91/dts: add nodes for atmel hsmci controllers for atmel boards\n  ...\n"
    },
    {
      "commit": "a8936db7c2d9ef7f8e080d629301e448291f3b75",
      "tree": "9265bfdb48cd8eaaa22b9ed7826a9a51763e7a7c",
      "parents": [
        "11b84c585764155d7cc75f95f1bdc86432e5e3cb",
        "44f751cee1b4baef9e3b49c6bd954f8b12b097a6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 11 11:20:34 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 11 11:20:34 2012 -0800"
      },
      "message": "Merge tag \u0027hwmon-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging\n\nPull hwmon updates from Guenter Roeck:\n \"New driver: DA9055\n\n  Added/improved support for new chips in existing drivers: Z650/670,\n  N550/570, ADS7830, AMD 16h family\"\n\n* tag \u0027hwmon-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging:\n  hwmon: (da9055) Fix chan_mux[DA9055_ADC_ADCIN3] setting\n  hwmon: DA9055 HWMON driver\n  hwmon: (coretemp) List TjMax for Z650/670 and N550/570\n  hwmon: (coretemp) Drop N4xx, N5xx, D4xx, D5xx CPUs from tjmax table\n  hwmon: (coretemp) Use model table instead of if/else to identify CPU models\n  hwmon: da9052: Use da9052_reg_update for rmw operations\n  hwmon: (coretemp) Drop dependency on PCI for TjMax detection on Atom CPUs\n  hwmon: (ina2xx) use module_i2c_driver to simplify the code\n  hwmon: (ads7828) add support for ADS7830\n  hwmon: (ads7828) driver cleanup\n  x86,AMD: Power driver support for AMD\u0027s family 16h processors\n"
    },
    {
      "commit": "11b84c585764155d7cc75f95f1bdc86432e5e3cb",
      "tree": "2c4718ae6ec42f47d09f8e7649eef5e7a1b00f2b",
      "parents": [
        "29594404d7fe73cd80eaa4ee8c43dcc53970c60e",
        "71e69211eac889898dec5a21270347591eb2d001"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 11 11:19:09 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 11 11:19:09 2012 -0800"
      },
      "message": "Merge tag \u0027mmc-updates-for-3.8-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc\n\nPull MMC updates from Chris Ball:\n \"MMC highlights for 3.8:\n\n  Core:\n   - Expose access to the eMMC RPMB (\"Replay Protected Memory Block\")\n     area by extending the existing mmc_block ioctl.\n   - Add SDIO powered-suspend DT properties to the core MMC DT binding.\n   - Add no-1-8-v DT flag for boards where the SD controller reports\n     that it supports 1.8V but the board itself has no way to switch to\n     1.8V.\n   - More work on switching to 1.8V UHS support using a vqmmc regulator.\n   - Fix up a case where the slot-gpio helper may fail to reset the host\n     controller properly if a card was removed during a transfer.\n   - Fix several cases where a broken device could cause an infinite\n     loop while we wait for a register to update.\n\n  Drivers:\n   - at91-mci: Remove obsolete driver, atmel-mci handles these devices\n     now.\n   - sdhci-dove: Allow using GPIOs for card-detect notifications.\n   - sdhci-esdhc: Fix for recovering from ADMA errors on broken silicon.\n   - sdhci-s3c: Add pinctrl support.\n   - wmt-sdmmc: New driver for WonderMedia SD/MMC controllers.\"\n\n* tag \u0027mmc-updates-for-3.8-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc: (65 commits)\n  mmc: sdhci: implement the .card_event() method\n  mmc: extend the slot-gpio card-detection to use host\u0027s .card_event() method\n  mmc: add a card-event host operation\n  mmc: sdhci-s3c: Fix compilation warning\n  mmc: sdhci-pci: Enable SDHCI_CAN_DO_HISPD for Ricoh SDHCI controller\n  mmc: sdhci-dove: allow GPIOs to be used for card detection on Dove\n  mmc: sdhci-dove: use two-stage initialization for sdhci-pltfm\n  mmc: sdhci-dove: use devm_clk_get()\n  mmc: eSDHC: Recover from ADMA errors\n  mmc: dw_mmc: remove duplicated buswidth code\n  mmc: dw_mmc: relocate where dw_mci_setup_bus() is called from\n  mmc: Limit MMC speed to 52MHz if not HS200\n  mmc: dw_mmc: use devres functions in dw_mmc\n  mmc: sh_mmcif: remove unneeded clock connection ID\n  mmc: sh_mobile_sdhi: remove unneeded clock connection ID\n  mmc: sh_mobile_sdhi: fix clock frequency printing\n  mmc: Remove redundant null check before kfree in bus.c\n  mmc: Remove redundant null check before kfree in sdio_bus.c\n  mmc: sdhci-imx-esdhc: use more devm_* functions\n  mmc: dt: add no-1-8-v device tree flag\n  ...\n"
    },
    {
      "commit": "4009793e15d44469da1547a46ab129cc08ffa503",
      "tree": "7d5e89b42669f647278d21284517f3256d051259",
      "parents": [
        "387870f2d6d679746020fa8e25ef786ff338dc98"
      ],
      "author": {
        "name": "Vitaly Andrianov",
        "email": "vitalya@ti.com",
        "time": "Wed Dec 05 09:29:25 2012 -0500"
      },
      "committer": {
        "name": "Marek Szyprowski",
        "email": "m.szyprowski@samsung.com",
        "time": "Tue Dec 11 09:28:09 2012 +0100"
      },
      "message": "drivers: cma: represent physical addresses as phys_addr_t\n\nThis commit changes the CMA early initialization code to use phys_addr_t\nfor representing physical addresses instead of unsigned long.\n\nWithout this change, among other things, dma_declare_contiguous() simply\ndiscards any memory regions whose address is not representable as unsigned\nlong.\n\nThis is a problem on 32-bit PAE machines where unsigned long is 32-bit\nbut physical address space is larger.\n\nSigned-off-by: Vitaly Andrianov \u003cvitalya@ti.com\u003e\nSigned-off-by: Cyril Chemparathy \u003ccyril@ti.com\u003e\nAcked-by: Michal Nazarewicz \u003cmina86@mina86.com\u003e\nSigned-off-by: Marek Szyprowski \u003cm.szyprowski@samsung.com\u003e\n"
    },
    {
      "commit": "7c045a55c97fb83a2e5e9c6c857162c4866cc602",
      "tree": "e8c5a171b9b9085e86541aaccf9b85e3ec52298e",
      "parents": [
        "2630b17b6ee47ac79b4f5120ac49105027f644ea"
      ],
      "author": {
        "name": "Mike Turquette",
        "email": "mturquette@linaro.org",
        "time": "Tue Dec 04 11:00:35 2012 -0800"
      },
      "committer": {
        "name": "Mike Turquette",
        "email": "mturquette@linaro.org",
        "time": "Mon Dec 10 22:35:02 2012 -0800"
      },
      "message": "clk: introduce optional disable_unused callback\n\nSome gate clocks have special needs which must be handled during the\ndisable-unused clocks sequence.  These needs might be driven by software\ndue to the fact that we\u0027re disabling a clock outside of the normal\nclk_disable path and a clk\u0027s enable_count will not be accurate.  On the\nother hand a specific hardware programming sequence might need to be\nfollowed for this corner case.\n\nThis change is needed for the upcoming OMAP port to the common clock\nframework.  Specifically, it is undesirable to treat the disable-unused\npath identically to the normal clk_disable path since other software\nlayers are involved.  In this case OMAP\u0027s clockdomain code throws WARNs\nand bails early due to the clock\u0027s enable_count being set to zero.  A\ncustom callback mitigates this problem nicely.\n\nCc: Paul Walmsley \u003cpaul@pwsan.com\u003e\nAcked-by: Ulf Hansson \u003culf.hansson@linaro.org\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\nSigned-off-by: Mike Turquette \u003cmturquette@linaro.org\u003e\n"
    },
    {
      "commit": "caf491916b1c1e939a2c7575efb7a77f11fc9bdf",
      "tree": "f6e62f0a4427c2ba860ad8cd40a31e50be29de15",
      "parents": [
        "31f8d42d44b48ba72b586ca03e810cbbd21ea16b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 10 10:51:16 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 10 11:03:05 2012 -0800"
      },
      "message": "Revert \"revert \"Revert \"mm: remove __GFP_NO_KSWAPD\"\"\" and associated damage\n\nThis reverts commits a50915394f1fc02c2861d3b7ce7014788aa5066e and\nd7c3b937bdf45f0b844400b7bf6fd3ed50bac604.\n\nThis is a revert of a revert of a revert.  In addition, it reverts the\neven older i915 change to stop using the __GFP_NO_KSWAPD flag due to the\noriginal commits in linux-next.\n\nIt turns out that the original patch really was bogus, and that the\noriginal revert was the correct thing to do after all.  We thought we\nhad fixed the problem, and then reverted the revert, but the problem\nreally is fundamental: waking up kswapd simply isn\u0027t the right thing to\ndo, and direct reclaim sometimes simply _is_ the right thing to do.\n\nWhen certain allocations fail, we simply should try some direct reclaim,\nand if that fails, fail the allocation.  That\u0027s the right thing to do\nfor THP allocations, which can easily fail, and the GPU allocations want\nto do that too.\n\nSo starting kswapd is sometimes simply wrong, and removing the flag that\nsaid \"don\u0027t start kswapd\" was a mistake.  Let\u0027s hope we never revisit\nthis mistake again - and certainly not this many times ;)\n\nAcked-by: Mel Gorman \u003cmgorman@suse.de\u003e\nAcked-by: Johannes Weiner \u003channes@cmpxchg.org\u003e\nCc: Rik van Riel \u003criel@redhat.com\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c3c7c254b2e8cd99b0adf288c2a1bddacd7ba255",
      "tree": "cca25bcae0cc6172a616335041c1e54a33db451c",
      "parents": [
        "93b174ad71b08e504c2cf6e8a58ecce778b77a40"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "edumazet@google.com",
        "time": "Thu Dec 06 13:54:59 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Dec 07 14:39:29 2012 -0500"
      },
      "message": "net: gro: fix possible panic in skb_gro_receive()\n\ncommit 2e71a6f8084e (net: gro: selective flush of packets) added\na bug for skbs using frag_list. This part of the GRO stack is rarely\nused, as it needs skb not using a page fragment for their skb-\u003ehead.\n\nMost drivers do use a page fragment, but some of them use GFP_KERNEL\nallocations for the initial fill of their RX ring buffer.\n\nnapi_gro_flush() overwrite skb-\u003eprev that was used for these skb to\npoint to the last skb in frag_list.\n\nFix this using a separate field in struct napi_gro_cb to point to the\nlast fragment.\n\nSigned-off-by: Eric Dumazet \u003cedumazet@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "93b174ad71b08e504c2cf6e8a58ecce778b77a40",
      "tree": "f9e7fd386880ae14d4625de9801a57c5bf5fa105",
      "parents": [
        "1afa471706963643ceeda7cbbe9c605a1e883d53"
      ],
      "author": {
        "name": "Yuchung Cheng",
        "email": "ycheng@google.com",
        "time": "Thu Dec 06 08:45:32 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Dec 07 14:39:28 2012 -0500"
      },
      "message": "tcp: bug fix Fast Open client retransmission\n\nIf SYN-ACK partially acks SYN-data, the client retransmits the\nremaining data by tcp_retransmit_skb(). This increments lost recovery\nstate variables like tp-\u003eretrans_out in Open state. If loss recovery\nhappens before the retransmission is acked, it triggers the WARN_ON\ncheck in tcp_fastretrans_alert(). For example: the client sends\nSYN-data, gets SYN-ACK acking only ISN, retransmits data, sends\nanother 4 data packets and get 3 dupacks.\n\nSince the retransmission is not caused by network drop it should not\nupdate the recovery state variables. Further the server may return a\nsmaller MSS than the cached MSS used for SYN-data, so the retranmission\nneeds a loop. Otherwise some data will not be retransmitted until timeout\nor other loss recovery events.\n\nSigned-off-by: Yuchung Cheng \u003cycheng@google.com\u003e\nAcked-by: Neal Cardwell \u003cncardwell@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9f1fb60a2338aa2202ca94d67f84c582f31dbf5a",
      "tree": "9bb261984e214bfdeb9d9c8391c7bc327527501e",
      "parents": [
        "4577f77ba76127cd9e72e06f44d743894d34ac8b"
      ],
      "author": {
        "name": "Guennadi Liakhovetski",
        "email": "g.liakhovetski@gmx.de",
        "time": "Tue Dec 04 16:51:32 2012 +0100"
      },
      "committer": {
        "name": "Chris Ball",
        "email": "cjb@laptop.org",
        "time": "Fri Dec 07 13:55:31 2012 -0500"
      },
      "message": "mmc: add a card-event host operation\n\nSome hosts need to perform additional actions upon card insertion or\nejection. Add a host operation to be called from card detection handlers.\n\nSigned-off-by: Guennadi Liakhovetski \u003cg.liakhovetski@gmx.de\u003e\nReviewed-by: Shawn Guo \u003cshawn.guo@linaro.org\u003e\nSigned-off-by: Chris Ball \u003ccjb@laptop.org\u003e\n"
    },
    {
      "commit": "18a2f371f5edf41810f6469cb9be39931ef9deb9",
      "tree": "4e4ec26f13273b36fc7203d2084ea09f14c5f0f7",
      "parents": [
        "c702418f8a2fa6cc92e84a39880d458faf7af9cc"
      ],
      "author": {
        "name": "Mel Gorman",
        "email": "mgorman@suse.de",
        "time": "Wed Dec 05 14:01:41 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 06 11:56:43 2012 -0800"
      },
      "message": "tmpfs: fix shared mempolicy leak\n\nThis fixes a regression in 3.7-rc, which has since gone into stable.\n\nCommit 00442ad04a5e (\"mempolicy: fix a memory corruption by refcount\nimbalance in alloc_pages_vma()\") changed get_vma_policy() to raise the\nrefcount on a shmem shared mempolicy; whereas shmem_alloc_page() went\non expecting alloc_page_vma() to drop the refcount it had acquired.\nThis deserves a rework: but for now fix the leak in shmem_alloc_page().\n\nHugh: shmem_swapin() did not need a fix, but surely it\u0027s clearer to use\nthe same refcounting there as in shmem_alloc_page(), delete its onstack\nmempolicy, and the strange mpol_cond_copy() and __mpol_cond_copy() -\nthose were invented to let swapin_readahead() make an unknown number of\ncalls to alloc_pages_vma() with one mempolicy; but since 00442ad04a5e,\nalloc_pages_vma() has kept refcount in balance, so now no problem.\n\nReported-and-tested-by: Tommi Rantala \u003ctt.rantala@gmail.com\u003e\nSigned-off-by: Mel Gorman \u003cmgorman@suse.de\u003e\nSigned-off-by: Hugh Dickins \u003chughd@google.com\u003e\nCc: stable@vger.kernel.org\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6a66180a252f5856fc25de69c6313831f343f50f",
      "tree": "e25b03a4cde9e28b229c6ff5418aa93b6ed08d11",
      "parents": [
        "b0afd8f68adf6a9b671b0420ab9116a36409ef7f"
      ],
      "author": {
        "name": "Daniel Drake",
        "email": "dsd@laptop.org",
        "time": "Sun Nov 25 13:01:19 2012 -0500"
      },
      "committer": {
        "name": "Chris Ball",
        "email": "cjb@laptop.org",
        "time": "Thu Dec 06 13:55:04 2012 -0500"
      },
      "message": "mmc: sdhci: add quirk for lack of 1.8v support\n\nThe OLPC XO-1.75 laptop includes a SDHCI controller which is 1.8v\ncapable, and it truthfully reports so in its capabilities. This\nalternate voltage is used for driving new \"UHS-I\" SD cards at their\nfull speed.\n\nHowever, what the controller doesn\u0027t know is that the motherboard\nphysically doesn\u0027t have a 1.8v supply available.\n\nAdd a quirk so that systems such as this one can override disable\n1.8v support, adding support for UHS-I cards (by running them at\n3.3v).\n\nThis avoids a problem where the system would first try to run the\ncard at 1.8v, fail, and then not be able to fully reset the card\nto retry at the normal 3.3v voltage.\n\nThis is more appropriate than using the MISSING_CAPS quirk, which\nis intended for cases where the SDHCI controller is actually lying\nabout its capabilities, and would force us to somehow override both\ncaps words from another source.\n\nSigned-off-by: Daniel Drake \u003cdsd@laptop.org\u003e\nReviewed-by: Philip Rakity \u003cprakity@nvidia.com\u003e\nSigned-off-by: Chris Ball \u003ccjb@laptop.org\u003e\n"
    },
    {
      "commit": "ab269128a2cff7abee06f023e6466fc29991738c",
      "tree": "b6b75ebec2cad581d36a0bfc0ed9ad7e19f9e711",
      "parents": [
        "f5ccfd4174639119664b6d76495ea1388f13b838"
      ],
      "author": {
        "name": "Abhilash Kesavan",
        "email": "a.kesavan@samsung.com",
        "time": "Mon Nov 19 10:26:21 2012 +0530"
      },
      "committer": {
        "name": "Chris Ball",
        "email": "cjb@laptop.org",
        "time": "Thu Dec 06 13:54:54 2012 -0500"
      },
      "message": "mmc: dw_mmc: Add sdio power bindings\n\nAdd dt-based retrieval of host sdio pm capabilities. Based on\nthe dt based discovery do a bus init in the resume function.\n\nSigned-off-by: Olof Johansson \u003colofj@chromium.org\u003e\nSigned-off-by: Abhilash Kesavan \u003ca.kesavan@samsung.com\u003e\nSigned-off-by: Chris Ball \u003ccjb@laptop.org\u003e\n"
    },
    {
      "commit": "7c52d7bb87955095f23f96c717e787af4eea4195",
      "tree": "f1ad8a3c603a8ec42aa5c18414bc72a56983cb51",
      "parents": [
        "cec2e216f72c6b5ccdadb60aadbe99821d744503"
      ],
      "author": {
        "name": "Kevin Liu",
        "email": "kliu5@marvell.com",
        "time": "Wed Oct 17 19:04:48 2012 +0800"
      },
      "committer": {
        "name": "Chris Ball",
        "email": "cjb@laptop.org",
        "time": "Thu Dec 06 13:54:51 2012 -0500"
      },
      "message": "mmc: sdhci-pxav3: add quirks2\n\nAcked-by: Zhangfei Gao \u003czhangfei.gao@marvell.com\u003e\nSigned-off-by: Kevin Liu \u003ckliu5@marvell.com\u003e\nSigned-off-by: Chris Ball \u003ccjb@laptop.org\u003e\n"
    },
    {
      "commit": "67c79db8d9c0e5d2e2075c9108f42566ce0f8a6f",
      "tree": "a54d009c61dc3002e54efc366be988b5a5a3dd08",
      "parents": [
        "188cc0424e9bd7733ee3e412da6df2cf42701061"
      ],
      "author": {
        "name": "Loic Pallardy",
        "email": "loic.pallardy-ext@stericsson.com",
        "time": "Mon Aug 06 17:12:30 2012 +0200"
      },
      "committer": {
        "name": "Chris Ball",
        "email": "cjb@laptop.org",
        "time": "Thu Dec 06 13:54:48 2012 -0500"
      },
      "message": "mmc: core: Add mmc_set_blockcount feature\n\nProvide support for automatically sending Set Block Count\n(CMD23) messages. Used at least for RPMB support.\n\nSigned-off-by: Alex Macro \u003calex.macro@stericsson.com\u003e\nSigned-off-by: Loic Pallardy \u003cloic.pallardy@stericsson.com\u003e\nReviewed-by: Namjae Jeon \u003clinkinjeon@gmail.com\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\nAcked-by: Johan Rudholm \u003cjohan.rudholm@stericsson.com\u003e\nAcked-by: Krishna Konda \u003ckkonda@codeaurora.org\u003e\nSigned-off-by: Chris Ball \u003ccjb@laptop.org\u003e\n"
    },
    {
      "commit": "090d25fe224c0933d2b261aad91532e725c1d889",
      "tree": "ac1ad802de5be2f7acc6d7552c04885ee158d80e",
      "parents": [
        "ed9dbb6effc3516a1211a936be9bd67c03fdf858"
      ],
      "author": {
        "name": "Loic Pallardy",
        "email": "loic.pallardy-ext@stericsson.com",
        "time": "Sat Nov 17 18:08:24 2012 -0500"
      },
      "committer": {
        "name": "Chris Ball",
        "email": "cjb@laptop.org",
        "time": "Thu Dec 06 13:54:46 2012 -0500"
      },
      "message": "mmc: core: Expose access to RPMB partition\n\nFollowing JEDEC standard, if the mmc supports RPMB partition,\na new interface is created and exposed via /dev/block.\nUsers will be able to access RPMB partition using standard\nmmc IOCTL commands.\n\nSigned-off-by: Alex Macro \u003calex.macro@stericsson.com\u003e\nSigned-off-by: Loic Pallardy \u003cloic.pallardy@stericsson.com\u003e\nReviewed-by: Namjae Jeon \u003clinkinjeon@gmail.com\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\nAcked-by: Johan Rudholm \u003cjohan.rudholm@stericsson.com\u003e\nAcked-by: Krishna Konda \u003ckkonda@codeaurora.org\u003e\nSigned-off-by: Chris Ball \u003ccjb@laptop.org\u003e\n"
    },
    {
      "commit": "ed9dbb6effc3516a1211a936be9bd67c03fdf858",
      "tree": "27be9f4aff057f6e74007d71f940558766695b98",
      "parents": [
        "35d110e71a6f1d1d336a18be50bde755abebe3fb"
      ],
      "author": {
        "name": "Kevin Liu",
        "email": "kliu5@marvell.com",
        "time": "Wed Oct 17 19:04:46 2012 +0800"
      },
      "committer": {
        "name": "Chris Ball",
        "email": "cjb@laptop.org",
        "time": "Thu Dec 06 13:54:46 2012 -0500"
      },
      "message": "mmc: host: Make UHS timing values fully unique\n\nBoth of MMC_TIMING_LEGACY and MMC_TIMING_UHS_SDR12 are defined\nto 0. And ios-\u003etiming is set to MMC_TIMING_LEGACY during power up.\nBut set_ios can\u0027t distinguish these two timing if host support\nspec 3.0. Just adjust timing values to be different can resolve\nthis issue without any other impact.\n\nReviewed-by: Girish K S \u003cgirish.shivananjappa@linaro.org\u003e\nAcked-by: Ulf Hansson \u003culf.hansson@linaro.org\u003e\nSigned-off-by: Kevin Liu \u003ckliu5@marvell.com\u003e\nSigned-off-by: Chris Ball \u003ccjb@laptop.org\u003e\n"
    },
    {
      "commit": "5f1a4dd0372038f2490afa4540cd66b8d092839e",
      "tree": "b639556787904877e9c237d42fb69cc36350280f",
      "parents": [
        "d6ed91aff64891fb4f0e9557d9b1734a9e8410a7"
      ],
      "author": {
        "name": "Lee Jones",
        "email": "lee.jones@linaro.org",
        "time": "Wed Nov 14 12:35:51 2012 +0000"
      },
      "committer": {
        "name": "Chris Ball",
        "email": "cjb@laptop.org",
        "time": "Thu Dec 06 13:54:44 2012 -0500"
      },
      "message": "mmc: Standardise capability type\n\nThere are discrepancies with regards to how MMC capabilities\nare carried throughout the subsystem. Let\u0027s standardise them\nto eliminate any confusion.\n\nSigned-off-by: Lee Jones \u003clee.jones@linaro.org\u003e\nSigned-off-by: Chris Ball \u003ccjb@laptop.org\u003e\n"
    },
    {
      "commit": "d6ed91aff64891fb4f0e9557d9b1734a9e8410a7",
      "tree": "311723710c3ed86b45abb49bfa8fac588158cfd9",
      "parents": [
        "968a64ea638bbd48839b41981ff50197f3412676"
      ],
      "author": {
        "name": "Fabio Estevam",
        "email": "fabio.estevam@freescale.com",
        "time": "Wed Oct 31 09:22:58 2012 -0200"
      },
      "committer": {
        "name": "Chris Ball",
        "email": "cjb@laptop.org",
        "time": "Thu Dec 06 13:54:44 2012 -0500"
      },
      "message": "mmc: mxs-mmc: Remove platform data\n\nAll MXS users have been converted to device tree and the board files have\nbeen removed.\n\nNo need to keep platform data in the driver.\n\nAlso move bus_width declaration in the beggining of mxs_mmc_probe() to\navoid: \u0027warning: ISO C90 forbids mixed declarations and code\u0027.\n\nSigned-off-by: Fabio Estevam \u003cfabio.estevam@freescale.com\u003e\nAcked-by: Shawn Guo \u003cshawn.guo@linaro.org\u003e\nAcked-by: Marek Vasut \u003cmarex@denx.de\u003e\nSigned-off-by: Chris Ball \u003ccjb@laptop.org\u003e\n"
    },
    {
      "commit": "46d784629202c5da9be8d727988e7083fb455bf8",
      "tree": "abff9c58c8e94c4b9433145f67f5da33f1bbd62b",
      "parents": [
        "22e32f4f57778ebc6e17812fa3008361c05d64f9"
      ],
      "author": {
        "name": "Vivien Didelot",
        "email": "vivien.didelot@savoirfairelinux.com",
        "time": "Wed Oct 03 16:54:07 2012 -0400"
      },
      "committer": {
        "name": "Guenter Roeck",
        "email": "linux@roeck-us.net",
        "time": "Wed Dec 05 10:55:54 2012 -0800"
      },
      "message": "hwmon: (ads7828) driver cleanup\n\nAs there is no reliable way to identify the chip, it is preferable to\nremove the detect callback, to avoid misdetection.\n\nModule parameters are not worth it here, so let\u0027s get rid of them and\nadd an ads7828_platform_data structure instead.\n\nClean the code by removing unused macros, fixing coding style issues,\navoiding function prototypes and using convenient macros such as\nmodule_i2c_driver().\n\nSigned-off-by: Vivien Didelot \u003cvivien.didelot@savoirfairelinux.com\u003e\nSigned-off-by: Guenter Roeck \u003clinux@roeck-us.net\u003e\n"
    },
    {
      "commit": "df2fc246c8ee8b6067af1fa55d3bc23107457f61",
      "tree": "4f23eb533768183e55c91130ae58e5cbd5878e9b",
      "parents": [
        "70dcc535bdf30ffaef58b867fbde45c0287f34c6",
        "84ecfd15f5547c992c901df6ec14b4d507eb2c6e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 04 09:32:12 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 04 09:32:12 2012 -0800"
      },
      "message": "Merge branch \u0027fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux\n\nPull module fixes from Rusty Russell:\n \"Module signing build fixes for blackfin and metag\"\n\n* \u0027fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux:\n  modsign: add symbol prefix to certificate list\n  linux/kernel.h: define SYMBOL_PREFIX\n"
    },
    {
      "commit": "d3594ea2b343fbbabaaebeb4ce4e1f29e88ab6b3",
      "tree": "206d28de8ea10397d2eb5dea0fb19dfee6da8077",
      "parents": [
        "7e5530af11be68f3109672aed59243f82e1272f0",
        "bbec0270bdd887f96377065ee38b8848b5afa395"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 03 10:53:25 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 03 10:53:25 2012 -0800"
      },
      "message": "Merge branch \u0027block-dev\u0027\n\nMerge \u0027block-dev\u0027 branch.\n\nI was going to just mark everything here for stable and leave it to the\n3.8 merge window, but having decided on doing another -rc, I migth as\nwell merge it now.\n\nThis removes the bd_block_size_semaphore semaphore that was added in\nthis release to fix a race condition between block size changes and\nblock IO, and replaces it with atomicity guaratees in fs/buffer.c\ninstead, along with simplifying fs/block-dev.c.\n\nThis removes more lines than it adds, makes the code generally simpler,\nand avoids the latency/rt issues that the block size semaphore\nintroduced for mount.\n\nI\u0027m not happy with the timing, but it wouldn\u0027t be much better doing this\nduring the merge window and then having some delayed back-port of it\ninto stable.\n\n* block-dev:\n  blkdev_max_block: make private to fs/buffer.c\n  direct-io: don\u0027t read inode-\u003ei_blkbits multiple times\n  blockdev: remove bd_block_size_semaphore again\n  fs/buffer.c: make block-size be per-page and protected by the page lock\n"
    },
    {
      "commit": "cbdbf2abb7844548a7d7a6a2ae7af6b6fbcea401",
      "tree": "45206a552bc43fac75fa476cb29c22a87a58c85f",
      "parents": [
        "3c46f3d6406b1d0c53575774b2d1fd013cd7f76f"
      ],
      "author": {
        "name": "James Hogan",
        "email": "james.hogan@imgtec.com",
        "time": "Fri Nov 23 12:08:15 2012 +0000"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Mon Dec 03 13:05:54 2012 +1030"
      },
      "message": "linux/kernel.h: define SYMBOL_PREFIX\n\nDefine SYMBOL_PREFIX to be the same as CONFIG_SYMBOL_PREFIX if set by\nthe architecture, or \"\" otherwise. This avoids the need for ugly #ifdefs\nwhenever symbols are referenced in asm blocks.\n\nSigned-off-by: James Hogan \u003cjames.hogan@imgtec.com\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Joe Perches \u003cjoe@perches.com\u003e\nCc: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\nCc: Jean Delvare \u003ckhali@linux-fr.org\u003e\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nCc: Mike Frysinger \u003cvapier@gentoo.org\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "455e987c0c2eb2c9045dc854559474cf41509965",
      "tree": "ed1923005053eca6f9bd06625e4d278feb6e950c",
      "parents": [
        "7c17e486e865d616f0e37c7f7f0e4dcfab704cd8",
        "fd6da696f38b00ffeae1185d6f0ec5d4ab3b472d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 01 13:07:48 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 01 13:07:48 2012 -0800"
      },
      "message": "Merge branch \u0027perf-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull perf fixes from Ingo Molnar:\n \"This is mostly about unbreaking architectures that took the UAPI\n  changes in the v3.7 cycle, plus misc fixes.\"\n\n* \u0027perf-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  perf kvm: Fix building perf kvm on non x86 arches\n  perf kvm: Rename perf_kvm to perf_kvm_stat\n  perf: Make perf build for x86 with UAPI disintegration applied\n  perf powerpc: Use uapi/unistd.h to fix build error\n  tools: Pass the target in descend\n  tools: Honour the O\u003d flag when tool build called from a higher Makefile\n  tools: Define a Makefile function to do subdir processing\n  x86: Export asm/{svm.h,vmx.h,perf_regs.h}\n  perf tools: Fix strbuf_addf() when the buffer needs to grow\n  perf header: Fix numa topology printing\n  perf, powerpc: Fix hw breakpoints returning -ENOSPC\n"
    },
    {
      "commit": "50a53bbe1280839755cb120eef729ad150f644f9",
      "tree": "1308f4943207a303ff7069d159054af97dd2a6cf",
      "parents": [
        "73efd00d473118297cc8ecbdd54429d5f6c6f241",
        "1430e17844e2cd15bc15f3c21b5349e762f6ba41"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Nov 30 10:46:43 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Nov 30 10:46:43 2012 -0800"
      },
      "message": "Merge branch \u0027akpm\u0027 (Fixes from Andrew)\n\nMerge misc fixes from Andrew Morton:\n \"Seven fixes, some of them fingers-crossed :(\"\n\n* emailed patches from Andrew Morton \u003cakpm@linux-foundation.org\u003e: (7 patches)\n  drivers/rtc/rtc-tps65910.c: fix invalid pointer access on _remove()\n  mm: soft offline: split thp at the beginning of soft_offline_page()\n  mm: avoid waking kswapd for THP allocations when compaction is deferred or contended\n  revert \"Revert \"mm: remove __GFP_NO_KSWAPD\"\"\n  mm: vmscan: fix endless loop in kswapd balancing\n  mm/vmemmap: fix wrong use of virt_to_page\n  mm: compaction: fix return value of capture_free_page()\n"
    },
    {
      "commit": "a50915394f1fc02c2861d3b7ce7014788aa5066e",
      "tree": "4b94679a29fb97db6b5163a4c1345d62dfa6a1e7",
      "parents": [
        "60cefed485a02bd99b6299dad70666fe49245da7"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Thu Nov 29 13:54:27 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Nov 30 08:51:17 2012 -0800"
      },
      "message": "revert \"Revert \"mm: remove __GFP_NO_KSWAPD\"\"\n\nIt apepars that this patch was innocent, and we hope that \"mm: avoid\nwaking kswapd for THP allocations when compaction is deferred or\ncontended\" will fix the final kswapd-spinning cause.\n\nCc: Zdenek Kabelac \u003czkabelac@redhat.com\u003e\nCc: Seth Jennings \u003csjenning@linux.vnet.ibm.com\u003e\nCc: Valdis Kletnieks \u003cValdis.Kletnieks@vt.edu\u003e\nCc: Jiri Slaby \u003cjirislaby@gmail.com\u003e\nCc: Rik van Riel \u003criel@redhat.com\u003e\nCc: Robert Jennings \u003crcj@linux.vnet.ibm.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\n"
    },
    {
      "commit": "465aac6d496aa3e99caaa6868865fb3830f73d80",
      "tree": "105ef4075b2f2f351aafb6d87ee69d60b3c1e751",
      "parents": [
        "f3b6159e6a12136ac9c59aaa92ba9f3e484df650"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "rdunlap@infradead.org",
        "time": "Fri Nov 30 10:01:51 2012 +0000"
      },
      "committer": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Fri Nov 30 10:04:06 2012 +0000"
      },
      "message": "Fix build when CONFIG_W1_MASTER_GPIO\u003dm b exporting \"allnodes\"\n\nERROR: \"allnodes\" [drivers/w1/masters/w1-gpio.ko] undefined!\n\nSigned-off-by: Randy Dunlap \u003crdunlap@infradead.org\u003e\n[grant.likely: allnodes is too generic; rename to of_allnodes]\nSigned-off-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nCc: Ville Syrjala \u003csyrjala@sci.fi\u003e\n"
    },
    {
      "commit": "bbec0270bdd887f96377065ee38b8848b5afa395",
      "tree": "4a38397643dceb5285afe11c78e27763a2ead5b8",
      "parents": [
        "ab73857e354ab9e317613cba7db714e2c12c6547"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Nov 29 12:31:52 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Nov 29 17:48:12 2012 -0800"
      },
      "message": "blkdev_max_block: make private to fs/buffer.c\n\nWe really don\u0027t want to look at the block size for the raw block device\naccesses in fs/block-dev.c, because it may be changing from under us.\nSo get rid of the max_block logic entirely, since the caller should\nalready have done it anyway.\n\nThat leaves the only user of this function in fs/buffer.c, so move the\nwhole function there and make it static.\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1e8b33328a5407b447ff80953655a47014a6dcb9",
      "tree": "cb5a5f90712bafe8fb64d3d221fc5213c53f681f",
      "parents": [
        "45bce8f3e3436bbe2e03dd2b076abdce79ffabb7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Nov 29 10:49:50 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Nov 29 10:52:19 2012 -0800"
      },
      "message": "blockdev: remove bd_block_size_semaphore again\n\nThis reverts the block-device direct access code to the previous\nunlocked code, now that fs/buffer.c no longer needs external locking.\n\nWith this, fs/block_dev.c is back to the original version, apart from a\nwhitespace cleanup that I didn\u0027t want to revert.\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b8fbdc42c5c5df8ab1f358fe90e3a8a1bdc9ae48",
      "tree": "93e441ba5066c1c4593a127d39625122099f242a",
      "parents": [
        "4a92a385f867b26297b736e9b9cc42bd6dbf0f2b"
      ],
      "author": {
        "name": "Steffen Trumtrar",
        "email": "s.trumtrar@pengutronix.de",
        "time": "Thu Nov 22 12:16:43 2012 +0100"
      },
      "committer": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Thu Nov 29 17:27:19 2012 +0000"
      },
      "message": "of: add \u0027const\u0027 for of_parse_phandle parameter *np\n\nThe existing function does not change the passed device_node pointer. It is\nonly handed to of_get_property which itself takes a const struct device_node.\n\nof_parse_phandle() can therefore take a const pointer as well.\n\nSigned-off-by: Steffen Trumtrar \u003cs.trumtrar@pengutronix.de\u003e\n[grant.likely: drop extraneous whitespace change]\nSigned-off-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\n"
    },
    {
      "commit": "4b05a1c74d1cfae37cf6ff293ee928350f031418",
      "tree": "1b5c9507f5622fbf1affe4fc4e07ed0b60c3413e",
      "parents": [
        "e23739b4ade80a3a7f87198f008f6c44a7cbc9fd"
      ],
      "author": {
        "name": "Mikulas Patocka",
        "email": "mpatocka@redhat.com",
        "time": "Tue Nov 27 22:59:52 2012 -0500"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Nov 28 07:33:50 2012 -0800"
      },
      "message": "percpu-rwsem: use synchronize_sched_expedited\n\nUse synchronize_sched_expedited() instead of synchronize_sched()\nto improve mount speed.\n\nThis patch improves mount time from 0.500s to 0.013s for Jeff\u0027s\ntest-case.\n\nSigned-off-by: Mikulas Patocka \u003cmpatocka@redhat.com\u003e\nReported-and-tested-by: Jeff Chua \u003cjeff.chua.linux@gmail.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "16a528ee3975c860dc93fbfc718fe9aa25ed92bc",
      "tree": "ea0d20d3544df6dfe2977634d1a4cc837f80b964",
      "parents": [
        "921a689965c26ae6fde12ebaadb4183cbfdb01fb"
      ],
      "author": {
        "name": "Borislav Petkov",
        "email": "borislav.petkov@amd.com",
        "time": "Thu Sep 13 18:53:58 2012 +0200"
      },
      "committer": {
        "name": "Borislav Petkov",
        "email": "bp@alien8.de",
        "time": "Wed Nov 28 11:54:40 2012 +0100"
      },
      "message": "EDAC: Fix csrow size reported in sysfs\n\nOn csrow-based memory controllers, we combine the csrow size from both\nchannels and there\u0027s no need to do that again in csrow_size_show which\nleads to double the size of a csrow.\n\nFix it.\n\nSigned-off-by: Borislav Petkov \u003cborislav.petkov@amd.com\u003e\n"
    },
    {
      "commit": "11652769179296062c74233e168399a87a3f6e8a",
      "tree": "78a844e4e08bd18180bdcfe085da17fba38fda83",
      "parents": [
        "10de6497a56e933d9ddca94aff186ac3b3105af9"
      ],
      "author": {
        "name": "Borislav Petkov",
        "email": "borislav.petkov@amd.com",
        "time": "Thu Sep 13 17:19:40 2012 +0200"
      },
      "committer": {
        "name": "Borislav Petkov",
        "email": "bp@alien8.de",
        "time": "Wed Nov 28 11:48:04 2012 +0100"
      },
      "message": "EDAC: Add memory controller flags\n\nThe first flag is -\u003ecsbased and will be used in common EDAC code later.\n\nSigned-off-by: Borislav Petkov \u003cborislav.petkov@amd.com\u003e\n"
    },
    {
      "commit": "e23739b4ade80a3a7f87198f008f6c44a7cbc9fd",
      "tree": "4d65299a5c76f9fdbed961c7977c909737d0d9f5",
      "parents": [
        "2844a48706e54ddda4a04269dba4250b42f449de",
        "86163adb8125a4ce85e0b23a50be82bd8c0daf95"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Nov 27 12:27:37 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Nov 27 12:27:37 2012 -0800"
      },
      "message": "Merge branch \u0027v4l_for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media\n\nPull media fixes from Mauro Carvalho Chehab:\n \"For some media fixes:\n   - dvb_usb_v2: some fixes at the core\n   - Some fixes on some embedded drivers: soc_camera, adv7604, omap3isp,\n     exynos/s5p\n   - Several Exynos4/5 camera fixes\n   - a fix at stv0900 driver\n   - a few USB ID additions to detect more variants of rtl28xxu-based\n     sticks\"\n\n* \u0027v4l_for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media: (25 commits)\n  [media] rtl28xxu: 0ccd:00d7 TerraTec Cinergy T Stick+\n  [media] rtl28xxu: 1d19:1102 Dexatek DK mini DVB-T Dongle\n  [media] mt9v022: fix the V4L2_CID_EXPOSURE control\n  [media] mx2_camera: fix missing unlock on error in mx2_start_streaming()\n  [media] media: omap1_camera: fix const cropping related warnings\n  [media] media: mx1_camera: use the default .set_crop() implementation\n  [media] media: mx2_camera: fix const cropping related warnings\n  [media] media: mx3_camera: fix const cropping related warnings\n  [media] media: pxa_camera: fix const cropping related warnings\n  [media] media: sh_mobile_ceu_camera: fix const cropping related warnings\n  [media] media: sh_vou: fix const cropping related warnings\n  [media] adv7604: restart STDI once if format is not found\n  [media] adv7604: use presets where possible\n  [media] adv7604: Replace prim_mode by mode\n  [media] adv7604: cleanup references\n  [media] dvb_usb_v2: switch interruptible mutex to normal\n  [media] dvb_usb_v2: fix pid_filter callback error logging\n  [media] exynos-gsc: change driver compatible string\n  [media] omap3isp: Fix warning caused by bad subdev events operations prototypes\n  [media] omap3isp: video: Fix warning caused by bad vidioc_s_crop prototype\n  ...\n"
    },
    {
      "commit": "82b212f40059bffd6808c07266a942d444d5558a",
      "tree": "bf0910ed6dade9445f2a8a7fc9d351565e0a45b1",
      "parents": [
        "05f564849d49499ced97913a0914b5950577d07d"
      ],
      "author": {
        "name": "Mel Gorman",
        "email": "mgorman@suse.de",
        "time": "Mon Nov 26 16:29:45 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Nov 26 17:41:24 2012 -0800"
      },
      "message": "Revert \"mm: remove __GFP_NO_KSWAPD\"\n\nWith \"mm: vmscan: scale number of pages reclaimed by reclaim/compaction\nbased on failures\" reverted, Zdenek Kabelac reported the following\n\n  Hmm,  so it\u0027s just took longer to hit the problem and observe\n  kswapd0 spinning on my CPU again - it\u0027s not as endless like before -\n  but still it easily eats minutes - it helps to\tturn off  Firefox\n  or TB  (memory hungry apps) so kswapd0 stops soon - and restart\n  those apps again.  (And I still have like \u003e1GB of cached memory)\n\n  kswapd0         R  running task        0    30      2 0x00000000\n  Call Trace:\n    preempt_schedule+0x42/0x60\n    _raw_spin_unlock+0x55/0x60\n    put_super+0x31/0x40\n    drop_super+0x22/0x30\n    prune_super+0x149/0x1b0\n    shrink_slab+0xba/0x510\n\nThe sysrq+m indicates the system has no swap so it\u0027ll never reclaim\nanonymous pages as part of reclaim/compaction.  That is one part of the\nproblem but not the root cause as file-backed pages could also be\nreclaimed.\n\nThe likely underlying problem is that kswapd is woken up or kept awake\nfor each THP allocation request in the page allocator slow path.\n\nIf compaction fails for the requesting process then compaction will be\ndeferred for a time and direct reclaim is avoided.  However, if there\nare a storm of THP requests that are simply rejected, it will still be\nthe the case that kswapd is awake for a prolonged period of time as\npgdat-\u003ekswapd_max_order is updated each time.  This is noticed by the\nmain kswapd() loop and it will not call kswapd_try_to_sleep().  Instead\nit will loopp, shrinking a small number of pages and calling\nshrink_slab() on each iteration.\n\nThe temptation is to supply a patch that checks if kswapd was woken for\nTHP and if so ignore pgdat-\u003ekswapd_max_order but it\u0027ll be a hack and not\nbacked up by proper testing.  As 3.7 is very close to release and this\nis not a bug we should release with, a safer path is to revert \"mm:\nremove __GFP_NO_KSWAPD\" for now and revisit it with the view to ironing\nout the balance_pgdat() logic in general.\n\nSigned-off-by: Mel Gorman \u003cmgorman@suse.de\u003e\nCc: Zdenek Kabelac \u003czkabelac@redhat.com\u003e\nCc: Seth Jennings \u003csjenning@linux.vnet.ibm.com\u003e\nCc: Valdis Kletnieks \u003cValdis.Kletnieks@vt.edu\u003e\nCc: Jiri Slaby \u003cjirislaby@gmail.com\u003e\nCc: Rik van Riel \u003criel@redhat.com\u003e\nCc: Robert Jennings \u003crcj@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\n"
    },
    {
      "commit": "c5782e9f5a535af09d7834693a52afdbcc6e5f3f",
      "tree": "65106696b963ca239872440c2340f3b9ba0988ab",
      "parents": [
        "9489e9dcae718d5fde988e4a684a0f55b5f94d17"
      ],
      "author": {
        "name": "Tushar Behera",
        "email": "tushar.behera@linaro.org",
        "time": "Mon Nov 26 16:29:38 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Nov 26 17:41:24 2012 -0800"
      },
      "message": "include/linux/bug.h: fix sparse warning related to BUILD_BUG_ON_INVALID\n\nCommit baf05aa9271b (\"bug: introduce BUILD_BUG_ON_INVALID() macro\")\nintroduces this macro only when _CHECKER_ is not defined.  Define a\nsilent macro in the else condition to fix following sparse warning:\n\n  mm/filemap.c:395:9: error: undefined identifier \u0027BUILD_BUG_ON_INVALID\u0027\n  mm/filemap.c:396:9: error: undefined identifier \u0027BUILD_BUG_ON_INVALID\u0027\n  mm/filemap.c:397:9: error: undefined identifier \u0027BUILD_BUG_ON_INVALID\u0027\n  include/linux/mm.h:419:9: error: undefined identifier \u0027BUILD_BUG_ON_INVALID\u0027\n  include/linux/mm.h:419:9: error: not a function \u003cnoident\u003e\n\nSigned-off-by: Tushar Behera \u003ctushar.behera@linaro.org\u003e\nAcked-by: Konstantin Khlebnikov \u003ckhlebnikov@openvz.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5e351cdc998db82935d1248a053a1be37d1160fd",
      "tree": "6d1e1447abb053056400a13aa4a7932a6d5a89e1",
      "parents": [
        "a0543d64388146f83ff7aef4abb42f8fd074d5e0",
        "0e622d39197f0b64b9e043fe75ac3634bf9f3a05"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Nov 23 12:36:06 2012 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Nov 23 12:36:06 2012 -1000"
      },
      "message": "Merge tag \u0027devicetree-for-linus\u0027 of git://git.secretlab.ca/git/linux-2.6\n\nPull device tree regression fix from Grant Likely:\n \"Simple build regression fix for DT device drivers on Sparc.  An\n  earlier change had masked out the of_iomap() helper on SPARC.\"\n\n* tag \u0027devicetree-for-linus\u0027 of git://git.secretlab.ca/git/linux-2.6:\n  of/address: sparc: Declare of_iomap as an extern function for sparc again\n"
    },
    {
      "commit": "0e622d39197f0b64b9e043fe75ac3634bf9f3a05",
      "tree": "0aa37b6321b32ee93b9cf53c99602c1eee411513",
      "parents": [
        "26d29d06ea020411559f75ec908db235ca1838d9"
      ],
      "author": {
        "name": "Andreas Larsson",
        "email": "andreas@gaisler.com",
        "time": "Fri Nov 23 12:24:09 2012 +0100"
      },
      "committer": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Fri Nov 23 22:01:15 2012 +0000"
      },
      "message": "of/address: sparc: Declare of_iomap as an extern function for sparc again\n\nThis bug-fix makes sure that of_iomap is defined extern for sparc so that the\nsparc-specific implementation of_iomap is once again used when including\ninclude/linux/of_address.h in a sparc context. OF_GPIO that is now available for\nsparc relies on this.\n\nThe bug was inadvertently introduced in a850a75, \"of/address: add empty static\ninlines for !CONFIG_OF\", that added a static dummy inline for of_iomap when\n!CONFIG_OF_ADDRESS. However, CONFIG_OF_ADDRESS is never defined for sparc, but\nthere is a sparc-specific implementation /arch/sparc/kernel/of_device_common.c.\n\nThis fix takes the same approach as 0bce04b that solved the equivalent problem\nfor of_address_to_resource.\n\nSigned-off-by: Andreas Larsson \u003candreas@gaisler.com\u003e\nAcked-by: David Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\n"
    },
    {
      "commit": "33f145934025e2f51e866993f09e04a1d1650649",
      "tree": "82fc648488e32ef43c2e97da78a0a5d1064e76ef",
      "parents": [
        "f470b8c25815d94a200a7248bf3e04df6e3dea42",
        "958f9889950ef257f601c4902137caff291d5dd7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Nov 23 11:59:26 2012 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Nov 23 11:59:26 2012 -1000"
      },
      "message": "Merge branch \u0027i2c-embedded/for-current\u0027 of git://git.pengutronix.de/git/wsa/linux\n\nPull i2c fixes from Wolfram Sang:\n \"Bugfixes for the i2c subsystem.\n\n  Except for a few one-liners, there is mainly one revert because of an\n  overlooked dependency.  Since there is no linux-next at the moment, I\n  did some extra testing, and all was fine for me.\"\n\n* \u0027i2c-embedded/for-current\u0027 of git://git.pengutronix.de/git/wsa/linux:\n  i2c: mxs: Handle i2c DMA failure properly\n  i2c: s3c2410: Fix code to free gpios\n  i2c: omap: ensure writes to dev-\u003ebuf_len are ordered\n  Revert \"ARM: OMAP: convert I2C driver to PM QoS for MPU latency constraints\"\n  i2c: at91: fix SMBus quick command\n"
    },
    {
      "commit": "eb5aaedd8b24e1de04468c06e19a1d8efb79f0dc",
      "tree": "41bd44f97a455a1a1179cef4c553d19378d4ef92",
      "parents": [
        "f3a443af9e85d6c6c7e7506400024a85a8dd9496",
        "4a25417c20fac00b3afd58ce27408f964d19e708"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Nov 23 11:55:49 2012 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Nov 23 11:55:49 2012 -1000"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net\n\nPull networkign fixes from David Miller:\n \"Networking bug fixes, Cacio e Pepe edition:\n\n  1) BNX2X accidently accesses chip rev specific registers without an\n     appropriate guard, fix from Ariel Elior.\n\n  2) When we removed the routing cache, we set ip_rt_max_size to ~0 just\n     to keep reporting a value to userspace via sysfs.  But the ipv4\n     IPSEC layer was using this to tune itself which is completely bogus\n     to now do.  Fix from Steffen Klassert.\n\n  3) Missing initialization in netfilter ipset code from Jozsef\n     Kadlecsik.\n\n  4) Check CTA_TIMEOUT_NAME length properly in netfilter cttimeout code,\n     fix from Florian Westphal.\n\n  5) After removing the routing cache, we inadvertantly are caching\n     multicast routes that end up looping back locally, we cannot do\n     that legitimately any more.  Fix from Julian Anastasov.\n\n  6) Revert a race fix for 8139cp qemu/kvm that doesn\u0027t actually work\n     properly on real hardware.  From Francois Romieu.\n\n  7) Fixup errors in example command lines in VXLAN device docs.\"\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net:\n  bnx2x: remove redundant warning log\n  vxlan: fix command usage in its doc\n  8139cp: revert \"set ring address before enabling receiver\"\n  ipv4: do not cache looped multicasts\n  netfilter: cttimeout: fix buffer overflow\n  netfilter: ipset: Fix range bug in hash:ip,port,net\n  xfrm: Fix the gc threshold value for ipv4\n"
    },
    {
      "commit": "26d29d06ea020411559f75ec908db235ca1838d9",
      "tree": "3839843cd997b63c656c76118ac78db0ec41c5df",
      "parents": [
        "5a903166dd31a42e39283b075cc6b9a9c079d1af",
        "0a0d62857366d8a6531e7fed1c3ccdd9a2b5b40b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Nov 22 21:45:34 2012 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Nov 22 21:45:34 2012 -1000"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input\n\nPull input updates from Dmitry Torokhov:\n \"This fixes recent regression where /dev/input/mice got assigned wrong\n  device node which messed up setups with static /dev, and a regression\n  in ads7846 GPIO debounce setup.\"\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:\n  ARM - OMAP: ads7846: fix pendown debounce setting\n  Input: ads7846 - enable pendown GPIO debounce time setting\n  Input: mousedev - move /dev/input/mice to the correct minor\n  Input: MT - document new \u0027flags\u0027 argument of input_mt_init_slots()\n"
    },
    {
      "commit": "5e7873d1450e1809b017b943417530db3955ac5f",
      "tree": "eee7e724fa10e0cccb5f10707bce247d7eba721b",
      "parents": [
        "ef6c5be658f6a70c1256fbd18e18ee0dc24c3386",
        "703fb94ec58e0e8769380c2877a8a34aeb5b6c97"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Nov 22 15:24:30 2012 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Nov 22 15:24:30 2012 -0500"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/klassert/ipsec\n\nSteffen Klassert says:\n\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\nThis pull request is intended for 3.7 and contains a single patch to\nfix the IPsec gc threshold value for ipv4.\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a2d2eda7bf8fd3a5fa44557162715dbfabbc8239",
      "tree": "8bed3e9906f23d21fa96b266aa01808a594ef721",
      "parents": [
        "0e0f092ef0c474c3996c8e023d1724f4f72132ad",
        "5db44863b6ebbb400c5e61d56ebe8f21ef48b1bd"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Nov 22 09:14:54 2012 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Nov 22 09:14:54 2012 -1000"
      },
      "message": "Merge tag \u0027scsi-fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi\n\nPull SCSI fixes from James Bottomley:\n \"This is a set of four bug fixes.\n\n  The isci one is an obvious thinko (using request buffer instead of\n  response buffer) which causes a command to fail.\n\n  The three others are DIF/DIX updates which are required because\n  they\u0027re part of a series of ten patches, the other seven of which went\n  into the block layer during the merge window meaning our current\n  DIF/DIX implementation is broken without these three.\n\n  Signed-off-by: James Bottomley \u003cJBottomley@Parallels.com\u003e\"\n\n* tag \u0027scsi-fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi:\n  [SCSI] sd: Implement support for WRITE SAME\n  [SCSI] sd: Permit merged discard requests\n  [SCSI] Add a report opcode helper\n  [SCSI] isci: copy fis 0x34 response into proper buffer\n"
    },
    {
      "commit": "0e0f092ef0c474c3996c8e023d1724f4f72132ad",
      "tree": "75dd885e2d2234fc3175951403fcf9754c617b30",
      "parents": [
        "ef6c5be658f6a70c1256fbd18e18ee0dc24c3386",
        "452f19201f35d20a1a6c9009acbcfa6799163c6a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Nov 22 09:14:24 2012 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Nov 22 09:14:24 2012 -1000"
      },
      "message": "Merge branch \u0027drm-fixes\u0027 of git://people.freedesktop.org/~airlied/linux\n\nPull drm fixes from Dave Airlie.\n\nSmall fixes for (mostly Nouveau, some radeon) regressions.\n\n* \u0027drm-fixes\u0027 of git://people.freedesktop.org/~airlied/linux:\n  drm/nouveau: use the correct fence implementation for nv50\n  drm/radeon: add new SI pci id\n  radeon: add AGPMode 1 quirk for RV250\n  drm/radeon: properly track the crtc not_enabled case evergreen_mc_stop()\n  drm/nouveau/bios: fix DCB v1.5 parsing\n  drm/nouveau: add missing pll_calc calls\n  drm/nouveau: fix crash with noaccel\u003d1\n  drm/nv40: allocate ctxprog with kmalloc\n  drm/nvc0/disp: fix thinko in vblank regression fix..\n"
    },
    {
      "commit": "0181bd5dea2ed0696f84591a92da0b6a1f1a2e62",
      "tree": "0b2deab0b55334bb3942419911a901ae714b3a6b",
      "parents": [
        "45171002b01b2e2ec4f991eca81ffd8430fd0aec"
      ],
      "author": {
        "name": "Alex Deucher",
        "email": "alexander.deucher@amd.com",
        "time": "Wed Nov 21 18:37:38 2012 -0500"
      },
      "committer": {
        "name": "Alex Deucher",
        "email": "alexander.deucher@amd.com",
        "time": "Wed Nov 21 18:37:38 2012 -0500"
      },
      "message": "drm/radeon: add new SI pci id\n\nSigned-off-by: Alex Deucher \u003calexander.deucher@amd.com\u003e\nCc: stable@vger.kernel.org\n"
    },
    {
      "commit": "c4f4925439f13a243aecfb36c693613603c0bfbd",
      "tree": "aa8bc2513739c4729300d8c7dcf86184d9708d99",
      "parents": [
        "c91cb7a75eaf65358aac5ea2b512ac60a9437ff4"
      ],
      "author": {
        "name": "Igor Grinberg",
        "email": "grinberg@compulab.co.il",
        "time": "Tue Nov 20 23:00:10 2012 -0800"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Wed Nov 21 13:09:56 2012 -0800"
      },
      "message": "Input: ads7846 - enable pendown GPIO debounce time setting\n\nSome platforms need the pendown GPIO debounce time setting programmed.\nSince the pendown GPIO is handled by the driver, the debounce time\nshould also be handled along with the pendown GPIO request.\n\nSigned-off-by: Igor Grinberg \u003cgrinberg@compulab.co.il\u003e\nSigned-off-by: Dmitry Torokhov \u003cdmitry.torokhov@gmail.com\u003e\n"
    },
    {
      "commit": "6b0d5d344a78d43957a9f49c549b6f3aa2dc2082",
      "tree": "d9be6a19a2cca3567ba3cb4ff5d28445acd066f9",
      "parents": [
        "809396474f41fb6e7e676e298d79856c5e02d755"
      ],
      "author": {
        "name": "Hans Verkuil",
        "email": "hans.verkuil@cisco.com",
        "time": "Tue Oct 16 06:40:45 2012 -0300"
      },
      "committer": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@redhat.com",
        "time": "Wed Nov 21 17:43:49 2012 -0200"
      },
      "message": "[media] adv7604: Replace prim_mode by mode\n\nChanges the way the primary mode is handled:\n- Remove it from platform_data since it doesn\u0027t belong there.\n- Add a new mode enum for use with s_routing.\n- Collapse the two HDMI modes into one HDMI mode: when setting up the\n  timings manually we do not need to select HDMI_COMP mode. That\u0027s only\n  needed when selecting a preset.\nThis patch prepares for the next step where we switch to using the presets\nwhere available.\n\nSigned-off-by: Mats Randgaard \u003cmats.randgaard@cisco.com\u003e\nSigned-off-by: Hans Verkuil \u003chans.verkuil@cisco.com\u003e\nSigned-off-by: Mauro Carvalho Chehab \u003cmchehab@redhat.com\u003e\n"
    },
    {
      "commit": "70ee65771424829fd092a1df9afcc7e24c94004b",
      "tree": "0e25e304610039efe35410db2b6a930c9412690e",
      "parents": [
        "7a9ad671ac0a0ec2fc86887a9416f837c0cfb801"
      ],
      "author": {
        "name": "Linus Walleij",
        "email": "linus.walleij@linaro.org",
        "time": "Tue Nov 20 22:39:49 2012 +0100"
      },
      "committer": {
        "name": "Mike Turquette",
        "email": "mturquette@linaro.org",
        "time": "Wed Nov 21 11:02:44 2012 -0800"
      },
      "message": "clk: move IM-PD1 clocks to drivers/clk\n\nThe ARM IM-PD1 add-on module has a few clock of its own, let\u0027s\nmove also these down to the drivers/clk/versatile driver dir\nand get rid of any remaining oldschool Integrator clocks.\n\nSigned-off-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\nSigned-off-by: Mike Turquette \u003cmturquette@linaro.org\u003e\n"
    },
    {
      "commit": "316511c0134acec8f4ea730bd1897c7a1124a7c1",
      "tree": "810d6d4444f05b399edf588c16eea1ba188903eb",
      "parents": [
        "2e8b2eab94c35d83bb7da71c63b4695f32ddca88"
      ],
      "author": {
        "name": "Linus Walleij",
        "email": "linus.walleij@linaro.org",
        "time": "Wed Nov 21 08:48:09 2012 +0100"
      },
      "committer": {
        "name": "Linus Walleij",
        "email": "linus.walleij@linaro.org",
        "time": "Wed Nov 21 10:07:48 2012 +0100"
      },
      "message": "gpiolib: rename pin range arguments\n\nTo be crystal clear on what the arguments mean in this\nfuntion dealing with both GPIO and PIN ranges with confusing\nnaming, we now have gpio_offset and pin_offset and we are\non the clear that these are offsets into the specific GPIO\nand pin controller respectively. The GPIO chip itself will\nof course keep track of the base offset into the global\nGPIO number space.\n\nReviewed-by: Viresh Kumar \u003cviresh.kumar@linaro.org\u003e\nSigned-off-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\n"
    },
    {
      "commit": "2ccb0bcfb0dd2001b1a40048c1e407cd9a78bd3d",
      "tree": "3ccc9a232d2b90b87adf94b50224677c6f916c40",
      "parents": [
        "8604ac34eb19f7b02f8cf22c787fe30d96ad2651"
      ],
      "author": {
        "name": "Haojian Zhuang",
        "email": "haojian.zhuang@gmail.com",
        "time": "Thu Nov 15 16:36:33 2012 +0800"
      },
      "committer": {
        "name": "Linus Walleij",
        "email": "linus.walleij@linaro.org",
        "time": "Wed Nov 21 08:55:26 2012 +0100"
      },
      "message": "pinctrl: generic: add input schmitt disable parameter\n\nIn Marvell PXA/MMP silicons, input schmitt disable value is 0x40, not 0.\nSo append new config parameter -- input schmitt disable.\n\nSigned-off-by: Haojian Zhuang \u003chaojian.zhuang@gmail.com\u003e\nSigned-off-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\n"
    },
    {
      "commit": "8604ac34eb19f7b02f8cf22c787fe30d96ad2651",
      "tree": "5706891598ca7c1ebd80741463d1b971c5139d09",
      "parents": [
        "387923c585ac68ff51e6bf673807438b5e5fdaf3"
      ],
      "author": {
        "name": "Linus Walleij",
        "email": "linus.walleij@linaro.org",
        "time": "Tue Nov 20 14:42:47 2012 +0100"
      },
      "committer": {
        "name": "Linus Walleij",
        "email": "linus.walleij@linaro.org",
        "time": "Wed Nov 21 08:55:22 2012 +0100"
      },
      "message": "pinctrl/u300/coh901: stop spawning pinctrl from GPIO\n\nLet\u0027s stop spawning the pinctrl driver from the GPIO driver,\nwe have these two mechanisms broken apart now, and they can\neach probe in isolation. If the GPIO driver cannot find its\npin controller (pinctrl-u300), the pin controller core will\ntell it to defer probing.\n\nReviewed-by: Stephen Warren \u003cswarren@nvidia.com\u003e\nReviewed-by: Viresh Kumar \u003cviresh.kumar@linaro.org\u003e\nSigned-off-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\n"
    },
    {
      "commit": "9afbefb227792a3c195085d662050dcca748f521",
      "tree": "6ca22f39a4d97a73b2fb37472af596c159210ea7",
      "parents": [
        "8f23ca1a73a096f21e6618d8e23df613daa5e532"
      ],
      "author": {
        "name": "Linus Walleij",
        "email": "linus.walleij@linaro.org",
        "time": "Tue Nov 20 14:25:07 2012 +0100"
      },
      "committer": {
        "name": "Linus Walleij",
        "email": "linus.walleij@linaro.org",
        "time": "Wed Nov 21 08:55:12 2012 +0100"
      },
      "message": "pinctrl: add function to retrieve range from pin\n\nThis adds a function to the pinctrl core to retrieve the GPIO\nrange associated with a certain pin for a certain controller.\nThis is needed when a pinctrl driver want to look up the\ncorresponding struct gpio_chip for a certain pin. As the\nGPIO drivers can now create these ranges themselves, the\npinctrl driver no longer knows about all its associated GPIO\nchips.\n\nReviewed-by: Stephen Warren \u003cswarren@nvidia.com\u003e\nReviewed-by: Viresh Kumar \u003cviresh.kumar@linaro.org\u003e\nSigned-off-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\n"
    },
    {
      "commit": "192c369c6165dff233f22aa70209a92b030d233d",
      "tree": "c97e539b58e5e4947c82bddd784ce6c63e05b9fb",
      "parents": [
        "3f0f8670608766ef26a178d4e80cad3ce030fecc"
      ],
      "author": {
        "name": "Linus Walleij",
        "email": "linus.walleij@linaro.org",
        "time": "Tue Nov 20 14:03:37 2012 +0100"
      },
      "committer": {
        "name": "Linus Walleij",
        "email": "linus.walleij@linaro.org",
        "time": "Wed Nov 21 08:55:10 2012 +0100"
      },
      "message": "gpiolib: rename find_pinctrl_*\n\nRename the function find_pinctrl_and_add_gpio_range()\nto pinctrl_find_and_add_gpio_range() so as to be consistent\nwith the rest of the functions.\n\nReviewed-by: Stephen Warren \u003cswarren@nvidia.com\u003e\nReviewed-by: Viresh Kumar \u003cviresh.kumar@linaro.org\u003e\nSigned-off-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\n"
    },
    {
      "commit": "3f0f8670608766ef26a178d4e80cad3ce030fecc",
      "tree": "d2f192a4a454bd677983c7eb0b88a0016f128bf6",
      "parents": [
        "5212d096cbed2eae1e442b3f8bf448e6a577af6f"
      ],
      "author": {
        "name": "Linus Walleij",
        "email": "linus.walleij@linaro.org",
        "time": "Tue Nov 20 12:40:15 2012 +0100"
      },
      "committer": {
        "name": "Linus Walleij",
        "email": "linus.walleij@linaro.org",
        "time": "Wed Nov 21 08:55:03 2012 +0100"
      },
      "message": "gpiolib: let gpiochip_add_pin_range() specify offset\n\nLike with commit 3c739ad0df5eb41cd7adad879eda6aa09879eb76\nit is not always enough to specify all the pins of a gpio_chip\nfrom offset zero to be added to a pin map range, since the\nmapping from GPIO to pin controller may not be linear at all,\nbut need to be broken into a few consecutive sub-ranges or\n1-pin entries for complicated cases. The ranges may also be\nsparse.\n\nThis alters the signature of the function to accept offsets\ninto both the GPIO-chip local pinspace and the pin controller\nlocal pinspace.\n\nReviewed-by: Stephen Warren \u003cswarren@nvidia.com\u003e\nReviewed-by: Viresh Kumar \u003cviresh.kumar@linaro.org\u003e\nSigned-off-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\n"
    },
    {
      "commit": "50c8af4cf98fd97d6779f244215154e4c89699c7",
      "tree": "9690d810d1eef4b5dc8a26824dc699bbb4d54f44",
      "parents": [
        "be193249b4178158c0f697cb452b2bbf0cb16361"
      ],
      "author": {
        "name": "Stephen Warren",
        "email": "swarren@nvidia.com",
        "time": "Tue Nov 20 16:12:20 2012 -0700"
      },
      "committer": {
        "name": "Rob Herring",
        "email": "rob.herring@calxeda.com",
        "time": "Tue Nov 20 22:58:55 2012 -0600"
      },
      "message": "of: introduce for_each_matching_node_and_match()\n\nThe following pattern of code is tempting:\n\n    for_each_matching_node(np, table) {\n        match \u003d of_match_node(table, np);\n\nHowever, this results in iterating over table twice; the second time\ninside of_match_node(). The implementation of for_each_matching_node()\nalready found the match, so this is redundant. Invent new function\nof_find_matching_node_and_match() and macro\nfor_each_matching_node_and_match() to remove the double iteration,\nthus transforming the above code to:\n\n    for_each_matching_node_and_match(np, table, \u0026match)\n\nSigned-off-by: Stephen Warren \u003cswarren@nvidia.com\u003e\nSigned-off-by: Rob Herring \u003crob.herring@calxeda.com\u003e\n"
    },
    {
      "commit": "be193249b4178158c0f697cb452b2bbf0cb16361",
      "tree": "4278eba967e625f0cdb6de865a83038243c51e80",
      "parents": [
        "9846210b1ec9bbaa30022d6d8af7e55ef67ccb45"
      ],
      "author": {
        "name": "Viresh Kumar",
        "email": "viresh.kumar@linaro.org",
        "time": "Tue Nov 20 10:15:19 2012 +0530"
      },
      "committer": {
        "name": "Rob Herring",
        "email": "rob.herring@calxeda.com",
        "time": "Tue Nov 20 22:58:55 2012 -0600"
      },
      "message": "dt: add helper function to read u8 \u0026 u16 variables \u0026 arrays\n\nThis adds following helper routines:\n- of_property_read_u8_array()\n- of_property_read_u16_array()\n- of_property_read_u8()\n- of_property_read_u16()\n\nThis expects arrays from DT to be passed as:\n- u8 array:\n\tproperty \u003d /bits/ 8 \u003c0x50 0x60 0x70\u003e;\n- u16 array:\n\tproperty \u003d /bits/ 16 \u003c0x5000 0x6000 0x7000\u003e;\n\nSigned-off-by: Viresh Kumar \u003cviresh.kumar@linaro.org\u003e\nReviewed-by: Stephen Warren \u003cswarren@nvidia.com\u003e\nSigned-off-by: Rob Herring \u003crob.herring@calxeda.com\u003e\n"
    },
    {
      "commit": "d2709c7ce4c513ab7f4ca9a106a930621811f2d3",
      "tree": "da6e14e27b02b2d234aad0eb1ccf5bbfa06d0cb8",
      "parents": [
        "f2d9cae9ea9e0228f6eb4d4c5ab4f548d0270d1a"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Mon Nov 19 22:21:03 2012 +0000"
      },
      "committer": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Mon Nov 19 22:21:03 2012 +0000"
      },
      "message": "perf: Make perf build for x86 with UAPI disintegration applied\n\nMake perf build for x86 once the UAPI disintegration patches for that arch\nhave been applied by adding the appropriate -I flags - in the right order -\nand then converting some #includes that use ../.. notation to find main kernel\nheaderfiles to use \u003casm/foo.h\u003e and \u003clinux/foo.h\u003e instead.\n\nNote that -Iarch/foo/include/uapi is present _before_ -Iarch/foo/include.\nThis makes sure we get the userspace version of the pt_regs struct.  Ideally,\nwe wouldn\u0027t have the latter -I flag at all, but unfortunately we want\nasm/svm.h and asm/vmx.h in builtin-kvm.c and these aren\u0027t part of the UAPI -\nat least not for x86.  I wonder if the bits outside of the __KERNEL__ guards\n*should* be transferred there.\n\nI note also that perf seems to do its dependency handling manually by listing\nall the header files it might want to use in LIB_H in the Makefile.  Can this\nbe changed to use -MD?\n\nNote that to do make this work, we need to export and UAPI disintegrate\nlinux/hw_breakpoint.h, which I think should\u0027ve been exported previously so that\nperf can access the bits.  We have to do this in the same patch to maintain\nbisectability.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e"
    },
    {
      "commit": "c22618a11d1ba2966bd2cfd5e4918ed4f2dad13e",
      "tree": "e317e1413afd8f80ea4ddc036703ff447c1c0901",
      "parents": [
        "31982e52f0f5d6d51e69d5c4c4a7be5d52307c6e"
      ],
      "author": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Wed Nov 14 22:37:12 2012 +0000"
      },
      "committer": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Sat Nov 17 12:05:57 2012 +0000"
      },
      "message": "drivers/of: Constify device_node-\u003ename and -\u003epath_component_name\n\nNeither of these should ever be changed once set. Make them const and\nfix up the users that try to modify it in-place. In one case\nkmalloc+memcpy is replaced with kstrdup() to avoid modifying the string.\n\nBuild tested with defconfigs on ARM, PowerPC, Sparc, MIPS, x86 among\nothers.\n\nSigned-off-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Julian Calaby \u003cjulian.calaby@gmail.com\u003e\n"
    },
    {
      "commit": "0cad3ff40486e341715cac3b5ef7b135fa0ba316",
      "tree": "937b8c6fc8b28f6e556212c9deee726799f1f783",
      "parents": [
        "1d567e19cc9810a9bd67b1ccab54b68d86dadb76",
        "5576646f3c1abd60d72d19829de6f5d8c2ca8ecf"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Nov 16 15:26:38 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Nov 16 15:26:38 2012 -0800"
      },
      "message": "Merge branch \u0027akpm\u0027 (Fixes from Andrew)\n\nMerge misc fixes from Andrew Morton.\n\n* emailed patches from Andrew Morton \u003cakpm@linux-foundation.org\u003e: (12 patches)\n  revert \"mm: fix-up zone present pages\"\n  tmpfs: change final i_blocks BUG to WARNING\n  tmpfs: fix shmem_getpage_gfp() VM_BUG_ON\n  mm: highmem: don\u0027t treat PKMAP_ADDR(LAST_PKMAP) as a highmem address\n  mm: revert \"mm: vmscan: scale number of pages reclaimed by reclaim/compaction based on failures\"\n  rapidio: fix kernel-doc warnings\n  swapfile: fix name leak in swapoff\n  memcg: fix hotplugged memory zone oops\n  mips, arc: fix build failure\n  memcg: oom: fix totalpages calculation for memory.swappiness\u003d\u003d0\n  mm: fix build warning for uninitialized value\n  mm: add anon_vma_lock to validate_mm()\n"
    },
    {
      "commit": "5576646f3c1abd60d72d19829de6f5d8c2ca8ecf",
      "tree": "600e8d1df6536bbeb0b15b51f137d37a94f69843",
      "parents": [
        "0f3c42f522dc1ad7e27affc0a4aa8c790bce0a66"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Fri Nov 16 14:15:06 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Nov 16 14:33:04 2012 -0800"
      },
      "message": "revert \"mm: fix-up zone present pages\"\n\nRevert commit 7f1290f2f2a4 (\"mm: fix-up zone present pages\")\n\nThat patch tried to fix a issue when calculating zone-\u003epresent_pages,\nbut it caused a regression on 32bit systems with HIGHMEM.  With that\nchange, reset_zone_present_pages() resets all zone-\u003epresent_pages to\nzero, and fixup_zone_present_pages() is called to recalculate\nzone-\u003epresent_pages when the boot allocator frees core memory pages into\nbuddy allocator.  Because highmem pages are not freed by bootmem\nallocator, all highmem zones\u0027 present_pages becomes zero.\n\nVarious options for improving the situation are being discussed but for\nnow, let\u0027s return to the 3.6 code.\n\nCc: Jianguo Wu \u003cwujianguo@huawei.com\u003e\nCc: Jiang Liu \u003cjiang.liu@huawei.com\u003e\nCc: Petr Tesarik \u003cptesarik@suse.cz\u003e\nCc: \"Luck, Tony\" \u003ctony.luck@intel.com\u003e\nCc: Mel Gorman \u003cmel@csn.ul.ie\u003e\nCc: Yinghai Lu \u003cyinghai@kernel.org\u003e\nCc: Minchan Kim \u003cminchan.kim@gmail.com\u003e\nCc: Johannes Weiner \u003channes@cmpxchg.org\u003e\nAcked-by: David Rientjes \u003crientjes@google.com\u003e\nTested-by: Chris Clayton \u003cchris2553@googlemail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2ca3cb50edc351875df13d083524f524cdeb3054",
      "tree": "41b01168f2fc8a532e60f90ad33de854090d38cc",
      "parents": [
        "f58b59c1df3cb990d644018e1461cd4acd3c1700"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "rdunlap@infradead.org",
        "time": "Fri Nov 16 14:14:56 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Nov 16 14:33:04 2012 -0800"
      },
      "message": "rapidio: fix kernel-doc warnings\n\nFix rapidio kernel-doc warnings:\n\n  Warning(drivers/rapidio/rio.c:415): No description found for parameter \u0027local\u0027\n  Warning(drivers/rapidio/rio.c:415): Excess function parameter \u0027lstart\u0027 description in \u0027rio_map_inb_region\u0027\n  Warning(include/linux/rio.h:290): No description found for parameter \u0027switches\u0027\n  Warning(include/linux/rio.h:290): No description found for parameter \u0027destid_table\u0027\n\nSigned-off-by: Randy Dunlap \u003crdunlap@infradead.org\u003e\nCc: Matt Porter \u003cmporter@kernel.crashing.org\u003e\nAcked-by: Alexandre Bounine \u003calexandre.bounine@idt.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "bea8c150a7efbc0f204e709b7274fe273f55e0d3",
      "tree": "fab695d7d18c5bbc9a42bccd793456826e392754",
      "parents": [
        "18f694271b86ee279e88208550cc49fee206b544"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hughd@google.com",
        "time": "Fri Nov 16 14:14:54 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Nov 16 14:33:04 2012 -0800"
      },
      "message": "memcg: fix hotplugged memory zone oops\n\nWhen MEMCG is configured on (even when it\u0027s disabled by boot option),\nwhen adding or removing a page to/from its lru list, the zone pointer\nused for stats updates is nowadays taken from the struct lruvec.  (On\nmany configurations, calculating zone from page is slower.)\n\nBut we have no code to update all the lruvecs (per zone, per memcg) when\na memory node is hotadded.  Here\u0027s an extract from the oops which\nresults when running numactl to bind a program to a newly onlined node:\n\n  BUG: unable to handle kernel NULL pointer dereference at 0000000000000f60\n  IP:  __mod_zone_page_state+0x9/0x60\n  Pid: 1219, comm: numactl Not tainted 3.6.0-rc5+ #180 Bochs Bochs\n  Process numactl (pid: 1219, threadinfo ffff880039abc000, task ffff8800383c4ce0)\n  Call Trace:\n    __pagevec_lru_add_fn+0xdf/0x140\n    pagevec_lru_move_fn+0xb1/0x100\n    __pagevec_lru_add+0x1c/0x30\n    lru_add_drain_cpu+0xa3/0x130\n    lru_add_drain+0x2f/0x40\n   ...\n\nThe natural solution might be to use a memcg callback whenever memory is\nhotadded; but that solution has not been scoped out, and it happens that\nwe do have an easy location at which to update lruvec-\u003ezone.  The lruvec\npointer is discovered either by mem_cgroup_zone_lruvec() or by\nmem_cgroup_page_lruvec(), and both of those do know the right zone.\n\nSo check and set lruvec-\u003ezone in those; and remove the inadequate\nattempt to set lruvec-\u003ezone from lruvec_init(), which is called before\nNODE_DATA(node) has been allocated in such cases.\n\nAh, there was one exceptionr.  For no particularly good reason,\nmem_cgroup_force_empty_list() has its own code for deciding lruvec.\nChange it to use the standard mem_cgroup_zone_lruvec() and\nmem_cgroup_get_lru_size() too.  In fact it was already safe against such\nan oops (the lru lists in danger could only be empty), but we\u0027re better\nproofed against future changes this way.\n\nI\u0027ve marked this for stable (3.6) since we introduced the problem in 3.5\n(now closed to stable); but I have no idea if this is the only fix\nneeded to get memory hotadd working with memcg in 3.6, and received no\nanswer when I enquired twice before.\n\nReported-by: Tang Chen \u003ctangchen@cn.fujitsu.com\u003e\nSigned-off-by: Hugh Dickins \u003chughd@google.com\u003e\nAcked-by: Johannes Weiner \u003channes@cmpxchg.org\u003e\nAcked-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Konstantin Khlebnikov \u003ckhlebnikov@openvz.org\u003e\nCc: Wen Congyang \u003cwency@cn.fujitsu.com\u003e\nCc: \u003cstable@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "fa0cbbf145aabbf29c6f28f8a11935c0b0fd86fc",
      "tree": "fd2626b68b0f78afa128d7772c49f066e339bd3a",
      "parents": [
        "f4bcd79c88d25508643084e6fed25920485db0eb"
      ],
      "author": {
        "name": "David Rientjes",
        "email": "rientjes@google.com",
        "time": "Mon Nov 12 17:53:04 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Nov 16 10:15:35 2012 -0800"
      },
      "message": "mm, oom: reintroduce /proc/pid/oom_adj\n\nThis is mostly a revert of 01dc52ebdf47 (\"oom: remove deprecated oom_adj\")\nfrom Davidlohr Bueso.\n\nIt reintroduces /proc/pid/oom_adj for backwards compatibility with earlier\nkernels.  It simply scales the value linearly when /proc/pid/oom_score_adj\nis written.\n\nThe major difference is that its scheduled removal is no longer included\nin Documentation/feature-removal-schedule.txt.  We do warn users with a\nsingle printk, though, to suggest the more powerful and supported\n/proc/pid/oom_score_adj interface.\n\nReported-by: Artem S. Tashkinov \u003ct.artem@lycos.com\u003e\nSigned-off-by: David Rientjes \u003crientjes@google.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f4bcd79c88d25508643084e6fed25920485db0eb",
      "tree": "f51f5c1761a4ab40b5c5b630852f070c61fe4d5a",
      "parents": [
        "5a0c02ba1a3bcd0de9353767b5ee83d2c7d76227",
        "6658d6a5957662d0b9b2da8cc2466de2dad09a1a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Nov 16 10:08:45 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Nov 16 10:08:45 2012 -0800"
      },
      "message": "Merge tag \u0027fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc\n\nPull ARM SoC fixes from Olof Johansson:\n \"We\u0027ve been sitting on this longer than we meant to due to travel and\n  other activities, but the number of patches is luckily not that high.\n\n  Biggest changes are from a batch of OMAP bugfixes, but there are a few\n  for the broader set of SoCs too (bcm2835, pxa, highbank, tegra, at91\n  and i.MX).\n\n  The OMAP patches contain some fixes for MUSB/PHY on omap4 which ends\n  up being a bit on the large side but needed for legacy (non-DT)\n  platforms.  Beyond that there are a handful of hwmod/pm changes.\n\n  So, fairly noncontroversial stuff all in all, and as usual around this\n  time the fixes are well targeted at specific problems.\"\n\n* tag \u0027fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc:\n  ARM: imx: ehci: fix host power mask bit\n  ARM i.MX: fix error-valued pointer dereference in clk_register_gate2()\n  ARM: at91/usbh: fix overcurrent gpio setup\n  ARM: at91/AT91SAM9G45: fix crypto peripherals irq issue due to sparse irq support\n  ARM: boot: Fix usage of kecho\n  ARM: OMAP: ocp2scp: create omap device for ocp2scp\n  ARM: OMAP4: add _dev_attr_ to ocp2scp for representing usb_phy\n  drivers: bus: ocp2scp: add pdata support\n  irqchip: irq-bcm2835: Add terminating entry for of_device_id table\n  ARM: highbank: retry wfi on reset request\n  ARM: OMAP4: PM: fix regulator name for VDD_MPU\n  ARM: OMAP4: hwmod data: do not enable or reset the McPDM during kernel init\n  ARM: OMAP2+: hwmod: add flag to prevent hwmod code from touching IP block during init\n  ARM: dt: tegra: fix length of pad control and mux registers\n  ARM: OMAP: hwmod: wait for sysreset complete after enabling hwmod\n  ARM: OMAP2+: clockdomain: Fix OMAP4 ISS clk domain to support only SWSUP\n  ARM: pxa/spitz_pm: Fix hang when resuming from STR\n  ARM: pxa: hx4700: Fix backlight PWM device number\n  ARM: OMAP2+: PM: add missing newline to VC warning message\n"
    },
    {
      "commit": "57260e4088894de25bb1837d529708c3ec705a69",
      "tree": "e7072aed15b203197549099371db55c5d4bc3c0a",
      "parents": [
        "2d4d07b97c0b774ea9ce2a2105818208d3df7241",
        "3d5e2abe6e265acc5e1fda810301243e9bac92b2"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Fri Nov 16 16:42:59 2012 +0100"
      },
      "committer": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Fri Nov 16 16:42:59 2012 +0100"
      },
      "message": "Merge tag \u0027imx-fixes-rc\u0027 of git://git.pengutronix.de/git/imx/linux-2.6 into fixes\n\nFrom Sascha Hauer \u003cs.hauer@pengutronix.de\u003e:\n\nARM i.MX fixes for 3.7-rc\n\n* tag \u0027imx-fixes-rc\u0027 of git://git.pengutronix.de/git/imx/linux-2.6:\n  ARM: imx: ehci: fix host power mask bit\n  ARM i.MX: fix error-valued pointer dereference in clk_register_gate2()\n\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\n"
    },
    {
      "commit": "93532c8a4890871aa0d84dd91b80dad9f58542e0",
      "tree": "548718307a2cd396cd40c4d70157af5a8e3de6a2",
      "parents": [
        "77b67063bb6bce6d475e910d3b886a606d0d91f7"
      ],
      "author": {
        "name": "Igor Mazanov",
        "email": "i.mazanov@gmail.com",
        "time": "Thu Nov 15 21:07:00 2012 +0400"
      },
      "committer": {
        "name": "Mike Turquette",
        "email": "mturquette@linaro.org",
        "time": "Thu Nov 15 11:38:34 2012 -0800"
      },
      "message": "clk: remove inline usage from clk-provider.h\n\nUsers of GCC 4.7 have reported compiler errors due to having inline\napplied to function declarations in clk-provider.h.  The definitions\nexist in drivers/clk/clk.c.  An example error:\n\nIn file included from arch/arm/mach-omap2/clockdomain.c:25:0:\narch/arm/mach-omap2/clockdomain.c: In function ‘clkdm_clk_disable’:\ninclude/linux/clk-provider.h:338:12: error: inlining failed in call to always_inline ‘__clk_get_enable_count’: function body not available\narch/arm/mach-omap2/clockdomain.c:1001:28: error: called from here\nmake[1]: *** [arch/arm/mach-omap2/clockdomain.o] Error 1\nmake: *** [arch/arm/mach-omap2] Error 2\n\nThis patch removes the use of inline from include/linux/clk-provider.h\nbut keeps the function definitions in drivers/clk/clk.c as inlined since\nthey are one-liners.\n\nSigned-off-by: Igor Mazanov \u003ci.mazanov@gmail.com\u003e\nAcked-by: Paul Walmsley \u003cpaul@pwsan.com\u003e\nSigned-off-by: Mike Turquette \u003cmturquette@linaro.org\u003e\n[mturquette@linaro.org: improved subject, added changelog]\n"
    },
    {
      "commit": "9aadd70aed60b47e367e7a1a6b9068daba04fe05",
      "tree": "4f34f36eb046d40f360b4968aad67beb62c660c7",
      "parents": [
        "0d852fe4d27fa82de9fdcbda9a5ac634800b1fd1"
      ],
      "author": {
        "name": "Paul Walmsley",
        "email": "paul@pwsan.com",
        "time": "Tue Nov 06 16:31:32 2012 +0000"
      },
      "committer": {
        "name": "Wolfram Sang",
        "email": "w.sang@pengutronix.de",
        "time": "Wed Nov 14 11:54:41 2012 +0100"
      },
      "message": "Revert \"ARM: OMAP: convert I2C driver to PM QoS for MPU latency constraints\"\n\nThis reverts commit 3db11feffc1ad2ab9dea27789e6b5b3032827adc\n(ARM: OMAP: convert I2C driver to PM QoS for MPU latency constraints).\nThis commit causes I2C timeouts to appear on several OMAP3430/3530-based\nboards:\n\n  http://marc.info/?l\u003dlinux-arm-kernel\u0026m\u003d135071372426971\u0026w\u003d2\n  http://marc.info/?l\u003dlinux-arm-kernel\u0026m\u003d135067558415214\u0026w\u003d2\n  http://marc.info/?l\u003dlinux-arm-kernel\u0026m\u003d135216013608196\u0026w\u003d2\n\nand appears to have been sent for merging before one of its prerequisites\nwas merged:\n\n  http://marc.info/?l\u003dlinux-arm-kernel\u0026m\u003d135219411617621\u0026w\u003d2\n\nSigned-off-by: Paul Walmsley \u003cpaul@pwsan.com\u003e\nAcked-by: Jean Pihet \u003cj-pihet@ti.com\u003e\nSigned-off-by: Wolfram Sang \u003cw.sang@pengutronix.de\u003e\n"
    },
    {
      "commit": "5db44863b6ebbb400c5e61d56ebe8f21ef48b1bd",
      "tree": "a352bab202b6cb40f234bd2fd306b54776543e8b",
      "parents": [
        "26e85fcd15f68b57d9ba645cd3591117a8ac0e05"
      ],
      "author": {
        "name": "Martin K. Petersen",
        "email": "martin.petersen@oracle.com",
        "time": "Tue Sep 18 12:19:32 2012 -0400"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "JBottomley@Parallels.com",
        "time": "Tue Nov 13 22:45:42 2012 -0800"
      },
      "message": "[SCSI] sd: Implement support for WRITE SAME\n\nImplement support for WRITE SAME(10) and WRITE SAME(16) in the SCSI disk\ndriver.\n\n - We set the default maximum to 0xFFFF because there are several\n   devices out there that only support two-byte block counts even with\n   WRITE SAME(16). We only enable transfers bigger than 0xFFFF if the\n   device explicitly reports MAXIMUM WRITE SAME LENGTH in the BLOCK\n   LIMITS VPD.\n\n - max_write_same_blocks can be overriden per-device basis in sysfs.\n\n - The UNMAP discovery heuristics remain unchanged but the discard\n   limits are tweaked to match the \"real\" WRITE SAME commands.\n\n - In the error handling logic we now distinguish between WRITE SAME\n   with and without UNMAP set.\n\nThe discovery process heuristics are:\n\n - If the device reports a SCSI level of SPC-3 or greater we\u0027ll issue\n   READ SUPPORTED OPERATION CODES to find out whether WRITE SAME(16) is\n   supported. If that\u0027s the case we will use it.\n\n - If the device supports the block limits VPD and reports a MAXIMUM\n   WRITE SAME LENGTH bigger than 0xFFFF we will use WRITE SAME(16).\n\n - Otherwise we will use WRITE SAME(10) unless the target LBA is beyond\n   0xFFFFFFFF or the block count exceeds 0xFFFF.\n\n - no_write_same is set for ATA, FireWire and USB.\n\nSigned-off-by: Martin K. Petersen \u003cmartin.petersen@oracle.com\u003e\nReviewed-by: Mike Snitzer \u003csnitzer@redhat.com\u003e\nReviewed-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\nSigned-off-by: James Bottomley \u003cJBottomley@Parallels.com\u003e\n"
    },
    {
      "commit": "3c6bdaeab4fda6c9fdd5f3f5c610dea97bddf7d6",
      "tree": "85fad84ab7a257e1da2465711e6af8569934cf7c",
      "parents": [
        "49bd665c5407a453736d3232ee58f2906b42e83c"
      ],
      "author": {
        "name": "Martin K. Petersen",
        "email": "martin.petersen@oracle.com",
        "time": "Tue Sep 18 12:19:30 2012 -0400"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "JBottomley@Parallels.com",
        "time": "Tue Nov 13 21:11:31 2012 -0800"
      },
      "message": "[SCSI] Add a report opcode helper\n\nThe REPORT SUPPORTED OPERATION CODES command can be used to query\nwhether a given opcode is supported by a device. Add a helper function\nthat allows us to look up commands.\n\nWe only issue RSOC if the device reports compliance with SPC-3 or\nlater. But to err on the side of caution we disable the command for ATA,\nFireWire and USB.\n\nSigned-off-by: Martin K. Petersen \u003cmartin.petersen@oracle.com\u003e\nAcked-by: Mike Snitzer \u003csnitzer@redhat.com\u003e\nSigned-off-by: James Bottomley \u003cJBottomley@Parallels.com\u003e\n"
    },
    {
      "commit": "703fb94ec58e0e8769380c2877a8a34aeb5b6c97",
      "tree": "57bb3948dfe46f9dcd36b92ec4112408c7d5cc73",
      "parents": [
        "a66fe1653f4e81c007a68ca975067432a42df05b"
      ],
      "author": {
        "name": "Steffen Klassert",
        "email": "steffen.klassert@secunet.com",
        "time": "Tue Nov 13 08:52:24 2012 +0100"
      },
      "committer": {
        "name": "Steffen Klassert",
        "email": "steffen.klassert@secunet.com",
        "time": "Tue Nov 13 09:15:07 2012 +0100"
      },
      "message": "xfrm: Fix the gc threshold value for ipv4\n\nThe xfrm gc threshold value depends on ip_rt_max_size. This\nvalue was set to INT_MAX with the routing cache removal patch,\nso we start doing garbage collecting when we have INT_MAX/2\nIPsec routes cached. Fix this by going back to the static\nthreshold of 1024 routes.\n\nSigned-off-by: Steffen Klassert \u003csteffen.klassert@secunet.com\u003e\n"
    },
    {
      "commit": "ae1cde8c50d0c6afa073eba03b802bbeee861cf9",
      "tree": "531cac53b3dd2c5f10d01246af579ef114bb169c",
      "parents": [
        "e59d969f441fb8e25b30125bdf201153adc5a7e3",
        "9b472600b02f6771c04455f8a0019e2a98e0db88"
      ],
      "author": {
        "name": "Linus Walleij",
        "email": "linus.walleij@linaro.org",
        "time": "Sun Nov 11 19:12:46 2012 +0100"
      },
      "committer": {
        "name": "Linus Walleij",
        "email": "linus.walleij@linaro.org",
        "time": "Sun Nov 11 19:12:46 2012 +0100"
      },
      "message": "Merge branch \u0027nomadik\u0027 into devel\n"
    },
    {
      "commit": "50309a9c2e576ac4ad29e30f5854acb87bdc2ac4",
      "tree": "12ded8b5c94195b0a26763f4ba322351463ea423",
      "parents": [
        "1e63d7b9363f0c57d00991f9f2e0af374dfc591a"
      ],
      "author": {
        "name": "Linus Walleij",
        "email": "linus.walleij@linaro.org",
        "time": "Tue Nov 06 17:16:39 2012 +0100"
      },
      "committer": {
        "name": "Linus Walleij",
        "email": "linus.walleij@linaro.org",
        "time": "Sun Nov 11 19:06:07 2012 +0100"
      },
      "message": "gpiolib: iron out include ladder mistakes\n\nThe \u003c*/gpio.h\u003e includes are updated again: now we need to account\nfor the problem introduced by commit:\n595679a8038584df7b9398bf34f61db3c038bfea\n\"gpiolib: fix up function prototypes etc\"\n\nActually we need static inlines in include/asm-generic/gpio.h\nas well since we may have GPIOLIB but not PINCTRL.\nMake sure to move all the CONFIG_PINCTRL business\nto the end of the file so we are sure we have\ndeclared struct gpio_chip.\n\nAnd we need to keep the static inlines in \u003clinux/gpio.h\u003e\nbut here for the !CONFIG_GENERIC_GPIO case, and then we\nmay as well throw in a few warnings like the other\nprototypes there, if someone would have the bad taste\nof compiling without GENERIC_GPIO even.\n\nSigned-off-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\n"
    },
    {
      "commit": "1e63d7b9363f0c57d00991f9f2e0af374dfc591a",
      "tree": "6bea7bfdd9dbfbe21433629b3f2a9758c92447be",
      "parents": [
        "9ef0d6f7628bdcb5cc3c11623930f2527a3881a0"
      ],
      "author": {
        "name": "Linus Walleij",
        "email": "linus.walleij@linaro.org",
        "time": "Tue Nov 06 16:03:35 2012 +0100"
      },
      "committer": {
        "name": "Linus Walleij",
        "email": "linus.walleij@linaro.org",
        "time": "Sun Nov 11 19:06:07 2012 +0100"
      },
      "message": "gpiolib: separation of pin concerns\n\nThe fact that of_gpiochip_add_pin_range() and\ngpiochip_add_pin_range() share too much code is fragile and\nwill invariably mean that bugs need to be fixed in two places\ninstead of one.\n\nSo separate the concerns of gpiolib.c and gpiolib-of.c and\nhave the latter call the former as back-end. This is necessary\nalso when going forward with other device descriptions such\nas ACPI.\n\nThis is done by:\n\n- Adding a return code to gpiochip_add_pin_range() so we can\n  reliably check whether this succeeds.\n\n- Get rid of the custom of_pinctrl_add_gpio_range() from\n  pinctrl. Instead create of_pinctrl_get() to just retrive the\n  pin controller per se from an OF node. This composite\n  function was just begging to be deleted, it was way to\n  purpose-specific.\n\n- Use pinctrl_dev_get_name() to get the name of the retrieved\n  pin controller and use that to call back into the generic\n  gpiochip_add_pin_range().\n\nNow the pin range is only allocated and tied to a pin\ncontroller from the core implementation in gpiolib.c.\n\nSigned-off-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\n"
    },
    {
      "commit": "165adc9c1734a3f3bdbc6dc7c7a29bbefb424006",
      "tree": "3da612f7408e59d9956886952e118e4fd977ef20",
      "parents": [
        "33dfc41461b77e2b38673ec1b5622b1d9340324d"
      ],
      "author": {
        "name": "Linus Walleij",
        "email": "linus.walleij@linaro.org",
        "time": "Tue Nov 06 14:49:39 2012 +0100"
      },
      "committer": {
        "name": "Linus Walleij",
        "email": "linus.walleij@linaro.org",
        "time": "Sun Nov 11 19:06:04 2012 +0100"
      },
      "message": "gpiolib: fix up function prototypes etc\n\nCommit 69e1601bca88809dc118abd1becb02c15a02ec71\n\"gpiolib: provide provision to register pin ranges\"\n\nGot most of it\u0027s function prototypes wrong, so fix this up by:\n\n- Moving the void declarations into static inlines in\n  \u003clinux/gpio.h\u003e (previously the actual prototypes were declared\n  here...)\n\n- Declare the gpiochip_add_pin_range() and\n  gpiochip_remove_pin_ranges() functions in \u003casm-generic/gpio.h\u003e\n  together with the pin range struct declaration itself.\n\n- Actually only implement these very functions in gpiolib.c\n  if CONFIG_PINCTRL is set.\n\n- Additionally export the symbols since modules will need to\n  be able to do this.\n\nReviewed-by: Stephen Warren \u003cswarren@nvidia.com\u003e\nSigned-off-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\n"
    },
    {
      "commit": "a6c45b99a658521291cfb66ecf035cc58b38f206",
      "tree": "965842ac249c2b786c54d0fab12008276f419121",
      "parents": [
        "d4a31ee8997b2fbd82837182363cf8fa84abf347"
      ],
      "author": {
        "name": "Linus Walleij",
        "email": "linus.walleij@linaro.org",
        "time": "Wed Oct 17 18:31:20 2012 +0200"
      },
      "committer": {
        "name": "Linus Walleij",
        "email": "linus.walleij@linaro.org",
        "time": "Sun Nov 11 19:06:02 2012 +0100"
      },
      "message": "pinctrl/coh901: use irqdomain, allocate irqdescs\n\nThis switches the COH 901 pinctrl driver to allocate its GPIO\nIRQs dynamically, and start to use a linear irqdomain to map\nfrom the hardware IRQs.\n\nThis way we can cut away the complex allocation of IRQ numbers\nfrom the \u003cmach/irqs.h\u003e file.\n\nSigned-off-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\n"
    }
  ],
  "next": "f23f1516b6757c326cc638bed8c402c77e2a596e"
}
