)]}'
{
  "log": [
    {
      "commit": "288461e1546fa4162fa237eeed8ea09a16521dcd",
      "tree": "5da752884d994f5c358420ac8f5828895c1e39bb",
      "parents": [
        "e6fe2371bdd3713d0b227e9cd7f905e127ff81a0"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@parallels.com",
        "time": "Fri Dec 30 00:52:51 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Dec 30 16:42:19 2011 -0500"
      },
      "message": "unix_diag: Include unix_diag.h into header-y target\n\nThe headers check complains it should include the linux/types.h\nwithing, thus add this one.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@parallels.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e6fe2371bdd3713d0b227e9cd7f905e127ff81a0",
      "tree": "504c0ee7fabcffc6b53ad7ea33e161189252444f",
      "parents": [
        "56be178875cf699a17cc285171492353620ef0ae"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@parallels.com",
        "time": "Fri Dec 30 00:52:21 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Dec 30 16:42:18 2011 -0500"
      },
      "message": "sock_diag: Arrange sock_diag.h such that it is exportable to userspace\n\nProperly toss existing components around the ifdef __KERNEL__\nand include the header into the header-y target.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@parallels.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "56be178875cf699a17cc285171492353620ef0ae",
      "tree": "26b8f0473d5c8f6fcbc50d76bb30aae0dd176bd5",
      "parents": [
        "7f8e3234c5f7fbdb06be050c8a1907e9c36d7c61",
        "f19765f4f7dc3cb118cf5f151ed56e01063082ed"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Dec 30 13:46:54 2011 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Dec 30 13:46:54 2011 -0500"
      },
      "message": "Merge branch \u0027tipc-Dec29-2011\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux\n"
    },
    {
      "commit": "7f8e3234c5f7fbdb06be050c8a1907e9c36d7c61",
      "tree": "d6e9edb2087fa4a97b2cc3d585a0189672a14cf4",
      "parents": [
        "8ade06c616b34b4237c0ed77d1ff0ce04ad7d056",
        "89307babf966165171547f105e2253dec261cfa5"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Dec 30 13:04:14 2011 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Dec 30 13:04:14 2011 -0500"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net\n"
    },
    {
      "commit": "f19765f4f7dc3cb118cf5f151ed56e01063082ed",
      "tree": "b92015df8dedb940c6b6b99fe97ea35c19949221",
      "parents": [
        "a18c4bc3ea3c23f658655b1eee4f62cb71d51efd"
      ],
      "author": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Thu Dec 29 21:39:49 2011 -0500"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Thu Dec 29 21:53:30 2011 -0500"
      },
      "message": "tipc: rename struct bearer_name to struct tipc_bearer_names\n\nThe addition of the \"s\" to indicate pluralization is intentional,\nsince the struct actually contains two name variants.\n\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "a18c4bc3ea3c23f658655b1eee4f62cb71d51efd",
      "tree": "573ab87dd9826f1956bb3a17e481842284ad8321",
      "parents": [
        "7f9ab6ac2e79b9658eba7c8e3ad8a4392d308057"
      ],
      "author": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Thu Dec 29 20:58:42 2011 -0500"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Thu Dec 29 21:53:30 2011 -0500"
      },
      "message": "tipc: rename struct link* to struct tipc_link*\n\nThis converts the following:\n\n\tstruct link\t\t-\u003e\tstruct tipc_link\n\tstruct link_req\t\t-\u003e\tstruct tipc_link_req\n\tstruct link_name\t-\u003e\tstruct tipc_link_name\n\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "7f9ab6ac2e79b9658eba7c8e3ad8a4392d308057",
      "tree": "e168521bd8e4630d31dfe674609810a92c1d1012",
      "parents": [
        "6765fd677168df46dbed3cb4c32b9104ce2d3e83"
      ],
      "author": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Thu Dec 29 20:55:27 2011 -0500"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Thu Dec 29 21:53:30 2011 -0500"
      },
      "message": "tipc: rename struct bcbearer* to tipc_bcbearer*\n\nThis changes both the struct bcbearer and struct bcbearer_pair to\nhave the \"tipc_\" prefix.  Runtime behaviour is unchanged.\n\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "6765fd677168df46dbed3cb4c32b9104ce2d3e83",
      "tree": "8d214d2cb13fc0ab40bb5d225d4d43e65440bd3e",
      "parents": [
        "11f9990604637e08f163f919ab37d8834dff5583"
      ],
      "author": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Thu Dec 29 20:52:18 2011 -0500"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Thu Dec 29 21:53:30 2011 -0500"
      },
      "message": "tipc: rename struct bclink to struct tipc_bclink\n\nMake this rename so that it is consistent with the majority\nof the other tipc structs and to assist in removing any\nambiguity with other similar names in other subsystems.\n\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "11f9990604637e08f163f919ab37d8834dff5583",
      "tree": "139b55605367de97fde0ab2abb43119f7bb0b76c",
      "parents": [
        "fead39098badacbfb5890de9a10e5b265788a524"
      ],
      "author": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Thu Dec 29 20:49:39 2011 -0500"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Thu Dec 29 21:53:30 2011 -0500"
      },
      "message": "tipc: rename struct subscriber to struct tipc_subscriber\n\nMake this rename so that it is consistent with the majority\nof the other tipc structs and to assist in removing any\nambiguity with other similar names in other subsystems.\n\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "fead39098badacbfb5890de9a10e5b265788a524",
      "tree": "98d6f26a9525a8289efc79d6bb5fc626ae890b42",
      "parents": [
        "4584310b4a787c9b70e5507a8b5288ba32b0a909"
      ],
      "author": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Thu Dec 29 20:43:44 2011 -0500"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Thu Dec 29 21:53:29 2011 -0500"
      },
      "message": "tipc: rename struct subscription to struct tipc_subscription\n\nMake this rename so that it is consistent with the majority\nof the other tipc structs and to assist in removing any\nambiguity with other similar names in other subsystems.\n\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "4584310b4a787c9b70e5507a8b5288ba32b0a909",
      "tree": "d3322226efb9610bfdbaf6304266e0bd46adba63",
      "parents": [
        "358a0d1c9edcf6ff041776d65cdc2bc59887ab9c"
      ],
      "author": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Thu Dec 29 20:33:30 2011 -0500"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Thu Dec 29 21:53:29 2011 -0500"
      },
      "message": "tipc: rename struct port_list to struct tipc_port_list\n\nMake this rename so that it is consistent with the majority\nof the other tipc structs and to assist in removing any\nambiguity with other similar names in other subsystems.\n\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "358a0d1c9edcf6ff041776d65cdc2bc59887ab9c",
      "tree": "656650f418e5127062e8e69000afb067d1bf79b1",
      "parents": [
        "d191854282fd831da785a5a34bc6fd16049b8578"
      ],
      "author": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Thu Dec 29 20:19:42 2011 -0500"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Thu Dec 29 21:53:29 2011 -0500"
      },
      "message": "tipc: rename struct media to struct tipc_media\n\nGive it a meaningful prefix, as suggested by DaveM, so that it\nis consistent with things like struct tipc_bearer, and so it isn\u0027t\nconfused with anything else.  This has no impact on the actual\nruntime code behaviour.\n\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "89307babf966165171547f105e2253dec261cfa5",
      "tree": "74225500fcdf8ca4f11dcfa3e54738cdd33702f0",
      "parents": [
        "50b2abed6b0812cbeda9f6dd48cc4c247be80643",
        "8bd6960c6ae65d7f92bfb708154ee813417d7b26"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 29 17:36:15 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 29 17:36:15 2011 -0800"
      },
      "message": "Merge branch \u0027iommu/fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu\n\n* \u0027iommu/fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu:\n  iommu: Initialize domain-\u003ehandler in iommu_domain_alloc()\n"
    },
    {
      "commit": "50b2abed6b0812cbeda9f6dd48cc4c247be80643",
      "tree": "43da2b779fafe2d86c63ae1db4725db84b148588",
      "parents": [
        "7578ed02e4b08c9b7b07443b44cf0ccfdf55c91e",
        "aef950b4ba3196622a5bd5e21ab1d63f30658285"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 29 17:35:33 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 29 17:35:33 2011 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net:\n  packet: fix possible dev refcnt leak when bind fail\n  netem: dont call vfree() under spinlock and BH disabled\n  netfilter: ctnetlink: fix scheduling while atomic if helper is autoloaded\n  netfilter: ctnetlink: fix return value of ctnetlink_get_expect()\n"
    },
    {
      "commit": "7578ed02e4b08c9b7b07443b44cf0ccfdf55c91e",
      "tree": "7f9dc872e8df1e332c9bfc198179a6d28e968c72",
      "parents": [
        "d2bac6ab932a407008a95d1993702f0a92f8f35e",
        "2e64694de21a812d637dcbea4471ad1f7897b049"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 29 17:09:16 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 29 17:09:16 2011 -0800"
      },
      "message": "Merge branch \u0027perf-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\n* \u0027perf-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  perf/x86: Fix raw_spin_unlock_irqrestore() usage\n  oprofile, arm/sh: Fix oprofile_arch_exit() linkage issue\n"
    },
    {
      "commit": "d2bac6ab932a407008a95d1993702f0a92f8f35e",
      "tree": "d09fb1504fa650200e761a54f6ebc05a4a60623b",
      "parents": [
        "1cac8e884fbea0b10ee5692cd97e456b58c34ce5",
        "be4f1ac828776bbc7868a68b465cd8eedb733cfd"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 29 17:05:45 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 29 17:05:45 2011 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://oss.sgi.com/xfs/xfs\n\n* \u0027for-linus\u0027 of git://oss.sgi.com/xfs/xfs:\n  xfs: log all dirty inodes in xfs_fs_sync_fs\n  xfs: log the inode in -\u003ewrite_inode calls for kupdate\n"
    },
    {
      "commit": "1cac8e884fbea0b10ee5692cd97e456b58c34ce5",
      "tree": "ae6417c9015085e275caa84f755ee6f3a54d234e",
      "parents": [
        "b0365c8d0cb6e79eb5f21418ae61ab511f31b575",
        "f2b20d436534f22ccc3f5ad172499fcb013bb315"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 29 16:33:37 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 29 16:33:37 2011 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.dk/linux-block\n\n* \u0027for-linus\u0027 of git://git.kernel.dk/linux-block:\n  block: fix blk_queue_end_tag()\n  block: re-use existing \u0027reading\u0027 variable instead of checking direction again\n  block, cfq: fix empty queue crash caused by request merge\n"
    },
    {
      "commit": "b0365c8d0cb6e79eb5f21418ae61ab511f31b575",
      "tree": "2e8abddb0f0f7829e48d00464f95b835bdb6ff51",
      "parents": [
        "34845636a184f3be91a531098192592cbe6db587"
      ],
      "author": {
        "name": "Hillf Danton",
        "email": "dhillf@gmail.com",
        "time": "Wed Dec 28 15:57:16 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 29 16:31:57 2011 -0800"
      },
      "message": "mm: hugetlb: fix non-atomic enqueue of huge page\n\nIf a huge page is enqueued under the protection of hugetlb_lock, then the\noperation is atomic and safe.\n\nSigned-off-by: Hillf Danton \u003cdhillf@gmail.com\u003e\nReviewed-by: Michal Hocko \u003cmhocko@suse.cz\u003e\nAcked-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: \u003cstable@vger.kernel.org\u003e\t\t[2.6.37+]\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "34845636a184f3be91a531098192592cbe6db587",
      "tree": "1c216e37f536a71dae94e41db3f1e059f9ac70a5",
      "parents": [
        "e26a51148f3ebd859bca8bf2e0f212839b447f62"
      ],
      "author": {
        "name": "Andreas Schwab",
        "email": "schwab@linux-m68k.org",
        "time": "Wed Dec 28 15:57:15 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 29 16:31:57 2011 -0800"
      },
      "message": "procfs: do not confuse jiffies with cputime64_t\n\nCommit 2a95ea6c0d129b4 (\"procfs: do not overflow get_{idle,iowait}_time\nfor nohz\") did not take into account that one some architectures jiffies\nand cputime use different units.\n\nThis causes get_idle_time() to return numbers in the wrong units, making\nthe idle time fields in /proc/stat wrong.\n\nInstead of converting the usec value returned by\nget_cpu_{idle,iowait}_time_us to units of jiffies, use the new function\nusecs_to_cputime64 to convert it to the correct unit of cputime64_t.\n\nSigned-off-by: Andreas Schwab \u003cschwab@linux-m68k.org\u003e\nAcked-by: Michal Hocko \u003cmhocko@suse.cz\u003e\nCc: Arnd Bergmann \u003carnd@arndb.de\u003e\nCc: \"Artem S. Tashkinov\" \u003ct.artem@mailcity.com\u003e\nCc: Dave Jones \u003cdavej@redhat.com\u003e\nCc: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: \"Luck, Tony\" \u003ctony.luck@intel.com\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.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": "e26a51148f3ebd859bca8bf2e0f212839b447f62",
      "tree": "aa3a328dabee8a9f1dccc8c8178f690d0eacbf1e",
      "parents": [
        "757e55c23dc62eb5adf45368a72f6b26d6a71ae5"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Wed Dec 28 15:57:11 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 29 16:31:57 2011 -0800"
      },
      "message": "mm/mempolicy.c: refix mbind_range() vma issue\n\ncommit 8aacc9f550 (\"mm/mempolicy.c: fix pgoff in mbind vma merge\") is the\nslightly incorrect fix.\n\nWhy? Think following case.\n\n1. map 4 pages of a file at offset 0\n\n   [0123]\n\n2. map 2 pages just after the first mapping of the same file but with\n   page offset 2\n\n   [0123][23]\n\n3. mbind() 2 pages from the first mapping at offset 2.\n   mbind_range() should treat new vma is,\n\n   [0123][23]\n     |23|\n     mbind vma\n\n   but it does\n\n   [0123][23]\n     |01|\n     mbind vma\n\n   Oops. then, it makes wrong vma merge and splitting ([01][0123] or similar).\n\nThis patch fixes it.\n\n[testcase]\n  test result - before the patch\n\n\tcase4: 126: test failed. expect \u00272,4\u0027, actual \u00272,2,2\u0027\n       \tcase5: passed\n\tcase6: passed\n\tcase7: passed\n\tcase8: passed\n\tcase_n: 246: test failed. expect \u00274,2\u0027, actual \u00271,4\u0027\n\n\t------------[ cut here ]------------\n\tkernel BUG at mm/filemap.c:135!\n\tinvalid opcode: 0000 [#4] SMP DEBUG_PAGEALLOC\n\n\t(snip long bug on messages)\n\n  test result - after the patch\n\n\tcase4: passed\n       \tcase5: passed\n\tcase6: passed\n\tcase7: passed\n\tcase8: passed\n\tcase_n: passed\n\n  source:  mbind_vma_test.c\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n #include \u003cnumaif.h\u003e\n #include \u003cnuma.h\u003e\n #include \u003csys/mman.h\u003e\n #include \u003cstdio.h\u003e\n #include \u003cunistd.h\u003e\n #include \u003cstdlib.h\u003e\n #include \u003cstring.h\u003e\n\nstatic unsigned long pagesize;\nvoid* mmap_addr;\nstruct bitmask *nmask;\nchar buf[1024];\nFILE *file;\nchar retbuf[10240] \u003d \"\";\nint mapped_fd;\n\nchar *rubysrc \u003d \"ruby -e \u0027\\\n  pid \u003d %d; \\\n  vstart \u003d 0x%llx; \\\n  vend \u003d 0x%llx; \\\n  s \u003d `pmap -q #{pid}`; \\\n  rary \u003d []; \\\n  s.each_line {|line|; \\\n    ary\u003dline.split(\\\" \\\"); \\\n    addr \u003d ary[0].to_i(16); \\\n    if(vstart \u003c\u003d addr \u0026\u0026 addr \u003c vend) then \\\n      rary.push(ary[1].to_i()/4); \\\n    end; \\\n  }; \\\n  print rary.join(\\\",\\\"); \\\n\u0027\";\n\nvoid init(void)\n{\n\tvoid* addr;\n\tchar buf[128];\n\n\tnmask \u003d numa_allocate_nodemask();\n\tnuma_bitmask_setbit(nmask, 0);\n\n\tpagesize \u003d getpagesize();\n\n\tsprintf(buf, \"%s\", \"mbind_vma_XXXXXX\");\n\tmapped_fd \u003d mkstemp(buf);\n\tif (mapped_fd \u003d\u003d -1)\n\t\tperror(\"mkstemp \"), exit(1);\n\tunlink(buf);\n\n\tif (lseek(mapped_fd, pagesize*8, SEEK_SET) \u003c 0)\n\t\tperror(\"lseek \"), exit(1);\n\tif (write(mapped_fd, \"\\0\", 1) \u003c 0)\n\t\tperror(\"write \"), exit(1);\n\n\taddr \u003d mmap(NULL, pagesize*8, PROT_NONE,\n\t\t    MAP_SHARED, mapped_fd, 0);\n\tif (addr \u003d\u003d MAP_FAILED)\n\t\tperror(\"mmap \"), exit(1);\n\n\tif (mprotect(addr+pagesize, pagesize*6, PROT_READ|PROT_WRITE) \u003c 0)\n\t\tperror(\"mprotect \"), exit(1);\n\n\tmmap_addr \u003d addr + pagesize;\n\n\t/* make page populate */\n\tmemset(mmap_addr, 0, pagesize*6);\n}\n\nvoid fin(void)\n{\n\tvoid* addr \u003d mmap_addr - pagesize;\n\tmunmap(addr, pagesize*8);\n\n\tmemset(buf, 0, sizeof(buf));\n\tmemset(retbuf, 0, sizeof(retbuf));\n}\n\nvoid mem_bind(int index, int len)\n{\n\tint err;\n\n\terr \u003d mbind(mmap_addr+pagesize*index, pagesize*len,\n\t\t    MPOL_BIND, nmask-\u003emaskp, nmask-\u003esize, 0);\n\tif (err)\n\t\tperror(\"mbind \"), exit(err);\n}\n\nvoid mem_interleave(int index, int len)\n{\n\tint err;\n\n\terr \u003d mbind(mmap_addr+pagesize*index, pagesize*len,\n\t\t    MPOL_INTERLEAVE, nmask-\u003emaskp, nmask-\u003esize, 0);\n\tif (err)\n\t\tperror(\"mbind \"), exit(err);\n}\n\nvoid mem_unbind(int index, int len)\n{\n\tint err;\n\n\terr \u003d mbind(mmap_addr+pagesize*index, pagesize*len,\n\t\t    MPOL_DEFAULT, NULL, 0, 0);\n\tif (err)\n\t\tperror(\"mbind \"), exit(err);\n}\n\nvoid Assert(char *expected, char *value, char *name, int line)\n{\n\tif (strcmp(expected, value) \u003d\u003d 0) {\n\t\tfprintf(stderr, \"%s: passed\\n\", name);\n\t\treturn;\n\t}\n\telse {\n\t\tfprintf(stderr, \"%s: %d: test failed. expect \u0027%s\u0027, actual \u0027%s\u0027\\n\",\n\t\t\tname, line,\n\t\t\texpected, value);\n//\t\texit(1);\n\t}\n}\n\n/*\n      AAAA\n    PPPPPPNNNNNN\n    might become\n    PPNNNNNNNNNN\n    case 4 below\n*/\nvoid case4(void)\n{\n\tinit();\n\tsprintf(buf, rubysrc, getpid(), mmap_addr, mmap_addr+pagesize*6);\n\n\tmem_bind(0, 4);\n\tmem_unbind(2, 2);\n\n\tfile \u003d popen(buf, \"r\");\n\tfread(retbuf, sizeof(retbuf), 1, file);\n\tAssert(\"2,4\", retbuf, \"case4\", __LINE__);\n\n\tfin();\n}\n\n/*\n       AAAA\n PPPPPPNNNNNN\n might become\n PPPPPPPPPPNN\n case 5 below\n*/\nvoid case5(void)\n{\n\tinit();\n\tsprintf(buf, rubysrc, getpid(), mmap_addr, mmap_addr+pagesize*6);\n\n\tmem_bind(0, 2);\n\tmem_bind(2, 2);\n\n\tfile \u003d popen(buf, \"r\");\n\tfread(retbuf, sizeof(retbuf), 1, file);\n\tAssert(\"4,2\", retbuf, \"case5\", __LINE__);\n\n\tfin();\n}\n\n/*\n\t    AAAA\n\tPPPPNNNNXXXX\n\tmight become\n\tPPPPPPPPPPPP 6\n*/\nvoid case6(void)\n{\n\tinit();\n\tsprintf(buf, rubysrc, getpid(), mmap_addr, mmap_addr+pagesize*6);\n\n\tmem_bind(0, 2);\n\tmem_bind(4, 2);\n\tmem_bind(2, 2);\n\n\tfile \u003d popen(buf, \"r\");\n\tfread(retbuf, sizeof(retbuf), 1, file);\n\tAssert(\"6\", retbuf, \"case6\", __LINE__);\n\n\tfin();\n}\n\n/*\n    AAAA\nPPPPNNNNXXXX\nmight become\nPPPPPPPPXXXX 7\n*/\nvoid case7(void)\n{\n\tinit();\n\tsprintf(buf, rubysrc, getpid(), mmap_addr, mmap_addr+pagesize*6);\n\n\tmem_bind(0, 2);\n\tmem_interleave(4, 2);\n\tmem_bind(2, 2);\n\n\tfile \u003d popen(buf, \"r\");\n\tfread(retbuf, sizeof(retbuf), 1, file);\n\tAssert(\"4,2\", retbuf, \"case7\", __LINE__);\n\n\tfin();\n}\n\n/*\n    AAAA\nPPPPNNNNXXXX\nmight become\nPPPPNNNNNNNN 8\n*/\nvoid case8(void)\n{\n\tinit();\n\tsprintf(buf, rubysrc, getpid(), mmap_addr, mmap_addr+pagesize*6);\n\n\tmem_bind(0, 2);\n\tmem_interleave(4, 2);\n\tmem_interleave(2, 2);\n\n\tfile \u003d popen(buf, \"r\");\n\tfread(retbuf, sizeof(retbuf), 1, file);\n\tAssert(\"2,4\", retbuf, \"case8\", __LINE__);\n\n\tfin();\n}\n\nvoid case_n(void)\n{\n\tinit();\n\tsprintf(buf, rubysrc, getpid(), mmap_addr, mmap_addr+pagesize*6);\n\n\t/* make redundunt mappings [0][1234][34][7] */\n\tmmap(mmap_addr + pagesize*4, pagesize*2, PROT_READ|PROT_WRITE,\n\t     MAP_FIXED|MAP_SHARED, mapped_fd, pagesize*3);\n\n\t/* Expect to do nothing. */\n\tmem_unbind(2, 2);\n\n\tfile \u003d popen(buf, \"r\");\n\tfread(retbuf, sizeof(retbuf), 1, file);\n\tAssert(\"4,2\", retbuf, \"case_n\", __LINE__);\n\n\tfin();\n}\n\nint main(int argc, char** argv)\n{\n\tcase4();\n\tcase5();\n\tcase6();\n\tcase7();\n\tcase8();\n\tcase_n();\n\n\treturn 0;\n}\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nAcked-by: Johannes Weiner \u003channes@cmpxchg.org\u003e\nCc: Minchan Kim \u003cminchan.kim@gmail.com\u003e\nCc: Caspar Zhang \u003ccaspar@casparzhang.com\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Christoph Lameter \u003ccl@linux.com\u003e\nCc: Hugh Dickins \u003chugh.dickins@tiscali.co.uk\u003e\nCc: Mel Gorman \u003cmel@csn.ul.ie\u003e\nCc: Lee Schermerhorn \u003clee.schermerhorn@hp.com\u003e\nCc: \u003cstable@vger.kernel.org\u003e\t\t[3.1.x]\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "757e55c23dc62eb5adf45368a72f6b26d6a71ae5",
      "tree": "ce4ea7a534f5d3808735cf827064fd8695559d30",
      "parents": [
        "371de6e4e0042adf4f9b54c414154f57414ddd37"
      ],
      "author": {
        "name": "Hans de Goede",
        "email": "hdegoede@redhat.com",
        "time": "Thu Dec 29 19:09:21 2011 -0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 29 16:29:00 2011 -0800"
      },
      "message": "gspca: Fix bulk mode cameras no longer working (regression fix)\n\nThe new iso bandwidth calculation code accidentally has broken support\nfor bulk mode cameras. This has broken the following drivers:\nfinepix, jeilinj, ovfx2, ov534, ov534_9, se401, sq905, sq905c, sq930x,\nstv0680, vicam.\n\nThix patch fixes this. Fix tested with: se401, sq905, sq905c, stv0680 \u0026 vicam\ncams.\n\nSigned-off-by: Hans de Goede \u003chdegoede@redhat.com\u003e\nSigned-off-by: Mauro Carvalho Chehab \u003cmchehab@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8ade06c616b34b4237c0ed77d1ff0ce04ad7d056",
      "tree": "73cccfb3f6ca9cb8d2d9fcd9aed5a2bffb8ab49d",
      "parents": [
        "f1776dade17cd54562f4bc1d01de89c4908b4dd0"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 29 18:51:57 2011 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 29 18:51:57 2011 -0500"
      },
      "message": "ipv6: Fix neigh lookup using NULL device.\n\nIn some of the rt6_bind_neighbour() call sites, it hasn\u0027t hooked\nup the rt-\u003edst.dev pointer yet, so we\u0027d deref a NULL pointer when\nobtaining dev-\u003eifindex for the neighbour hash function computation.\n\nJust pass the netdevice explicitly in to fix this problem.\n\nReported-by: Bjarke Istrup Pedersen \u003cgurligebis@gentoo.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f1776dade17cd54562f4bc1d01de89c4908b4dd0",
      "tree": "f598aa5a7e2c9922a0031b0ced571d92fcca1f62",
      "parents": [
        "b2baed69e605c3e57d28940cc7aaae908d61f769"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu Dec 29 00:43:15 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 29 16:44:29 2011 -0500"
      },
      "message": "virtio_net: use non-reentrant workqueue.\n\nMichael S. Tsirkin also noticed that we could run the refill work\nmultiple CPUs: if we kick off a refill on one CPU and then on another,\nthey would both manipulate the queue at the same time (they use\nnapi_disable to avoid racing against the receive handler itself).\n\nTejun points out that this is what the WQ_NON_REENTRANT flag is for,\nand that there is a convenient system kthread we can use.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b2baed69e605c3e57d28940cc7aaae908d61f769",
      "tree": "47e23076688f9fae6b381143427958f661a31d97",
      "parents": [
        "346f870b8a9aaf0847f7c7cffdbb447bb2f3853e"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu Dec 29 00:42:38 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 29 16:44:29 2011 -0500"
      },
      "message": "virtio_net: set/cancel work on ndo_open/ndo_stop\n\nMichael S. Tsirkin noticed that we could run the refill work after\nndo_close, which can re-enable napi - we don\u0027t disable it until\nvirtnet_remove.  This is clearly wrong, so move the workqueue control\nto ndo_open and ndo_stop (aka. virtnet_open and virtnet_close).\n\nOne subtle point: virtnet_probe() could simply fail if it couldn\u0027t\nallocate a receive buffer, but that\u0027s less polite in virtnet_open() so\nwe schedule a refill as we do in the normal receive path if we run out\nof memory.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "346f870b8a9aaf0847f7c7cffdbb447bb2f3853e",
      "tree": "fca645087c2dcae6be1f64181e5d703d4bbefcaa",
      "parents": [
        "95f56e7aa807e9eec241a5b70f0695b2514b5ad5"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 29 15:22:33 2011 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 29 15:22:33 2011 -0500"
      },
      "message": "ipv6: Report TCP timetstamp info in cacheinfo just like ipv4 does.\n\nI missed this while adding ipv6 support to inet_peer.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "95f56e7aa807e9eec241a5b70f0695b2514b5ad5",
      "tree": "b78e9c1909e7b0b0b978f7eac0dff11111fd023f",
      "parents": [
        "46c4674754cbb2bda00df652c4366086573c9b5a"
      ],
      "author": {
        "name": "Yevgeny Petrilin",
        "email": "yevgenyp@mellanox.co.il",
        "time": "Thu Dec 29 07:42:39 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 29 15:08:41 2011 -0500"
      },
      "message": "mlx4_core: limiting VF port options\n\nAt the moment VFs can only operate in Eth mode.\nIn addition we don\u0027t want the VF to attempt link sensing,\nso we block this option as well.\n\nSigned-off-by: Yevgeny Petrilin \u003cyevgenyp@mellanox.co.il\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "46c4674754cbb2bda00df652c4366086573c9b5a",
      "tree": "584b782660f532ae67bb012df1e20675dbc9a80e",
      "parents": [
        "b0460e4484f9e990caa817230204f9e3800cf955"
      ],
      "author": {
        "name": "Yevgeny Petrilin",
        "email": "yevgenyp@mellanox.co.il",
        "time": "Thu Dec 29 07:42:34 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 29 15:08:41 2011 -0500"
      },
      "message": "mlx4_core: using array index for sense_allowed\n\nSigned-off-by: Yevgeny Petrilin \u003cyevgenyp@mellanox.co.il\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b0460e4484f9e990caa817230204f9e3800cf955",
      "tree": "3c8d3bf4448a4b99ffa6445a949abe1bee85c34c",
      "parents": [
        "bc94b52167596e4f9c0a020c10e2f49b04a2e48b"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Wed Dec 28 23:27:44 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 29 15:07:21 2011 -0500"
      },
      "message": "sch_tbf: report backlog information\n\nProvide child qdisc backlog (byte count) information so that \"tc -s\nqdisc\" can report it to user.\n\nqdisc netem 30: root refcnt 18 limit 1000 delay 20.0ms  10.0ms\n Sent 948517 bytes 898 pkt (dropped 0, overlimits 0 requeues 1)\n rate 175056bit 16pps backlog 114b 1p requeues 1\nqdisc tbf 40: parent 30: rate 256000bit burst 20Kb/8 mpu 0b lat 0us\n Sent 948517 bytes 898 pkt (dropped 15, overlimits 611 requeues 0)\n backlog 18168b 12p requeues 0\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "bc94b52167596e4f9c0a020c10e2f49b04a2e48b",
      "tree": "e873478149fd8fa590ef83947eee059ddbf5cdca",
      "parents": [
        "d191854282fd831da785a5a34bc6fd16049b8578"
      ],
      "author": {
        "name": "Pablo Neira Ayuso",
        "email": "pablo@netfilter.org",
        "time": "Wed Dec 28 15:03:30 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 29 14:39:19 2011 -0500"
      },
      "message": "netfilter: Kconfig: fix unmet xt_nfacct dependencies\n\nwarning: (NETFILTER_XT_MATCH_NFACCT) selects NETFILTER_NETLINK_ACCT which has\nunmet direct dependencies (NET \u0026\u0026 INET \u0026\u0026 NETFILTER \u0026\u0026 NETFILTER_ADVANCED)\n\nand then\n\nERROR: \"nfnetlink_subsys_unregister\" [net/netfilter/nfnetlink_acct.ko] undefined!\nERROR: \"nfnetlink_subsys_register\" [net/netfilter/nfnetlink_acct.ko] undefined!\n\nReported-by: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nSigned-off-by: Pablo Neira Ayuso \u003cpablo@netfilter.org\u003e\nAcked-by: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f2b20d436534f22ccc3f5ad172499fcb013bb315",
      "tree": "5c5df70a252ea14da6063d2c6c3de4a4e769ecae",
      "parents": [
        "609f6ea1c9cdfe0c43a927e13205a57d0c266d5a"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Thu Dec 29 09:16:28 2011 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@kernel.dk",
        "time": "Thu Dec 29 09:16:28 2011 +0100"
      },
      "message": "block: fix blk_queue_end_tag()\n\nCommit 5e081591 \"block: warn if tag is greater than real_max_depth\"\ncleaned up blk_queue_end_tag() to warn when the tag is truly invalid\n(greater than real_max_depth).  However, it changed behavior in the tag \u003c\nmax_depth case to not end the request.  Leading to triggering of\nBUG_ON(blk_queued_rq(rq)) in the request completion path:\n\n  http://marc.info/?l\u003dlinux-kernel\u0026m\u003d132204370518629\u0026w\u003d2\n\nIn order to allow blk_queue_resize_tags() to shrink the tag space\nblk_queue_end_tag() must always complete tags with a value less than\nreal_max_depth regardless of the current max_depth.  The comment about\n\"handling the shrink case\" seems to be what prompted changes in this\nspace, so remove it and BUG on all invalid tags (made even simpler by\nMatthew\u0027s suggestion to use an unsigned compare).\n\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\nCc: Tao Ma \u003cboyu.mt@taobao.com\u003e\nCc: Matthew Wilcox \u003cmatthew@wil.cx\u003e\nReported-by: Meelis Roos \u003cmroos@ut.ee\u003e\nReported-by: Ed Nadolski \u003cedmund.nadolski@intel.com\u003e\nCc: Tejun Heo \u003ctj@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Jens Axboe \u003caxboe@kernel.dk\u003e\n"
    },
    {
      "commit": "d191854282fd831da785a5a34bc6fd16049b8578",
      "tree": "2a2700b2dec7ad9e73c55c833346dbbd67b8777c",
      "parents": [
        "f83c7790dc0025fffbd8684f3803a7571f624baa"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Dec 28 20:19:20 2011 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Dec 28 20:19:20 2011 -0500"
      },
      "message": "ipv6: Kill rt6i_dev and rt6i_expires defines.\n\nIt just obscures that the netdevice pointer and the expires value are\nimplemented in the dst_entry sub-object of the ipv6 route.\n\nAnd it makes grepping for dst_entry member uses much harder too.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f83c7790dc0025fffbd8684f3803a7571f624baa",
      "tree": "9e745f6b44b1947033a143423560af6a3157fce7",
      "parents": [
        "2c2aba6c561ac425602f4a0be61422224cb87151"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Dec 28 15:41:23 2011 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Dec 28 15:41:23 2011 -0500"
      },
      "message": "ipv6: Create fast inline ipv6 neigh lookup just like ipv4.\n\nAlso, create and use an rt6_bind_neighbour() in net/ipv6/route.c to\nconsolidate some common logic.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2c2aba6c561ac425602f4a0be61422224cb87151",
      "tree": "30b5f2c40b823ca61e2e0930d5e98a89a83222bb",
      "parents": [
        "32288eb4d940b10e40c6d4178fe3a40d1437d2f8"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Dec 28 15:06:58 2011 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Dec 28 15:06:58 2011 -0500"
      },
      "message": "ipv6: Use universal hash for NDISC.\n\nIn order to perform a proper universal hash on a vector of integers,\nwe have to use different universal hashes on each vector element.\n\nWhich means we need 4 different hash randoms for ipv6.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "32288eb4d940b10e40c6d4178fe3a40d1437d2f8",
      "tree": "7cdd2b53eae8b6381eec1ddd497f28615277f1c2",
      "parents": [
        "ba1cffe0257bcd4d0070bc0e64f8ead97fefd148"
      ],
      "author": {
        "name": "Xi Wang",
        "email": "xi.wang@gmail.com",
        "time": "Tue Dec 27 09:44:53 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Dec 28 14:08:08 2011 -0500"
      },
      "message": "netrom: avoid overflows in nr_setsockopt()\n\nCheck setsockopt arguments to avoid overflows and return -EINVAL for\ntoo large arguments.\n\nSigned-off-by: Xi Wang \u003cxi.wang@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ba1cffe0257bcd4d0070bc0e64f8ead97fefd148",
      "tree": "5584b7816f7eb46953611ec35628c6924ea5a2af",
      "parents": [
        "fa84309533025eb3f03dc1d2d2be1c3ca206882a"
      ],
      "author": {
        "name": "Xi Wang",
        "email": "xi.wang@gmail.com",
        "time": "Tue Dec 27 09:43:19 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Dec 28 14:08:08 2011 -0500"
      },
      "message": "ax25: avoid overflows in ax25_setsockopt()\n\nCommit be639ac6 (\"NET: AX.25: Check ioctl arguments to avoid overflows\nfurther down the road\") rejects very large arguments, but doesn\u0027t\ncompletely fix overflows on 64-bit systems.  Consider the AX25_T2 case.\n\n\tint opt;\n\t...\n\tif (opt \u003c 1 || opt \u003e ULONG_MAX / HZ) {\n\t\tres \u003d -EINVAL;\n\t\tbreak;\n\t}\n\tax25-\u003et2 \u003d opt * HZ;\n\nThe 32-bit multiplication opt * HZ would overflow before being assigned\nto 64-bit ax25-\u003et2.  This patch changes \"opt\" to unsigned long.\n\nSigned-off-by: Xi Wang \u003cxi.wang@gmail.com\u003e\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "fa84309533025eb3f03dc1d2d2be1c3ca206882a",
      "tree": "d023095d481cb331e8cfc569de18ea89a04eb7fd",
      "parents": [
        "7ffbcecbeed91e5874e9a1cfc4c0cbb07dac3069"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Wed Dec 28 13:48:55 2011 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Dec 28 13:48:55 2011 -0500"
      },
      "message": "genetlink: add auto module loading\n\nWhen testing L2TP support, I discovered that the l2tp module is not autoloaded\nas are other netlink interfaces. There is because of lack of hook in genetlink to call\nrequest_module and load the module.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7ffbcecbeed91e5874e9a1cfc4c0cbb07dac3069",
      "tree": "c9a6ac231343b25e9049689eb679bf1364602092",
      "parents": [
        "d79aec83b2c348f49065a4d411e7b70bdf041c89"
      ],
      "author": {
        "name": "David Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Dec 27 09:53:05 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Dec 28 13:38:49 2011 -0500"
      },
      "message": "ipv6: Remove optimistic DAD flag test in ipv6_add_addr()\n\nThe route we have here is for the address being added to the interface,\nie. for input packet processing.\n\nTherefore using that route to determine whether an output nexthop gateway\nis known and resolved doesn\u0027t make any sense.\n\nSo, simply remove this test, it never triggered anyways.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\nAcked-By: Neil Horman \u003cnhorman@tuxdriver.com\u003e\n"
    },
    {
      "commit": "d79aec83b2c348f49065a4d411e7b70bdf041c89",
      "tree": "167d3ab25d29b28b44dc8c1f7d29e29f455493f4",
      "parents": [
        "c3b084c24c8a372026d95497dbb0da22c6eb591c",
        "54b07dca68557b0952585b5f4834cd0dd86eba35"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Dec 28 13:16:59 2011 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Dec 28 13:16:59 2011 -0500"
      },
      "message": "Merge branch \u0027nf-next\u0027 of git://1984.lsi.us.es/net-next\n"
    },
    {
      "commit": "c3b084c24c8a372026d95497dbb0da22c6eb591c",
      "tree": "33beb0fbcef5cbfff012929b87b242afcfa4821f",
      "parents": [
        "c0d2b8376ae2d74aa862e946a372502603e9066d"
      ],
      "author": {
        "name": "Rogerio Pimentel",
        "email": "rogerio.pimentel@freescale.com",
        "time": "Tue Dec 27 14:07:37 2011 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Dec 28 12:55:18 2011 -0500"
      },
      "message": "net: fec: Adjust ENET MDIO timeouts\n\nOn extensive NFS boots on a mx6qsabrelite board it was noted that \"FEC: MDIO read timeout\" were occuring,\nwhich caused failure on loading the FEC driver.\n\nThe original FEC_MII_TIMEOUT was set to 1 ms, which is too low when passed to the usecs_to_jiffies macro.\n\nOn ARM one jiffy is 10ms, so use a timeout of 30ms, which corresponds to 3 jiffies.\n\nAfter running extensive NFS boots, the MDIO timeouts do not occur anymore with this change.\n\nSigned-off-by: Rogerio Pimentel \u003crogerio.pimentel@freescale.com\u003e\nSigned-off-by: Fabio Estevam \u003cfabio.estevam@freescale.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "aef950b4ba3196622a5bd5e21ab1d63f30658285",
      "tree": "f4cb91f4517a041ef95c28ad50039b0b2ae6b137",
      "parents": [
        "c43c5f39584c0f388a7e5372312c2c48221a4415"
      ],
      "author": {
        "name": "Wei Yongjun",
        "email": "yongjun_wei@trendmicro.com.cn",
        "time": "Tue Dec 27 22:32:41 2011 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Dec 27 22:32:41 2011 -0500"
      },
      "message": "packet: fix possible dev refcnt leak when bind fail\n\nIf bind is fail when bind is called after set PACKET_FANOUT\nsock option, the dev refcnt will leak.\n\nSigned-off-by: Wei Yongjun \u003cyongjun_wei@trendmicro.com.cn\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "54b07dca68557b0952585b5f4834cd0dd86eba35",
      "tree": "9b6b03f029f4f1a4e02ead16177c626fab863cd5",
      "parents": [
        "42c344a3bc6bb2eb4c0bef98d24d53adda255154"
      ],
      "author": {
        "name": "Jan Engelhardt",
        "email": "jengelh@medozas.de",
        "time": "Thu Apr 21 09:32:45 2011 +0200"
      },
      "committer": {
        "name": "Pablo Neira Ayuso",
        "email": "pablo@netfilter.org",
        "time": "Tue Dec 27 20:45:28 2011 +0100"
      },
      "message": "netfilter: provide config option to disable ancient procfs parts\n\nUsing /proc/net/nf_conntrack has been deprecated in favour of the\nconntrack(8) tool.\n\nSigned-off-by: Jan Engelhardt \u003cjengelh@medozas.de\u003e\nSigned-off-by: Pablo Neira Ayuso \u003cpablo@netfilter.org\u003e\n"
    },
    {
      "commit": "42c344a3bc6bb2eb4c0bef98d24d53adda255154",
      "tree": "22e7e84bd68531ac4fe51cebc813ef9ac41dfd13",
      "parents": [
        "af0d29cd2a732f70882e6122b9f9df8b0d84515e"
      ],
      "author": {
        "name": "Jan Engelhardt",
        "email": "jengelh@medozas.de",
        "time": "Thu Jun 09 22:16:50 2011 +0200"
      },
      "committer": {
        "name": "Pablo Neira Ayuso",
        "email": "pablo@netfilter.org",
        "time": "Tue Dec 27 20:45:25 2011 +0100"
      },
      "message": "netfilter: xtables: collapse conditions in xt_ecn\n\nOne simplification of an if clause.\n\nSigned-off-by: Jan Engelhardt \u003cjengelh@medozas.de\u003e\nSigned-off-by: Pablo Neira Ayuso \u003cpablo@netfilter.org\u003e\n"
    },
    {
      "commit": "af0d29cd2a732f70882e6122b9f9df8b0d84515e",
      "tree": "ae1057444d3a646c71e99ff3b93d0745c7e93ce0",
      "parents": [
        "a4c6f9d3636db538025f9622c008192a0835cc23"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Thu Jun 09 15:20:27 2011 +0200"
      },
      "committer": {
        "name": "Pablo Neira Ayuso",
        "email": "pablo@netfilter.org",
        "time": "Tue Dec 27 20:31:42 2011 +0100"
      },
      "message": "netfilter: xtables: add an IPv6 capable version of the ECN match\n\nReferences: http://www.spinics.net/lists/netfilter-devel/msg18875.html\n\nAugment xt_ecn by facilities to match on IPv6 packets\u0027 DSCP/TOS field\nsimilar to how it is already done for the IPv4 packet field.\n\nSigned-off-by: Jan Engelhardt \u003cjengelh@medozas.de\u003e\nSigned-off-by: Pablo Neira Ayuso \u003cpablo@netfilter.org\u003e\n"
    },
    {
      "commit": "a4c6f9d3636db538025f9622c008192a0835cc23",
      "tree": "725c79a8d16b5c57bb5dadb0e83bd09ce985a0b5",
      "parents": [
        "d446a8202c81d95f91b1682fc67e7fadd9a31389"
      ],
      "author": {
        "name": "Jan Engelhardt",
        "email": "jengelh@medozas.de",
        "time": "Thu Jun 09 21:15:37 2011 +0200"
      },
      "committer": {
        "name": "Pablo Neira Ayuso",
        "email": "pablo@netfilter.org",
        "time": "Tue Dec 27 20:31:38 2011 +0100"
      },
      "message": "netfilter: xtables: give xt_ecn its own name\n\nUse the new macro and struct names in xt_ecn.h, and put the old\ndefinitions into a definition-forwarding ipt_ecn.h.\n\nSigned-off-by: Jan Engelhardt \u003cjengelh@medozas.de\u003e\nSigned-off-by: Pablo Neira Ayuso \u003cpablo@netfilter.org\u003e\n"
    },
    {
      "commit": "d446a8202c81d95f91b1682fc67e7fadd9a31389",
      "tree": "e3e7dcc79eab38846b53af613929b68aa0318752",
      "parents": [
        "c0d2b8376ae2d74aa862e946a372502603e9066d"
      ],
      "author": {
        "name": "Jan Engelhardt",
        "email": "jengelh@medozas.de",
        "time": "Thu Jun 09 21:03:07 2011 +0200"
      },
      "committer": {
        "name": "Pablo Neira Ayuso",
        "email": "pablo@netfilter.org",
        "time": "Tue Dec 27 20:31:31 2011 +0100"
      },
      "message": "netfilter: xtables: move ipt_ecn to xt_ecn\n\nPrepare the ECN match for augmentation by an IPv6 counterpart. Since\nno symbol dependencies to ipv6.ko are added, having a single ecn match\nmodule is the more so welcome.\n\nSigned-off-by: Jan Engelhardt \u003cjengelh@medozas.de\u003e\nSigned-off-by: Pablo Neira Ayuso \u003cpablo@netfilter.org\u003e\n"
    },
    {
      "commit": "c0d2b8376ae2d74aa862e946a372502603e9066d",
      "tree": "5ae45fb9c4e1823a43ba5b3082fa68f39e93e864",
      "parents": [
        "65cb5df51acaa6b1070a81d6c2e0a1535d3a7b8d"
      ],
      "author": {
        "name": "Joshua Kinard",
        "email": "kumba@gentoo.org",
        "time": "Mon Dec 26 19:06:15 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Dec 27 13:17:34 2011 -0500"
      },
      "message": "net: meth: Add set_rx_mode hook to fix ICMPv6 neighbor discovery\n\nSGI IP32 (O2)\u0027s ethernet driver (meth) lacks a set_rx_mode function, which\nprevents IPv6 from working completely because any ICMPv6 neighbor\nsolicitation requests aren\u0027t picked up by the driver.  So the machine can\nping out and connect to other systems, but other systems will have a very\nhard time connecting to the O2.\n\nSigned-off-by: Joshua Kinard \u003ckumba@gentoo.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "65cb5df51acaa6b1070a81d6c2e0a1535d3a7b8d",
      "tree": "9b0d809e22a2dc952c6e05f2080d51c3e6a09bd2",
      "parents": [
        "f905730c7ed97dc2dfcbf6af894acd6ce70a62e7"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Tue Dec 27 04:07:05 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Dec 27 13:01:44 2011 -0500"
      },
      "message": "net: calxeda xgmac ethernet driver add missing HAS_IOMEM dependency\n\nFix allyesconfig build on architectures without IOMEM:\n\ndrivers/net/ethernet/calxeda/xgmac.c:1800:2:\n  error: implicit declaration of function \u0027iounmap\u0027 [-Werror\u003dimplicit-function-declaration]\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Rob Herring \u003crob.herring@calxeda.com\u003e\nAcked-by: Rob Herring \u003crob.herring@calxeda.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f905730c7ed97dc2dfcbf6af894acd6ce70a62e7",
      "tree": "15e9f4ebe56165668dfb61dc77bef84daefc807c",
      "parents": [
        "3655959143ebf1fd32e28a448d204be2f7f13e99"
      ],
      "author": {
        "name": "Allan Stephens",
        "email": "allan.stephens@windriver.com",
        "time": "Mon Oct 24 16:03:12 2011 -0400"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Tue Dec 27 11:33:54 2011 -0500"
      },
      "message": "tipc: Allow use of buf_seqno() helper routine by unicast links\n\nMigrates the buf_seqno() helper routine from broadcast link level to\nunicast link level so that it can be used both types of TIPC links.\nThis is a cosmetic change only, and does not affect the operation of TIPC.\n\nSigned-off-by: Allan Stephens \u003callan.stephens@windriver.com\u003e\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "3655959143ebf1fd32e28a448d204be2f7f13e99",
      "tree": "441e42f4e55fedf7d262a3d43ba356a1598f36c5",
      "parents": [
        "10745cd5990542447268f60078133df8b1ee960b"
      ],
      "author": {
        "name": "Allan Stephens",
        "email": "allan.stephens@windriver.com",
        "time": "Mon Oct 24 15:26:24 2011 -0400"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Tue Dec 27 11:33:53 2011 -0500"
      },
      "message": "tipc: Ignore broadcast acknowledgements that are out-of-range\n\nAdds checks to TIPC\u0027s broadcast link so that it ignores any\nacknowledgement message containing a sequence number that does not\ncorrespond to an unacknowledged message currently in the broadcast\nlink\u0027s transmit queue.\n\nThis change prevents the broadcast link from becoming stalled if a\nnewly booted node receives stale broadcast link acknowledgement\ninformation from another node that has not yet fully synchronized\nits end of the broadcast link to reflect the current state of the\nnew node\u0027s end.\n\nSigned-off-by: Allan Stephens \u003callan.stephens@windriver.com\u003e\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "10745cd5990542447268f60078133df8b1ee960b",
      "tree": "544d8226e2adf82a31e5bb7639c439a12bec7cea",
      "parents": [
        "9157bafb44637a2cfefc222d6551100ead40e79e"
      ],
      "author": {
        "name": "Allan Stephens",
        "email": "allan.stephens@windriver.com",
        "time": "Mon Oct 24 14:59:20 2011 -0400"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Tue Dec 27 11:33:52 2011 -0500"
      },
      "message": "tipc: Flush unsent broadcast messages when contact with last node is lost\n\nAdds code to release any unsent broadcast messages in the broadcast link\ntransmit queue if TIPC loses contact with its only neighboring node.\nPreviously, a broadcast link that was in the congested state would hold\non to the unsent messages, even though the messages were now undeliverable.\n\nSigned-off-by: Allan Stephens \u003callan.stephens@windriver.com\u003e\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "9157bafb44637a2cfefc222d6551100ead40e79e",
      "tree": "03daf741edd6dc848ec38eff1aead23c31c5c83a",
      "parents": [
        "2b78f9a002dccc587912af4da3bf1db86909de91"
      ],
      "author": {
        "name": "Allan Stephens",
        "email": "allan.stephens@windriver.com",
        "time": "Mon Oct 24 13:27:31 2011 -0400"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Tue Dec 27 11:33:51 2011 -0500"
      },
      "message": "tipc: Minor optimization of broadcast link transmit queue statistic\n\nThe two broadcast link statistics fields that are used to derive the\naverage length of that link\u0027s transmit queue are now updated only after\na successful attempt to send a broadcast message, since there is no need\nto update these values when an unsuccessful send attempt leaves the\nqueue unchanged.\n\nSigned-off-by: Allan Stephens \u003callan.stephens@windriver.com\u003e\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "2b78f9a002dccc587912af4da3bf1db86909de91",
      "tree": "60dafc91a970c116e7d8c3f53152a75f9e77d854",
      "parents": [
        "cd3decdfd1dbab8a585eafe2e5b9866f193de99e"
      ],
      "author": {
        "name": "Allan Stephens",
        "email": "allan.stephens@windriver.com",
        "time": "Mon Oct 24 13:05:55 2011 -0400"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Tue Dec 27 11:33:50 2011 -0500"
      },
      "message": "tipc: Handle broadcast attempt when no neighboring nodes exist\n\nAdds a check to detect when an attempt is made to send a message\nvia the broadcast link and no neighboring nodes are currently available\nto receive it. Rather than wasting effort passing the message to the\nbroadcast link and broadcast bearer, who will only throw it away,\nTIPC now frees the message immediately and reports success (i.e. the\nmessage has been delivered to all available destinations).\n\nSigned-off-by: Allan Stephens \u003callan.stephens@windriver.com\u003e\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "cd3decdfd1dbab8a585eafe2e5b9866f193de99e",
      "tree": "6683d9e56ca9554aa8c446b311521449c2f4ded5",
      "parents": [
        "c47e9b918844ab7bb139eada7b085c576ddf0afb"
      ],
      "author": {
        "name": "Allan Stephens",
        "email": "allan.stephens@windriver.com",
        "time": "Mon Oct 24 11:18:12 2011 -0400"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Tue Dec 27 11:33:48 2011 -0500"
      },
      "message": "tipc: Ensure broadcast link spinlock is held when updating node map\n\nFixes oversight that allowed broadcast link node map to be updated without\nfirst taking the broadcast link spinlock that protects the map. As part\nof this fix the node map has been incorporated into the broadcast link\nstructure to make the need for such protection more evident.\n\nSigned-off-by: Allan Stephens \u003callan.stephens@windriver.com\u003e\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "c47e9b918844ab7bb139eada7b085c576ddf0afb",
      "tree": "492e8ac4c1191b1c7be865efacc7833ebcb6fff9",
      "parents": [
        "945af1c39df00a1e5873e38145432ba752ec49a0"
      ],
      "author": {
        "name": "Allan Stephens",
        "email": "allan.stephens@windriver.com",
        "time": "Mon Oct 24 10:29:26 2011 -0400"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Tue Dec 27 11:33:47 2011 -0500"
      },
      "message": "tipc: Eliminate dynamic allocation of broadcast link data structures\n\nCreates global variables to hold the broadcast link\u0027s pseudo-bearer and\npseudo-link structures, rather than allocating them dynamically. There\nis only a single instance of each structure, and changing over to static\nallocation allows elimination of code to handle the cases where dynamic\nallocation was unsuccessful.\n\nThe memset in the teardown code may look like they aren\u0027t used, but\nthe same teardown code is run when there is a non-fatal error at\ninit-time, so that stale data isn\u0027t present when the user fixes the\ncause of the soft error.\n\nSigned-off-by: Allan Stephens \u003callan.stephens@windriver.com\u003e\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "945af1c39df00a1e5873e38145432ba752ec49a0",
      "tree": "4fecb46c23a92b3635eb1db071b4e08edbe9fe86",
      "parents": [
        "97f1b625d133b44d38b8b55ec2cbe35d7ef94f3a"
      ],
      "author": {
        "name": "Allan Stephens",
        "email": "allan.stephens@windriver.com",
        "time": "Fri Oct 14 14:42:25 2011 -0400"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Tue Dec 27 11:33:46 2011 -0500"
      },
      "message": "tipc: Eliminate useless check when network address is assigned\n\nGets rid of an unnecessary check in the routine that updates the port id\nof a node\u0027s name publications when the node is assigned a network address,\nsince the routine is only invoked if the new address is different from\nthe existing one.\n\nSigned-off-by: Allan Stephens \u003callan.stephens@windriver.com\u003e\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "97f1b625d133b44d38b8b55ec2cbe35d7ef94f3a",
      "tree": "f564ae9e89903e750778d390a8c8859f420893d8",
      "parents": [
        "d47ce2ece33eac5c2b12d52622d1b17fe6a34ce9"
      ],
      "author": {
        "name": "Allan Stephens",
        "email": "allan.stephens@windriver.com",
        "time": "Thu Oct 20 09:48:05 2011 -0400"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Tue Dec 27 11:33:45 2011 -0500"
      },
      "message": "tipc: Minor correction to TIPC module unloading\n\nModifies TIPC\u0027s module unloading logic to switch itself into \"single\nnode\" mode before starting to terminate networking support. This helps\nto ensure that no operations that require TIPC to be in \"networking\"\nmode can initiate once unloading starts.\n\nSigned-off-by: Allan Stephens \u003callan.stephens@windriver.com\u003e\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "d47ce2ece33eac5c2b12d52622d1b17fe6a34ce9",
      "tree": "8e6a11219c23d07e46ec03e42626aa72d8226584",
      "parents": [
        "64b32f7e38627a325c825087318c09075a5edc42"
      ],
      "author": {
        "name": "Allan Stephens",
        "email": "allan.stephens@windriver.com",
        "time": "Wed Oct 19 15:39:21 2011 -0400"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Tue Dec 27 11:33:44 2011 -0500"
      },
      "message": "tipc: Eliminate useless memset operations in Ethernet media support\n\nGets rid of two pointless operations that zero out the array used to\nrecord information about TIPC\u0027s Ethernet bearers. There is no need to\ninitialize the array on start up since it is a global variable that is\nalready zero\u0027d out, and there is no need to zero it out on exit because\nthe array is never referenced again.\n\nSigned-off-by: Allan Stephens \u003callan.stephens@windriver.com\u003e\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "64b32f7e38627a325c825087318c09075a5edc42",
      "tree": "2e093df7217fdc197467e05623c4e9bf712462a6",
      "parents": [
        "8c12118db77dce5a7abf1a0e87af56592fdd7c09"
      ],
      "author": {
        "name": "Allan Stephens",
        "email": "allan.stephens@windriver.com",
        "time": "Wed Oct 19 15:18:11 2011 -0400"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Tue Dec 27 11:33:42 2011 -0500"
      },
      "message": "tipc: Do timely cleanup of disabled Ethernet bearer resources\n\nModifies Ethernet bearer disable logic to break the association between\nthe bearer and its device driver at the time the bearer is disabled,\nrather than when the TIPC module is unloaded. This allows the array\nentry used by the disabled bearer to be re-used if the same bearer (or\na different one) is subsequently enabled.\n\nSigned-off-by: Allan Stephens \u003callan.stephens@windriver.com\u003e\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "8c12118db77dce5a7abf1a0e87af56592fdd7c09",
      "tree": "77d267ff594515bbe59b01c338c26d8c4d39aec2",
      "parents": [
        "bfec73d7e45cdf570d649a547050295789e1e6fb"
      ],
      "author": {
        "name": "Allan Stephens",
        "email": "allan.stephens@windriver.com",
        "time": "Wed Oct 19 14:58:29 2011 -0400"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Tue Dec 27 11:33:41 2011 -0500"
      },
      "message": "tipc: Minor optimization to deactivation of Ethernet media suppot\n\nChange TIPC\u0027s shutdown code to deactivate generic networking support\nbefore terminating Ethernet media support. The deactivation of generic\nnetworking support causes all existing bearers to be destroyed, meaning\nthe Ethernet media termination routine no longer has to bother marking\nthem as unavailable.\n\nSigned-off-by: Allan Stephens \u003callan.stephens@windriver.com\u003e\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "bfec73d7e45cdf570d649a547050295789e1e6fb",
      "tree": "5dad32b2f41b1c250a60c88fc5f4877253b88d13",
      "parents": [
        "5c216e1d28c82332db0fa53e30536577fb6130c6"
      ],
      "author": {
        "name": "Allan Stephens",
        "email": "allan.stephens@windriver.com",
        "time": "Tue Oct 18 14:47:02 2011 -0400"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Tue Dec 27 11:33:40 2011 -0500"
      },
      "message": "tipc: Revise comment justifying release of configuration spinlock\n\nComment-only change to better explain why TIPC\u0027s configuration lock is\ntemporarily released while activating support for network interfaces,\nand why the existing activation code doesn\u0027t require rework.\n\nSigned-off-by: Allan Stephens \u003callan.stephens@windriver.com\u003e\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "5c216e1d28c82332db0fa53e30536577fb6130c6",
      "tree": "66bc9a4653495c1fddf87cc5fd3d88ab1d14a3a7",
      "parents": [
        "d6d4577ae48bcfde06894540ea793abf076e1643"
      ],
      "author": {
        "name": "Allan Stephens",
        "email": "allan.stephens@windriver.com",
        "time": "Tue Oct 18 11:34:29 2011 -0400"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Tue Dec 27 11:33:39 2011 -0500"
      },
      "message": "tipc: Allow run-time alteration of default link settings\n\nPermits run-time alteration of default link settings on a per-media\nand per-bearer basis, in addition to the existing per-link basis.\nThe following syntax can now be used:\n\n    tipc-config -lt\u003d\u003clink-name|bearer-name|media-name\u003e/\u003ctolerance\u003e\n    tipc-config -lp\u003d\u003clink-name|bearer-name|media-name\u003e/\u003cpriority\u003e\n    tipc-config -lw\u003d\u003clink-name|bearer-name|media-name\u003e/\u003cwindow\u003e\n\nNote that changes to the default settings for a given media type has\nno effect on the default settings used by existing bearers. Similarly,\nchanges to default bearer settings has no effect on existing link\nendpoints that utilize that interface.\n\nThanks to Florian Westphal \u003cfw@strlen.de\u003e for his contributions to\nthe development of this enhancement.\n\nSigned-off-by: Allan Stephens \u003callan.stephens@windriver.com\u003e\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "d6d4577ae48bcfde06894540ea793abf076e1643",
      "tree": "06521d98dec233bf68190ba2a017684ece5aa1c7",
      "parents": [
        "3d749a6a26b0811b4b2bb4ec2c47cd630a6bbf88"
      ],
      "author": {
        "name": "Allan Stephens",
        "email": "allan.stephens@windriver.com",
        "time": "Fri Oct 07 15:48:41 2011 -0400"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Tue Dec 27 11:33:38 2011 -0500"
      },
      "message": "tipc: Ignore neighbor discovery messages containing invalid address\n\nAdds a check to ensure that TIPC ignores an incoming neighbor discovery\nmessage that specifies an invalid media address as its source. The check\nensures that the source address is a valid, non-broadcast address that\ncould legally be used by a neighboring link endpoint.\n\nSigned-off-by: Allan Stephens \u003callan.stephens@windriver.com\u003e\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "3d749a6a26b0811b4b2bb4ec2c47cd630a6bbf88",
      "tree": "57616bd9e10a70b9146cb46ccd8905ee2a75475d",
      "parents": [
        "4d163a326fa4868cce1bb75dd95855d40e5497c6"
      ],
      "author": {
        "name": "Allan Stephens",
        "email": "allan.stephens@windriver.com",
        "time": "Fri Oct 07 15:19:11 2011 -0400"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Tue Dec 27 11:33:36 2011 -0500"
      },
      "message": "tipc: Hide media-specific addressing details from generic bearer code\n\nReworks TIPC\u0027s media address data structure and associated processing\nroutines to transfer all media-specific details of address conversion\nto the associated TIPC media adaptation code. TIPC\u0027s generic bearer code\nnow only needs to know which media type an address is associated with\nand whether or not it is a broadcast address, and totally ignores the\n\"value\" field that contains the actual media-specific addressing info.\n\nThese changes eliminate the need for a number of endianness conversion\noperations and will make it easier for TIPC to support new media types\nin the future.\n\nSigned-off-by: Allan Stephens \u003callan.stephens@windriver.com\u003e\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "4d163a326fa4868cce1bb75dd95855d40e5497c6",
      "tree": "7c126c2875c638bd85c7edc083c3f014a57b6a42",
      "parents": [
        "c61b666e260d5cc2e0203b21c689321e6ab0d676"
      ],
      "author": {
        "name": "Allan Stephens",
        "email": "allan.stephens@windriver.com",
        "time": "Fri Oct 07 13:37:34 2011 -0400"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Tue Dec 27 11:33:27 2011 -0500"
      },
      "message": "tipc: Add new address conversion routines for Ethernet media\n\nEnhances TIPC\u0027s Ethernet media support to provide 3 new address conversion\nroutines, which allow TIPC to interpret an address that is in string form\nand to convert an address to and from the 20 byte format used in TIPC\u0027s\nneighbor discovery messages.\n\nThese routines are pre-requisites to a follow on commit that hides all\nmedia-specific addressing details from TIPC\u0027s generic bearer code.\n\nSigned-off-by: Allan Stephens \u003callan.stephens@windriver.com\u003e\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "c61b666e260d5cc2e0203b21c689321e6ab0d676",
      "tree": "3099d9f46c035b36c7555e75221df44f79f477a3",
      "parents": [
        "6c349210101352103d9055636845155bc801ae9b"
      ],
      "author": {
        "name": "Allan Stephens",
        "email": "allan.stephens@windriver.com",
        "time": "Fri Oct 07 11:31:49 2011 -0400"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Tue Dec 27 11:13:06 2011 -0500"
      },
      "message": "tipc: Improve handling of media address printing errors\n\nEnhances conversion of a media address to printable form so that an\nunconvertable address will be displayed as a string of hex digits,\nrather than not being displayed at all. (Also removes a pointless check\nfor the existence of the media-specific address conversion routine,\nsince the routine is not optional.)\n\nSigned-off-by: Allan Stephens \u003callan.stephens@windriver.com\u003e\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "6c349210101352103d9055636845155bc801ae9b",
      "tree": "530ca1ca9b5fa3bb8092b80a6f875e3a14c5f977",
      "parents": [
        "a31abe8daee5dd618aecb1484dbe9bf68c5c8a4a"
      ],
      "author": {
        "name": "Allan Stephens",
        "email": "allan.stephens@windriver.com",
        "time": "Fri Oct 07 09:54:44 2011 -0400"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Tue Dec 27 11:13:06 2011 -0500"
      },
      "message": "tipc: Streamline media registration error checking\n\nSimplifies error handling performed during media registration, since\nTIPC no longer supports the dynamic addition of new media types that\nare potentially error-prone. These simplifications include the following:\n\n1) No longer check for premature registration of a new media type.\n2) No longer check for negative link priority values (which was pointless\n   since such values are unsigned, and could cause a compiler warning).\n3) No longer generate a warning describing the exact cause of any\n   registration failure (just warns that overall registration failed).\n\nSigned-off-by: Allan Stephens \u003callan.stephens@windriver.com\u003e\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "a31abe8daee5dd618aecb1484dbe9bf68c5c8a4a",
      "tree": "1ebbadd93079b9caf5e7b9854e3cfe7554407d2e",
      "parents": [
        "c79be4549ae39edc026aa67eb64a25424542943f"
      ],
      "author": {
        "name": "Allan Stephens",
        "email": "allan.stephens@windriver.com",
        "time": "Fri Oct 07 09:25:12 2011 -0400"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Tue Dec 27 11:13:06 2011 -0500"
      },
      "message": "tipc: Eliminate duplication of media structures\n\nChanges TIPC\u0027s list of registered media types from an array of media\nstructures to an array of pointers to media structures. This eliminates\nthe need to copy of the contents of the structure passed in during media\nregistration.\n\nSigned-off-by: Allan Stephens \u003callan.stephens@windriver.com\u003e\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "c79be4549ae39edc026aa67eb64a25424542943f",
      "tree": "b0ad99587a85cf9335ae2bff9a7dd94729d3ef4b",
      "parents": [
        "706767da1bd0726d8fbc62e4818cb29193676a74"
      ],
      "author": {
        "name": "Allan Stephens",
        "email": "allan.stephens@windriver.com",
        "time": "Thu Oct 06 16:40:55 2011 -0400"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Tue Dec 27 11:13:06 2011 -0500"
      },
      "message": "tipc: Optimize detection of duplicate media registration\n\nStreamlines the detection of an attempt to register a TIPC media structure\nusing an already registered name or type identifier. The revised logic now\nreuses an existing routine to detect an existing name and no longer\nunnecessarily manipulates the media type counter during an unsuccessful\nregistration attempt.\n\nSigned-off-by: Allan Stephens \u003callan.stephens@windriver.com\u003e\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "706767da1bd0726d8fbc62e4818cb29193676a74",
      "tree": "f2df46f9850bfb984e64f44ec6c8fca0bf249922",
      "parents": [
        "2060a5774452e35b4a1dc4371abbb5ffd691355f"
      ],
      "author": {
        "name": "Allan Stephens",
        "email": "allan.stephens@windriver.com",
        "time": "Thu Oct 06 15:28:44 2011 -0400"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Tue Dec 27 11:13:05 2011 -0500"
      },
      "message": "tipc: Register new media using pre-compiled structure\n\nSpeeds up the registration of TIPC media types by passing in a structure\ncontaining the required information, rather than by passing in the various\nfields describing the media type individually.\n\nSigned-off-by: Allan Stephens \u003callan.stephens@windriver.com\u003e\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "2060a5774452e35b4a1dc4371abbb5ffd691355f",
      "tree": "0389286aed5bec256476585b0e793216c95a2412",
      "parents": [
        "1ba9ac7c35b30d6b958a30240e21ddaea8d21b35"
      ],
      "author": {
        "name": "Allan Stephens",
        "email": "allan.stephens@windriver.com",
        "time": "Thu Oct 06 13:57:51 2011 -0400"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Tue Dec 27 11:13:05 2011 -0500"
      },
      "message": "tipc: Enable use by containers having their own network namespace\n\nPermits a Linux container to use TIPC sockets even when it has its own\nnetwork namespace defined by removing the check that prohibits such use.\nThis makes it possible for users who wish to isolate their container\nnetwork traffic from normal network traffic to utilize TIPC.\n\nSigned-off-by: Allan Stephens \u003callan.stephens@windriver.com\u003e\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "371de6e4e0042adf4f9b54c414154f57414ddd37",
      "tree": "721f3c4697a926a22c81a842afbbc143614ab9c6",
      "parents": [
        "ebbd857e6b9a92c0aff4aacd1b1d2361d888633e"
      ],
      "author": {
        "name": "Keith Packard",
        "email": "keithp@keithp.com",
        "time": "Mon Dec 26 17:02:11 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 26 21:07:27 2011 -0800"
      },
      "message": "drm/i915: Disable RC6 on Sandybridge by default\n\nRC6 fails again.\n\n\u003e I found my system freeze mostly during starting up X and KDE. Sometimes it\n\u003e works for some minutes, sometimes it freezes immediatly. When the freeze\n\u003e happens, everything is dead (even the reset button does not work, I need to\n\u003e power cycle).\n\n\u003e I disabled RC6, and my system runs wonderfully.\n\n\u003e The system is a Z68 Pro board with Sandybridge i5-2500K processor, 8\n\u003e GB of RAM and UEFI firmware.\n\nReported-by: Kai Krakow \u003churikhan77@gmail.com\u003e\nSigned-off-by: Keith Packard \u003ckeithp@keithp.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ebbd857e6b9a92c0aff4aacd1b1d2361d888633e",
      "tree": "598e75393461083817f9f06023a4f0b7b499c9b1",
      "parents": [
        "7f54492fbca0074d7db117d7972a80347e0b40a5"
      ],
      "author": {
        "name": "Keith Packard",
        "email": "keithp@keithp.com",
        "time": "Mon Dec 26 17:02:10 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 26 21:07:26 2011 -0800"
      },
      "message": "drm/i915: Disable semaphores by default on SNB\n\nSemaphores still cause problems on some machines:\n\n\u003e From Udo Steinberg:\n\u003e\n\u003e With Linux-3.2-rc6 I\u0027m frequently seeing GPU hangs when large amounts of\n\u003e text scroll in an xterm, such as when extracting a tar archive. Such as this\n\u003e one (note the timestamps):\n\u003e\n\u003e  I can reproduce it fairly easily with something\n\u003e  as simple as:\n\u003e\n\u003e\t  while true; do dmesg; done\n\nThis patch turns them off on SNB while leaving them on for IVB.\n\nReported-by: Udo Steinberg \u003cudo@hypervisor.org\u003e\nCc: Daniel Vetter \u003cdaniel@ffwll.ch\u003e\nCc: Eugeni Dodonov \u003ceugeni@dodonov.net\u003e\nSigned-off-by: Keith Packard \u003ckeithp@keithp.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1ba9ac7c35b30d6b958a30240e21ddaea8d21b35",
      "tree": "942143e924ea4d11d120b614691b90ee540ba15f",
      "parents": [
        "c159d30c59dc84934f8ef46f934ce1232c558ecd"
      ],
      "author": {
        "name": "Nicolas de Pesloüan",
        "email": "nicolas.2p.debian@free.fr",
        "time": "Mon Dec 26 13:35:24 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Dec 26 20:09:35 2011 -0500"
      },
      "message": "bonding: document undocumented active_slave sysfs entry.\n\nv2, based on Jay\u0027s review.\n\nI kept the \u0027link must be up\u0027 part, because this is enforced in the code.\n\nSigned-off-by: Nicolas de Pesloüan \u003cnicolas.2p.debian@free.fr\u003e\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\ncc: Andy Gospodarek \u003candy@greyhouse.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7f54492fbca0074d7db117d7972a80347e0b40a5",
      "tree": "a42f39bbcc84af8f13c2fd46502324741536657d",
      "parents": [
        "6fd8fb7f55cb6d45e7f078cd0eaf7e3c243f6c33",
        "fae9dbb4b462d2c908186a47464c7a5299ee27a9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 26 13:17:00 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 26 13:17:00 2011 -0800"
      },
      "message": "Merge branch \u0027kvm-updates/3.2\u0027 of git://git.kernel.org/pub/scm/virt/kvm/kvm\n\n* \u0027kvm-updates/3.2\u0027 of git://git.kernel.org/pub/scm/virt/kvm/kvm:\n  KVM: PPC: e500: include linux/export.h\n  KVM: PPC: fix kvmppc_start_thread() for CONFIG_SMP\u003dN\n  KVM: PPC: protect use of kvmppc_h_pr\n  KVM: PPC: move compute_tlbie_rb to book3s_64 common header\n  KVM: Don\u0027t automatically expose the TSC deadline timer in cpuid\n  KVM: Device assignment permission checks\n  KVM: Remove ability to assign a device without iommu support\n  KVM: x86: Prevent starting PIT timers in the absence of irqchip support\n"
    },
    {
      "commit": "6fd8fb7f55cb6d45e7f078cd0eaf7e3c243f6c33",
      "tree": "3fa2bfd807c0f61acd875acf8f54ea2906022006",
      "parents": [
        "6d4b9e38d3980826abccfbd90e95bf4bd41b8dd2",
        "2ca526bf4953380abfe5dff455e356967b239c70"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 26 12:46:17 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 26 12:46:17 2011 -0800"
      },
      "message": "Merge tag \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394\n\npost 3.2-rc7 pull request\n\n* tag \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394:\n  MAINTAINERS: firewire git URL update\n"
    },
    {
      "commit": "c159d30c59dc84934f8ef46f934ce1232c558ecd",
      "tree": "b3ad64130eee7237f41813c42f588c1c516d3d53",
      "parents": [
        "e143a1ada39110f9596e4ffd4e0b8399e5ab88d4"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Dec 26 15:24:36 2011 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Dec 26 15:24:36 2011 -0500"
      },
      "message": "ipv6: Kill useless route tracing bits in net/ipv6/route.c\n\nRDBG() wasn\u0027t even used, and the messages printed by RT6_DEBUG() were\nfar from useful.  Just get rid of all this stuff, we can replace it\nwith something more suitable if we want.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e143a1ada39110f9596e4ffd4e0b8399e5ab88d4",
      "tree": "109f2ab42dea67df53557c8c025045e4a51af3e4",
      "parents": [
        "e09e9d189bc2d31dc365a3d846a09086317350b6"
      ],
      "author": {
        "name": "Axel Lin",
        "email": "axel.lin@gmail.com",
        "time": "Sun Dec 25 23:35:34 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Dec 26 15:18:36 2011 -0500"
      },
      "message": "mlx4: Add missing include of linux/slab.h\n\nInclude linux/slab.h to fix below build error:\n\n  CC      drivers/net/ethernet/mellanox/mlx4/resource_tracker.o\ndrivers/net/ethernet/mellanox/mlx4/resource_tracker.c: In function \u0027mlx4_init_resource_tracker\u0027:\ndrivers/net/ethernet/mellanox/mlx4/resource_tracker.c:233: error: implicit declaration of function \u0027kzalloc\u0027\ndrivers/net/ethernet/mellanox/mlx4/resource_tracker.c:234: warning: assignment makes pointer from integer without a cast\ndrivers/net/ethernet/mellanox/mlx4/resource_tracker.c: In function \u0027mlx4_free_resource_tracker\u0027:\ndrivers/net/ethernet/mellanox/mlx4/resource_tracker.c:264: error: implicit declaration of function \u0027kfree\u0027\ndrivers/net/ethernet/mellanox/mlx4/resource_tracker.c: In function \u0027alloc_qp_tr\u0027:\ndrivers/net/ethernet/mellanox/mlx4/resource_tracker.c:370: warning: assignment makes pointer from integer without a cast\ndrivers/net/ethernet/mellanox/mlx4/resource_tracker.c: In function \u0027alloc_mtt_tr\u0027:\ndrivers/net/ethernet/mellanox/mlx4/resource_tracker.c:386: warning: assignment makes pointer from integer without a cast\ndrivers/net/ethernet/mellanox/mlx4/resource_tracker.c: In function \u0027alloc_mpt_tr\u0027:\ndrivers/net/ethernet/mellanox/mlx4/resource_tracker.c:402: warning: assignment makes pointer from integer without a cast\ndrivers/net/ethernet/mellanox/mlx4/resource_tracker.c: In function \u0027alloc_eq_tr\u0027:\ndrivers/net/ethernet/mellanox/mlx4/resource_tracker.c:417: warning: assignment makes pointer from integer without a cast\ndrivers/net/ethernet/mellanox/mlx4/resource_tracker.c: In function \u0027alloc_cq_tr\u0027:\ndrivers/net/ethernet/mellanox/mlx4/resource_tracker.c:431: warning: assignment makes pointer from integer without a cast\ndrivers/net/ethernet/mellanox/mlx4/resource_tracker.c: In function \u0027alloc_srq_tr\u0027:\ndrivers/net/ethernet/mellanox/mlx4/resource_tracker.c:446: warning: assignment makes pointer from integer without a cast\ndrivers/net/ethernet/mellanox/mlx4/resource_tracker.c: In function \u0027alloc_counter_tr\u0027:\ndrivers/net/ethernet/mellanox/mlx4/resource_tracker.c:461: warning: assignment makes pointer from integer without a cast\ndrivers/net/ethernet/mellanox/mlx4/resource_tracker.c: In function \u0027add_res_range\u0027:\ndrivers/net/ethernet/mellanox/mlx4/resource_tracker.c:521: warning: assignment makes pointer from integer without a cast\ndrivers/net/ethernet/mellanox/mlx4/resource_tracker.c: In function \u0027mac_add_to_slave\u0027:\ndrivers/net/ethernet/mellanox/mlx4/resource_tracker.c:1193: warning: assignment makes pointer from integer without a cast\ndrivers/net/ethernet/mellanox/mlx4/resource_tracker.c: In function \u0027add_mcg_res\u0027:\ndrivers/net/ethernet/mellanox/mlx4/resource_tracker.c:2521: warning: assignment makes pointer from integer without a cast\nmake[5]: *** [drivers/net/ethernet/mellanox/mlx4/resource_tracker.o] Error 1\nmake[4]: *** [drivers/net/ethernet/mellanox/mlx4] Error 2\nmake[3]: *** [drivers/net/ethernet/mellanox] Error 2\nmake[2]: *** [drivers/net/ethernet] Error 2\nmake[1]: *** [drivers/net] Error 2\nmake: *** [drivers] Error 2\n\nSigned-off-by: Axel Lin \u003caxel.lin@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e09e9d189bc2d31dc365a3d846a09086317350b6",
      "tree": "f0ef78c8b75cde8210ee5832d8b4c82c466c46f1",
      "parents": [
        "3b0723c12e825e26aa5fc0c6970108425824b51d"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Dec 26 14:41:55 2011 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Dec 26 14:41:55 2011 -0500"
      },
      "message": "unix: If we happen to find peer NULL when diag dumping, write zero.\n\nOtherwise we leave uninitialized kernel memory in there.\n\nReported-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3b0723c12e825e26aa5fc0c6970108425824b51d",
      "tree": "23ae96d0b284a5676aa826e23c338a6292642d01",
      "parents": [
        "c5e1fd8ccae09f574d6f978c90c2b968ee29030c"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@parallels.com",
        "time": "Mon Dec 26 14:08:47 2011 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Dec 26 14:08:47 2011 -0500"
      },
      "message": "unix_diag: Fix incoming connections nla length\n\nThe NLA_PUT macro should accept the actual attribute length, not\nthe amount of elements in array :(\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@parallels.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6d4b9e38d3980826abccfbd90e95bf4bd41b8dd2",
      "tree": "7473e333fc5aae6dd1d4b7f86205a330818518ce",
      "parents": [
        "4962516b2309d76964f9df0d33e74f43b624a42d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 26 10:25:26 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 26 10:25:26 2011 -0800"
      },
      "message": "vfs: fix handling of lock allocation failure in lease-break case\n\nBruce Fields notes that commit 778fc546f749 (\"locks: fix tracking of\ninprogress lease breaks\") introduced a possible error pointer\ndereference on failure to allocate memory.  locks_conflict() will\ndereference the passed-in new lease lock structure that may be an error pointer.\n\nThis means an open (without O_NONBLOCK set) on a file with a lease\napplied (generally only done when Samba or nfsd (with v4) is running)\ncould crash if a kmalloc() fails.\n\nSo instead of playing games with IS_ERROR() all over the place, just\ncheck the allocation failure early.  That makes the code more\nstraightforward, and avoids this possible bad pointer dereference.\n\nBased-on-patch-by: J. Bruce Fields \u003cbfields@redhat.com\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "fae9dbb4b462d2c908186a47464c7a5299ee27a9",
      "tree": "1fa5e288ce5a1f4813ee4bfe187a00404c2a9174",
      "parents": [
        "251da03897b383904901620835044e298061875f"
      ],
      "author": {
        "name": "Scott Wood",
        "email": "scottwood@freescale.com",
        "time": "Tue Dec 20 14:43:45 2011 +0000"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Mon Dec 26 13:28:03 2011 +0200"
      },
      "message": "KVM: PPC: e500: include linux/export.h\n\nThis is required for THIS_MODULE.  We recently stopped acquiring\nit via some other header.\n\nSigned-off-by: Scott Wood \u003cscottwood@freescale.com\u003e\nSigned-off-by: Alexander Graf \u003cagraf@suse.de\u003e\n"
    },
    {
      "commit": "251da03897b383904901620835044e298061875f",
      "tree": "01e2d3ff93f67b992054a9ad182f99530bd9c65f",
      "parents": [
        "96f38d72867bc54c312decaf8463f1e9607136da"
      ],
      "author": {
        "name": "Michael Neuling",
        "email": "mikey@neuling.org",
        "time": "Thu Nov 10 16:03:20 2011 +0000"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Mon Dec 26 13:28:02 2011 +0200"
      },
      "message": "KVM: PPC: fix kvmppc_start_thread() for CONFIG_SMP\u003dN\n\nCurrently kvmppc_start_thread() tries to wake other SMT threads via\nxics_wake_cpu().  Unfortunately xics_wake_cpu only exists when\nCONFIG_SMP\u003dY so when compiling with CONFIG_SMP\u003dN we get:\n\n  arch/powerpc/kvm/built-in.o: In function `.kvmppc_start_thread\u0027:\n  book3s_hv.c:(.text+0xa1e0): undefined reference to `.xics_wake_cpu\u0027\n\nThe following should be fine since kvmppc_start_thread() shouldn\u0027t\ncalled to start non-zero threads when SMP\u003dN since threads_per_core\u003d1.\n\nSigned-off-by: Michael Neuling \u003cmikey@neuling.org\u003e\nSigned-off-by: Alexander Graf \u003cagraf@suse.de\u003e\n"
    },
    {
      "commit": "96f38d72867bc54c312decaf8463f1e9607136da",
      "tree": "faa83ee91b7a406a3a22273b2f3f07dea6689cf5",
      "parents": [
        "36cc66d638d3ffbc635b0d48b29c1128fdad38f4"
      ],
      "author": {
        "name": "Andreas Schwab",
        "email": "schwab@linux-m68k.org",
        "time": "Tue Nov 08 07:17:39 2011 +0000"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Mon Dec 26 13:28:01 2011 +0200"
      },
      "message": "KVM: PPC: protect use of kvmppc_h_pr\n\nkvmppc_h_pr is only available if CONFIG_KVM_BOOK3S_64_PR.\n\nSigned-off-by: Andreas Schwab \u003cschwab@linux-m68k.org\u003e\nSigned-off-by: Alexander Graf \u003cagraf@suse.de\u003e\n"
    },
    {
      "commit": "36cc66d638d3ffbc635b0d48b29c1128fdad38f4",
      "tree": "26951168034391d951994641fc0eaf991d5fc778",
      "parents": [
        "4d25a066b69fb749a39d0d4c610689dd765a0b0e"
      ],
      "author": {
        "name": "Andreas Schwab",
        "email": "schwab@linux-m68k.org",
        "time": "Tue Nov 08 07:08:52 2011 +0000"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Mon Dec 26 13:28:00 2011 +0200"
      },
      "message": "KVM: PPC: move compute_tlbie_rb to book3s_64 common header\n\ncompute_tlbie_rb is only used on ppc64 and cannot be compiled on ppc32.\n\nSigned-off-by: Andreas Schwab \u003cschwab@linux-m68k.org\u003e\nSigned-off-by: Alexander Graf \u003cagraf@suse.de\u003e\n"
    },
    {
      "commit": "4d25a066b69fb749a39d0d4c610689dd765a0b0e",
      "tree": "34f644f5a0f734a815225cade757088a9862318b",
      "parents": [
        "3d27e23b17010c668db311140b17bbbb70c78fb9"
      ],
      "author": {
        "name": "Jan Kiszka",
        "email": "jan.kiszka@siemens.com",
        "time": "Wed Dec 21 12:28:29 2011 +0100"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Mon Dec 26 13:27:44 2011 +0200"
      },
      "message": "KVM: Don\u0027t automatically expose the TSC deadline timer in cpuid\n\nUnlike all of the other cpuid bits, the TSC deadline timer bit is set\nunconditionally, regardless of what userspace wants.\n\nThis is broken in several ways:\n - if userspace doesn\u0027t use KVM_CREATE_IRQCHIP, and doesn\u0027t emulate the TSC\n   deadline timer feature, a guest that uses the feature will break\n - live migration to older host kernels that don\u0027t support the TSC deadline\n   timer will cause the feature to be pulled from under the guest\u0027s feet;\n   breaking it\n - guests that are broken wrt the feature will fail.\n\nFix by not enabling the feature automatically; instead report it to userspace.\nBecause the feature depends on KVM_CREATE_IRQCHIP, which we cannot guarantee\nwill be called, we expose it via a KVM_CAP_TSC_DEADLINE_TIMER and not\nKVM_GET_SUPPORTED_CPUID.\n\nFixes the Illumos guest kernel, which uses the TSC deadline timer feature.\n\n[avi: add the KVM_CAP + documentation]\n\nReported-by: Alexey Zaytsev \u003calexey.zaytsev@gmail.com\u003e\nTested-by: Alexey Zaytsev \u003calexey.zaytsev@gmail.com\u003e\nSigned-off-by: Jan Kiszka \u003cjan.kiszka@siemens.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "3d27e23b17010c668db311140b17bbbb70c78fb9",
      "tree": "d3d87399212b2dda0bbf6616e4a580b35e7d7760",
      "parents": [
        "423873736b78f549fbfa2f715f2e4de7e6c5e1e9"
      ],
      "author": {
        "name": "Alex Williamson",
        "email": "alex.williamson@redhat.com",
        "time": "Tue Dec 20 21:59:09 2011 -0700"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Dec 25 19:03:54 2011 +0200"
      },
      "message": "KVM: Device assignment permission checks\n\nOnly allow KVM device assignment to attach to devices which:\n\n - Are not bridges\n - Have BAR resources (assume others are special devices)\n - The user has permissions to use\n\nAssigning a bridge is a configuration error, it\u0027s not supported, and\ntypically doesn\u0027t result in the behavior the user is expecting anyway.\nDevices without BAR resources are typically chipset components that\nalso don\u0027t have host drivers.  We don\u0027t want users to hold such devices\ncaptive or cause system problems by fencing them off into an iommu\ndomain.  We determine \"permission to use\" by testing whether the user\nhas access to the PCI sysfs resource files.  By default a normal user\nwill not have access to these files, so it provides a good indication\nthat an administration agent has granted the user access to the device.\n\n[Yang Bai: add missing #include]\n[avi: fix comment style]\n\nSigned-off-by: Alex Williamson \u003calex.williamson@redhat.com\u003e\nSigned-off-by: Yang Bai \u003chamo.by@gmail.com\u003e\nSigned-off-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\n"
    },
    {
      "commit": "423873736b78f549fbfa2f715f2e4de7e6c5e1e9",
      "tree": "62526563ccca81957a4c100aa0bc359dcd10af08",
      "parents": [
        "0924ab2cfa98b1ece26c033d696651fd62896c69"
      ],
      "author": {
        "name": "Alex Williamson",
        "email": "alex.williamson@redhat.com",
        "time": "Tue Dec 20 21:59:03 2011 -0700"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Dec 25 17:13:31 2011 +0200"
      },
      "message": "KVM: Remove ability to assign a device without iommu support\n\nThis option has no users and it exposes a security hole that we\ncan allow devices to be assigned without iommu protection.  Make\nKVM_DEV_ASSIGN_ENABLE_IOMMU a mandatory option.\n\nSigned-off-by: Alex Williamson \u003calex.williamson@redhat.com\u003e\nSigned-off-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\n"
    },
    {
      "commit": "0924ab2cfa98b1ece26c033d696651fd62896c69",
      "tree": "87b23ddd025d5c44ebaa941b92c8cd8ade6af703",
      "parents": [
        "4962516b2309d76964f9df0d33e74f43b624a42d"
      ],
      "author": {
        "name": "Jan Kiszka",
        "email": "jan.kiszka@siemens.com",
        "time": "Wed Dec 14 19:25:13 2011 +0100"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Dec 25 17:13:18 2011 +0200"
      },
      "message": "KVM: x86: Prevent starting PIT timers in the absence of irqchip support\n\nUser space may create the PIT and forgets about setting up the irqchips.\nIn that case, firing PIT IRQs will crash the host:\n\nBUG: unable to handle kernel NULL pointer dereference at 0000000000000128\nIP: [\u003cffffffffa10f6280\u003e] kvm_set_irq+0x30/0x170 [kvm]\n...\nCall Trace:\n [\u003cffffffffa11228c1\u003e] pit_do_work+0x51/0xd0 [kvm]\n [\u003cffffffff81071431\u003e] process_one_work+0x111/0x4d0\n [\u003cffffffff81071bb2\u003e] worker_thread+0x152/0x340\n [\u003cffffffff81075c8e\u003e] kthread+0x7e/0x90\n [\u003cffffffff815a4474\u003e] kernel_thread_helper+0x4/0x10\n\nPrevent this by checking the irqchip mode before starting a timer. We\ncan\u0027t deny creating the PIT if the irqchips aren\u0027t set up yet as\ncurrent user land expects this order to work.\n\nSigned-off-by: Jan Kiszka \u003cjan.kiszka@siemens.com\u003e\nSigned-off-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\n"
    },
    {
      "commit": "2ca526bf4953380abfe5dff455e356967b239c70",
      "tree": "122e4d6a486a8000630546d955f52c9750720b2f",
      "parents": [
        "a572e688cf5d99d2382016c7241ec37b523b0137"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Tue Dec 20 21:23:28 2011 +0100"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sun Dec 25 14:05:05 2011 +0100"
      },
      "message": "MAINTAINERS: firewire git URL update\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "c5e1fd8ccae09f574d6f978c90c2b968ee29030c",
      "tree": "e4485dc086ce76c4ff2ff551246255f5de0a250b",
      "parents": [
        "60b778ce519625102d3f72a2071ea72a05e990ce",
        "ceb98d03eac5704820f2ac1f370c9ff385e3a9f5"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Dec 25 02:21:45 2011 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Dec 25 02:21:45 2011 -0500"
      },
      "message": "Merge branch \u0027nf-next\u0027 of git://1984.lsi.us.es/net-next\n"
    },
    {
      "commit": "ceb98d03eac5704820f2ac1f370c9ff385e3a9f5",
      "tree": "ae01b67bc105d3d8039b9dd53b893215407866c2",
      "parents": [
        "9413902796f56f6209e19dd54e840ed46950612c"
      ],
      "author": {
        "name": "Pablo Neira Ayuso",
        "email": "pablo@netfilter.org",
        "time": "Fri Dec 23 14:28:59 2011 +0100"
      },
      "committer": {
        "name": "Pablo Neira Ayuso",
        "email": "pablo@netfilter.org",
        "time": "Sun Dec 25 02:43:17 2011 +0100"
      },
      "message": "netfilter: xtables: add nfacct match to support extended accounting\n\nThis patch adds the match that allows to perform extended\naccounting. It requires the new nfnetlink_acct infrastructure.\n\n # iptables -I INPUT -p tcp --sport 80 -m nfacct --nfacct-name http-traffic\n # iptables -I OUTPUT -p tcp --dport 80 -m nfacct --nfacct-name http-traffic\n\nSigned-off-by: Pablo Neira Ayuso \u003cpablo@netfilter.org\u003e\n"
    },
    {
      "commit": "9413902796f56f6209e19dd54e840ed46950612c",
      "tree": "d03b478f7b5e11305cebd5ff26e7342dde7456b4",
      "parents": [
        "80e60e67bc4bbfe61b61a344f542af23e16abdbf"
      ],
      "author": {
        "name": "Pablo Neira Ayuso",
        "email": "pablo@netfilter.org",
        "time": "Fri Dec 23 14:19:50 2011 +0100"
      },
      "committer": {
        "name": "Pablo Neira Ayuso",
        "email": "pablo@netfilter.org",
        "time": "Sun Dec 25 02:43:03 2011 +0100"
      },
      "message": "netfilter: add extended accounting infrastructure over nfnetlink\n\nWe currently have two ways to account traffic in netfilter:\n\n- iptables chain and rule counters:\n\n # iptables -L -n -v\nChain INPUT (policy DROP 3 packets, 867 bytes)\n pkts bytes target     prot opt in     out     source               destination\n    8  1104 ACCEPT     all  --  lo     *       0.0.0.0/0            0.0.0.0/0\n\n- use flow-based accounting provided by ctnetlink:\n\n # conntrack -L\ntcp      6 431999 ESTABLISHED src\u003d192.168.1.130 dst\u003d212.106.219.168 sport\u003d58152 dport\u003d80 packets\u003d47 bytes\u003d7654 src\u003d212.106.219.168 dst\u003d192.168.1.130 sport\u003d80 dport\u003d58152 packets\u003d49 bytes\u003d66340 [ASSURED] mark\u003d0 use\u003d1\n\nWhile trying to display real-time accounting statistics, we require\nto pool the kernel periodically to obtain this information. This is\nOK if the number of flows is relatively low. However, in case that\nthe number of flows is huge, we can spend a considerable amount of\ncycles to iterate over the list of flows that have been obtained.\n\nMoreover, if we want to obtain the sum of the flow accounting results\nthat match some criteria, we have to iterate over the whole list of\nexisting flows, look for matchings and update the counters.\n\nThis patch adds the extended accounting infrastructure for\nnfnetlink which aims to allow displaying real-time traffic accounting\nwithout the need of complicated and resource-consuming implementation\nin user-space. Basically, this new infrastructure allows you to create\naccounting objects. One accounting object is composed of packet and\nbyte counters.\n\nIn order to manipulate create accounting objects, you require the\nnew libnetfilter_acct library. It contains several examples of use:\n\nlibnetfilter_acct/examples# ./nfacct-add http-traffic\nlibnetfilter_acct/examples# ./nfacct-get\nhttp-traffic \u003d { pkts \u003d 000000000000,   bytes \u003d 000000000000 };\n\nThen, you can use one of this accounting objects in several iptables\nrules using the new nfacct match (which comes in a follow-up patch):\n\n # iptables -I INPUT -p tcp --sport 80 -m nfacct --nfacct-name http-traffic\n # iptables -I OUTPUT -p tcp --dport 80 -m nfacct --nfacct-name http-traffic\n\nThe idea is simple: if one packet matches the rule, the nfacct match\nupdates the counters.\n\nThanks to Patrick McHardy, Eric Dumazet, Changli Gao for reviewing and\nproviding feedback for this contribution.\n\nSigned-off-by: Pablo Neira Ayuso \u003cpablo@netfilter.org\u003e\n"
    },
    {
      "commit": "4962516b2309d76964f9df0d33e74f43b624a42d",
      "tree": "815e16e71e76b2ca6ffc09b176ecfb4263f426df",
      "parents": [
        "5f0a6e2d503896062f641639dacfe5055c2f593b",
        "8a78389651b3e411ec5a7df61404734f52d6f4eb"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 24 13:34:44 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 24 13:34:44 2011 -0800"
      },
      "message": "Merge branch \u0027drm-fixes\u0027 of git://people.freedesktop.org/~airlied/linux\n\n* \u0027drm-fixes\u0027 of git://people.freedesktop.org/~airlied/linux:\n  vmwgfx: fix incorrect VRAM size check in vmw_kms_fb_create()\n  drm/radeon/kms: bail on BTC parts if MC ucode is missing\n"
    },
    {
      "commit": "60b778ce519625102d3f72a2071ea72a05e990ce",
      "tree": "ecae42cc8809809287e10007643370eaed7e3055",
      "parents": [
        "035c4c16bea2814890c64c657d177e91cec1f473"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Sat Dec 24 06:56:49 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Dec 24 16:13:27 2011 -0500"
      },
      "message": "rfs: better sizing of dev_flow_table\n\nAim of this patch is to provide full range of rps_flow_cnt on 64bit arches.\n\nTheorical limit on number of flows is 2^32\n\nFix some buggy RPS/RFS macros as well.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCC: Tom Herbert \u003ctherbert@google.com\u003e\nCC: Xi Wang \u003cxi.wang@gmail.com\u003e\nCC: Laurent Chavey \u003cchavey@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c43c5f39584c0f388a7e5372312c2c48221a4415",
      "tree": "1b3fcf8f3c8503df0ac0879bd268bf232bd00a0d",
      "parents": [
        "bb52c7acf871537a468433775151339f783d2e8c",
        "1a31a4a8388a90e9240fb4e5e5c9c909fcfdfd0e"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Dec 24 16:10:26 2011 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Dec 24 16:10:26 2011 -0500"
      },
      "message": "Merge branch \u0027nf\u0027 of git://1984.lsi.us.es/net\n"
    },
    {
      "commit": "bb52c7acf871537a468433775151339f783d2e8c",
      "tree": "d31943c70571f28ff241234a2bffa765a1d4ef92",
      "parents": [
        "5f0a6e2d503896062f641639dacfe5055c2f593b"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Fri Dec 23 19:28:51 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Dec 24 16:08:50 2011 -0500"
      },
      "message": "netem: dont call vfree() under spinlock and BH disabled\n\ncommit 6373a9a286 (netem: use vmalloc for distribution table) added a\nregression, since vfree() is called while holding a spinlock and BH\nbeing disabled.\n\nFix this by doing the pointers swap in critical section, and freeing\nafter spinlock release.\n\nAlso add __GFP_NOWARN to the kmalloc() try, since we fallback to\nvmalloc().\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nAcked-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1a31a4a8388a90e9240fb4e5e5c9c909fcfdfd0e",
      "tree": "bff2c3e3e1da9274bd5d33e36e8fd9479f21ba72",
      "parents": [
        "81378f728fe560e175fb2e8fd33206793567e896"
      ],
      "author": {
        "name": "Pablo Neira Ayuso",
        "email": "pablo@netfilter.org",
        "time": "Sat Dec 24 19:28:47 2011 +0100"
      },
      "committer": {
        "name": "Pablo Neira Ayuso",
        "email": "pablo@netfilter.org",
        "time": "Sat Dec 24 19:49:04 2011 +0100"
      },
      "message": "netfilter: ctnetlink: fix scheduling while atomic if helper is autoloaded\n\nThis patch fixes one scheduling while atomic error:\n\n[  385.565186] ctnetlink v0.93: registering with nfnetlink.\n[  385.565349] BUG: scheduling while atomic: lt-expect_creat/16163/0x00000200\n\nIt can be triggered with utils/expect_create included in\nlibnetfilter_conntrack if the FTP helper is not loaded.\n\nSigned-off-by: Pablo Neira Ayuso \u003cpablo@netfilter.org\u003e\n"
    },
    {
      "commit": "81378f728fe560e175fb2e8fd33206793567e896",
      "tree": "9b64245afa92a9790c9df00067250ed625c5156e",
      "parents": [
        "3f1e6d3fd37bd4f25e5b19f1c7ca21850426c33f"
      ],
      "author": {
        "name": "Pablo Neira Ayuso",
        "email": "pablo@netfilter.org",
        "time": "Sat Dec 24 19:03:46 2011 +0100"
      },
      "committer": {
        "name": "Pablo Neira Ayuso",
        "email": "pablo@netfilter.org",
        "time": "Sat Dec 24 19:49:04 2011 +0100"
      },
      "message": "netfilter: ctnetlink: fix return value of ctnetlink_get_expect()\n\nThis fixes one bogus error that is returned to user-space:\n\nlibnetfilter_conntrack/utils# ./expect_get\nTEST: get expectation (-1)(Unknown error 18446744073709551504)\n\nThis patch includes the correct handling for EAGAIN (nfnetlink\nuses this error value to restart the operation after module\nauto-loading).\n\nSigned-off-by: Pablo Neira Ayuso \u003cpablo@netfilter.org\u003e\n"
    },
    {
      "commit": "80e60e67bc4bbfe61b61a344f542af23e16abdbf",
      "tree": "c5269a9db0efcfb64ea83190b4b83500773711af",
      "parents": [
        "b9e61f0dff4b50e207ff4bb09472bda7881b21a9"
      ],
      "author": {
        "name": "Pablo Neira Ayuso",
        "email": "pablo@netfilter.org",
        "time": "Sat Dec 24 14:11:39 2011 +0100"
      },
      "committer": {
        "name": "Pablo Neira Ayuso",
        "email": "pablo@netfilter.org",
        "time": "Sat Dec 24 14:35:59 2011 +0100"
      },
      "message": "netfilter: ctnetlink: get and zero operations must be atomic\n\nThe get and zero operations have to be done in an atomic context,\notherwise counters added between them will be lost.\n\nThis problem was spotted by Changli Gao while discussing the\nnfacct infrastructure.\n\nSigned-off-by: Pablo Neira Ayuso \u003cpablo@netfilter.org\u003e\n"
    },
    {
      "commit": "5f0a6e2d503896062f641639dacfe5055c2f593b",
      "tree": "711b4756a2cfc90c073af0811a3aec22dbb221ea",
      "parents": [
        "a22681fabb1564d00d54e804ec95ba9330d857ed"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Dec 23 21:51:06 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Dec 23 21:51:06 2011 -0800"
      },
      "message": "Linux 3.2-rc7\n"
    }
  ],
  "next": "a22681fabb1564d00d54e804ec95ba9330d857ed"
}
