)]}'
{
  "log": [
    {
      "commit": "c861ea2cb2c25c1698734d9b0540a09e253690a1",
      "tree": "b83e5313ca07a3efbcbcdd7fe33e0f6ad6284493",
      "parents": [
        "3610639d1fceb09cb418c65fcbe9136c31eee03a",
        "ac8cc0fa5395fe2278e305a4cbed48e90d88d878"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 06 17:11:39 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 06 17:11:39 2009 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/security-testing-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/security-testing-2.6:\n  CRED: Fix regression in cap_capable() as shown up by sys_faccessat() [ver #3]\n  Revert \"CRED: Fix regression in cap_capable() as shown up by sys_faccessat() [ver #2]\"\n  SELinux: shrink sizeof av_inhert selinux_class_perm and context\n  CRED: Fix regression in cap_capable() as shown up by sys_faccessat() [ver #2]\n  keys: fix sparse warning by adding __user annotation to cast\n  smack: Add support for unlabeled network hosts and networks\n  selinux: Deprecate and schedule the removal of the the compat_net functionality\n  netlabel: Update kernel configuration API\n"
    },
    {
      "commit": "ac8cc0fa5395fe2278e305a4cbed48e90d88d878",
      "tree": "515f577bfddd054ee4373228be7c974dfb8133af",
      "parents": [
        "238c6d54830c624f34ac9cf123ac04aebfca5013",
        "3699c53c485bf0168e6500d0ed18bf931584dd7c"
      ],
      "author": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Wed Jan 07 09:58:22 2009 +1100"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Wed Jan 07 09:58:22 2009 +1100"
      },
      "message": "Merge branch \u0027next\u0027 into for-linus\n"
    },
    {
      "commit": "035da16fb529c0383ac27c712a5bbade5c11cafe",
      "tree": "72fa6626ceba7763ac4fcb35e48724b27c4d0d6d",
      "parents": [
        "ff8561c4ad09ca38c866436c9d67df2309b7dd40"
      ],
      "author": {
        "name": "Mark McLoughlin",
        "email": "markmc@redhat.com",
        "time": "Mon Dec 15 12:58:29 2008 +0000"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Jan 06 10:44:34 2009 -0800"
      },
      "message": "s390: remove s390_root_dev_*()\n\nReplace s390_root_dev_register() with root_device_register() etc.\n\n[Includes fix from Cornelia Huck]\n\nSigned-off-by: Mark McLoughlin \u003cmarkmc@redhat.com\u003e\nCc: Cornelia Huck \u003ccornelia.huck@de.ibm.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "15b0669072127f282896b3bef2e9df4ec5d7264f",
      "tree": "8480e09bbc7c26cd5c9ef048b734664cb6fe76be",
      "parents": [
        "c155b914651753f843445d2f860bc00137df5d52",
        "3537d54c0c39de5738bba8d19f128478b0b96a71"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 05 18:44:59 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 05 18:44:59 2009 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (44 commits)\n  qlge: Fix sparse warnings for tx ring indexes.\n  qlge: Fix sparse warning regarding rx buffer queues.\n  qlge: Fix sparse endian warning in ql_hw_csum_setup().\n  qlge: Fix sparse endian warning for inbound packet control block flags.\n  qlge: Fix sparse warnings for byte swapping in qlge_ethool.c\n  myri10ge: print MAC and serial number on probe failure\n  pkt_sched: cls_u32: Fix locking in u32_change()\n  iucv: fix cpu hotplug\n  af_iucv: Free iucv path/socket in path_pending callback\n  af_iucv: avoid left over IUCV connections from failing connects\n  af_iucv: New error return codes for connect()\n  net/ehea: bitops work on unsigned longs\n  Revert \"net: Fix for initial link state in 2.6.28\"\n  tcp: Kill extraneous SPLICE_F_NONBLOCK checks.\n  tcp: don\u0027t mask EOF and socket errors on nonblocking splice receive\n  dccp: Integrate the TFRC library with DCCP\n  dccp: Clean up ccid.c after integration of CCID plugins\n  dccp: Lockless integration of CCID congestion-control plugins\n  qeth: get rid of extra argument after printk to dev_* conversion\n  qeth: No large send using EDDP for HiperSockets.\n  ...\n"
    },
    {
      "commit": "520c85346666d4d9a6fcaaa8450542302dc28b91",
      "tree": "9c9cc9e2493b606104dd8602302ae28258ebeac0",
      "parents": [
        "e8c82c2e23e3527e0c9dc195e432c16784d270fa",
        "4ae8978cf92a96257cd8998a49e781be83571d64"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 05 18:32:06 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 05 18:32:06 2009 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6:\n  inotify: fix type errors in interfaces\n  fix breakage in reiserfs_new_inode()\n  fix the treatment of jfs special inodes\n  vfs: remove duplicate code in get_fs_type()\n  add a vfs_fsync helper\n  sys_execve and sys_uselib do not call into fsnotify\n  zero i_uid/i_gid on inode allocation\n  inode-\u003ei_op is never NULL\n  ntfs: don\u0027t NULL i_op\n  isofs check for NULL -\u003ei_op in root directory is dead code\n  affs: do not zero -\u003ei_op\n  kill suid bit only for regular files\n  vfs: lseek(fd, 0, SEEK_CUR) race condition\n"
    },
    {
      "commit": "6f57321422e0d359e83c978c2b03db77b967b7d5",
      "tree": "80d92a8fff5b5ae27ca618f34acf9d696289d6ba",
      "parents": [
        "f1d3e4dca3f8d4f55656477e83d0afe0ea7cbaed"
      ],
      "author": {
        "name": "Jarek Poplawski",
        "email": "jarkao2@gmail.com",
        "time": "Mon Jan 05 18:14:19 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 05 18:14:19 2009 -0800"
      },
      "message": "pkt_sched: cls_u32: Fix locking in u32_change()\n\nNew nodes are inserted in u32_change() under rtnl_lock() with wmb(),\nso without tcf_tree_lock() like in other classifiers (e.g. cls_fw).\nThis isn\u0027t enough without rmb() on the read side, but on the other\nhand adding such barriers doesn\u0027t give any savings, so the lock is\nadded instead.\n\nReported-by: m0sia \u003cm0sia@plotinka.ru\u003e\nSigned-off-by: Jarek Poplawski \u003cjarkao2@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f1d3e4dca3f8d4f55656477e83d0afe0ea7cbaed",
      "tree": "1d2d2ebc94dd4b18d26f25cd062bea741f85237e",
      "parents": [
        "65dbd7c2778f1921ef1ee2a73e47a2a126fed30f"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Mon Jan 05 18:09:02 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 05 18:09:02 2009 -0800"
      },
      "message": "iucv: fix cpu hotplug\n\nIf the iucv module is compiled in/loaded but no user is registered cpu\nhot remove doesn\u0027t work. Reason for that is that the iucv cpu hotplug\nnotifier on CPU_DOWN_PREPARE checks if the iucv_buffer_cpumask would\nbe empty after the corresponding bit would be cleared. However the bit\nwas never set since iucv wasn\u0027t enable. That causes all cpu hot unplug\noperations to fail in this scenario.\nTo fix this use iucv_path_table as an indicator wether iucv is enabled\nor not.\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Ursula Braun \u003cursula.braun@de.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "65dbd7c2778f1921ef1ee2a73e47a2a126fed30f",
      "tree": "12b6b4517fcc202fe1246c2c87e540cf135fa2d4",
      "parents": [
        "18becbc5479f88d5adc218374ca62b8b93ec2545"
      ],
      "author": {
        "name": "Hendrik Brueckner",
        "email": "brueckner@linux.vnet.ibm.com",
        "time": "Mon Jan 05 18:08:23 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 05 18:08:23 2009 -0800"
      },
      "message": "af_iucv: Free iucv path/socket in path_pending callback\n\nFree iucv path after iucv_path_sever() calls in iucv_callback_connreq()\n(path_pending() iucv callback).\nIf iucv_path_accept() fails, free path and free/kill newly created socket.\n\nSigned-off-by: Hendrik Brueckner \u003cbrueckner@linux.vnet.ibm.com\u003e\nSigned-off-by: Ursula Braun \u003cursula.braun@de.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "18becbc5479f88d5adc218374ca62b8b93ec2545",
      "tree": "c99569ff4d63df5cef410152fbb83d74c683f8be",
      "parents": [
        "55cdea9ed9cf2d76993e40ed7a1fc649a14db07c"
      ],
      "author": {
        "name": "Ursula Braun",
        "email": "ursula.braun@de.ibm.com",
        "time": "Mon Jan 05 18:07:46 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 05 18:07:46 2009 -0800"
      },
      "message": "af_iucv: avoid left over IUCV connections from failing connects\n\nFor certain types of AFIUCV socket connect failures IUCV connections\nare left over. Add some cleanup-statements to avoid cluttered IUCV\nconnections.\n\nSigned-off-by: Ursula Braun \u003cursula.braun@de.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "55cdea9ed9cf2d76993e40ed7a1fc649a14db07c",
      "tree": "86a4fb463649731d88c6495fbd029f5751e578a2",
      "parents": [
        "48e4cc777c091b037acaf39036a77ece43fe1ab9"
      ],
      "author": {
        "name": "Hendrik Brueckner",
        "email": "brueckner@linux.vnet.ibm.com",
        "time": "Mon Jan 05 18:07:07 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 05 18:07:07 2009 -0800"
      },
      "message": "af_iucv: New error return codes for connect()\n\nIf the iucv_path_connect() call fails then return an error code that\ncorresponds to the iucv_path_connect() failure condition; instead of\nreturning -ECONNREFUSED for any failure.\n\nThis helps to improve error handling for user space applications\n(e.g.  inform the user that the z/VM guest is not authorized to\nconnect to other guest virtual machines).\n\nThe error return codes are based on those described in connect(2).\n\nSigned-off-by: Hendrik Brueckner \u003cbrueckner@linux.vnet.ibm.com\u003e\nSigned-off-by: Ursula Braun \u003cursula.braun@de.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c276e098d3ee33059b4a1c747354226cec58487c",
      "tree": "df833d2e6719dd83f219a846520a581b152d5332",
      "parents": [
        "7945cc6464a4db0caf6dfacdfe05806051c4cb7b"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 05 16:01:51 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 05 16:01:51 2009 -0800"
      },
      "message": "Revert \"net: Fix for initial link state in 2.6.28\"\n\nThis reverts commit 22604c866889c4b2e12b73cbf1683bda1b72a313.\n\nWe can\u0027t fix this issue in this way, because we now can try\nto take the dev_base_lock rwlock as a writer in software interrupt\ncontext and that is not allowed without major surgery elsewhere.\n\nThis initial link state problem needs to be solved in some other\nway.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "56ff5efad96182f4d3cb3dc6b07396762c658f16",
      "tree": "cb91f93aa2324573527165d56d230b606a3111ed",
      "parents": [
        "acfa4380efe77e290d3a96b11cd4c9f24f4fbb18"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Dec 09 09:34:39 2008 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jan 05 11:54:28 2009 -0500"
      },
      "message": "zero i_uid/i_gid on inode allocation\n\n... and don\u0027t bother in callers.  Don\u0027t bother with zeroing i_blocks,\nwhile we are at it - it\u0027s already been zeroed.\n\ni_mode is not worth the effort; it has no common default value.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "7945cc6464a4db0caf6dfacdfe05806051c4cb7b",
      "tree": "8bcd5f9cb276229f1b25844249a4243b6f95f656",
      "parents": [
        "4f7d54f59bc470f0aaa932f747a95232d7ebf8b1"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 05 00:59:00 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 05 00:59:00 2009 -0800"
      },
      "message": "tcp: Kill extraneous SPLICE_F_NONBLOCK checks.\n\nIn splice TCP receive, the SPLICE_F_NONBLOCK flag is used\nto compute the \"timeo\" value.  So checking it again inside\nof the main receive loop to trigger -EAGAIN processing is\nentirely unnecessary.\n\nNoticed by Jarek P. and Lennert Buytenhek.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4f7d54f59bc470f0aaa932f747a95232d7ebf8b1",
      "tree": "9d391a6c4d9fdb1c8534127702b5543b0b5ab089",
      "parents": [
        "129fa44785a399248ae2466b6cb5c655e96668f7"
      ],
      "author": {
        "name": "Lennert Buytenhek",
        "email": "buytenh@marvell.com",
        "time": "Mon Jan 05 00:00:12 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 05 00:00:12 2009 -0800"
      },
      "message": "tcp: don\u0027t mask EOF and socket errors on nonblocking splice receive\n\nCurrently, setting SPLICE_F_NONBLOCK on splice from a TCP socket\nresults in masking of EOF (RDHUP) and error conditions on the socket\nby an -EAGAIN return.  Move the NONBLOCK check in tcp_splice_read()\nto be after the EOF and error checks to fix this.\n\nSigned-off-by: Lennert Buytenhek \u003cbuytenh@marvell.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "129fa44785a399248ae2466b6cb5c655e96668f7",
      "tree": "c2440b83e752c6cf3e6ec6f60492b85ddb8932a9",
      "parents": [
        "e5fd56ca4eb3a130882bbef69d6952ef6aca5c8d"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Sun Jan 04 21:45:33 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jan 04 21:45:33 2009 -0800"
      },
      "message": "dccp: Integrate the TFRC library with DCCP\n\nThis patch integrates the TFRC library, which is a dependency of CCID-3 (and\nCCID-4), with the new use of CCIDs in the DCCP module.\t\t\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e5fd56ca4eb3a130882bbef69d6952ef6aca5c8d",
      "tree": "4e0c6670335f2434fbe8f44554988ca9832a685a",
      "parents": [
        "ddebc973c56b51b4e5d84d606f0430d81b895d67"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Sun Jan 04 21:43:23 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jan 04 21:43:23 2009 -0800"
      },
      "message": "dccp: Clean up ccid.c after integration of CCID plugins\n\nThis patch cleans up after integrating the CCID modules and, in addition,\n\n * moves the if/else cases from ccid_delete() into ccid_hc_{tx,rx}_delete();\n * removes the \u0027gfp\u0027 argument to ccid_new() - since it is always gfp_any().\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ddebc973c56b51b4e5d84d606f0430d81b895d67",
      "tree": "cebe0e4461346072b2063132fc1d9cf8c3e148f1",
      "parents": [
        "6ea2fde13abd3444008ab5e9585f9ed249e6047e"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Sun Jan 04 21:42:53 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jan 04 21:42:53 2009 -0800"
      },
      "message": "dccp: Lockless integration of CCID congestion-control plugins\n\nBased on Arnaldo\u0027s earlier patch, this patch integrates the standardised\nCCID congestion control plugins (CCID-2 and CCID-3) of DCCP with dccp.ko:\n\n * enables a faster connection path by eliminating the need to always go \n   through the CCID registration lock;\n\n * updates the implementation to use only a single array whose size equals\n   the number of configured CCIDs instead of the maximum (256);\n\n * since the CCIDs are now fixed array elements, synchronization is no\n   longer needed, simplifying use and implementation.\n\nCCID-2 is suggested as minimum for a basic DCCP implementation (RFC 4340, 10);\nCCID-3 is a standards-track CCID supported by RFC 4342 and RFC 5348.\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6e5c172cf7ca1ab878cc6a6a4c1d52fef60f3ee0",
      "tree": "d4b55754280eae3bbd6643eb9dd3f89b26137096",
      "parents": [
        "858eb711ba64f8a001d7003295b8078bcab33b6d"
      ],
      "author": {
        "name": "Oliver Hartkopp",
        "email": "oliver@hartkopp.net",
        "time": "Sun Jan 04 17:31:18 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jan 04 17:31:18 2009 -0800"
      },
      "message": "can: update can-bcm for hrtimer hardirq callbacks\n\nSince commit ca109491f612aab5c8152207631c0444f63da97f (\"hrtimer:\nremoving all ur callback modes\") the hrtimer callbacks are processed\nonly in hardirq context.\n\nThis patch moves some functionality into tasklets to run in softirq\ncontext.\n\nAdditionally some duplicated code was removed in bcm_rx_thr_flush()\nand an avoidable memcpy was removed from bcm_rx_handler().\n\nSigned-off-by: Oliver Hartkopp \u003coliver@hartkopp.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n\n\n"
    },
    {
      "commit": "858eb711ba64f8a001d7003295b8078bcab33b6d",
      "tree": "a1279f141a97dfdc83049ef96445042f2e140e32",
      "parents": [
        "914d11647b6d6fe81bdf0c059612ee36282b8cee"
      ],
      "author": {
        "name": "Roel Kluin",
        "email": "roel.kluin@gmail.com",
        "time": "Sun Jan 04 17:29:21 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jan 04 17:29:21 2009 -0800"
      },
      "message": "DCB: fix kfree(skb)\n\nUse kfree_skb instead of kfree for struct sk_buff pointers.\n\nSigned-off-by: Roel Kluin \u003croel.kluin@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "914d11647b6d6fe81bdf0c059612ee36282b8cee",
      "tree": "8d37925767cf7ba112a6d1ba21d3340e067c0d33",
      "parents": [
        "22604c866889c4b2e12b73cbf1683bda1b72a313"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Sun Jan 04 17:27:31 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jan 04 17:27:31 2009 -0800"
      },
      "message": "ipv6: IPV6_PKTINFO relied userspace providing correct length\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nReported-by: Eric Sesterhenn \u003csnakebyte@gmx.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "22604c866889c4b2e12b73cbf1683bda1b72a313",
      "tree": "4ed1c7cb6cc022b599b8eb3e8bc274dc9df92362",
      "parents": [
        "745417e20684e4951afcabfe74583a3884e54980"
      ],
      "author": {
        "name": "Michael Marineau",
        "email": "mike@marineau.org",
        "time": "Sun Jan 04 17:18:51 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jan 04 17:18:51 2009 -0800"
      },
      "message": "net: Fix for initial link state in 2.6.28\n\nFrom: Michael Marineau \u003cmike@marineau.org\u003e\n\nCommit b47300168e770b60ab96c8924854c3b0eb4260eb \"Do not fire linkwatch\nevents until the device is registered.\" was made as a workaround for\ndrivers that call netif_carrier_off before registering the device.\nUnfortunately this causes these drivers to incorrectly report their\nlink status as IF_OPER_UNKNOWN which can falsely set the IFF_RUNNING\nflag when the interface is first brought up. This issues was\npreviously pointed out[1] but was dismissed saying that IFF_RUNNING is\nnot related to the link status. From my digging IFF_RUNNING, as\nreported to userspace, is based on the link state. It is set based on\n__LINK_STATE_START and IF_OPER_UP or IF_OPER_UNKNOWN. See [2], [3],\nand [4]. (Whether or not the kernel has IFF_RUNNING set in flags is\nnot reported to user space so it may well be independent of the link,\nI don\u0027t know if and when it may get set.)\n\nThe end result depends slightly depending on the driver. The the two I\ntested were e1000e and b44. With e1000e if the system is booted\nwithout a network cable attached the interface will falsely report\nRUNNING when it is brought up causing NetworkManager to attempt to\nstart it and eventually time out. With b44 when the system is booted\nwith a network cable attached and brought up with dhcpcd it will time\nout the first time.\n\nThe attached patch that will still set the operstate variable\ncorrectly to IF_OPER_UP/DOWN/etc when linkwatch_fire_event is called\nbut then return rather than skipping the linkwatch_fire_event call\nentirely as the previous fix did. (sorry it isn\u0027t inline, I don\u0027t have\na patch friendly email client at the moment)\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f32f8b72e02e851972a0172603104046aa5fec96",
      "tree": "10b286e280816a9202bde24938f69c11abd45347",
      "parents": [
        "939678f81a55c839ae58c9cc3d4ec6d0f60e7dc7"
      ],
      "author": {
        "name": "Simon Holm Thøgersen",
        "email": "odie@cs.aau.dk",
        "time": "Sun Jan 04 17:11:24 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jan 04 17:11:24 2009 -0800"
      },
      "message": "net/rfkill/rfkill.c: fix unused rfkill_led_trigger() warning\n\ncommit 4dec9b807be757780ca3611a959ac22c28d292a7 (\"rfkill: strip pointless\nnotifier chain\") removed the only user of rfkill_led_trigger() that was not\nguarded by #ifdef CONFIG_RFKILL_LEDS. Therefore, move rfkill_led_trigger()\ncompletely inside #ifdef CONFIG_RFKILL_LEDS and avoid the compile time\nwarning:\n\nnet/rfkill/rfkill.c:59: warning: \u0027rfkill_led_trigger\u0027 defined but not used\n\nSigned-off-by: Simon Holm Thøgersen \u003codie@cs.aau.dk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5d38a079ce3971f932bbdc0dc5b887806fabd5dc",
      "tree": "79d948098add1f6c52ecd42c151ce6b6fa1dbc5a",
      "parents": [
        "b530256d2e0f1a75fab31f9821129fff1bb49faa"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Sun Jan 04 16:13:40 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jan 04 16:13:40 2009 -0800"
      },
      "message": "gro: Add page frag support\n\nThis patch allows GRO to merge page frags (skb_shinfo(skb)-\u003efrags)\nin one skb, rather than using the less efficient frag_list.\n\nIt also adds a new interface, napi_gro_frags to allow drivers\nto inject page frags directly into the stack without allocating\nan skb.  This is intended to be the GRO equivalent for LRO\u0027s\nlro_receive_frags interface.\n\nThe existing GSO interface can already handle page frags with\nor without an appended frag_list so nothing needs to be changed\nthere.\n\nThe merging itself is rather simple.  We store any new frag entries\nafter the last existing entry, without checking whether the first\nnew entry can be merged with the last existing entry.  Making this\ncheck would actually be easy but since no existing driver can\nproduce contiguous frags anyway it would just be mental masturbation.\n\nIf the total number of entries would exceed the capacity of a\nsingle skb, we simply resort to using frag_list as we do now.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b530256d2e0f1a75fab31f9821129fff1bb49faa",
      "tree": "e3e615d405921fc157169180d53c91d09b9a7186",
      "parents": [
        "cfc3a44c3c32abe48898398d9a92e8524c976803"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Sun Jan 04 16:13:19 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jan 04 16:13:19 2009 -0800"
      },
      "message": "gro: Use gso_size to store MSS\n\nIn order to allow GRO packets without frag_list at all, we need to\nstore the MSS in the packet itself.  The obvious place is gso_size.\nThe only thing to watch out for is if the packet ends up not being\nGRO then we need to clear gso_size before pushing the packet into\nthe stack.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "14deae41566b5cdd992c01d0069518ced5227c83",
      "tree": "d15c3dfabdc3ccf10997487c29df35fa58387e55",
      "parents": [
        "eb4dea5853046727bfbb579f0c9a8cae7369f7c6"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jan 04 16:04:39 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jan 04 16:04:39 2009 -0800"
      },
      "message": "ipv6: Fix sporadic sendmsg -EINVAL when sending to multicast groups.\n\nThanks to excellent diagnosis by Eduard Guzovsky.\n\nThe core problem is that on a network with lots of active\nmulticast traffic, the neighbour cache can fill up.  If\nwe try to allocate a new route and thus neighbour cache\nentry, the bog-standard GC attempt the neighbour layer does\nin ineffective because route entries hold a reference\nto the existing neighbour entries and GC can only liberate\nentries with no references.\n\nIPV4 already has a way to handle this, by doing a route cache\nGC in such situations (when neigh attach returns -ENOBUFS).\n\nSo simply mimick this on the ipv6 side.\n\nTested-by: Eduard Guzovsky \u003ceguzovsky@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "157cf649a735a2f7e8dba0ed08e6e38b6c30d886",
      "tree": "85895367c24023d363d5ee7b5ed2fb16eaf08721",
      "parents": [
        "564f6993ffef656aebaf46cf2f1f6cb4f5c97207"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Dec 14 04:57:47 2008 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Jan 04 15:14:41 2009 -0500"
      },
      "message": "sanitize audit_fd_pair()\n\n* no allocations\n* return void\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "f3298dc4f2277874d40cb4fc3a6e277317d6603b",
      "tree": "8ba8f7e7a0597965b2f6c7106718a59cc164eab1",
      "parents": [
        "4f6b434fee2402b3decdeae9d16eb648725ae426"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 10 03:16:51 2008 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Jan 04 15:14:39 2009 -0500"
      },
      "message": "sanitize audit_socketcall\n\n* don\u0027t bother with allocations\n* now that it can\u0027t fail, make it return void\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "ad36b88e2d22e9ef42797581d3ecea9feadd9488",
      "tree": "7d06f166763cf7273aa9d784051c1df8f260b7af",
      "parents": [
        "c847d47cb7b2fa78b17c9e17ed3fbd010ee3d3ca"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@redhat.com",
        "time": "Fri Jan 02 13:50:20 2009 +0000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 02 10:19:43 2009 -0800"
      },
      "message": "tty: Fix an ircomm warning and note another bug\n\nRoel Kluin noted that line is unsigned so one test is unneccessary. Also\nadd a warning for another flaw I noticed while making this change.\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "be6d3e56a6b9b3a4ee44a0685e39e595073c6f0d",
      "tree": "3a770f4cc676efeba443b28caa1ad195eeff49bc",
      "parents": [
        "6a94cb73064c952255336cc57731904174b2c58f"
      ],
      "author": {
        "name": "Kentaro Takeda",
        "email": "takedakn@nttdata.co.jp",
        "time": "Wed Dec 17 13:24:15 2008 +0900"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 31 18:07:37 2008 -0500"
      },
      "message": "introduce new LSM hooks where vfsmount is available.\n\nAdd new LSM hooks for path-based checks.  Call them on directory-modifying\noperations at the points where we still know the vfsmount involved.\n\nSigned-off-by: Kentaro Takeda \u003ctakedakn@nttdata.co.jp\u003e\nSigned-off-by: Tetsuo Handa \u003cpenguin-kernel@I-love.SAKURA.ne.jp\u003e\nSigned-off-by: Toshiharu Harada \u003charadats@nttdata.co.jp\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "6c2e8ac0953fccdd24dc6c4b9e08e8f1cd68cf07",
      "tree": "c52e242ec5e5c2d131af2d9dbb038f78f724a74c",
      "parents": [
        "6a94cb73064c952255336cc57731904174b2c58f"
      ],
      "author": {
        "name": "Paul Moore",
        "email": "paul.moore@hp.com",
        "time": "Wed Dec 31 12:54:11 2008 -0500"
      },
      "committer": {
        "name": "Paul Moore",
        "email": "paul.moore@hp.com",
        "time": "Wed Dec 31 12:54:11 2008 -0500"
      },
      "message": "netlabel: Update kernel configuration API\n\nUpdate the NetLabel kernel API to expose the new features added in kernel\nreleases 2.6.25 and 2.6.28: the static/fallback label functionality and network\naddress based selectors.\n\nSigned-off-by: Paul Moore \u003cpaul.moore@hp.com\u003e\n"
    },
    {
      "commit": "f57fa1d6a6b3414e853d3d17e339ac48816e4406",
      "tree": "e1d3acdb12f902e916765915a4f9a65cbae909cc",
      "parents": [
        "6094c85a935f7eadb4c607c6dc6d86c0a9f09a4b",
        "08cc36cbd1ee7d86422713bb21551eed1326b894"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 30 17:45:45 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 30 17:45:45 2008 -0800"
      },
      "message": "Merge git://git.linux-nfs.org/projects/trondmy/nfs-2.6\n\n* git://git.linux-nfs.org/projects/trondmy/nfs-2.6: (70 commits)\n  fs/nfs/nfs4proc.c: make nfs4_map_errors() static\n  rpc: add service field to new upcall\n  rpc: add target field to new upcall\n  nfsd: support callbacks with gss flavors\n  rpc: allow gss callbacks to client\n  rpc: pass target name down to rpc level on callbacks\n  nfsd: pass client principal name in rsc downcall\n  rpc: implement new upcall\n  rpc: store pointer to pipe inode in gss upcall message\n  rpc: use count of pipe openers to wait for first open\n  rpc: track number of users of the gss upcall pipe\n  rpc: call release_pipe only on last close\n  rpc: add an rpc_pipe_open method\n  rpc: minor gss_alloc_msg cleanup\n  rpc: factor out warning code from gss_pipe_destroy_msg\n  rpc: remove unnecessary assignment\n  NFS: remove unused status from encode routines\n  NFS: increment number of operations in each encode routine\n  NFS: fix comment placement in nfs4xdr.c\n  NFS: fix tabs in nfs4xdr.c\n  ...\n"
    },
    {
      "commit": "08cc36cbd1ee7d86422713bb21551eed1326b894",
      "tree": "52cc683387f903b34a7f6f798dcdbae385b58db8",
      "parents": [
        "3c92ec8ae91ecf59d88c798301833d7cf83f2179",
        "46f72f57d279688c4524df78edb5738db730eeef"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Dec 30 16:51:43 2008 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Dec 30 16:51:43 2008 -0500"
      },
      "message": "Merge branch \u0027devel\u0027 into next\n"
    },
    {
      "commit": "eb4dea5853046727bfbb579f0c9a8cae7369f7c6",
      "tree": "79e18d6284494ab63a890885b0eecce9431a9597",
      "parents": [
        "0f23174aa8c1aa7a2a6050a72a60d290ef9ee578"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Mon Dec 29 23:04:08 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Dec 29 23:04:08 2008 -0800"
      },
      "message": "net: Fix percpu counters deadlock\n\nWhen we converted the protocol atomic counters such as the orphan\ncount and the total socket count deadlocks were introduced due to\nthe mismatch in BH status of the spots that used the percpu counter\noperations.\n\nBased on the diagnosis and patch by Peter Zijlstra, this patch\nfixes these issues by disabling BH where we may be in process\ncontext.\n\nReported-by: Jeff Kirsher \u003cjeffrey.t.kirsher@intel.com\u003e\nTested-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0f23174aa8c1aa7a2a6050a72a60d290ef9ee578",
      "tree": "530ed36b528ff6f08034788cef32e0e0756d3bcc",
      "parents": [
        "f201a8a4511a4c9953189924df3c880207194b41"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Mon Dec 29 12:23:42 2008 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Dec 29 22:44:47 2008 -0800"
      },
      "message": "cpumask: prepare for iterators to only go to nr_cpu_ids/nr_cpumask_bits: net\n\nIn future all cpumask ops will only be valid (in general) for bit\nnumbers \u003c nr_cpu_ids.  So use that instead of NR_CPUS in iterators\nand other comparisons.\n\nThis is always safe: no cpu number can be \u003e\u003d nr_cpu_ids, and\nnr_cpu_ids is initialized to NR_CPUS at boot.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Mike Travis \u003ctravis@sgi.com\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "68ce9c0e3411b430b9800015e318af9f96933aa0",
      "tree": "784b1d4f4e25990b5eb13a4ce11105daf8657841",
      "parents": [
        "8e8ba85417366afd2361e315c6ba5949d3eff56f"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Sun Dec 28 17:57:25 2008 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Dec 29 19:40:46 2008 -0800"
      },
      "message": "cls_cgroup: clean up Kconfig\n\ncls_cgroup can\u0027t be compiled as a module, since it\u0027s not supported by\ncgroup.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8e8ba85417366afd2361e315c6ba5949d3eff56f",
      "tree": "f093eb8aedd4ca4a888ae9f867cb1b1277a12073",
      "parents": [
        "2f068bf8711c35b98bf9a0172555b8390a762fc0"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Mon Dec 29 19:39:03 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Dec 29 19:40:45 2008 -0800"
      },
      "message": "cls_cgroup: clean up for cgroup part\n\n- It\u0027s better to use container_of() instead of casting cgroup_subsys_state *\n  to cgroup_cls_state *.\n- Add helper function task_cls_state().\n- Rename net_cls_state() to cgrp_cls_state().\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2f068bf8711c35b98bf9a0172555b8390a762fc0",
      "tree": "270fc6c0a3df7ccbf9a77b4060dd3bc115c1b0b5",
      "parents": [
        "684f4a4c4a69f7226d8c7559c0cdfc7bd388335a"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Sun Dec 28 17:57:19 2008 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Dec 29 19:40:44 2008 -0800"
      },
      "message": "cls_cgroup: fix an oops when removing a cgroup\n\nWhen removing a cgroup, an oops was triggered immediately. The cause\nis wrong kfree() in cgrp_destroy().\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "68888d105365366c5e1e0424cc939c1fc757f9c4",
      "tree": "c57165c3793b67d5ce73dc3b9e5f46490dd6b06c",
      "parents": [
        "c8e95c021caa9574350cea6f2b4f91e232e3f3ee"
      ],
      "author": {
        "name": "Simon Horman",
        "email": "horms@verge.net.au",
        "time": "Mon Dec 29 18:37:36 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Dec 29 18:37:36 2008 -0800"
      },
      "message": "IPVS: Make \"no destination available\" message more consistent between schedulers\n\nAcked-by: Graeme Fowler \u003cgraeme@graemef.net\u003e\nSigned-off-by: Simon Horman \u003chorms@verge.net.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8eb79863962bbf18ebf648335e329bfd468432fa",
      "tree": "bd700ccdbed8aee9c36d9a20d139fe577cda766a",
      "parents": [
        "91b208c7c1db4cefa2247f8243fbda75b0472d24"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@aristanetworks.com",
        "time": "Mon Dec 29 18:21:48 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Dec 29 18:21:48 2008 -0800"
      },
      "message": "netns: foreach_netdev_safe is insufficient in default_device_exit\n\nDuring network namespace teardown we either move or delete\nall of the network devices associated with a network namespace.\nIn the case of veth devices deleting one will also delete it\u0027s\npair device.  If both devices are in the same network namespace\nthen for_each_netdev_safe is insufficient as next may point\nto the second veth device we have deleted.\n\nTo avoid problems I do what we do in __rtnl_kill_links and\nrestart the scan of the device list, after we have deleted\na device.\n\nCurrently dev_change_netnamespace does not appear to suffer from\nthis problem, but wireless devices are also paired and likely\nshould be moved between network namespaces together.  So I have\nerrored on the side of caution and restart the scan of the network\ndevices in that case as well.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@aristanetworks.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "91b208c7c1db4cefa2247f8243fbda75b0472d24",
      "tree": "8acdb0d44f2223f36ee20f7975487fd1cdcaa582",
      "parents": [
        "2d0658d4ef92e4958172c832bd88c961840e599e"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Mon Dec 29 18:20:06 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Dec 29 18:20:06 2008 -0800"
      },
      "message": "net: make xfrm_statistics_seq_show use generic snmp_fold_field\n\nNo reason to roll our own here.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0191b625ca5a46206d2fb862bb08f36f2fcb3b31",
      "tree": "454d1842b1833d976da62abcbd5c47521ebe9bd7",
      "parents": [
        "54a696bd07c14d3b1192d03ce7269bc59b45209a",
        "eb56092fc168bf5af199d47af50c0d84a96db898"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Dec 28 12:49:40 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Dec 28 12:49:40 2008 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6: (1429 commits)\n  net: Allow dependancies of FDDI \u0026 Tokenring to be modular.\n  igb: Fix build warning when DCA is disabled.\n  net: Fix warning fallout from recent NAPI interface changes.\n  gro: Fix potential use after free\n  sfc: If AN is enabled, always read speed/duplex from the AN advertising bits\n  sfc: When disabling the NIC, close the device rather than unregistering it\n  sfc: SFT9001: Add cable diagnostics\n  sfc: Add support for multiple PHY self-tests\n  sfc: Merge top-level functions for self-tests\n  sfc: Clean up PHY mode management in loopback self-test\n  sfc: Fix unreliable link detection in some loopback modes\n  sfc: Generate unique names for per-NIC workqueues\n  802.3ad: use standard ethhdr instead of ad_header\n  802.3ad: generalize out mac address initializer\n  802.3ad: initialize ports LACPDU from const initializer\n  802.3ad: remove typedef around ad_system\n  802.3ad: turn ports is_individual into a bool\n  802.3ad: turn ports is_enabled into a bool\n  802.3ad: make ntt bool\n  ixgbe: Fix set_ringparam in ixgbe to use the same memory pools.\n  ...\n\nFixed trivial IPv4/6 address printing conflicts in fs/cifs/connect.c due\nto the conversion to %pI (in this networking merge) and the addition of\ndoing IPv6 addresses (from the earlier merge of CIFS).\n"
    },
    {
      "commit": "1db2a5c11e495366bff35cf7445d494703f7febe",
      "tree": "3347dd1cab0a2a96a4333524298a62132eb22336",
      "parents": [
        "a39b863342b8aba52390092be95db58f6ed56061",
        "cef7125def4dd104769f400c941199614da0aca1"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Dec 28 12:33:21 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Dec 28 12:33:21 2008 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git390.osdl.marist.edu/pub/scm/linux-2.6\n\n* \u0027for-linus\u0027 of git://git390.osdl.marist.edu/pub/scm/linux-2.6: (85 commits)\n  [S390] provide documentation for hvc_iucv kernel parameter.\n  [S390] convert ctcm printks to dev_xxx and pr_xxx macros.\n  [S390] convert zfcp printks to pr_xxx macros.\n  [S390] convert vmlogrdr printks to pr_xxx macros.\n  [S390] convert zfcp dumper printks to pr_xxx macros.\n  [S390] convert cpu related printks to pr_xxx macros.\n  [S390] convert qeth printks to dev_xxx and pr_xxx macros.\n  [S390] convert sclp printks to pr_xxx macros.\n  [S390] convert iucv printks to dev_xxx and pr_xxx macros.\n  [S390] convert ap_bus printks to pr_xxx macros.\n  [S390] convert dcssblk and extmem printks messages to pr_xxx macros.\n  [S390] convert monwriter printks to pr_xxx macros.\n  [S390] convert s390 debug feature printks to pr_xxx macros.\n  [S390] convert monreader printks to pr_xxx macros.\n  [S390] convert appldata printks to pr_xxx macros.\n  [S390] convert setup printks to pr_xxx macros.\n  [S390] convert hypfs printks to pr_xxx macros.\n  [S390] convert time printks to pr_xxx macros.\n  [S390] convert cpacf printks to pr_xxx macros.\n  [S390] convert cio printks to pr_xxx macros.\n  ...\n"
    },
    {
      "commit": "0da2afd59653d2edf5c8e0f09b23f367ab5bc80f",
      "tree": "d6dad9cf3ca8a352409b5ce5e8e2445434aa00f5",
      "parents": [
        "843813453f52e3378fc988c8364063fd4cb9d0e3"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Fri Dec 26 14:57:42 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Dec 26 14:57:42 2008 -0800"
      },
      "message": "gro: Fix potential use after free\n\nThe initial skb may have been freed after napi_gro_complete in\nnapi_gro_receive if it was merged into an existing packet.  Thus\nwe cannot check same_flow (which indicates whether it was merged)\nafter calling napi_gro_complete.\n\nThis patch fixes this by saving the same_flow status before the\ncall to napi_gro_complete.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d7b06636be162d3f74c9ce5d6d0d9ea4e5d362c8",
      "tree": "95d9b7b0825f145ba080cb9671bed3b3b189fd16",
      "parents": [
        "26bc19ecf6c077c926827c25631340fd2e8fb16e"
      ],
      "author": {
        "name": "Peter P Waskiewicz Jr",
        "email": "peter.p.waskiewicz.jr@intel.com",
        "time": "Fri Dec 26 01:35:35 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Dec 26 01:35:35 2008 -0800"
      },
      "message": "net: Init NAPI dev_list on napi_del\n\nThe recent GRO patches introduced the NAPI removal of devices in\nfree_netdev.  For drivers that can change the number of queues during\ndriver operation, the NAPI infrastructure doesn\u0027t allow the freeing and\nre-addition of NAPI entities without reloading the driver.\n\nThis change reinitializes the dev_list in each NAPI struct on delete,\ninstead of just deleting it (and assigning the list pointers to POISON).\nDrivers that wish to remove/re-add NAPI will need to re-initialize the\nnetdev napi_list after removing all NAPI instances, before re-adding NAPI\ndevices again.\n\nSigned-off-by: Peter P Waskiewicz Jr \u003cpeter.p.waskiewicz.jr@intel.com\u003e\nSigned-off-by: Jeff Kirsher \u003cjeffrey.t.kirsher@intel.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f2712fd0b4097e8385bdb75c0ebd285a057fe299",
      "tree": "f2e1a1b4d5e7f9e9103c714893b0fd792e20c54b",
      "parents": [
        "fdb614c28487df41f7bf2c98e85f29f31885561e"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Fri Dec 26 01:31:18 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Dec 26 01:31:18 2008 -0800"
      },
      "message": "ipsec: Remove useless ret variable\n\nThis patch removes a useless ret variable from the IPv4 ESP/UDP\ndecapsulation code.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "88a44e51e9a5202f8856f72400fc87a39205186d",
      "tree": "05a7d480cf525d6d3a59d10c069544b2bd12e7fd",
      "parents": [
        "c14ea0ca659d378dd377e417162ebd908d1da4ce"
      ],
      "author": {
        "name": "Julia Lawall",
        "email": "julia@diku.dk",
        "time": "Thu Dec 25 18:04:51 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 25 18:04:51 2008 -0800"
      },
      "message": "net/appletalk: Remove redundant test\n\natif is tested for being NULL twice, with the same effect in each case.  I\nhave kept the second test, as it seems to fit well with the comment above it.\n\nA simplified version of the semantic patch that makes this change is as\nfollows: (http://www.emn.fr/x-info/coccinelle/)\n\n// \u003csmpl\u003e\n@r exists@\nlocal idexpression x;\nexpression E;\nposition p1,p2;\n@@\n\nif (x@p1 \u003d\u003d NULL || ...) { ... when forall\n   return ...; }\n... when !\u003d \\(x\u003dE\\|x--\\|x++\\|--x\\|++x\\|x-\u003dE\\|x+\u003dE\\|x|\u003dE\\|x\u0026\u003dE\\|\u0026x\\)\n(\nx@p2 \u003d\u003d NULL\n|\nx@p2 !\u003d NULL\n)\n\n// another path to the test that is not through p1?\n@s exists@\nlocal idexpression r.x;\nposition r.p1,r.p2;\n@@\n\n... when !\u003d x@p1\n(\nx@p2 \u003d\u003d NULL\n|\nx@p2 !\u003d NULL\n)\n\n@fix depends on !s@\nposition r.p1,r.p2;\nexpression x,E;\nstatement S1,S2;\n@@\n\n(\n- if ((x@p2 !\u003d NULL) || ...)\n  S1\n|\n- if ((x@p2 \u003d\u003d NULL) \u0026\u0026 ...) S1\n|\n- BUG_ON(x@p2 \u003d\u003d NULL);\n)\n// \u003c/smpl\u003e\n\nSigned-off-by: Julia Lawall \u003cjulia@diku.dk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "64ff3b938ec6782e6585a83d5459b98b0c3f6eb8",
      "tree": "aa53a121fd7edb8ba5b3fede8ff1990b44265d56",
      "parents": [
        "8510b937ae1e23583abdeb828cad5c518295c61d"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Thu Dec 25 17:12:58 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 25 17:12:58 2008 -0800"
      },
      "message": "tcp: Always set urgent pointer if it\u0027s beyond snd_nxt\n\nOur TCP stack does not set the urgent flag if the urgent pointer\ndoes not fit in 16 bits, i.e., if it is more than 64K from the\nsequence number of a packet.\n\nThis behaviour is different from the BSDs, and clearly contradicts\nthe purpose of urgent mode, which is to send the notification\n(though not necessarily the associated data) as soon as possible.\nOur current behaviour may in fact delay the urgent notification\nindefinitely if the receiver window does not open up.\n\nSimply matching BSD however may break legacy applications which\nincorrectly rely on the out-of-band delivery of urgent data, and\nconversely the in-band delivery of non-urgent data.\n\nAlexey Kuznetsov suggested a safe solution of following BSD only\nif the urgent pointer itself has not yet been transmitted.  This\nway we guarantee that when the remote end sees the packet with\nnon-urgent data marked as urgent due to wrap-around we would have\nadvanced the urgent pointer beyond, either to the actual urgent\ndata or to an as-yet untransmitted packet.\n\nThe only potential downside is that applications on the remote\nend may see multiple SIGURG notifications.  However, this would\noccur anyway with other TCP stacks.  More importantly, the outcome\nof such a duplicate notification is likely to be harmless since\nthe signal itself does not carry any information other than the\nfact that we\u0027re in urgent mode.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8510b937ae1e23583abdeb828cad5c518295c61d",
      "tree": "5ef0449bc7673c99a2134d8bba8e4f1dd4c79549",
      "parents": [
        "9fcb95a105758b81ef0131cd18e2db5149f13e95"
      ],
      "author": {
        "name": "Wei Yongjun",
        "email": "yjwei@cn.fujitsu.com",
        "time": "Thu Dec 25 16:59:03 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 25 16:59:03 2008 -0800"
      },
      "message": "sctp: Add validity check for SCTP_PARTIAL_DELIVERY_POINT socket option\n\nThe latest ietf socket extensions API draft said:\n\n  8.1.21.  Set or Get the SCTP Partial Delivery Point\n\n    Note also that the call will fail if the user attempts to set\n    this value larger than the socket receive buffer size.\n\nThis patch add this validity check for SCTP_PARTIAL_DELIVERY_POINT\nsocket option.\n\nSigned-off-by: Wei Yongjun \u003cyjwei@cn.fujitsu.com\u003e\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9fcb95a105758b81ef0131cd18e2db5149f13e95",
      "tree": "fc38a5c1a91a5137bc385b8bdc7cb30539776222",
      "parents": [
        "aea3c5c05d2c409e93bfa80dcedc06af7da6c13b"
      ],
      "author": {
        "name": "Wei Yongjun",
        "email": "yjwei@cn.fujitsu.com",
        "time": "Thu Dec 25 16:58:11 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 25 16:58:11 2008 -0800"
      },
      "message": "sctp: Avoid memory overflow while FWD-TSN chunk is received with bad stream ID\n\nIf FWD-TSN chunk is received with bad stream ID, the sctp will not do the\nvalidity check, this may cause memory overflow when overwrite the TSN of\nthe stream ID.\n\nThe FORWARD-TSN chunk is like this:\n\nFORWARD-TSN chunk\n  Type                       \u003d 192\n  Flags                      \u003d 0\n  Length                     \u003d 172\n  NewTSN                     \u003d 99\n  Stream                     \u003d 10000\n  StreamSequence             \u003d 0xFFFF\n\nThis patch fix this problem by discard the chunk if stream ID is not\nless than MIS.\n\nSigned-off-by: Wei Yongjun \u003cyjwei@cn.fujitsu.com\u003e\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "aea3c5c05d2c409e93bfa80dcedc06af7da6c13b",
      "tree": "2ee271efa68ef7677c94b1c9daaa33b9ad6a2531",
      "parents": [
        "ea686a2653c5586b1c7192958b9d521abde66e92"
      ],
      "author": {
        "name": "Wei Yongjun",
        "email": "yjwei@cn.fujitsu.com",
        "time": "Thu Dec 25 16:57:24 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 25 16:57:24 2008 -0800"
      },
      "message": "sctp: Implement socket option SCTP_GET_ASSOC_NUMBER\n\nImplement socket option SCTP_GET_ASSOC_NUMBER of the latest ietf socket\nextensions API draft.\n\n  8.2.5.  Get the Current Number of Associations (SCTP_GET_ASSOC_NUMBER)\n\n   This option gets the current number of associations that are attached\n   to a one-to-many style socket.  The option value is an uint32_t.\n\nSigned-off-by: Wei Yongjun \u003cyjwei@cn.fujitsu.com\u003e\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ea686a2653c5586b1c7192958b9d521abde66e92",
      "tree": "f82a38e2dba44629110f111cd4adf49d3df86d9b",
      "parents": [
        "e89c2095815d82eaa9fb85eff42f8b65b67a59cf"
      ],
      "author": {
        "name": "Wei Yongjun",
        "email": "yjwei@cn.fujitsu.com",
        "time": "Thu Dec 25 16:56:45 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 25 16:56:45 2008 -0800"
      },
      "message": "sctp: Fix a typo in socket.c\n\nJust fix a typo in socket.c.\n\nSigned-off-by: Wei Yongjun \u003cyjwei@cn.fujitsu.com\u003e\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e89c2095815d82eaa9fb85eff42f8b65b67a59cf",
      "tree": "a6ee89692051c0fa1328b8b79c3b9d7b44dbeab5",
      "parents": [
        "161c8d2f50109b44b664eaf23831ea1587979a61"
      ],
      "author": {
        "name": "Wei Yongjun",
        "email": "yjwei@cn.fujitsu.com",
        "time": "Thu Dec 25 16:54:58 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 25 16:54:58 2008 -0800"
      },
      "message": "sctp: Bring SCTP_MAXSEG socket option into ietf API extension compliance\n\nBrings maxseg socket option set/get into line with the latest ietf socket\nextensions API draft, while maintaining backwards compatibility.\n\nSigned-off-by: Wei Yongjun \u003cyjwei@cn.fujitsu.com\u003e\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f7d1b9f5aafa371d7f51f644aa3c38bc914e9205",
      "tree": "7120c076df7226818a416822fe972de2efc74b12",
      "parents": [
        "d45227391c70ea12ec129ebfa97841e9b7ff34fd"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Thu Dec 25 16:45:19 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 25 16:45:19 2008 -0800"
      },
      "message": "vlan: fix convertion to net_device_ops\n\ncommit 656299f706e52e0409733d704c2761f1b12d6954\n(vlan: convert to net_device_ops) added a net_device_ops\nwith a NULL ndo_start_xmit field.\n\nThis gives a crash in dev_hard_start_xmit()\n\nFix it using two net_device_ops structures, one for hwaccel vlan,\none for non hwaccel vlan.\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7091e728c570157496e52296d2dbe816a6916836",
      "tree": "9b393f1939f2632495ae083392b2172da2ed5000",
      "parents": [
        "b4ee07df3d8121060200dbe1c6686a4e0682bee2"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Thu Dec 25 16:42:51 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 25 16:42:51 2008 -0800"
      },
      "message": "netns: igmp: make /proc/net/{igmp,mcfilter} per netns\n\nThis patch makes the followinf proc entries per-netns:\n/proc/net/igmp\n/proc/net/mcfilter\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nAcked-by: Daniel Lezcano \u003cdlezcano@fr.ibm.com\u003e\nAcked-by: Benjamin Thery \u003cbenjamin.thery@bull.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b4ee07df3d8121060200dbe1c6686a4e0682bee2",
      "tree": "f318811dae2fcf9e920f097be0a40487aca12173",
      "parents": [
        "cb5b04fe14394a93eb9a3523f5af9f77480a5a04"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Thu Dec 25 16:42:23 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 25 16:42:23 2008 -0800"
      },
      "message": "netns: igmp: allow IPPROTO_IGMP sockets in netns\n\nLooks like everything is already ready.\n\nRequired for ebtables(8) for one thing.\n\nAlso, required for ipmr per-netns (coming soon). (Benjamin)\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nAcked-by: Benjamin Thery \u003cbenjamin.thery@bull.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8f7c502c267c0e5e2dbbbdea9f3e7e85bbc95694",
      "tree": "1c45bf4e00183b5e175381fa1ba8f947037da968",
      "parents": [
        "136f7a1c4239be91e3e0f53532944b9aab7b58f8"
      ],
      "author": {
        "name": "Ursula Braun",
        "email": "braunu@de.ibm.com",
        "time": "Thu Dec 25 13:39:47 2008 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu Dec 25 13:39:24 2008 +0100"
      },
      "message": "[S390] convert iucv printks to dev_xxx and pr_xxx macros.\n\nSigned-off-by: Ursula Braun \u003cbraunu@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "91d5d45ee0a8978870fd12e5c3fe394a530ec2ed",
      "tree": "2849fa4ce5110341627f76ac1fe36289fff27154",
      "parents": [
        "44a01d5ba8a4d543694461cd3e178cfa6b3f221b"
      ],
      "author": {
        "name": "Hendrik Brueckner",
        "email": "brueckner@linux.vnet.ibm.com",
        "time": "Thu Dec 25 13:38:58 2008 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu Dec 25 13:39:04 2008 +0100"
      },
      "message": "[S390] iucv: Locking free version of iucv_message_(receive|send)\n\nProvide a locking free version of iucv_message_receive and iucv_message_send\nthat do not call local_bh_enable in a spin_lock_(bh|irqsave)() context.\n\nSigned-off-by: Hendrik Brueckner \u003cbrueckner@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "cbacc2c7f066a1e01b33b0e27ae5efbf534bc2db",
      "tree": "90d1093131d2a3543a8b3b1f3364e7c6f4081a93",
      "parents": [
        "4a6908a3a050aacc9c3a2f36b276b46c0629ad91",
        "74192246910ff4fb95309ba1a683215644beeb62"
      ],
      "author": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Thu Dec 25 11:40:09 2008 +1100"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Thu Dec 25 11:40:09 2008 +1100"
      },
      "message": "Merge branch \u0027next\u0027 into for-linus\n"
    },
    {
      "commit": "6332178d91ca1a9dbd99bd97cabbcf965d178e9f",
      "tree": "d98af2cbc7ff0e9e4d00b6cc8c79b05ca7815a5f",
      "parents": [
        "908a7a16b852ffd618a9127be8d62432182d81b4",
        "739840d529eb7505d3cbfe9d468bf1440c9a8e27"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Dec 23 17:56:23 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Dec 23 17:56:23 2008 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\n\tdrivers/net/ppp_generic.c\n"
    },
    {
      "commit": "2efef7080f471d312a9c4feb3dc5ee038039c7ed",
      "tree": "cad946aa12f1780818d396c732d17ad9db642607",
      "parents": [
        "8b1c7bf5b624c9bc91b41ae577b9fc5c21641705"
      ],
      "author": {
        "name": "Olga Kornievskaia",
        "email": "aglo@citi.umich.edu",
        "time": "Tue Dec 23 16:19:56 2008 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Dec 23 16:19:56 2008 -0500"
      },
      "message": "rpc: add service field to new upcall\n\nThis patch extends the new upcall with a \"service\" field that currently\ncan have 2 values: \"*\" or \"nfs\". These values specify matching rules for\nprincipals in the keytab file. The \"*\" means that gssd is allowed to use\n\"root\", \"nfs\", or \"host\" keytab entries while the other option requires\n\"nfs\".\n\nRestricting gssd to use the \"nfs\" principal is needed for when the\nserver performs a callback to the client.  The server in this case has\nto authenticate itself as an \"nfs\" principal.\n\nWe also need \"service\" field to distiguish between two client-side cases\nboth currently using a uid of 0: the case of regular file access by the\nroot user, and the case of state-management calls (such as setclientid)\nwhich should use a keytab for authentication.  (And the upcall should\nfail if an appropriate principal can\u0027t be found.)\n\nSigned-off: Olga Kornievskaia \u003caglo@citi.umich.edu\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "8b1c7bf5b624c9bc91b41ae577b9fc5c21641705",
      "tree": "30189b6146999ba27581a84dfefa9a4ab0e09d69",
      "parents": [
        "61054b14d545e257b9415d5ca0cd5f43762b4d0c"
      ],
      "author": {
        "name": "Olga Kornievskaia",
        "email": "aglo@citi.umich.edu",
        "time": "Tue Dec 23 16:19:26 2008 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Dec 23 16:19:26 2008 -0500"
      },
      "message": "rpc: add target field to new upcall\n\nThis patch extends the new upcall by adding a \"target\" field\ncommunicating who we want to authenticate to (equivalently, the service\nprincipal that we want to acquire a ticket for).\n\nSigned-off: Olga Kornievskaia \u003caglo@citi.umich.edu\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "61054b14d545e257b9415d5ca0cd5f43762b4d0c",
      "tree": "7f648cf35a3b79aa1555f21050f11d415b93f381",
      "parents": [
        "945b34a7725a5f0741de7775132aafc58bfecfbb"
      ],
      "author": {
        "name": "Olga Kornievskaia",
        "email": "aglo@citi.umich.edu",
        "time": "Tue Dec 23 16:19:00 2008 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Dec 23 16:19:00 2008 -0500"
      },
      "message": "nfsd: support callbacks with gss flavors\n\nThis patch adds server-side support for callbacks other than AUTH_SYS.\n\nSigned-off-by: Olga Kornievskaia \u003caglo@citi.umich.edu\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "945b34a7725a5f0741de7775132aafc58bfecfbb",
      "tree": "89f209caa8ee7154fe80de1bd02dd81eaadd3bd6",
      "parents": [
        "608207e8884e083ad8b8d33eda868da70f0d63e8"
      ],
      "author": {
        "name": "Olga Kornievskaia",
        "email": "aglo@citi.umich.edu",
        "time": "Tue Dec 23 16:18:34 2008 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Dec 23 16:18:34 2008 -0500"
      },
      "message": "rpc: allow gss callbacks to client\n\nThis patch adds client-side support to allow for callbacks other than\nAUTH_SYS.\n\nSigned-off-by: Olga Kornievskaia \u003caglo@citi.umich.edu\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "608207e8884e083ad8b8d33eda868da70f0d63e8",
      "tree": "86073f5f2e4a550bb1efe395954abe3fa91a555e",
      "parents": [
        "68e76ad0baf8f5d5060377c2423ee6eed5c63057"
      ],
      "author": {
        "name": "Olga Kornievskaia",
        "email": "aglo@citi.umich.edu",
        "time": "Tue Dec 23 16:17:40 2008 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Dec 23 16:17:40 2008 -0500"
      },
      "message": "rpc: pass target name down to rpc level on callbacks\n\nThe rpc client needs to know the principal that the setclientid was done\nas, so it can tell gssd who to authenticate to.\n\nSigned-off-by: Olga Kornievskaia \u003caglo@citi.umich.edu\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "68e76ad0baf8f5d5060377c2423ee6eed5c63057",
      "tree": "baab3e30cc3b50bc49a553ee884885189ce85a8e",
      "parents": [
        "34769fc488b463cb753fc632f8f5ba56c918b7cb"
      ],
      "author": {
        "name": "Olga Kornievskaia",
        "email": "aglo@citi.umich.edu",
        "time": "Tue Dec 23 16:17:15 2008 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Dec 23 16:17:15 2008 -0500"
      },
      "message": "nfsd: pass client principal name in rsc downcall\n\nTwo principals are involved in krb5 authentication: the target, who we\nauthenticate *to* (normally the name of the server, like\nnfs/server.citi.umich.edu@CITI.UMICH.EDU), and the source, we we\nauthenticate *as* (normally a user, like bfields@UMICH.EDU)\n\nIn the case of NFSv4 callbacks, the target of the callback should be the\nsource of the client\u0027s setclientid call, and the source should be the\nnfs server\u0027s own principal.\n\nTherefore we allow svcgssd to pass down the name of the principal that\njust authenticated, so that on setclientid we can store that principal\nname with the new client, to be used later on callbacks.\n\nSigned-off-by: Olga Kornievskaia \u003caglo@citi.umich.edu\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "34769fc488b463cb753fc632f8f5ba56c918b7cb",
      "tree": "870cf1ac132567ad5683cf9882ab0810fb5acc2a",
      "parents": [
        "5b7ddd4a7b19f913901140ef7807dbf5e2b301cd"
      ],
      "author": {
        "name": "\\\"J. Bruce Fields\\",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Dec 23 16:16:37 2008 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Dec 23 16:16:37 2008 -0500"
      },
      "message": "rpc: implement new upcall\n\nImplement the new upcall.  We decide which version of the upcall gssd\nwill use (new or old), by creating both pipes (the new one named \"gssd\",\nthe old one named after the mechanism (e.g., \"krb5\")), and then waiting\nto see which version gssd actually opens.\n\nWe don\u0027t permit pipes of the two different types to be opened at once.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "5b7ddd4a7b19f913901140ef7807dbf5e2b301cd",
      "tree": "24ecff49a5dfeadb66a5805cc84abd580f52e994",
      "parents": [
        "79a3f20b641f9f93787ada49d1d7cfa98ee5a11e"
      ],
      "author": {
        "name": "\\\"J. Bruce Fields\\",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Dec 23 16:15:44 2008 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Dec 23 16:15:44 2008 -0500"
      },
      "message": "rpc: store pointer to pipe inode in gss upcall message\n\nKeep a pointer to the inode that the message is queued on in the struct\ngss_upcall_msg.  This will be convenient, especially after we have a\nchoice of two pipes that an upcall could be queued on.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "79a3f20b641f9f93787ada49d1d7cfa98ee5a11e",
      "tree": "2f7d9f49b18388eb61400e383a9c5c4b070f1915",
      "parents": [
        "cf81939d6fcdf381fcb069d780c29eceb516bccd"
      ],
      "author": {
        "name": "\\\"J. Bruce Fields\\",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Dec 23 16:10:52 2008 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Dec 23 16:10:52 2008 -0500"
      },
      "message": "rpc: use count of pipe openers to wait for first open\n\nIntroduce a global variable pipe_version which will eventually be used\nto keep track of which version of the upcall gssd is using.\n\nFor now, though, it only keeps track of whether any pipe is open or not;\nit is negative if not, zero if one is opened.  We use this to wait for\nthe first gssd to open a pipe.\n\n(Minor digression: note this waits only for the very first open of any\npipe, not for the first open of a pipe for a given auth; thus we still\nneed the RPC_PIPE_WAIT_FOR_OPEN behavior to wait for gssd to open new\npipes that pop up on subsequent mounts.)\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "cf81939d6fcdf381fcb069d780c29eceb516bccd",
      "tree": "1f55847a9c540d0f5ab7f42c1bd84fdb7d0cb38a",
      "parents": [
        "e712804ae4bd858bd89272aa3fc1a577294c0940"
      ],
      "author": {
        "name": "\\\"J. Bruce Fields\\",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Dec 23 16:10:19 2008 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Dec 23 16:10:19 2008 -0500"
      },
      "message": "rpc: track number of users of the gss upcall pipe\n\nKeep a count of the number of pipes open plus the number of messages on\na pipe.  This count isn\u0027t used yet.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "e712804ae4bd858bd89272aa3fc1a577294c0940",
      "tree": "67ac6fc6d7e01b43e648c38fdbc46d4d875452ca",
      "parents": [
        "c381060869317b3c84430d4f54965d409cbfe65f"
      ],
      "author": {
        "name": "\\\"J. Bruce Fields\\",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Dec 23 16:09:47 2008 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Dec 23 16:09:47 2008 -0500"
      },
      "message": "rpc: call release_pipe only on last close\n\nI can\u0027t see any reason we need to call this until either the kernel or\nthe last gssd closes the pipe.\n\nAlso, this allows to guarantee that open_pipe and release_pipe are\ncalled strictly in pairs; open_pipe on gssd\u0027s first open, release_pipe\non gssd\u0027s last close (or on the close of the kernel side of the pipe, if\nthat comes first).\n\nThat will make it very easy for the gss code to keep track of which\npipes gssd is using.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "c381060869317b3c84430d4f54965d409cbfe65f",
      "tree": "eca752e4fe61fd6e497fede253f83a01a36a365a",
      "parents": [
        "db75b3d6b5b0dad29860370618ea94d2726641b4"
      ],
      "author": {
        "name": "\\\"J. Bruce Fields\\",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Dec 23 16:08:32 2008 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Dec 23 16:08:32 2008 -0500"
      },
      "message": "rpc: add an rpc_pipe_open method\n\nWe want to transition to a new gssd upcall which is text-based and more\neasily extensible.\n\nTo simplify upgrades, as well as testing and debugging, it will help if\nwe can upgrade gssd (to a version which understands the new upcall)\nwithout having to choose at boot (or module-load) time whether we want\nthe new or the old upcall.\n\nWe will do this by providing two different pipes: one named, as\ncurrently, after the mechanism (normally \"krb5\"), and supporting the\nold upcall.  One named \"gssd\" and supporting the new upcall version.\n\nWe allow gssd to indicate which version it supports by its choice of\nwhich pipe to open.\n\nAs we have no interest in supporting *simultaneous* use of both\nversions, we\u0027ll forbid opening both pipes at the same time.\n\nSo, add a new pipe_open callback to the rpc_pipefs api, which the gss\ncode can use to track which pipes have been open, and to refuse opens of\nincompatible pipes.\n\nWe only need this to be called on the first open of a given pipe.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "db75b3d6b5b0dad29860370618ea94d2726641b4",
      "tree": "e20ac4190fe09d27f7a48e7f3f46cce6f2dbd5b1",
      "parents": [
        "b03568c32226163cb3588ea8993adb268ed497a5"
      ],
      "author": {
        "name": "\\\"J. Bruce Fields\\",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Dec 23 16:07:13 2008 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Dec 23 16:07:13 2008 -0500"
      },
      "message": "rpc: minor gss_alloc_msg cleanup\n\nI want to add a little more code here, so it\u0027ll be convenient to have\nthis flatter.\n\nAlso, I\u0027ll want to add another error condition, so it\u0027ll be more\nconvenient to return -ENOMEM than NULL in the error case.  The only\ncaller is already converting NULL to -ENOMEM anyway.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "b03568c32226163cb3588ea8993adb268ed497a5",
      "tree": "5e14a3d1b370e87ac90a0a16234202a3f51eb4c6",
      "parents": [
        "99db35636842ede13bf3b6bf1a8d8f4f1c4c93bf"
      ],
      "author": {
        "name": "\\\"J. Bruce Fields\\",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Dec 23 16:06:55 2008 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Dec 23 16:06:55 2008 -0500"
      },
      "message": "rpc: factor out warning code from gss_pipe_destroy_msg\n\nWe\u0027ll want to call this from elsewhere soon.  And this is a bit nicer\nanyway.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "99db35636842ede13bf3b6bf1a8d8f4f1c4c93bf",
      "tree": "2a9bb57a57e8f3fb5e1a8ff9d4235c55f3c9b7ca",
      "parents": [
        "cf8cdbe5bd662eeaece96b017a4d6676ae416537"
      ],
      "author": {
        "name": "\\\"J. Bruce Fields\\",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Dec 23 16:06:33 2008 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Dec 23 16:06:33 2008 -0500"
      },
      "message": "rpc: remove unnecessary assignment\n\nWe\u0027re just about to kfree() gss_auth, so there\u0027s no point to setting any\nof its fields.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "6dcd3926b214a1fb081df18305921dedae269977",
      "tree": "00847727ce5a34b2b12fa4251c604b0c6a9e1fcd",
      "parents": [
        "64672d55d93c26fb4035fd1a84a803cbc09cb058"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Tue Dec 23 15:21:57 2008 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Dec 23 15:21:57 2008 -0500"
      },
      "message": "sunrpc: fix code that makes auth_gss send destroy_cred message (try #2)\n\nThere\u0027s a bit of a chicken and egg problem when it comes to destroying\nauth_gss credentials. When we destroy the last instance of a GSSAPI RPC\ncredential, we should send a NULL RPC call with a GSS procedure of\nRPCSEC_GSS_DESTROY to hint to the server that it can destroy those\ncreds.\n\nThis isn\u0027t happening because we\u0027re setting clearing the uptodate bit on\nthe credentials and then setting the operations to the gss_nullops. When\nwe go to do the RPC call, we try to refresh the creds. That fails with\n-EACCES and the call fails.\n\nFix this by not clearing the UPTODATE bit for the credentials and adding\na new crdestroy op for gss_nullops that just tears down the cred without\ntrying to destroy the context.\n\nThe only difference between this patch and the first one is the removal\nof some minor formatting deltas.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "64672d55d93c26fb4035fd1a84a803cbc09cb058",
      "tree": "6873f9335b925e4c6a5336544a6f6fc1d789604f",
      "parents": [
        "dc0b027dfadfcb8a5504f7d8052754bf8d501ab9"
      ],
      "author": {
        "name": "Peter Staubach",
        "email": "staubach@redhat.com",
        "time": "Tue Dec 23 15:21:56 2008 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Dec 23 15:21:56 2008 -0500"
      },
      "message": "optimize attribute timeouts for \"noac\" and \"actimeo\u003d0\"\n\nHi.\n\nI\u0027ve been looking at a bugzilla which describes a problem where\na customer was advised to use either the \"noac\" or \"actimeo\u003d0\"\nmount options to solve a consistency problem that they were\nseeing in the file attributes.  It turned out that this solution\ndid not work reliably for them because sometimes, the local\nattribute cache was believed to be valid and not timed out.\n(With an attribute cache timeout of 0, the cache should always\nappear to be timed out.)\n\nIn looking at this situation, it appears to me that the problem\nis that the attribute cache timeout code has an off-by-one\nerror in it.  It is assuming that the cache is valid in the\nregion, [read_cache_jiffies, read_cache_jiffies + attrtimeo].  The\ncache should be considered valid only in the region,\n[read_cache_jiffies, read_cache_jiffies + attrtimeo).  With this\nchange, the options, \"noac\" and \"actimeo\u003d0\", work as originally\nexpected.\n\nThis problem was previously addressed by special casing the\nattrtimeo \u003d\u003d 0 case.  However, since the problem is only an off-\nby-one error, the cleaner solution is address the off-by-one\nerror and thus, not require the special case.\n\n    Thanx...\n\n        ps\n\nSigned-off-by: Peter Staubach \u003cstaubach@redhat.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "7bd8826915989f1bd6917c11b0a4151b129e68cb",
      "tree": "49aabaf0cefd07c91ab622358550acab8545cfb4",
      "parents": [
        "468039ee469c5772d3e39f736923c5e0c31017e2"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Dec 23 15:21:32 2008 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Dec 23 15:21:32 2008 -0500"
      },
      "message": "SUNRPC: rpcsec_gss modules should not be used by out-of-tree code\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "468039ee469c5772d3e39f736923c5e0c31017e2",
      "tree": "1e8d193748b509597979340d04092837abd13214",
      "parents": [
        "88a9fe8cae3bb52e82489447f45e8d7ba1409ca8"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Dec 23 15:21:31 2008 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Dec 23 15:21:31 2008 -0500"
      },
      "message": "SUNRPC: Convert the xdr helpers and rpc_pipefs to EXPORT_SYMBOL_GPL\n\nWe\u0027ve never considered the sunrpc code as part of any ABI to be used by\nout-of-tree modules.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "88a9fe8cae3bb52e82489447f45e8d7ba1409ca8",
      "tree": "acef9d0b7d4c8c2e98faf852ab8bc0173842fbe5",
      "parents": [
        "136221fc3219b3805c48db5da065e8e3467175d4"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Dec 23 15:21:31 2008 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Dec 23 15:21:31 2008 -0500"
      },
      "message": "SUNRPC: Remove the last remnant of the BKL...\n\nSomehow, this escaped the previous purge. There should be no need to keep\nany extra locks in the XDR callbacks.\n\nThe NFS client XDR code only writes into private objects, whereas all reads\nof shared objects are confined to fields that do not change, such as\nfilehandles...\n\nDitto for lockd, the NFSv2/v3 client mount code, and rpcbind.\n\nThe nfsd XDR code may require the BKL, but since it does a synchronous RPC\ncall from a thread that already holds the lock, that issue is moot.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "05a8c1cbfe368df8c0d4eff710c370d2aa10245a",
      "tree": "fb1ed1dda4f25f0c7ee6facb9e3d10a45b324201",
      "parents": [
        "4707470ae7441733822efcd680b0ef3971921c4d"
      ],
      "author": {
        "name": "Jarek Poplawski",
        "email": "jarkao2@gmail.com",
        "time": "Mon Dec 22 19:44:13 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Dec 22 19:44:13 2008 -0800"
      },
      "message": "pkt_sched: Remove smp_wmb() in qdisc_watchdog()\n\nWhile implementing a TCQ_F_THROTTLED flag there was used an smp_wmb()\nin qdisc_watchdog(), but since this flag is practically used only in\nsch_netem(), and since it\u0027s not even clear what reordering is avoided\nhere (TCQ_F_THROTTLED vs. __QDISC_STATE_SCHED?) it seems the barrier\ncould be safely removed.\n\nSigned-off-by: Jarek Poplawski \u003cjarkao2@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5f2f6da76c429c42d54f73807f00b8fd761a7d68",
      "tree": "20cabaf277e2e95df669c4e9ee6968067b096dc0",
      "parents": [
        "d3d317092b58a6df1d31a4ca90cdb9d2bd4ebffa"
      ],
      "author": {
        "name": "Jarek Poplawski",
        "email": "jarkao2@gmail.com",
        "time": "Mon Dec 22 19:35:28 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Dec 22 19:35:28 2008 -0800"
      },
      "message": "net: Fix oops in dev_ifsioc()\n\nA command like this: \"brctl addif br1 eth1\" issued as a user gave me\nan oops when bridge module wasn\u0027t loaded. It\u0027s caused by using a dev\npointer before checking for NULL.\n\nSigned-off-by: Jarek Poplawski \u003cjarkao2@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7f3ff4f63f76c2702da6041d2da5eb30fac407f6",
      "tree": "0be86d18da3a4c4f123b38dcdc9c25b606cabbb1",
      "parents": [
        "bfb8cc31b11ccaf7cd55fd9e0f4794f82527948f"
      ],
      "author": {
        "name": "Jarek Poplawski",
        "email": "jarkao2@gmail.com",
        "time": "Sun Dec 21 20:14:48 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Dec 21 20:14:48 2008 -0800"
      },
      "message": "pkt_sched: Annotate uninitialized var in sfq_enqueue()\n\nSome gcc versions warn that ret may be used uninitialized in\nsfq_enqueue(). It\u0027s a false positive, so let\u0027s annotate this.\n\nSigned-off-by: Jarek Poplawski \u003cjarkao2@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f4314e815e87b4ab1c9b1115dd5853cd20ca999c",
      "tree": "4a8784070f58420814528ca0abd5cf3e12753ce5",
      "parents": [
        "1486a61ebcd2711532f8163d30babc40e11e7b40"
      ],
      "author": {
        "name": "Don Skidmore",
        "email": "donald.c.skidmore@intel.com",
        "time": "Sun Dec 21 20:10:29 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Dec 21 20:10:29 2008 -0800"
      },
      "message": "net: add DCNA attribute to the BCN interface for DCB\n\nAdds the Backward Congestion Notification Address (BCNA) attribute to the\nBackward Congestion Notification (BCN) interface for Data Center Bridging\n(DCB), which was missing.  Receive the BCNA attribute in the ixgbe driver.\nThe BCNA attribute is for a switch to inform the endstation about the physical\nport identification in order to support BCN on aggregated links.\n\nSigned-off-by: Don Skidmore \u003cdonald.c.skidmore@intel.com\u003e\nSigned-off-by: Eric W Multanen \u003ceric.w.multanen@intel.com\u003e\nSigned-off-by: Jeff Kirsher \u003cjeffrey.t.kirsher@intel.com\u003e\n"
    },
    {
      "commit": "1486a61ebcd2711532f8163d30babc40e11e7b40",
      "tree": "49fb6ba4e4f6ade0f1db0f6c86d0feb207857e65",
      "parents": [
        "c2da953a46b18b7515ad476c1c1686640a12e93a"
      ],
      "author": {
        "name": "Don Skidmore",
        "email": "donald.c.skidmore@intel.com",
        "time": "Sun Dec 21 20:09:50 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Dec 21 20:09:50 2008 -0800"
      },
      "message": "net: fix DCB setstate to return success/failure\n\nData Center Bridging (DCB) had no way to know if setstate had failed in the\ndriver.  This patch enables dcb netlink code to handle the status for the DCB\nsetstate interface.  Likewise it allows the driver to return a failed status\nif MSI-X isn\u0027t enabled.\n\nSigned-off-by: Don Skidmore \u003cdonald.c.skidmore@intel.com\u003e\nSigned-off-by: Eric W Multanen \u003ceric.w.multanen@intel.com\u003e\nSigned-off-by: Jeff Kirsher \u003cjeffrey.t.kirsher@intel.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "520eb82076993b7f55ef9b80771d264272e5127b",
      "tree": "f98b74dbe404d4c3a55b5f649c25ca24958e62ba",
      "parents": [
        "ce7c9111a97492d04c504f40736a669c235d664a"
      ],
      "author": {
        "name": "Kalle Valo",
        "email": "kalle.valo@nokia.com",
        "time": "Thu Dec 18 23:35:27 2008 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Dec 19 15:24:00 2008 -0500"
      },
      "message": "mac80211: implement dynamic power save\n\nThis patch implements dynamic power save for mac80211. Basically it\nmeans enabling power save mode after an idle period. Implementing it\ndynamically gives a good compromise of low power consumption and low\nlatency. Some hardware have support for this in firmware, but some\nrequire the host to do it.\n\nThe dynamic power save is implemented by adding an timeout to\nieee80211_subif_start_xmit(). The timeout can be enabled from userspace\nwith Wireless Extensions. For example, the command below enables the\ndynamic power save and sets the time timeout to 500 ms:\n\niwconfig wlan0 power timeout 500m\n\nPower save now only works with devices which handle power save in firmware.\nIt\u0027s also disabled by default and the heuristics when and how to enable is\nconsidered as a policy decision and will be left for the userspace to handle.\nIn case the firmware has support for this, drivers can disable this feature\nwith IEEE80211_HW_NO_STACK_DYNAMIC_PS.\n\nBig thanks to Johannes Berg for the help with the design and code.\n\nSigned-off-by: Kalle Valo \u003ckalle.valo@nokia.com\u003e\nAcked-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "ce7c9111a97492d04c504f40736a669c235d664a",
      "tree": "6a294d373e19a99048dafa632966096371f3b1bb",
      "parents": [
        "e0cb686ff879dc9ac045ad7258ec687088d4e450"
      ],
      "author": {
        "name": "Kalle Valo",
        "email": "kalle.valo@nokia.com",
        "time": "Thu Dec 18 23:35:20 2008 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Dec 19 15:23:59 2008 -0500"
      },
      "message": "mac80211: track master queue status\n\nThis is a preparation for the dynamic power save support. In future there are\ntwo paths to stop the master queues and we need to track this properly to\navoid starting queues incorrectly. Implement this by adding a status\narray for each queue.\n\nThe original idea and design is from Johannes Berg, I just did\nthe implementation based on his notes. All the bugs are mine, of course.\n\nSigned-off-by: Kalle Valo \u003ckalle.valo@nokia.com\u003e\nAcked-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "e0cb686ff879dc9ac045ad7258ec687088d4e450",
      "tree": "4792dc94d6a36be8367987b88b922157acf59808",
      "parents": [
        "d10d0e5707fb7b8afa7e68a14d69e752604ee294"
      ],
      "author": {
        "name": "Kalle Valo",
        "email": "kalle.valo@nokia.com",
        "time": "Thu Dec 18 23:35:13 2008 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Dec 19 15:23:57 2008 -0500"
      },
      "message": "mac80211: enable IEEE80211_CONF_PS only when associated\n\nAlso disable power save when disassociated. It makes no sense to have\npower save enabled while disassociated.\n\niwlwifi seems to have this check in the driver, but it\u0027s better to do this\nin mac80211 instead.\n\nSigned-off-by: Kalle Valo \u003ckalle.valo@nokia.com\u003e\nAcked-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "5e3f308997f53d00e8cbebdb89d4f6e347aa963a",
      "tree": "d3da8ee1f40a7becdd5009134932adb3bc96d845",
      "parents": [
        "6110781af080c007b2202187a8518920e03d5748"
      ],
      "author": {
        "name": "Larry Finger",
        "email": "Larry.Finger@lwfinger.net",
        "time": "Wed Dec 17 14:26:59 2008 -0600"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Dec 19 15:23:48 2008 -0500"
      },
      "message": "mac80211: Print unknown packet type in tasklet_handler\n\nIn stress testing p54usb, the WARN_ON() in ieee80211_tasklet_handler() was\ntriggered; however, there is no logging of the received value for packet\ntype. Adding that feature will improve the warning.\n\nSigned-off-by: Larry Finger \u003cLarry.Finger@lwfinger.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "135541215ca87ff00c269e65bcaef0bdcb99aab9",
      "tree": "d5b8dde8553c5298810c36771dd559efd5f3ab67",
      "parents": [
        "73ec1cc28ebc7854a376cde53f62d487e127fbca"
      ],
      "author": {
        "name": "Rami Rosen",
        "email": "ramirose@gmail.com",
        "time": "Tue Dec 16 22:38:29 2008 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Dec 19 15:23:30 2008 -0500"
      },
      "message": "mac80211: fix a typo in ieee80211_send_assoc() method.\n\nThis patch fixes a typo in ieee80211_send_assoc(), net/mac80211/mlme.c.\n\nThe error is usage of a wrong member when building\nthe ie80211 management frame (it should be assoc_req, and not reassoc_req).\n\nSigned-off-by: Rami Rosen \u003cramirose@gmail.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "8d6f658e211a3c6ff808f7fc6ebb30239457eabc",
      "tree": "a45fe7ba263a6f943bc4a4d2043496ad4a20f684",
      "parents": [
        "d85882273367e98aecb9ff11a9d76515a6d37131"
      ],
      "author": {
        "name": "Jouni Malinen",
        "email": "jouni.malinen@atheros.com",
        "time": "Mon Dec 15 10:37:50 2008 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Dec 19 15:23:22 2008 -0500"
      },
      "message": "mac80211: Remove radiotap rate-present flag for HT\n\nSince we do not currently report HT rates (MCS index) in radiotap\nheader for HT rates, we should not claim the rate is present. The rate\noctet itself is used as padding in this case, so only the it_present\nflag needs to be removed in case of HT rates.\n\nSigned-off-by: Jouni Malinen \u003cjouni.malinen@atheros.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "b8d476c8cb64a1640d8762aa442b8a73fa74b7d5",
      "tree": "0313f5af3f042abb8cf79fd9d188b3929fe80f16",
      "parents": [
        "0fe45b1debba7302155b62f3829119a1185a4f5a"
      ],
      "author": {
        "name": "Jouni Malinen",
        "email": "jouni.malinen@atheros.com",
        "time": "Fri Dec 12 17:08:31 2008 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Dec 19 15:23:08 2008 -0500"
      },
      "message": "mac80211: Send Layer 2 Update frame on reassociation\n\nWhen a STA roams back to the same AP before the previous STA entry has\nexpired, a new STA entry is not added in mac80211. However, a Layer 2\nUpdate frame still needs to be transmitted to update layer 2 devices\nabout the new location for the STA. Without this, switches may\ncontinue to forward frames to the previous (now incorrect) port when\nSTA roams between APs.\n\nSigned-off-by: Jouni Malinen \u003cjouni.malinen@atheros.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "0fb8ca45eb164c405eef8978f26829f9348b4d4d",
      "tree": "1fc5728b225e7d5a0d06bb0700c83d64bde44f82",
      "parents": [
        "9d8eed12dbc04f8ed70090da14211c808b5a8d81"
      ],
      "author": {
        "name": "Jouni Malinen",
        "email": "jouni.malinen@atheros.com",
        "time": "Fri Dec 12 14:38:33 2008 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Dec 19 15:23:04 2008 -0500"
      },
      "message": "mac80211: Add HT rates into RX status reporting\n\nThis patch adds option for HT-enabled drivers to report HT rates\n(HT20/HT40, short GI, MCS index) to mac80211. These rates are\ncurrently not in the rate table, so the rate_idx is used to indicate\nMCS index.\n\nSigned-off-by: Jouni Malinen \u003cjouni.malinen@atheros.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "094d05dc32fc2930e381189a942016e5561775d9",
      "tree": "4deedbcbe196f88cb8d9fe0cd0755775a7ff0939",
      "parents": [
        "420e7fabd9c6d907280ed6b3e40eef425c5d8d8d"
      ],
      "author": {
        "name": "Sujith",
        "email": "Sujith.Manoharan@atheros.com",
        "time": "Fri Dec 12 11:57:43 2008 +0530"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Dec 19 15:22:54 2008 -0500"
      },
      "message": "mac80211: Fix HT channel selection\n\nHT management is done differently for AP and STA modes, unify\nto just the -\u003econfig() callback since HT is fundamentally a\nPHY property and cannot be per-BSS.\n\nRename enum nl80211_sec_chan_offset as nl80211_channel_type to denote\nthe channel type ( NO_HT, HT20, HT40+, HT40- ).\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: Sujith \u003cSujith.Manoharan@atheros.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "420e7fabd9c6d907280ed6b3e40eef425c5d8d8d",
      "tree": "6effc9f9386746d1aeb953e32fe82b0a5a5fdf18",
      "parents": [
        "221b3d60cbb2740ec7d46a4f1ea6d3318a112e51"
      ],
      "author": {
        "name": "Henning Rogge",
        "email": "hrogge@googlemail.com",
        "time": "Thu Dec 11 22:04:19 2008 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Dec 19 15:04:54 2008 -0500"
      },
      "message": "nl80211: Add signal strength and bandwith to nl80211station info\n\nThis patch adds signal strength and transmission bitrate\nto the station_info of nl80211.\n\nSigned-off-by: Henning Rogge \u003crogge@fgan.de\u003e\nAcked-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "6086ebca13ddc9cfaaa25248ba8ebef35103fb74",
      "tree": "95024e17835a02286120cd7c630d1e5afea51463",
      "parents": [
        "e98def1f71fa0a6a37e12a56eb52ce5ed9e2e800"
      ],
      "author": {
        "name": "Matt Mackall",
        "email": "mpm@selenic.com",
        "time": "Thu Dec 18 19:54:22 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 18 22:27:42 2008 -0800"
      },
      "message": "tcp: Stop scaring users with \"treason uncloaked!\"\n\nThe original message was unhelpful and extremely alarming to our poor\nusers, despite its charm. Make it less frightening.\n\nSigned-off-by: Matt Mackall \u003cmpm@selenic.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3de77cf23e9a19b9fc28e3b29371308325428c39",
      "tree": "20a6eafcdf351426ca0c8119cda1ff0e999f407d",
      "parents": [
        "49ad9599d42da4787d5b3a19263440e0fcd4d1fc"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 18 19:23:56 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 18 22:27:37 2008 -0800"
      },
      "message": "Revert \"xfrm: Accept ESP packets regardless of UDP encapsulation mode\"\n\nThis reverts commit e061b165c7f4ec5e2e160d990b49011b5b6e5c6a.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1b08534e562dae7b084326f8aa8cc12a4c1b6593",
      "tree": "9fcc3093d7002015d334a28b0b0e21527ed5dcf7",
      "parents": [
        "3298a7388c00227e736d1037328788073c80c7b4"
      ],
      "author": {
        "name": "Wei Yongjun",
        "email": "yjwei@cn.fujitsu.com",
        "time": "Thu Dec 18 19:35:10 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 18 19:35:10 2008 -0800"
      },
      "message": "net: Fix module refcount leak in kernel_accept()\n\nThe kernel_accept() does not hold the module refcount of newsock-\u003eops-\u003eowner,\nso we need __module_get(newsock-\u003eops-\u003eowner) code after call kernel_accept()\nby hand.\nIn sunrpc, the module refcount is missing to hold. So this cause kernel panic.\n\nUsed following script to reproduct:\n\nwhile [ 1 ];\ndo\n    mount -t nfs4 192.168.0.19:/ /mnt\n    touch /mnt/file\n    umount /mnt\n    lsmod | grep ipv6\ndone\n\nThis patch fixed the problem by add __module_get(newsock-\u003eops-\u003eowner) to\nkernel_accept(). So we do not need to used __module_get(newsock-\u003eops-\u003eowner)\nin every place when used kernel_accept().\n\nSigned-off-by: Wei Yongjun \u003cyjwei@cn.fujitsu.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "49ad9599d42da4787d5b3a19263440e0fcd4d1fc",
      "tree": "bbeef6eb9316d30524aa73cf12580441f42e420a",
      "parents": [
        "3b5b35d02264580950d1e1565431b99d97c20ded"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Dec 17 22:11:38 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Dec 17 22:11:38 2008 -0800"
      },
      "message": "Revert \"net: release skb-\u003edst in sock_queue_rcv_skb()\"\n\nThis reverts commit 70355602879229c6f8bd694ec9c0814222bc4936.\n\nAs pointed out by Mark McLoughlin IP_PKTINFO cmsg data is one\npost-queueing user, so this optimization is not valid right\nnow.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a693722aec4ce26fb46c21cf4bf4422484a397a7",
      "tree": "003b408f7473bbc9804e185f850cf6f6017e7f1d",
      "parents": [
        "9732d523212060c44a4723332bdc5ee429eeabc3"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Wed Dec 17 16:08:01 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Dec 17 16:08:01 2008 -0800"
      },
      "message": "dccp_diag: LISTEN sockets don\u0027t have CCIDs\n\nAnd thus when we try to use \u0027ss -danemi\u0027 on these sockets that have no\nccid blocks (data collected using systemtap after I fixed the problem):\n\ndccp_diag_get_info sk\u003d0xffff8801220a3100, dp-\u003edccps_hc_rx_ccid\u003d0x0000000000000000, dp-\u003edccps_hc_tx_ccid\u003d0x0000000000000000\n\nWe get an OOPS:\n\nmica.ghostprotocols.net login: BUG: unable to handle kernel NULL pointer\ndereferenc0\nIP: [\u003cffffffffa0136082\u003e] dccp_diag_get_info+0x82/0xc0 [dccp_diag]\nPGD 12106f067 PUD 122488067 PMD 0\nOops: 0000 [#1] PREEMPT\n\nFix is trivial, and \u0027ss -d\u0027 is working again:\n\n[root@mica ~]# ss -danemi\nState   Recv-Q Send-Q   Local Address:Port   Peer Address:Port \nLISTEN  0      0                    *:5001              *:*\nino:7288 sk:220a3100ffff8801\n\t mem:(r0,w0,f0,t0) cwnd:0 ssthresh:0\n[root@mica ~]# \n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "893873f3965ae0173a9315534bec7628162d2243",
      "tree": "a68217bad43abcebd4bb19af4dd8d50c10940f8a",
      "parents": [
        "be677730a0ccb6bedced6f65f2ba8f57a3c607ba"
      ],
      "author": {
        "name": "Rémi Denis-Courmont",
        "email": "remi.denis-courmont@nokia.com",
        "time": "Wed Dec 17 15:48:50 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Dec 17 15:48:50 2008 -0800"
      },
      "message": "Phonet: get rid of deferred work on the transmission path\n\nSigned-off-by: Rémi Denis-Courmont \u003cremi.denis-courmont@nokia.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    }
  ],
  "next": "be677730a0ccb6bedced6f65f2ba8f57a3c607ba"
}
