)]}'
{
  "log": [
    {
      "commit": "95c26df829ba4a25f40595cadb4c9433883cbe28",
      "tree": "aa67243806f3012ee82fa182990251952973ffe8",
      "parents": [
        "b280da8d54b8d82b52f368a8703b7ada6c1744d5"
      ],
      "author": {
        "name": "Williams, Mitch A",
        "email": "mitch.a.williams@intel.com",
        "time": "Wed Feb 10 01:43:46 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Feb 12 16:56:08 2010 -0800"
      },
      "message": "net: Add netdev ops for SR-IOV configuration\n\nAdd netdev ops for configuring SR-IOV VF devices through the PF driver.\n\nSigned-off-by: Mitch Williams \u003cmitch.a.williams@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": "b280da8d54b8d82b52f368a8703b7ada6c1744d5",
      "tree": "74c425ed74bb00537f8419473cef52a872efcfa2",
      "parents": [
        "fb8a0d9d1bfd1e4355f307e86a6da7209eefd5f3"
      ],
      "author": {
        "name": "Williams, Mitch A",
        "email": "mitch.a.williams@intel.com",
        "time": "Wed Feb 10 01:43:24 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Feb 12 16:56:07 2010 -0800"
      },
      "message": "if_link: Add SR-IOV configuration methods\n\nAdd SR-IOV VF management methods to IFLA_LINKINFO. This allows userspace to\nuse rtnetlink to configure VF network devices.\n\nSigned-off-by: Mitch Williams \u003cmitch.a.williams@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": "fb8a0d9d1bfd1e4355f307e86a6da7209eefd5f3",
      "tree": "99f23a4bc7c51343619f63970e5d017d75b5a66f",
      "parents": [
        "81d54ec8479a2c695760da81f05b5a9fb2dbe40a"
      ],
      "author": {
        "name": "Williams, Mitch A",
        "email": "mitch.a.williams@intel.com",
        "time": "Wed Feb 10 01:43:04 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Feb 12 16:56:07 2010 -0800"
      },
      "message": "pci: Add SR-IOV convenience functions and macros\n\nAdd and export pci_num_vf to allow other subsystems to determine how many\nvirtual function devices are associated with an SR-IOV physical function\ndevice.\nAdd macros dev_is_pci, dev_is_ps, and dev_num_vf to make it easier for\nnon-PCI specific code to determine SR-IOV capabilities.\n\nSigned-off-by: Mitch Williams \u003cmitch.a.williams@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": "b3d95c5c93d4b57eaea0ad3f582b08a6b5fb3eb1",
      "tree": "3dc48783dc30ed1769b3a50c18861eadd2b67136",
      "parents": [
        "ba211e3ec35820eced89bfe12e2d94e6352a4c5f"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Tue Feb 09 11:49:49 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Feb 12 13:27:45 2010 -0800"
      },
      "message": "include/linux/netdevice.h: Add netif_printk helpers\n\nAdd macros to test a private structure for msg_enable bits\nand the netif_msg_##bit to test and call netdev_printk if set\n\nSimplifies logic in callers and adds message logging consistency\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "571ba42303813106d533bf6bda929d8e289f51bf",
      "tree": "72a4cac3c48dded8aeda6f3f839764b9b766fe13",
      "parents": [
        "21809fafa042fcfff3f788419bed99f3c289745c"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Tue Feb 09 11:49:47 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Feb 12 13:27:44 2010 -0800"
      },
      "message": "netdevice.h: Add netdev_printk helpers like dev_printk\n\nThese netdev_printk routines take a struct net_device * and emit\ndev_printk logging messages adding \"%s: \" ... netdev-\u003edev.parent\nto the dev_printk format and arguments.\n\nThis can create some uniformity in the output message log.\n\nThese helpers should not be used until a successful alloc_netdev.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "15682bc488d4af8c9bb998844a94281025e0a333",
      "tree": "2534589c00cbf695e6c2906f5c228a0006174904",
      "parents": [
        "375c568844e49d292885c7485d4a255f71680e56"
      ],
      "author": {
        "name": "Peter P Waskiewicz Jr",
        "email": "peter.p.waskiewicz.jr@intel.com",
        "time": "Wed Feb 10 20:03:05 2010 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Feb 10 20:03:05 2010 -0800"
      },
      "message": "ethtool: Introduce n-tuple filter programming support\n\nThis patchset enables the ethtool layer to program n-tuple\nfilters to an underlying device.  The idea is to allow capable\nhardware to have static rules applied that can assist steering\nflows into appropriate queues.\n\nHardware that is known to support these types of filters today\nare ixgbe and niu.\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": "66655de6d132b726be64c324bc3f9ea366d20697",
      "tree": "d88c42a19de245e4a81337eef6bf06555586005d",
      "parents": [
        "b1109bf085c8dd69537b7876ea83f914dd1fe46a"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Mon Feb 08 23:18:22 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Feb 10 11:12:06 2010 -0800"
      },
      "message": "seq_file: Add helpers for iteration over a hlist\n\nSome places in kernel need to iterate over a hlist in seq_file,\nso provide some common helpers.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "bfd5f4a3d605e0f6054df0b59fe0907ff7e696d3",
      "tree": "63d19326b491b507f246ea4c3ef410d62602e794",
      "parents": [
        "746079dabcf74be2a16dc983ac597156e3d2e051"
      ],
      "author": {
        "name": "Sridhar Samudrala",
        "email": "sri@us.ibm.com",
        "time": "Thu Feb 04 20:24:10 2010 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Feb 04 20:24:10 2010 -0800"
      },
      "message": "packet: Add GSO/csum offload support.\n\nThis patch adds GSO/checksum offload to af_packet sockets using\nvirtio_net_hdr. Based on Rusty\u0027s patch to add this support to tun.\nIt allows GSO/checksum offload to be enabled when using raw socket\nbackend with virtio_net.\nAdds PACKET_VNET_HDR socket option to prepend virtio_net_hdr in the\nreceive path and process/skip virtio_net_hdr in the send path. This\noption is only allowed with SOCK_RAW sockets attached to ethernet\ntype devices.\n\nv2 updates\n----------\nMichael\u0027s Comments\n- Perform length check in packet_snd() when GSO is off even when\n  vnet_hdr is present.\n- Check for SKB_GSO_FCOE type and return -EINVAL\n- don\u0027t allow tx/rx ring when vnet_hdr is enabled.\nHerbert\u0027s Comments\n- Removed ethernet specific code.\n- protocol value is assumed to be passed in by the caller.\n\nSigned-off-by: Sridhar Samudrala \u003csri@us.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f8f76db1db369f3a130ac3fd33e2eee5f1610d9c",
      "tree": "808ba0be71bc55335afca100fc857d7f4e937b46",
      "parents": [
        "6683ece36e3531fc8c75f69e7165c5f20930be88"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Thu Feb 04 10:23:02 2010 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Feb 04 10:23:02 2010 -0800"
      },
      "message": "libphy: add phy_find_first function\n\nMany drivers do this in them manually. Now they can use this function.\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6683ece36e3531fc8c75f69e7165c5f20930be88",
      "tree": "4dd9fe9057248577a75eb60ae9f83a999f062b02",
      "parents": [
        "1b924032533033a4dae1a239981677bdae21949b"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Thu Feb 04 10:22:25 2010 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Feb 04 10:22:25 2010 -0800"
      },
      "message": "net: use helpers to access mc list V2\n\nThis patch introduces the similar helpers as those already done for uc list.\nHowever multicast lists are no list_head lists but \"mademanually\". The three\nmacros added by this patch will make the transition of mc_list to list_head\nsmooth in two steps:\n\n1) convert all drivers to use these macros (with the original iterator of type\n   \"struct dev_mc_list\")\n2) once all drivers are converted, convert list type and iterators to \"struct\n   netdev_hw_addr\" in one patch.\n\n\u003eFrom now on, drivers can (and should) use \"netdev_for_each_mc_addr\" to iterate\nover the addresses with iterator of type \"struct netdev_hw_addr\". Also macros\n\"netdev_mc_count\" and \"netdev_mc_empty\" to read list\u0027s length. This is the state\nwhich should be reached in all drivers.\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "10be7eb36b93364b98688831ee7d26f58402bb96",
      "tree": "eb13ae80fcaa8baacd804a721c5a4962a501a2a4",
      "parents": [
        "90c30335a70e96b8b8493b7deb15e6b30e6d9fce",
        "5ffaf8a361b4c9025963959a744f21d8173c7669"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Feb 04 08:58:14 2010 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Feb 04 08:58:14 2010 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6\n"
    },
    {
      "commit": "1621e0940294c20e302faf401f41204de7252e22",
      "tree": "e144219ba953f633862e7e238d5f7081a7c3c825",
      "parents": [
        "bf66f3736a945dd4e92d86427276c6eeab0a6c1d"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Mon Feb 01 09:44:19 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Feb 03 20:32:28 2010 -0800"
      },
      "message": "net: CONFIG_COMPAT redux\n\nIfdef out\n\tstruct proto_ops::compat_ioctl\n\tstruct proto_ops::compat_setsockopt\n\tstruct proto_ops::compat_getsockopt\nto make structures smaller on COMPAT\u003dn kernels.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "20d29d7a916a47bf533b5709437fe735b6b5b79e",
      "tree": "8dbe4178b90915a18e83f97a3e71cdcd39892da1",
      "parents": [
        "fc0663d6b5e6d8e9b57f872a644c0aafd82361b7"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Sat Jan 30 12:24:26 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Feb 03 20:20:33 2010 -0800"
      },
      "message": "net: macvtap driver\n\nIn order to use macvlan with qemu and other tools that require\na tap file descriptor, the macvtap driver adds a small backend\nwith a character device with the same interface as the tun\ndriver, with a minimum set of features.\n\nMacvtap interfaces are created in the same way as macvlan\ninterfaces using ip link, but the netif is just used as a\nhandle for configuration and accounting, while the data\ngoes through the chardev. Each macvtap interface has its\nown character device, simplifying permission management\nsignificantly over the generic tun/tap driver.\n\nCc: Patrick McHardy \u003ckaber@trash.net\u003e\nCc: Stephen Hemminger \u003cshemminger@linux-foundation.org\u003e\nCc: David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: \"Michael S. Tsirkin\" \u003cmst@redhat.com\u003e\nCc: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nCc: Or Gerlitz \u003cogerlitz@voltaire.com\u003e\nCc: netdev@vger.kernel.org\nCc: bridge@lists.linux-foundation.org\nCc: linux-kernel@vger.kernel.org\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "fc0663d6b5e6d8e9b57f872a644c0aafd82361b7",
      "tree": "133f8fb33482f58cd9adcb7747cd51a81856436d",
      "parents": [
        "8a83a00b0735190384a348156837918271034144"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Sat Jan 30 12:23:40 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Feb 03 20:20:33 2010 -0800"
      },
      "message": "macvlan: allow multiple driver backends\n\nThis makes it possible to hook into the macvlan driver\nfrom another kernel module. In particular, the goal is\nto extend it with the macvtap backend that provides\na tun/tap compatible interface directly on the macvlan\ndevice.\n\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8a83a00b0735190384a348156837918271034144",
      "tree": "f69d903405e2424c196d8648bb6cb18443359373",
      "parents": [
        "6884b348ed759184032306c9435a727741a72298"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Sat Jan 30 12:23:03 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Feb 03 20:20:32 2010 -0800"
      },
      "message": "net: maintain namespace isolation between vlan and real device\n\nIn the vlan and macvlan drivers, the start_xmit function forwards\ndata to the dev_queue_xmit function for another device, which may\npotentially belong to a different namespace.\n\nTo make sure that classification stays within a single namespace,\nthis resets the potentially critical fields.\n\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9c119ba54c0fcae72881948af3d37b47a2f8e1f9",
      "tree": "0be51b0bf02ece3bb32955e9d33a3998ecd57250",
      "parents": [
        "a4b97f2054af2e411c414ed4cb5e1d0dbfd24a47",
        "fdd3d631cddad20ad9d3e1eb7dbf26825a8a121f"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Feb 03 19:38:22 2010 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Feb 03 19:38:22 2010 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n"
    },
    {
      "commit": "f98bfbd78c37c5946cc53089da32a5f741efdeb7",
      "tree": "885c756a95f28d4d00868f6eb06ab9c45f11b2e2",
      "parents": [
        "a4c89051c83693e6cd5655b90300ec23a35e04f1"
      ],
      "author": {
        "name": "Evgeniy Polyakov",
        "email": "zbr@ioremap.net",
        "time": "Tue Feb 02 15:58:48 2010 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Feb 02 15:58:48 2010 -0800"
      },
      "message": "connector: Delete buggy notification code.\n\nOn Tue, Feb 02, 2010 at 02:57:14PM -0800, Greg KH (gregkh@suse.de) wrote:\n\u003e \u003e There are at least two ways to fix it: using a big cannon and a small\n\u003e \u003e one. The former way is to disable notification registration, since it is\n\u003e \u003e not used by anyone at all. Second way is to check whether calling\n\u003e \u003e process is root and its destination group is -1 (kind of priveledged\n\u003e \u003e one) before command is dispatched to workqueue.\n\u003e \n\u003e Well if no one is using it, removing it makes the most sense, right?\n\u003e \n\u003e No objection from me, care to make up a patch either way for this?\n\nGetting it is not used, let\u0027s drop support for notifications about\n(un)registered events from connector.\nAnother option was to check credentials on receiving, but we can always\nrestore it without bugs if needed, but genetlink has a wider code base\nand none complained, that userspace can not get notification when some\nother clients were (un)registered.\n\nKudos for Sebastian Krahmer \u003ckrahmer@suse.de\u003e, who found a bug in the\ncode.\n\nSigned-off-by: Evgeniy Polyakov \u003czbr@ioremap.net\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f9bfbebf34eab707b065116cdc9699d25ba4252a",
      "tree": "8cecf55980c72085dcc6e6af39bdfc7cccf18b69",
      "parents": [
        "28aecb9d7728dc26bf03ce7925fe622023a83a2a"
      ],
      "author": {
        "name": "Shirley Ma",
        "email": "mashirle@us.ibm.com",
        "time": "Fri Jan 29 03:19:05 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Feb 02 15:55:42 2010 -0800"
      },
      "message": "virtio: Add ability to detach unused buffers from vrings\n\nThere\u0027s currently no way for a virtio driver to ask for unused\nbuffers, so it has to keep a list itself to reclaim them at shutdown.\nThis is redundant, since virtio_ring stores that information.  So\nadd a new hook to do this.\n\nSigned-off-by: Shirley Ma \u003cxma@us.ibm.com\u003e\nSigned-off-by: Amit Shah \u003camit.shah@redhat.com\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c85bb41e93184bf5494dde6d8fe5a81b564c84c8",
      "tree": "2a5daec2aecc3fb3eedfba3f63a2156f38575b2d",
      "parents": [
        "8b64056dacf6ec81986d63dff96fca039fe95f6e"
      ],
      "author": {
        "name": "Flavio Leitner",
        "email": "fleitner@redhat.com",
        "time": "Tue Feb 02 07:32:29 2010 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Feb 02 07:32:29 2010 -0800"
      },
      "message": "igmp: fix ip_mc_sf_allow race [v5]\n\nAlmost all igmp functions accessing inet-\u003emc_list are protected by\nrtnl_lock(), but there is one exception which is ip_mc_sf_allow(),\nso there is a chance of either ip_mc_drop_socket or ip_mc_leave_group\nremove an entry while ip_mc_sf_allow is running causing a crash.\n\nSigned-off-by: Flavio Leitner \u003cfleitner@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "32e7bfc41110bc8f29ec0f293c3bcee6645fef34",
      "tree": "b770a040aee7a6a196514cbf5328debb33321d4d",
      "parents": [
        "9010bc3364db56dd88a1851e0797e597e322ce08"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Mon Jan 25 13:36:10 2010 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 25 13:36:10 2010 -0800"
      },
      "message": "net: use helpers to access uc list V2\n\nThis patch introduces three macros to work with uc list from net drivers.\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a271623f871dda970319ca15dfad3a8c8c36249f",
      "tree": "169083259c6cf93b6017310e6b3b61b92b1dace6",
      "parents": [
        "da6b33306801af7ee6479c177051e70842974932"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Fri Jan 22 10:13:10 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jan 23 01:21:26 2010 -0800"
      },
      "message": "netdev: remove certain HAVE_ macros\n\nAfter netdev_ops compat code HAVE_* macros aren\u0027t needed, in fact\nthey _will_ result in compile breakage for out of tree drivers.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "51c24aaacaea90c8e87f1dec75a2ac7622b593f8",
      "tree": "9f54936c87764bef75e97395cb56b7d1e0df24c6",
      "parents": [
        "4276e47e2d1c85a2477caf0d22b91c4f2377fba8",
        "6be325719b3e54624397e413efd4b33a997e55a3"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jan 23 00:31:06 2010 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jan 23 00:31:06 2010 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n"
    },
    {
      "commit": "6be325719b3e54624397e413efd4b33a997e55a3",
      "tree": "57f321a56794cab2222e179b16731e0d76a4a68a",
      "parents": [
        "26d92f9276a56d55511a427fb70bd70886af647a",
        "92dcffb916d309aa01778bf8963a6932e4014d07"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jan 22 22:45:46 2010 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jan 22 22:45:46 2010 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of /home/davem/src/GIT/linux-2.6/\n"
    },
    {
      "commit": "d0dd2de0d055f0ffb1e2ecdc21380de9d12a85e2",
      "tree": "cb3d3e77e62c22032f0fac4c58e8f304f08f5061",
      "parents": [
        "ef15aac6073b27fd4f70007784d2d52ed394bf43"
      ],
      "author": {
        "name": "Andriy Tkachuk",
        "email": "andrit@ukr.net",
        "time": "Wed Jan 20 13:55:06 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jan 22 16:11:27 2010 -0500"
      },
      "message": "mac80211: Account HT Control field in Data frame hdrlen according to 802.11n-2009\n\nieee80211_hdrlen() should account account new HT Control field in 802.11\ndata frame header introduced by IEEE 802.11n standard.\n\nAccording to 802.11n-2009 HT Control field is present in data frames\nwhen both of following are met:\n\n   1. It is QoS data frame.\n   2. Order bit is set in Frame Control field.\n\nThe change might be totally compatible with legacy non-11n aware frames,\nbecause 802.11-2007 standard states that \"all QoS STAs set this subfield\nto 0\".\n\nSigned-off-by: Andriy V. Tkachuk \u003candrit@ukr.net\u003e\nAcked-by : Benoit Papillault \u003cbenoit.papillault@free.fr\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "e80b1359858df17b0034bdf7d1b6f3e0d5b97257",
      "tree": "c0ce7b9abcef8910ee78327285d85b04b0512d33",
      "parents": [
        "341031caec0cd730e84d248d95851bf54ec4e41f",
        "b27d515a49169e5e2a92d621faac761074a8c5b1"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 21 08:50:04 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 21 08:50:04 2010 -0800"
      },
      "message": "Merge branch \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  perf: x86: Add support for the ANY bit\n  perf: Change the is_software_event() definition\n  perf: Honour event state for aux stream data\n  perf: Fix perf_event_do_pending() fallback callsite\n  perf kmem: Print usage help for unknown commands\n  perf kmem: Increase \"Hit\" column length\n  hw-breakpoints, perf: Fix broken mmiotrace due to dr6 by reference change\n  perf timechart: Use tid not pid for COMM change\n"
    },
    {
      "commit": "341031caec0cd730e84d248d95851bf54ec4e41f",
      "tree": "f9531f3bef8446e0eb2f9f4ba1ed6fa1000585c8",
      "parents": [
        "836f48c5f8c6ef004419f1605514aa05eb58eefb",
        "6d558c3ac9b6508d26fd5cadccce51fc9d726b1c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 21 08:49:52 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 21 08:49:52 2010 -0800"
      },
      "message": "Merge branch \u0027sched-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027sched-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  sched: Reassign prev and switch_count when reacquire_kernel_lock() fail\n  sched: Fix vmark regression on big machines\n"
    },
    {
      "commit": "c9140487b4601ea0b4479af3d92ceb0cda2c691f",
      "tree": "6ff23dfe9d7366accade95b6aaad9ffd434690d0",
      "parents": [
        "456eac94789e1b512515e6974e091ef655f343de",
        "0a2fea2e0dea9df8ead1cb45e4b9cd68e1b1d29b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 21 07:35:43 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 21 07:35:43 2010 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6:\n  USB: isp1362: fix build failure on ARM systems via irq_flags cleanup\n  USB: isp1362: better 64bit printf warning fixes\n  USB: fix usbstorage for 2770:915d delivers no FAT\n  USB: Fix level of isp1760 Reloading ptd error message\n  USB: FHCI: avoid NULL pointer dereference\n  USB: Fix duplicate sysfs problem after device reset.\n  USB: add speed values for USB 3.0 and wireless controllers\n  USB: add missing delay during remote wakeup\n  USB: EHCI \u0026 UHCI: fix race between root-hub suspend and port resume\n  USB: EHCI: fix handling of unusual interrupt intervals\n  USB: Don\u0027t use GFP_KERNEL while we cannot reset a storage device\n  USB: fix bitmask merge error\n  usb: serial: fix memory leak in generic driver\n  USB: serial: fix USB serial fix kfifo_len locking\n"
    },
    {
      "commit": "456eac94789e1b512515e6974e091ef655f343de",
      "tree": "79f277d02e5e480a373c129bdce7564421d360c7",
      "parents": [
        "dedd0c2a48d1eb779373de5eddd04a3e059ce540",
        "f06f135d8642e2f6812cfcb4ea8e4e9122d4d58c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 21 07:32:11 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 21 07:32:11 2010 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.dk/linux-2.6-block\n\n* \u0027for-linus\u0027 of git://git.kernel.dk/linux-2.6-block:\n  fs/bio.c: fix shadows sparse warning\n  drbd: The kernel code is now equivalent to out of tree release 8.3.7\n  drbd: Allow online resizing of DRBD devices while peer not reachable (needs to be explicitly forced)\n  drbd: Don\u0027t go into StandAlone mode when authentification failes because of network error\n  drivers/block/drbd/drbd_receiver.c: correct NULL test\n  cfq-iosched: Respect ioprio_class when preempting\n  genhd: overlapping variable definition\n  block: removed unused as_io_context\n  DM: Fix device mapper topology stacking\n  block: bdev_stack_limits wrapper\n  block: Fix discard alignment calculation and printing\n  block: Correct handling of bottom device misaligment\n  drbd: check on CONFIG_LBDAF, not LBD\n  drivers/block/drbd: Correct NULL test\n  drbd: Silenced an assert that could triggered after changing write ordering method\n  drbd: Kconfig fix\n  drbd: Fix for a race between IO and a detach operation [Bugz 262]\n  drbd: Use drbd_crypto_is_hash() instead of an open coded check\n"
    },
    {
      "commit": "92b6759857ea3ad19bc6871044e373f6251841d3",
      "tree": "99da01c3d9578b1494e3459d56ba98048f750d22",
      "parents": [
        "22e190851f8709c48baf00ed9ce6144cdc54d025"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Mon Jan 18 14:02:16 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jan 21 13:40:40 2010 +0100"
      },
      "message": "perf: Change the is_software_event() definition\n\nThe is_software_event() definition always confuses me because its an\nexclusive expression, make it an inclusive one.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "50b926e439620c469565e8be0f28be78f5fca1ce",
      "tree": "3eb4b4aa89ed7c6d61457cdf745c5d52f577671a",
      "parents": [
        "24bc7347da73a9ed3383056c3d0f28c0e361621e"
      ],
      "author": {
        "name": "Mike Galbraith",
        "email": "efault@gmx.de",
        "time": "Mon Jan 04 14:44:56 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jan 21 13:39:03 2010 +0100"
      },
      "message": "sched: Fix vmark regression on big machines\n\nSD_PREFER_SIBLING is set at the CPU domain level if power saving isn\u0027t\nenabled, leading to many cache misses on large machines as we traverse\nlooking for an idle shared cache to wake to.  Change the enabler of\nselect_idle_sibling() to SD_SHARE_PKG_RESOURCES, and enable same at the\nsibling domain level.\n\nReported-by: Lin Ming \u003cming.m.lin@intel.com\u003e\nSigned-off-by: Mike Galbraith \u003cefault@gmx.de\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c1262612696.15495.15.camel@marge.simson.net\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "04a723ea9c53ba608b0411aa36948bb57c51a08e",
      "tree": "1a5d7395ccc864b8bdf8688396688951e28a4ca8",
      "parents": [
        "b132b04e193908a94d95065d0628f8fb0159cc55"
      ],
      "author": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Wed Jan 06 10:16:51 2010 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Wed Jan 20 15:24:35 2010 -0800"
      },
      "message": "USB: Fix duplicate sysfs problem after device reset.\n\nBorislav Petkov reports issues with duplicate sysfs endpoint files after a\nresume from a hibernate.  It turns out that the code to support alternate\nsettings under xHCI has issues when a device with a non-default alternate\nsetting is reset during the hibernate:\n\n[  427.681810] Restarting tasks ...\n[  427.681995] hub 1-0:1.0: state 7 ports 6 chg 0004 evt 0000\n[  427.682019] usb usb3: usb resume\n[  427.682030] ohci_hcd 0000:00:12.0: wakeup root hub\n[  427.682191] hub 1-0:1.0: port 2, status 0501, change 0000, 480 Mb/s\n[  427.682205] usb 1-2: usb wakeup-resume\n[  427.682226] usb 1-2: finish reset-resume\n[  427.682886] done.\n[  427.734658] ehci_hcd 0000:00:12.2: port 2 high speed\n[  427.734663] ehci_hcd 0000:00:12.2: GetStatus port 2 status 001005 POWER sig\u003dse0 PE CONNECT\n[  427.746682] hub 3-0:1.0: hub_reset_resume\n[  427.746693] hub 3-0:1.0: trying to enable port power on non-switchable hub\n[  427.786715] usb 1-2: reset high speed USB device using ehci_hcd and address 2\n[  427.839653] ehci_hcd 0000:00:12.2: port 2 high speed\n[  427.839666] ehci_hcd 0000:00:12.2: GetStatus port 2 status 001005 POWER sig\u003dse0 PE CONNECT\n[  427.847717] ohci_hcd 0000:00:12.0: GetStatus roothub.portstatus [1] \u003d 0x00010100 CSC PPS\n[  427.915497] hub 1-2:1.0: remove_intf_ep_devs: if: ffff88022f9e8800 -\u003eep_devs_created: 1\n[  427.915774] hub 1-2:1.0: remove_intf_ep_devs: bNumEndpoints: 1\n[  427.915934] hub 1-2:1.0: if: ffff88022f9e8800: endpoint devs removed.\n[  427.916158] hub 1-2:1.0: create_intf_ep_devs: if: ffff88022f9e8800 -\u003eep_devs_created: 0, -\u003eunregistering: 0\n[  427.916434] hub 1-2:1.0: create_intf_ep_devs: bNumEndpoints: 1\n[  427.916609]  ep_81: create, parent hub\n[  427.916632] ------------[ cut here ]------------\n[  427.916644] WARNING: at fs/sysfs/dir.c:477 sysfs_add_one+0x82/0x96()\n[  427.916649] Hardware name: System Product Name\n[  427.916653] sysfs: cannot create duplicate filename \u0027/devices/pci0000:00/0000:00:12.2/usb1/1-2/1-2:1.0/ep_81\u0027\n[  427.916658] Modules linked in: binfmt_misc kvm_amd kvm powernow_k8 cpufreq_ondemand cpufreq_powersave cpufreq_userspace freq_table cpufreq_conservative ipv6 vfat fat\n+8250_pnp 8250 pcspkr ohci_hcd serial_core k10temp edac_core\n[  427.916694] Pid: 278, comm: khubd Not tainted 2.6.33-rc2-00187-g08d869a-dirty #13\n[  427.916699] Call Trace:\n\nThe problem is caused by a mismatch between the USB core\u0027s view of the\ndevice state and the USB device and xHCI host\u0027s view of the device state.\n\nAfter the device reset and re-configuration, the device and the xHCI host\nthink they are using alternate setting 0 of all interfaces.  However, the\nUSB core keeps track of the old state, which may include non-zero\nalternate settings.  It uses intf-\u003ecur_altsetting to keep the endpoint\nsysfs files for the old state across the reset.\n\nThe bandwidth allocation functions need to know what the xHCI host thinks\nthe current alternate settings are, so original patch set\nintf-\u003ecur_altsetting to the alternate setting 0.  This caused duplicate\nendpoint files to be created.\n\nThe solution is to not set intf-\u003ecur_altsetting before calling\nusb_set_interface() in usb_reset_and_verify_device().  Instead, we add a\nnew flag to struct usb_interface to tell usb_hcd_alloc_bandwidth() to use\nalternate setting 0 as the currently installed alternate setting.\n\nSigned-off-by: Sarah Sharp \u003csarah.a.sharp@linux.intel.com\u003e\nTested-by: Borislav Petkov \u003cpetkovbb@googlemail.com\u003e\nCc: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "be6066f34c948ccf4adcc90bbeb1fd335d663303",
      "tree": "551d2cf4934e7101e2e668347d85f47663a77e7c",
      "parents": [
        "b4cdd6ac4f9b73118542a5c4e796e6b9f287d0dd",
        "7f07a605a3929d2d94dcbad8ccb7d280958d21f9"
      ],
      "author": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Jan 20 01:23:27 2010 -0500"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Jan 20 01:23:27 2010 -0500"
      },
      "message": "Merge branch \u0027misc\u0027 into release\n"
    },
    {
      "commit": "11380a4b2d86fae9a6bce75c9373668cc323fe57",
      "tree": "ded9a419d836af9eb0cd0e40858aec1f0cc3b61a",
      "parents": [
        "6373464288cab09bc641be301d8d30fc9f64ba71"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jan 19 13:46:10 2010 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jan 19 13:46:10 2010 -0800"
      },
      "message": "net: Unexport napi_gro_flush().\n\nNothing outside of net/core/dev.c uses it.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6373464288cab09bc641be301d8d30fc9f64ba71",
      "tree": "c1bc92dc630aa15da2e12bc0d09c92169817a702",
      "parents": [
        "6d955180b2f9ccff444df06265160868cabb289a",
        "730dd70549e0ec755dd55615ba5cfc38a482a947"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jan 19 11:43:42 2010 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jan 19 11:43:42 2010 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6\n\nConflicts:\n\tdrivers/net/wireless/iwlwifi/iwl-core.h\n"
    },
    {
      "commit": "4f9c85a1b03bfa5c0a0d8488a3a7766f3c9fb756",
      "tree": "33e56a2d442274aeb0baa2f2b61f7bb5759dd17b",
      "parents": [
        "de4ef86cfce60d2250111f34f8a084e769f23b16"
      ],
      "author": {
        "name": "Anton Vorontsov",
        "email": "avorontsov@ru.mvista.com",
        "time": "Mon Jan 18 05:37:16 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jan 19 01:59:02 2010 -0800"
      },
      "message": "phylib: Move workqueue initialization to a proper place\n\ncommit 541cd3ee00a4fe975b22fac6a3bc846bacef37f7 (\"phylib: Fix deadlock\non resume\") caused TI DaVinci EMAC ethernet driver to oops upon resume:\n\n PM: resume of devices complete after 237.098 msecs\n Restarting tasks ... done.\n kernel BUG at kernel/workqueue.c:354!\n Unable to handle kernel NULL pointer dereference at virtual address 00000000\n [...]\n Backtrace:\n [\u003cc002c598\u003e] (__bug+0x0/0x2c) from [\u003cc0052a54\u003e] (queue_delayed_work_on+0x74/0xf8)\n [\u003cc00529e0\u003e] (queue_delayed_work_on+0x0/0xf8) from [\u003cc0052b30\u003e] (queue_delayed_work+0x2c/0x30)\n\nThe oops pops up because TI DaVinci EMAC driver detaches PHY on\nsuspend and attaches it back on resume. Attaching makes phylib call\nphy_start_machine() that initializes a workqueue. On the other hand,\nPHY\u0027s resume routine will call phy_start_machine() again, and that\nwill cause the oops since we just destroyed the already scheduled\nworkqueue.\n\nThis patch fixes the issue by moving workqueue initialization to\nphy_device_create().\n\np.s. We don\u0027t see this oops with ucc_geth and gianfar drivers because\nthey perform a fine-grained suspend, i.e. they just stop the PHYs\nwithout detaching.\n\nReported-by: Sekhar Nori \u003cnsekhar@ti.com\u003e\nSigned-off-by: Anton Vorontsov \u003cavorontsov@ru.mvista.com\u003e\nTested-by: Sekhar Nori \u003cnsekhar@ti.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "64e8867ba8098b69889c1af94997a5ba2348fb26",
      "tree": "3391806575ec3435a26043a22ba45c9d76f0b791",
      "parents": [
        "6f2af72a2451b7491fba820b1d1b0b91c6a84027"
      ],
      "author": {
        "name": "Ian Molton",
        "email": "ian@mnementh.co.uk",
        "time": "Wed Jan 06 13:51:48 2010 +0100"
      },
      "committer": {
        "name": "Samuel Ortiz",
        "email": "sameo@linux.intel.com",
        "time": "Mon Jan 18 12:30:27 2010 +0100"
      },
      "message": "mfd: tmio_mmc hardware abstraction for CNF area\n\nThis patch abstracts out the CNF area code from tmio_mmc which\nis not present in all hardware that can use this driver. This\nis required so that we can support non-toshiba based hardware.\n\nASIC3 support by Philipp Zabel\n\nSigned-off-by: Ian Molton \u003cian@mnementh.co.uk\u003e\nSigned-off-by: Magnus Damm \u003cdamm@opensource.se\u003e\nSigned-off-by: Samuel Ortiz \u003csameo@linux.intel.com\u003e\n"
    },
    {
      "commit": "9dffe2a32b0deef52605d50527c0d240b15cabf7",
      "tree": "84d406d5c82f47010f2c59abeb512414283db971",
      "parents": [
        "7dc9c484a71525794ca05cf7a47f283f1b54cd12"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Mon Jan 04 18:05:00 2010 +0000"
      },
      "committer": {
        "name": "Samuel Ortiz",
        "email": "sameo@linux.intel.com",
        "time": "Mon Jan 18 12:30:25 2010 +0100"
      },
      "message": "mfd: Correct WM835x ISINK ramp time defines\n\nThe constants used to specify ISINK ramp times for WM835x had the\nwrong shifts so that the on times applied to the off ramp and vice\nversa. The masks for the bitfields are correct.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\nCc: stable@kernel.org\nSigned-off-by: Samuel Ortiz \u003csameo@linux.intel.com\u003e\n"
    },
    {
      "commit": "7dc9c484a71525794ca05cf7a47f283f1b54cd12",
      "tree": "e150ea705069b06af5c6e0d077a94437f24e991a",
      "parents": [
        "3a5dd791abef032fe57fc652c0232913c696e59b",
        "27d55f1f4c190b14092fcca3069c7d15df83514f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jan 17 11:01:16 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jan 17 11:01:16 2010 -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  do_add_mount() should sanitize mnt_flags\n  CIFS shouldn\u0027t make mountpoints shrinkable\n  mnt_flags fixes in do_remount()\n  attach_recursive_mnt() needs to hold vfsmount_lock over set_mnt_shared()\n  may_umount() needs namespace_sem\n  Fix configfs leak\n  Fix the -ESTALE handling in do_filp_open()\n  ecryptfs: Fix refcnt leak on ecryptfs_follow_link() error path\n  Fix ACC_MODE() for real\n  Unrot uml mconsole a bit\n  hppfs: handle -\u003eput_link()\n  Kill 9p readlink()\n  fix autofs/afs/etc. magic mountpoint breakage\n"
    },
    {
      "commit": "6ccc347b699681a0b21c2f7b1a1f85500a58c6b8",
      "tree": "abe33c75ae53d445abde0e5986b96ef696501d38",
      "parents": [
        "eb29a5cc0b601c458bae9df2f6c3696d75c2d383",
        "d1303dd1d6b220cab375f24fa91a5640e54e169e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:27:25 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:27:25 2010 -0800"
      },
      "message": "Merge branch \u0027tracing-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027tracing-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  tracing/filters: Add comment for match callbacks\n  tracing/filters: Fix MATCH_FULL filter matching for PTR_STRING\n  tracing/filters: Fix MATCH_MIDDLE_ONLY filter matching\n  lib: Introduce strnstr()\n  tracing/filters: Fix MATCH_END_ONLY filter matching\n  tracing/filters: Fix MATCH_FRONT_ONLY filter matching\n  ftrace: Fix MATCH_END_ONLY function filter\n  tracing/x86: Derive arch from bits argument in recordmcount.pl\n  ring-buffer: Add rb_list_head() wrapper around new reader page next field\n  ring-buffer: Wrap a list.next reference with rb_list_head()\n"
    },
    {
      "commit": "7e6608724c640924aad1d556d17df33ebaa6124d",
      "tree": "b2d90646f5ee52f5b7807bbc0abe09db9adbe478",
      "parents": [
        "81759b5b221107488bda99fe7beeb7b734f61133"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Fri Jan 15 17:01:39 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:15:40 2010 -0800"
      },
      "message": "nommu: fix shared mmap after truncate shrinkage problems\n\nFix a problem in NOMMU mmap with ramfs whereby a shared mmap can happen\nover the end of a truncation.  The problem is that\nramfs_nommu_check_mappings() checks that the reduced file size against the\nVMA tree, but not the vm_region tree.\n\nThe following sequence of events can cause the problem:\n\n\tfd \u003d open(\"/tmp/x\", O_RDWR|O_TRUNC|O_CREAT, 0600);\n\tftruncate(fd, 32 * 1024);\n\ta \u003d mmap(NULL, 32 * 1024, PROT_READ|PROT_WRITE, MAP_SHARED, fd, 0);\n\tb \u003d mmap(NULL, 16 * 1024, PROT_READ|PROT_WRITE, MAP_SHARED, fd, 0);\n\tmunmap(a, 32 * 1024);\n\tftruncate(fd, 16 * 1024);\n\tc \u003d mmap(NULL, 32 * 1024, PROT_READ|PROT_WRITE, MAP_SHARED, fd, 0);\n\nMapping \u0027a\u0027 creates a vm_region covering 32KB of the file.  Mapping \u0027b\u0027\nsees that the vm_region from \u0027a\u0027 is covering the region it wants and so\nshares it, pinning it in memory.\n\nMapping \u0027a\u0027 then goes away and the file is truncated to the end of VMA\n\u0027b\u0027.  However, the region allocated by \u0027a\u0027 is still in effect, and has\n_not_ been reduced.\n\nMapping \u0027c\u0027 is then created, and because there\u0027s a vm_region covering the\ndesired region, get_unmapped_area() is _not_ called to repeat the check,\nand the mapping is granted, even though the pages from the latter half of\nthe mapping have been discarded.\n\nHowever:\n\n\td \u003d mmap(NULL, 16 * 1024, PROT_READ|PROT_WRITE, MAP_SHARED, fd, 0);\n\nMapping \u0027d\u0027 should work, and should end up sharing the region allocated by\n\u0027a\u0027.\n\nTo deal with this, we shrink the vm_region struct during the truncation,\nlest do_mmap_pgoff() take it as licence to share the full region\nautomatically without calling the get_unmapped_area() file op again.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nAcked-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Greg Ungerer \u003cgerg@snapgear.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "efc1a3b16930c41d64ffefde16b87d82f603a8a0",
      "tree": "1f651e22f534f1b3eacd2fab97e9351aa75abd0b",
      "parents": [
        "779c10232ceb11c1b259232c4845cfb2850287b7"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Fri Jan 15 17:01:35 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:15:40 2010 -0800"
      },
      "message": "nommu: don\u0027t need get_unmapped_area() for NOMMU\n\nget_unmapped_area() is unnecessary for NOMMU as no-one calls it.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nAcked-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Greg Ungerer \u003cgerg@snapgear.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1e2ae599d37e60958c03ca5e46b1f657619a30cd",
      "tree": "0a0c9ff0370fbefd4eb8fe3a44106880c1aae8cb",
      "parents": [
        "ed5e5894b234ce4793d78078c026915b853e0678"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Fri Jan 15 17:01:33 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:15:40 2010 -0800"
      },
      "message": "nommu: struct vm_region\u0027s vm_usage count need not be atomic\n\nThe vm_usage count field in struct vm_region does not need to be atomic as\nit\u0027s only even modified whilst nommu_region_sem is write locked.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nAcked-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Greg Ungerer \u003cgerg@snapgear.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cc8ef6eb21e964b1c5eb97b2d0e8ac9893e1bf86",
      "tree": "c30758f4f980a71acd662f55006af80c8a11b27f",
      "parents": [
        "d2dbe08ddceb4ba2b274abb84326d7e69d454e5c"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "rdreier@cisco.com",
        "time": "Fri Jan 15 17:01:22 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:15:39 2010 -0800"
      },
      "message": "kernel.h: add BUILD_BUG_ON_NOT_POWER_OF_2()\n\nAdd BUILD_BUG_ON_NOT_POWER_OF_2()\n\nWhen code relies on a constant being a power of 2:\n\n\t#define FOO\t512\t/* must be a power of 2 */\n\nit would be nice to be able to do:\n\n\tBUILD_BUG_ON(!is_power_of_2(FOO));\n\nHowever applying an inline function does not result in a compile-time\nconstant that can be used with BUILD_BUG_ON(), so trying that gives\nresults in:\n\n\terror: bit-field \u0027\u003canonymous\u003e\u0027 width not an integer constant\n\nAs suggested by akpm, rather than monkeying around with is_power_of_2()\nand risking gcc warts about constant expressions, just create a macro\nBUILD_BUG_ON_NOT_POWER_OF_2() to encapsulate this common requirement.\n\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\nCc: Bart Van Assche \u003cbvanassche@acm.org\u003e\nCc: David Dillow \u003cdave@thedillows.org\u003e\nCc: \"Robert P. J. Day\" \u003crpjday@crashcourse.ca\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5dab600e6a153ceb64832f608069e6c08185411a",
      "tree": "866d05be2255bd4f0c146534741b10c60afe9b79",
      "parents": [
        "d994ffc247f7c4a48b848f10c4c01c9b06411ada"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "andi@firstfloor.org",
        "time": "Fri Jan 15 17:01:17 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:15:38 2010 -0800"
      },
      "message": "kfifo: document everywhere that size has to be power of two\n\nOn my first try using them I missed that the fifos need to be power of\ntwo, resulting in a runtime bug.  Document that requirement everywhere\n(and fix one grammar bug)\n\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\nAcked-by: Stefani Seibold \u003cstefani@seibold.net\u003e\nCc: Roland Dreier \u003crdreier@cisco.com\u003e\nCc: Dmitry Torokhov \u003cdmitry.torokhov@gmail.com\u003e\nCc: Andy Walls \u003cawalls@radix.net\u003e\nCc: Vikram Dhillon \u003cdhillonv10@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d994ffc247f7c4a48b848f10c4c01c9b06411ada",
      "tree": "1ccfe9997a504d556e368553c26661d0ce543f82",
      "parents": [
        "a5b9e2c1063046421ce01dcf5ddd7ec12567f3e1"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "andi@firstfloor.org",
        "time": "Fri Jan 15 17:01:17 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:15:38 2010 -0800"
      },
      "message": "kfifo: add kfifo_initialized\n\nSimple inline that checks if kfifo_init() has been executed on a fifo.\n\nThis is useful for walking all per CPU fifos, when some of them might not\nhave been brought up yet.\n\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\nAcked-by: Stefani Seibold \u003cstefani@seibold.net\u003e\nCc: Roland Dreier \u003crdreier@cisco.com\u003e\nCc: Dmitry Torokhov \u003cdmitry.torokhov@gmail.com\u003e\nCc: Andy Walls \u003cawalls@radix.net\u003e\nCc: Vikram Dhillon \u003cdhillonv10@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a5b9e2c1063046421ce01dcf5ddd7ec12567f3e1",
      "tree": "09cef2a043af96491497db380abe89af2aee5176",
      "parents": [
        "64ce1037c5434b1d036cd99ecaee6e00496bc2e9"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "andi@firstfloor.org",
        "time": "Fri Jan 15 17:01:16 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:15:38 2010 -0800"
      },
      "message": "kfifo: add kfifo_out_peek\n\nIn some upcoming code it\u0027s useful to peek into a FIFO without permanentely\nremoving data.  This patch implements a new kfifo_out_peek() to do this.\n\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\nAcked-by: Stefani Seibold \u003cstefani@seibold.net\u003e\nCc: Roland Dreier \u003crdreier@cisco.com\u003e\nCc: Dmitry Torokhov \u003cdmitry.torokhov@gmail.com\u003e\nCc: Andy Walls \u003cawalls@radix.net\u003e\nCc: Vikram Dhillon \u003cdhillonv10@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "64ce1037c5434b1d036cd99ecaee6e00496bc2e9",
      "tree": "37a8c8f1dccdcdb3d00bf07d36d86fe6ea05f3f9",
      "parents": [
        "8ecc2951534af10e04ddb5e5ff5c6d217b79f5c2"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "andi@firstfloor.org",
        "time": "Fri Jan 15 17:01:15 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:15:38 2010 -0800"
      },
      "message": "kfifo: sanitize *_user error handling\n\nRight now for kfifo_*_user it\u0027s not easily possible to distingush between\na user copy failing and the FIFO not containing enough data.  The problem\nis that both conditions are multiplexed into the same return code.\n\nAvoid this by moving the \"copy length\" into a separate output parameter\nand only return 0/-EFAULT in the main return value.\n\nI didn\u0027t fully adapt the weird \"record\" variants, those seem\nto be unused anyways and were rather messy (should they be just removed?)\n\nI would appreciate some double checking if I did all the conversions\ncorrectly.\n\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\nCc: Stefani Seibold \u003cstefani@seibold.net\u003e\nCc: Roland Dreier \u003crdreier@cisco.com\u003e\nCc: Dmitry Torokhov \u003cdmitry.torokhov@gmail.com\u003e\nCc: Andy Walls \u003cawalls@radix.net\u003e\nCc: Vikram Dhillon \u003cdhillonv10@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8ecc2951534af10e04ddb5e5ff5c6d217b79f5c2",
      "tree": "44c8400754bc42a072fe7dc117696ebb5699920e",
      "parents": [
        "2427b8e3eaea3719e53bbed7b3375382c3aa6f13"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "andi@firstfloor.org",
        "time": "Fri Jan 15 17:01:12 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:15:38 2010 -0800"
      },
      "message": "kfifo: use void * pointers for user buffers\n\nThe pointers to user buffers are currently unsigned char *, which requires\na lot of casting in the caller for any non-char typed buffers.  Use void *\ninstead.\n\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\nAcked-by: Stefani Seibold \u003cstefani@seibold.net\u003e\nCc: Roland Dreier \u003crdreier@cisco.com\u003e\nCc: Dmitry Torokhov \u003cdmitry.torokhov@gmail.com\u003e\nCc: Andy Walls \u003cawalls@radix.net\u003e\nCc: Vikram Dhillon \u003cdhillonv10@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2427b8e3eaea3719e53bbed7b3375382c3aa6f13",
      "tree": "83d4b8d0bc442a8971584c0d2b8cf3c553484a48",
      "parents": [
        "118f3e1afd5534c15f9701f33514186cfc841a27"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Fri Jan 15 17:01:11 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:15:38 2010 -0800"
      },
      "message": "tty.h: make tty_port_get() static inline\n\nI get a few dozen of these warnings when using\n  gcc (GCC) 4.4.1 20090725 (Red Hat 4.4.1-2):\n\nIn file included from mmotm-2010-0113-1217/init/do_mounts.c:5:\nmmotm-2010-0113-1217/include/linux/tty.h: In function \u0027tty_port_get\u0027:\nmmotm-2010-0113-1217/include/linux/tty.h:469: warning: \u0027______f\u0027 is static but declared in inline function \u0027tty_port_get\u0027 which is not static\n\nso make the function static inline.\n\n[akpm@linux-foundation.org: may as well convert tty_port_users() also]\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7e105057a34c83cea542dacc55ff0528bce67afa",
      "tree": "2603ae4ef6b310d8a26f779761cff8cfb4815c09",
      "parents": [
        "33f724eb9e3d6e33aad410318d3ac720fecbdbcd"
      ],
      "author": {
        "name": "Stefani Seibold",
        "email": "stefani@seibold.net",
        "time": "Fri Jan 15 17:01:02 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:15:37 2010 -0800"
      },
      "message": "kfifo: fix kfifo_out_locked race bug\n\nFix a wrong optimization in include/linux/kfifo.h which could cause a race\nin kfifo_out_locked.\n\nSigned-off-by: Stefani Seibold \u003cstefani@seibold.net\u003e\nReported-by: Johan Hovold \u003cjhovold@gmail.com\u003e\nCc: Pete Zaitcev \u003czaitcev@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3b3ef30833cc85982b0b7e950998d86f5e2d28cf",
      "tree": "0abbb1ec81a14f0f718abc01ac908bbe783f7bf9",
      "parents": [
        "9fc819172aa565c7be51f758b7e85301c9df7c70",
        "c332e9fcc5289698350d39d4d22c3ed5257d7a80"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 15 14:51:57 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 15 14:51:57 2010 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:\n  Input: sentelic - fix left/right horizontal scroll mapping\n  Input: pmouse - move Sentelic probe down the list\n  Input: add compat support for sysfs and /proc capabilities output\n  Input: i8042 - add Dritek quirk for Acer Aspire 5610.\n  Input: xbox - do not use GFP_KERNEL under spinlock\n  Input: psmouse - fix Synaptics detection when protocol is disabled\n  Input: bcm5974 - report ABS_MT events\n  Input: davinci_keyscan - add device_enable method to platform data\n  Input: evdev - be less aggressive about sending SIGIO notifies\n  Input: atkbd - fix canceling event_work in disconnect\n  Input: serio - fix potential deadlock when unbinding drivers\n  Input: gf2k - fix \u0026\u0026/|| confusion in gf2k_connect()\n"
    },
    {
      "commit": "3a4d5c94e959359ece6d6b55045c3f046677f55c",
      "tree": "113cfe31540e3d77925837f6990c3284d425bfd1",
      "parents": [
        "5da779c34ccff5e1e617892b6c8bd8260fb1f04c"
      ],
      "author": {
        "name": "Michael S. Tsirkin",
        "email": "mst@redhat.com",
        "time": "Thu Jan 14 06:17:27 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jan 15 01:43:29 2010 -0800"
      },
      "message": "vhost_net: a kernel-level virtio server\n\nWhat it is: vhost net is a character device that can be used to reduce\nthe number of system calls involved in virtio networking.\nExisting virtio net code is used in the guest without modification.\n\nThere\u0027s similarity with vringfd, with some differences and reduced scope\n- uses eventfd for signalling\n- structures can be moved around in memory at any time (good for\n  migration, bug work-arounds in userspace)\n- write logging is supported (good for migration)\n- support memory table and not just an offset (needed for kvm)\n\ncommon virtio related code has been put in a separate file vhost.c and\ncan be made into a separate module if/when more backends appear.  I used\nRusty\u0027s lguest.c as the source for developing this part : this supplied\nme with witty comments I wouldn\u0027t be able to write myself.\n\nWhat it is not: vhost net is not a bus, and not a generic new system\ncall. No assumptions are made on how guest performs hypercalls.\nUserspace hypervisors are supported as well as kvm.\n\nHow it works: Basically, we connect virtio frontend (configured by\nuserspace) to a backend. The backend could be a network device, or a tap\ndevice.  Backend is also configured by userspace, including vlan/mac\netc.\n\nStatus: This works for me, and I haven\u0027t see any crashes.\nCompared to userspace, people reported improved latency (as I save up to\n4 system calls per packet), as well as better bandwidth and CPU\nutilization.\n\nFeatures that I plan to look at in the future:\n- mergeable buffers\n- zero copy\n- scalability tuning: figure out the best threading model to use\n\nNote on RCU usage (this is also documented in vhost.h, near\nprivate_pointer which is the value protected by this variant of RCU):\nwhat is happening is that the rcu_dereference() is being used in a\nworkqueue item.  The role of rcu_read_lock() is taken on by the start of\nexecution of the workqueue item, of rcu_read_unlock() by the end of\nexecution of the workqueue item, and of synchronize_rcu() by\nflush_workqueue()/flush_work(). In the future we might need to apply\nsome gcc attribute or sparse annotation to the function passed to\nINIT_WORK(). Paul\u0027s ack below is for this RCU usage.\n\n(Includes fixes by Alan Cox \u003calan@linux.intel.com\u003e,\nDavid L Stevens \u003cdlstevens@us.ibm.com\u003e,\nChris Wright \u003cchrisw@redhat.com\u003e)\n\nAcked-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nAcked-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nAcked-by: \"Paul E. McKenney\" \u003cpaulmck@linux.vnet.ibm.com\u003e\nSigned-off-by: Michael S. Tsirkin \u003cmst@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "05c2828c72c4eabf62376adfe27bd24797621f62",
      "tree": "4db94de98ef8e75d5038f6a889dd434f3747c9d3",
      "parents": [
        "ad72c347e56bf3a0231b9d686e17764157d2961c"
      ],
      "author": {
        "name": "Michael S. Tsirkin",
        "email": "mst@redhat.com",
        "time": "Thu Jan 14 06:17:09 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jan 15 01:43:28 2010 -0800"
      },
      "message": "tun: export underlying socket\n\nTun device looks similar to a packet socket\nin that both pass complete frames from/to userspace.\n\nThis patch fills in enough fields in the socket underlying tun driver\nto support sendmsg/recvmsg operations, and message flags\nMSG_TRUNC and MSG_DONTWAIT, and exports access to this socket\nto modules.  Regular read/write behaviour is unchanged.\n\nThis way, code using raw sockets to inject packets\ninto a physical device, can support injecting\npackets into host network stack almost without modification.\n\nFirst user of this interface will be vhost virtualization\naccelerator.\n\nSigned-off-by: Michael S. Tsirkin \u003cmst@redhat.com\u003e\nAcked-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ad72c347e56bf3a0231b9d686e17764157d2961c",
      "tree": "4db03a0abae50edfaf996f43e3f717a57b776fbd",
      "parents": [
        "1954dc11776ef8c06263ba4cd21bf4d25c79a19c"
      ],
      "author": {
        "name": "Christian Pellegrin",
        "email": "chripell@fsfe.org",
        "time": "Thu Jan 14 07:08:34 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jan 15 01:39:17 2010 -0800"
      },
      "message": "can: Proper ctrlmode handling for CAN devices\n\nThis patch adds error checking of ctrlmode values for CAN devices. As\nan example all availabe bits are implemented in the mcp251x driver.\n\nSigned-off-by: Christian Pellegrin \u003cchripell@fsfe.org\u003e\nAcked-by: Wolfgang Grandegger \u003cwg@grandegger.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d5f1fb53353edc38da326445267c1df0c9676df2",
      "tree": "42def644ebd0d343f2eba9e625f4b9b1ea8a36f0",
      "parents": [
        "a3291c14ecf0a995e30d993b7f2cae031de98727"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Thu Jan 14 10:53:55 2010 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Jan 14 22:38:09 2010 -0500"
      },
      "message": "lib: Introduce strnstr()\n\nIt differs strstr() in that it limits the length to be searched\nin the first string.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4B4E8743.6030805@cn.fujitsu.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "6d125529c6cbfe570ce3bf9a0728548f087499da",
      "tree": "89ba434f76d224741bd0e0b0ef02b10a4ff95136",
      "parents": [
        "4ecf09fd3a7c8858198875171b684c73338fad83"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Dec 24 06:58:56 2009 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jan 14 09:05:26 2010 -0500"
      },
      "message": "Fix ACC_MODE() for real\n\ncommit 5300990c0370e804e49d9a59d928c5d53fb73487 had stepped on a rather\nnasty mess: definitions of ACC_MODE used to be different.  Fixed the\nresulting breakage, converting them to variant that takes O_... value;\nall callers have that and it actually simplifies life (see tomoyo part\nof changes).\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "9a58a80a701bdb2d220cdab4914218df5b48d781",
      "tree": "01eeb65ec70f22ec326d0938d002cc6a2aec73e8",
      "parents": [
        "508e14b4a4fb1a824a14f2c5b8d7df67b313f8e4"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Thu Jan 14 03:10:54 2010 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jan 14 03:10:54 2010 -0800"
      },
      "message": "proc_fops: convert drivers/isdn/ to seq_file\n\nConvert code away from -\u003eread_proc/-\u003ewrite_proc interfaces.  Switch to\nproc_create()/proc_create_data() which make addition of proc entries\nreliable wrt NULL -\u003eproc_fops, NULL -\u003edata and so on.\n\nProblem with -\u003eread_proc et al is described here commit\n786d7e1612f0b0adb6046f19b906609e4fe8b1ba \"Fix rmmod/read/write races in\n/proc entries\"\n\n[akpm@linux-foundation.org: CONFIG_PROC_FS\u003dn build fix]\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Tilman Schmidt \u003ctilman@imap.cc\u003e\nSigned-off-by: Karsten Keil \u003ckeil@b1-systems.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "508e14b4a4fb1a824a14f2c5b8d7df67b313f8e4",
      "tree": "4ae5de122ebb70f2395739c85cba86bb9df8f712",
      "parents": [
        "e1d5a010729a7a495a8a8de85727f3f0d62f06a0"
      ],
      "author": {
        "name": "Daniel Borkmann",
        "email": "danborkmann@googlemail.com",
        "time": "Tue Jan 12 14:27:30 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jan 13 20:38:26 2010 -0800"
      },
      "message": "netpoll: allow execution of multiple rx_hooks per interface\n\nSigned-off-by: Daniel Borkmann \u003cdanborkmann@googlemail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2c761270d5520dd84ab0b4e47c24d99ff8503c38",
      "tree": "c23a51fdcc96641661b632d3b3c2c46ad7e53a91",
      "parents": [
        "dbf004d7883b3adb058c0c1a5635bc4ec27651c0"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Tue Jan 12 17:39:16 2010 +1100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 12 21:02:00 2010 -0800"
      },
      "message": "lib: Introduce generic list_sort function\n\nThere are two copies of list_sort() in the tree already, one in the DRM\ncode, another in ubifs.  Now XFS needs this as well.  Create a generic\nlist_sort() function from the ubifs version and convert existing users\nto it so we don\u0027t end up with yet another copy in the tree.\n\nSigned-off-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\nAcked-by: Dave Airlie \u003cairlied@redhat.com\u003e\nAcked-by: Artem Bityutskiy \u003cdedekind@infradead.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2d13c8f0682bd38c74e89a76cc550f0324b610ba",
      "tree": "8e2286479c18f5ee076d26ee44ff03b44d38a299",
      "parents": [
        "1f0e14bbc065c88ddb68fec42b317f487cc85410",
        "5040ab67a2c6d5710ba497dc52a8f7035729d7b0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 12 20:56:20 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 12 20:56:20 2010 -0800"
      },
      "message": "Merge branch \u0027upstream-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev\n\n* \u0027upstream-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev:\n  libata: retry link resume if necessary\n  ata_piix: enable 32bit PIO on SATA piix\n  sata_promise: don\u0027t classify overruns as HSM errors\n"
    },
    {
      "commit": "597d8c717856f6094837850f3eb4850820b36451",
      "tree": "44c1b1115df6a80f6cee3684a01cdbc18b034134",
      "parents": [
        "682137f7e6bc78e3c324874c0c213123ddc5e261",
        "9db2f1bec36805e57a003f7bb90e003815d96de8"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 12 20:53:29 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 12 20:53:29 2010 -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: (56 commits)\n  sky2: Fix oops in sky2_xmit_frame() after TX timeout\n  Documentation/3c509: document ethtool support\n  af_packet: Don\u0027t use skb after dev_queue_xmit()\n  vxge: use pci_dma_mapping_error to test return value\n  netfilter: ebtables: enforce CAP_NET_ADMIN\n  e1000e: fix and commonize code for setting the receive address registers\n  e1000e: e1000e_enable_tx_pkt_filtering() returns wrong value\n  e1000e: perform 10/100 adaptive IFS only on parts that support it\n  e1000e: don\u0027t accumulate PHY statistics on PHY read failure\n  e1000e: call pci_save_state() after pci_restore_state()\n  netxen: update version to 4.0.72\n  netxen: fix set mac addr\n  netxen: fix smatch warning\n  netxen: fix tx ring memory leak\n  tcp: update the netstamp_needed counter when cloning sockets\n  TI DaVinci EMAC: Handle emac module clock correctly.\n  dmfe/tulip: Let dmfe handle DM910x except for SPARC on-board chips\n  ixgbe: Fix compiler warning about variable being used uninitialized\n  netfilter: nf_ct_ftp: fix out of bounds read in update_nl_seq()\n  mv643xx_eth: don\u0027t include cache padding in rx desc buffer size\n  ...\n\nFix trivial conflict in drivers/scsi/cxgb3i/cxgb3i_offload.c\n"
    },
    {
      "commit": "5040ab67a2c6d5710ba497dc52a8f7035729d7b0",
      "tree": "dea2290e50111fde938bfcbb83de0377e7c4d94a",
      "parents": [
        "0b67c7439fe2a5d76602de36854c88e2beab00b0"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Mon Jan 11 11:14:44 2010 +0900"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@redhat.com",
        "time": "Tue Jan 12 14:34:14 2010 -0500"
      },
      "message": "libata: retry link resume if necessary\n\nInterestingly, when SIDPR is used in ata_piix, writes to DET in\nSControl sometimes get ignored leading to detection failure.  Update\nsata_link_resume() such that it reads back SControl after clearing DET\nand retry if it\u0027s not clear.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nReported-by: fengxiangjun \u003cfengxiangjun@neusoft.com\u003e\nReported-by: Jim Faulkner \u003cjfaulkne@ccs.neu.edu\u003e\nCc: stable@kernel.org\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n"
    },
    {
      "commit": "558a6669d7cb407fbb0b5aec184b5c3b9a893d30",
      "tree": "5be22dc7335a7548e77ef813d1b8962697c43fb3",
      "parents": [
        "0c74211d19d83729c209ddcd4dc026c2aedeb29e"
      ],
      "author": {
        "name": "Kalle Valo",
        "email": "kalle.valo@nokia.com",
        "time": "Tue Jan 12 10:43:00 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Jan 12 14:21:03 2010 -0500"
      },
      "message": "ieee80211: add struct ieee80211_hdr_qos\n\nThe header can be used to create qos nullfunc frames, for example.\n\nSigned-off-by: Kalle Valo \u003ckalle.valo@nokia.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "ab13315af97919fae0e014748105fdc2e30afb2d",
      "tree": "befa549272ecff20b2839bd6671e4cccbce448f9",
      "parents": [
        "2d46d7c121436f1dafe91b0a8d9b99e534cfa5f8"
      ],
      "author": {
        "name": "Kalle Valo",
        "email": "kalle.valo@nokia.com",
        "time": "Tue Jan 12 10:42:31 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Jan 12 14:20:58 2010 -0500"
      },
      "message": "mac80211: add U-APSD client support\n\nAdd Unscheduled Automatic Power-Save Delivery (U-APSD) client support. The\nidea is that the data frames from the client trigger AP to send the buffered\nframes with ACs which have U-APSD enabled. This decreases latency and makes it\npossible to save even more power.\n\nDriver needs to use IEEE80211_HW_UAPSD to enable the feature. The current\nimplementation assumes that firmware takes care of the wakeup and\nhardware needing IEEE80211_HW_PS_NULLFUNC_STACK is not yet supported.\n\nTested with wl1251 on a Nokia N900 and Cisco Aironet 1231G AP and running\nvarious test traffic with ping.\n\nSigned-off-by: Kalle Valo \u003ckalle.valo@nokia.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "34a6eddbabd704b3c7dae9362234552267573be2",
      "tree": "661184452aa597e4f1034561b3ec9b267ad2e196",
      "parents": [
        "80a112ffe8dbada25f3780ecc4beebf23451d755"
      ],
      "author": {
        "name": "Jouni Malinen",
        "email": "j@w1.fi",
        "time": "Wed Jan 06 16:19:24 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Jan 12 13:51:28 2010 -0500"
      },
      "message": "cfg80211: Store IEs from both Beacon and Probe Response frames\n\nStore information elements from Beacon and Probe Response frames in\nseparate buffers to allow both sets to be made available through\nnl80211. This allows user space applications to get access to IEs from\nBeacon frames even if we have received Probe Response frames from the\nBSS. Previously, the IEs from Probe Response frames would have\noverridden the IEs from Beacon frames.\n\nThis feature is of somewhat limited use since most protocols include\nthe same (or extended) information in Probe Response frames. However,\nthere are couple of exceptions where the IEs from Beacon frames could\nbe of some use: TIM IE is only included in Beacon frames (and it would\nbe needed to figure out the DTIM period used in the BSS) and at least\nsome implementations of Wireless Provisioning Services seem to include\nthe full IE only in Beacon frames).\n\nThe new BSS attribute for scan results is added to allow both the IE\nsets to be delivered. This is done in a way that maintains the\npreviously used behavior for applications that are not aware of the\nnew NL80211_BSS_BEACON_IES attribute.\n\nSigned-off-by: Jouni Malinen \u003cj@w1.fi\u003e\nAcked-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "7044cc565b45a898c140fb185174a66f2d68a163",
      "tree": "9933e1f178d0cfc8acf69eaf5b7652acaa8825e5",
      "parents": [
        "b3579d6adcf7b24464274967a96d12467cfb11a7"
      ],
      "author": {
        "name": "Kalle Valo",
        "email": "kalle.valo@nokia.com",
        "time": "Tue Jan 05 20:16:19 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Jan 12 13:51:24 2010 -0500"
      },
      "message": "mac80211: add functions to create PS Poll and Nullfunc templates\n\nSome hardware, for example wl1251 and wl1271, handle the transmission\nof power save related frames in hardware, but the driver is responsible\nfor creating the templates. It\u0027s better to create the templates in mac80211,\nthat way all drivers can benefit from this.\n\nAdd two new functions, ieee80211_pspoll_get() and ieee80211_nullfunc_get()\nwhich drivers need to call to get the frame. Drivers are also responsible\nfor updating the templates after each association.\n\nAlso new struct ieee80211_hdr_3addr is added to ieee80211.h to make it\neasy to calculate length of the Nullfunc frame.\n\nSigned-off-by: Kalle Valo \u003ckalle.valo@nokia.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "13ae75b103e07304a34ab40c9136e9f53e06475c",
      "tree": "61cfd1471cdefe8cf1a3da12b4b99aafc2770f76",
      "parents": [
        "37eb0b164cf9fa9f70c8500926f5cde7c652f48e"
      ],
      "author": {
        "name": "Jouni Malinen",
        "email": "jouni.malinen@atheros.com",
        "time": "Tue Dec 29 12:59:45 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Jan 12 13:51:23 2010 -0500"
      },
      "message": "nl80211: New command for setting TX rate mask for rate control\n\nAdd a new NL80211_CMD_SET_TX_BITRATE_MASK command and related\nattributes to provide support for setting TX rate mask for rate\ncontrol. This uses the existing cfg80211 set_bitrate_mask operation\nthat was previously used only with WEXT compat code (SIOCSIWRATE). The\nnl80211 command allows more generic configuration of allowed rates as\na mask instead of fixed/max rate.\n\nSigned-off-by: Jouni Malinen \u003cjouni.malinen@atheros.com\u003e\nAcked-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "81077e82c3f591578625805dd6464a27a9ff56ec",
      "tree": "cb1e502c54b4e2f052f129b80a47190de7e22b62",
      "parents": [
        "14acdde6e527950f66c084dbf19bad6fbfcaeedc"
      ],
      "author": {
        "name": "Lukáš Turek",
        "email": "8an@praha12.net",
        "time": "Mon Dec 21 22:50:47 2009 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Jan 12 13:49:17 2010 -0500"
      },
      "message": "nl80211: Add new WIPHY attribute COVERAGE_CLASS\n\nThe new attribute NL80211_ATTR_WIPHY_COVERAGE_CLASS sets IEEE 802.11\nCoverage Class, which depends on maximum distance of nodes in a\nwireless network. It\u0027s required for long distance links (more than a few\nhundred meters).\n\nThe attribute is now ignored by two non-mac80211 drivers, rndis and\niwmc3200wifi, together with WIPHY_PARAM_RETRY_SHORT and\nWIPHY_PARAM_RETRY_LONG. If it turns out to be a problem, we could split\nset_wiphy_params callback or add new capability bits.\n\nSigned-off-by: Lukas Turek \u003c8an@praha12.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "2705ca7959111882097da1ebbe401d5566780904",
      "tree": "61b5907e86578c36bfe0e7f32bcf2c74fa8aab41",
      "parents": [
        "23978161f90e5a3200ad6ac9b0d534911e4cbb28",
        "2ebccd71a71e6078920bc65b40f120e72b71c2b6"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jan 12 11:05:11 2010 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jan 12 11:05:11 2010 +0100"
      },
      "message": "Merge branch \u0027for-jens\u0027 of http://git.drbd.org/linux-2.6-drbd into for-linus\n"
    },
    {
      "commit": "3ccd4c6167d3b39d52631767ebbf8b5677c5855d",
      "tree": "bfcb801edebd00e8b30e897038bad7fee39625cc",
      "parents": [
        "d218d11133d888f9745802146a50255a4781d37a"
      ],
      "author": {
        "name": "Oliver Hartkopp",
        "email": "oliver@hartkopp.net",
        "time": "Tue Jan 12 02:00:46 2010 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jan 12 02:00:46 2010 -0800"
      },
      "message": "can: Unify droping of invalid tx skbs and netdev stats\n\nTo prevent the CAN drivers to operate on invalid socketbuffers the skbs are\nnow checked and silently dropped at the xmit-function consistently.\n\nAlso the netdev stats are consistently using the CAN data length code (dlc)\nfor [rx|tx]_bytes now.\n\nSigned-off-by: Oliver Hartkopp \u003coliver@hartkopp.net\u003e\nAcked-by: Wolfgang Grandegger \u003cwg@grandegger.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2ebccd71a71e6078920bc65b40f120e72b71c2b6",
      "tree": "40c0460f02703ceed155847f3f2af8df7a115336",
      "parents": [
        "a393db6f10ef2d4f28257234cfc730e744dfb6a4"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Tue Jan 12 10:09:07 2010 +0100"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Tue Jan 12 10:14:42 2010 +0100"
      },
      "message": "drbd: The kernel code is now equivalent to out of tree release 8.3.7\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "a393db6f10ef2d4f28257234cfc730e744dfb6a4",
      "tree": "3f947cce6b5ef9ea2a1959123b36da6f7de23870",
      "parents": [
        "b10d96cb9c9a2a0029d28910ca517f4003051b04"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Tue Dec 22 13:35:52 2009 +0100"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Tue Jan 12 10:02:46 2010 +0100"
      },
      "message": "drbd: Allow online resizing of DRBD devices while peer not reachable (needs to be explicitly forced)\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "d218d11133d888f9745802146a50255a4781d37a",
      "tree": "3b4b163238e19c48f37f3d8a77eb27f3a18691a0",
      "parents": [
        "c8e000604bce02a87742240a9b716a0f1b680c0b"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Mon Jan 11 16:28:01 2010 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 11 16:28:01 2010 -0800"
      },
      "message": "tcp: Generalized TTL Security Mechanism\n\nThis patch adds the kernel portions needed to implement\nRFC 5082 Generalized TTL Security Mechanism (GTSM).\nIt is a lightweight security measure against forged\npackets causing DoS attacks (for BGP). \n\nThis is already implemented the same way in BSD kernels.\nFor the necessary Quagga patch \n  http://www.gossamer-threads.com/lists/quagga/dev/17389\n\nDescription from Cisco\n  http://www.cisco.com/en/US/docs/ios/12_3t/12_3t7/feature/guide/gt_btsh.html\n\nIt does add one byte to each socket structure, but I did\na little rearrangement to reuse a hole (on 64 bit), but it\ndoes grow the structure on 32 bit\n\nThis should be documented on ip(4) man page and the Glibc in.h\nfile also needs update.  IPV6_MINHOPLIMIT should also be added\n(although BSD doesn\u0027t support that).  \n\nOnly TCP is supported, but could also be added to UDP, DCCP, SCTP\nif desired.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a29815a333c6c6e677294bbe5958e771d0aad3fd",
      "tree": "589a782f1992a7da55469379688deaa9f355b779",
      "parents": [
        "c0f607c608ba889db5250235ba620f818aa44a4d"
      ],
      "author": {
        "name": "Avi Kivity",
        "email": "avi@qumranet.com",
        "time": "Sun Jan 10 16:28:09 2010 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 11 09:45:37 2010 -0800"
      },
      "message": "core, x86: make LIST_POISON less deadly\n\nThe list macros use LIST_POISON1 and LIST_POISON2 as undereferencable\npointers in order to trap erronous use of freed list_heads.  Unfortunately\nuserspace can arrange for those pointers to actually be dereferencable,\npotentially turning an oops to an expolit.\n\nTo avoid this allow architectures (currently x86_64 only) to override\nthe default values for these pointers with truly-undereferencable values.\nThis is easy on x86_64 as the virtual address space is large and contains\nareas that cannot be mapped.\n\nOther 64-bit architectures will likely find similar unmapped ranges.\n\n[ingo: switch to 0xdead000000000000 as the unmapped area]\n[ingo: add comments, cleanup]\n[jaswinder: eliminate sparse warnings]\n\nAcked-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nSigned-off-by: Jaswinder Singh Rajput \u003cjaswinderrajput@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "80884094e34456887ecdbd107d40e72c4a40f9c9",
      "tree": "01c36b4982ce22db3f7034b19c7c038cf1be46ec",
      "parents": [
        "5787536edf18e33d06e2bf038bfd0910f4def213"
      ],
      "author": {
        "name": "Michael Hennerich",
        "email": "michael.hennerich@analog.com",
        "time": "Fri Jan 08 14:43:08 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 11 09:34:07 2010 -0800"
      },
      "message": "gpio: adp5588-gpio: new driver for ADP5588 GPIO expanders\n\nSigned-off-by: Michael Hennerich \u003cmichael.hennerich@analog.com\u003e\nSigned-off-by: Mike Frysinger \u003cvapier@gentoo.org\u003e\nCc: Jean Delvare \u003ckhali@linux-fr.org\u003e\nCc: David Brownell \u003cdavid-b@pacbell.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7dd65feb6c603e13eba501c34c662259ab38e70e",
      "tree": "5ec4bf4ab09310dce796fc7a2067c18d76b4aa75",
      "parents": [
        "ac4c2a3bbe5db5fc570b1d0ee1e474db7cb22585"
      ],
      "author": {
        "name": "Albin Tonnerre",
        "email": "albin.tonnerre@free-electrons.com",
        "time": "Fri Jan 08 14:42:42 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 11 09:34:04 2010 -0800"
      },
      "message": "lib: add support for LZO-compressed kernels\n\nThis patch series adds generic support for creating and extracting\nLZO-compressed kernel images, as well as support for using such images on\nthe x86 and ARM architectures, and support for creating and using\nLZO-compressed initrd and initramfs images.\n\nRussell King said:\n\n: Testing on a Cortex A9 model:\n: - lzo decompressor is 65% of the time gzip takes to decompress a kernel\n: - lzo kernel is 9% larger than a gzip kernel\n:\n: which I\u0027m happy to say confirms your figures when comparing the two.\n:\n: However, when comparing your new gzip code to the old gzip code:\n: - new is 99% of the size of the old code\n: - new takes 42% of the time to decompress than the old code\n:\n: What this means is that for a proper comparison, the results get even better:\n: - lzo is 7.5% larger than the old gzip\u0027d kernel image\n: - lzo takes 28% of the time that the old gzip code took\n:\n: So the expense seems definitely worth the effort.  The only reason I\n: can think of ever using gzip would be if you needed the additional\n: compression (eg, because you have limited flash to store the image.)\n:\n: I would argue that the default for ARM should therefore be LZO.\n\nThis patch:\n\nThe lzo compressor is worse than gzip at compression, but faster at\nextraction.  Here are some figures for an ARM board I\u0027m working on:\n\nUncompressed size: 3.24Mo\ngzip  1.61Mo 0.72s\nlzo   1.75Mo 0.48s\n\nSo for a compression ratio that is still relatively close to gzip, it\u0027s\nmuch faster to extract, at least in that case.\n\nThis part contains:\n - Makefile routine to support lzo compression\n - Fixes to the existing lzo compressor so that it can be used in\n   compressed kernels\n - wrapper around the existing lzo1x_decompress, as it only extracts one\n   block at a time, while we need to extract a whole file here\n - config dialog for kernel compression\n\n[akpm@linux-foundation.org: coding-style fixes]\n[akpm@linux-foundation.org: cleanup]\nSigned-off-by: Albin Tonnerre \u003calbin.tonnerre@free-electrons.com\u003e\nTested-by: Wu Zhangjin \u003cwuzhangjin@gmail.com\u003e\nAcked-by: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nTested-by: Russell King \u003crmk@arm.linux.org.uk\u003e\nAcked-by: Russell King \u003crmk@arm.linux.org.uk\u003e\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e992cd9b72a18122bd5c958715623057f110793f",
      "tree": "f73e19fd0af4cf446ab718550acac62d021e47ee",
      "parents": [
        "cb5a8b2c92febbed57126e1b8416dfd7607ff03d"
      ],
      "author": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Fri Jan 08 14:42:35 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 11 09:34:04 2010 -0800"
      },
      "message": "kmemcheck: make bitfield annotations truly no-ops when disabled\n\nIt turns out that even zero-sized struct members (int foo[0];) will affect\nthe struct layout, causing us in particular to lose 4 bytes in struct\nsock.\n\nThis patch fixes the regression in CONFIG_KMEMCHECK\u003dn case.\n\nReported-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: Vegard Nossum \u003cvegard.nossum@gmail.com\u003e\nAcked-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4b529401c5089cf33f7165607cbc2fde43357bfb",
      "tree": "0e559e77e9a2c837cd7c25f3a48e83ee788d7d4b",
      "parents": [
        "50f411e34d623efbf4e4b4b0c1a4a20e04c5cc9e"
      ],
      "author": {
        "name": "Andreas Fenkart",
        "email": "andreas.fenkart@streamunlimited.com",
        "time": "Fri Jan 08 14:42:31 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 11 09:34:03 2010 -0800"
      },
      "message": "mm: make totalhigh_pages unsigned long\n\nMakes it consistent with the extern declaration, used when CONFIG_HIGHMEM\nis set Removes redundant casts in printout messages\n\nSigned-off-by: Andreas Fenkart \u003candreas.fenkart@streamunlimited.com\u003e\nAcked-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nCc: Chen Liqin \u003cliqin.chen@sunplusct.com\u003e\nCc: Lennox Wu \u003clennox.wu@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7af92f8754b87bc78cbfd447d5f4096b25c46682",
      "tree": "c165aba0edf277d5d2a4865641705365c14dd726",
      "parents": [
        "ce289321b7dc1eb108e3df0dec872b7429ef49f7"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Wed Jan 06 15:45:55 2010 -0800"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Jan 11 14:32:44 2010 +0100"
      },
      "message": "genhd: overlapping variable definition\n\nThis fixes the sparse warning:\nfs/ext4/super.c:2390:40: warning: symbol \u0027i\u0027 shadows an earlier one\nfs/ext4/super.c:2368:22: originally declared here\n\nUsing \u0027i\u0027 in a macro is dubious practice.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "ce289321b7dc1eb108e3df0dec872b7429ef49f7",
      "tree": "9153bc19d805d796b7a9ddac04d2d060a9d3261e",
      "parents": [
        "b27d7f16d3c6c27345d4280a739809c1c2c4c0b5"
      ],
      "author": {
        "name": "Kirill Afonshin",
        "email": "kirill_nnov@mail.ru",
        "time": "Fri Jan 08 22:09:59 2010 +0300"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Jan 11 14:29:20 2010 +0100"
      },
      "message": "block: removed unused as_io_context\n\nIt isn\u0027t used anymore, since AS was deleted.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "17be8c245054b9c7786545af3ba3ca4e54cd4ad9",
      "tree": "563687812bbb1b08643dfcc25997e34eb22a71b5",
      "parents": [
        "dd3d145d49c5816b79acc6761ebbd842bc50b0ee"
      ],
      "author": {
        "name": "Martin K. Petersen",
        "email": "martin.petersen@oracle.com",
        "time": "Mon Jan 11 03:21:49 2010 -0500"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Jan 11 14:29:20 2010 +0100"
      },
      "message": "block: bdev_stack_limits wrapper\n\nDM does not want to know about partition offsets.  Add a partition-aware\nwrapper that DM can use when stacking block devices.\n\nSigned-off-by: Martin K. Petersen \u003cmartin.petersen@oracle.com\u003e\nAcked-by: Mike Snitzer \u003csnitzer@redhat.com\u003e\nReviewed-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "dd3d145d49c5816b79acc6761ebbd842bc50b0ee",
      "tree": "107bdb2f46c6aa6bc482909d7ebdbb1da40b7b4f",
      "parents": [
        "fe0b393f2c0a0d23a9bc9ed7dc51a1ee511098bd"
      ],
      "author": {
        "name": "Martin K. Petersen",
        "email": "martin.petersen@oracle.com",
        "time": "Mon Jan 11 03:21:48 2010 -0500"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Jan 11 14:29:19 2010 +0100"
      },
      "message": "block: Fix discard alignment calculation and printing\n\nDiscard alignment reporting for partitions was incorrect.  Update to\nmatch the algorithm used elsewhere.\n\nThe alignment can be negative (misaligned).  Fix format string\naccordingly.\n\nSigned-off-by: Martin K. Petersen \u003cmartin.petersen@oracle.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "d4a66e752d0b19934dd208884f8605fe385aaaa9",
      "tree": "72fb727be1d7636aae9cddfe9aa93ac9dec75daf",
      "parents": [
        "bdbec4b86ee99b020e159f9bd604003a3ae3b0ab",
        "fa15e99b6bb44aa86b241a43ca8c509e91f80153"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jan 10 22:55:03 2010 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jan 10 22:55:03 2010 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tdrivers/net/benet/be_cmds.h\n\tinclude/linux/sysctl.h\n"
    },
    {
      "commit": "9993b364d2c42acc2949ddbc6371405e17829e32",
      "tree": "b9eb8126c46f08cf09d513f77a48a53e941b7a92",
      "parents": [
        "82062e7b50280bcf0feca70ac35a44f375602976",
        "b11e1eca7ed9c0b5dab21a62c11acc711d9bdda0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 08 14:04:20 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 08 14:04:20 2010 -0800"
      },
      "message": "Merge branch \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jwessel/linux-2.6-kgdb\n\n* \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jwessel/linux-2.6-kgdb:\n  kgdb: Fix kernel-doc format error in kgdb.h\n  blackfin,kgdb: Do not put PC in gdb_regs into retx.\n  blackfin,kgdb,probe_kernel: Cleanup probe_kernel_read/write\n  maccess,probe_kernel: Allow arch specific override probe_kernel_(read|write)\n"
    },
    {
      "commit": "00cd25b29ba946b7d0907157577ab5cf421bd50e",
      "tree": "57d76cf7a495ea8f1ac662e12442bf6164ea3024",
      "parents": [
        "e2b6d02cca533715d6be40fdfc32d3cc47333358",
        "b49bfd32901625e4adcfee011d2b32a43b4db67d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 08 13:55:39 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 08 13:55:39 2010 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6:\n  PCIe AER: prevent AER injection if hardware masks error reporting\n  PCI/PM: Use per-device D3 delays\n  PCI: Check the node argument passed to cpumask_of_node\n  PCI: AER: fix aer inject result in kernel oops\n  PCI: pcie portdrv: style cleanup\n"
    },
    {
      "commit": "3c9732c06879d85f2fdf7ec69198c1d78da42a98",
      "tree": "bbffa4197a0206a95b137f55ce5577d52bd7c9f6",
      "parents": [
        "609634799eba48bb9e80ce56dfd87930f17bf6fa"
      ],
      "author": {
        "name": "Giuseppe CAVALLARO",
        "email": "peppe.cavallaro@st.com",
        "time": "Wed Jan 06 23:07:13 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jan 07 17:06:06 2010 -0800"
      },
      "message": "stmmac: add the new Header file for stmmac platform data\n\nSigned-off-by: Giuseppe Cavallaro \u003cpeppe.cavallaro@st.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b11e1eca7ed9c0b5dab21a62c11acc711d9bdda0",
      "tree": "4a9ccc511b380f413a7bf06e5440113a60d7161a",
      "parents": [
        "7fe1a91281de095e4cc43868cc14ca4937154a0c"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Thu Jan 07 11:58:37 2010 -0600"
      },
      "committer": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Thu Jan 07 11:58:37 2010 -0600"
      },
      "message": "kgdb: Fix kernel-doc format error in kgdb.h\n\nlinux-next-20081022//include/linux/kgdb.h:308): duplicate section name \u0027Description\u0027\n\nand fix typos in that file\u0027s kernel-doc comments.\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\n"
    },
    {
      "commit": "6144a85a0e018c19bc4b24f7eb6c1f3f7431813d",
      "tree": "4300bb5d23338884a75d449f17f2538815ac9f8c",
      "parents": [
        "2c1f1895ef2aa8f0e5497893eff71304aef332e1"
      ],
      "author": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Thu Jan 07 11:58:36 2010 -0600"
      },
      "committer": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Thu Jan 07 11:58:36 2010 -0600"
      },
      "message": "maccess,probe_kernel: Allow arch specific override probe_kernel_(read|write)\n\nSome archs such as blackfin, would like to have an arch specific\nprobe_kernel_read() and probe_kernel_write() implementation which can\nfall back to the generic implementation if no special operations are\nneeded.\n\nCC: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCC: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\nSigned-off-by: Mike Frysinger \u003cvapier@gentoo.org\u003e\n"
    },
    {
      "commit": "65324144b50bc7022cc9b6ca8f4a536a957019e3",
      "tree": "1e910817f6d4f1ecd821bfd8ce493f81fe4aae60",
      "parents": [
        "ca8d9ea30bc79b2965a1d169dcb2f48f02af4d2d"
      ],
      "author": {
        "name": "Jesper Dangaard Brouer",
        "email": "hawk@comx.dk",
        "time": "Tue Jan 05 05:50:47 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jan 07 00:59:09 2010 -0800"
      },
      "message": "net: RFC3069, private VLAN proxy arp support\n\nThis is to be used together with switch technologies, like RFC3069,\nthat where the individual ports are not allowed to communicate with\neach other, but they are allowed to talk to the upstream router.  As\ndescribed in RFC 3069, it is possible to allow these hosts to\ncommunicate through the upstream router by proxy_arp\u0027ing.\n\nThis patch basically allow proxy arp replies back to the same\ninterface (from which the ARP request/solicitation was received).\n\nTunable per device via proc \"proxy_arp_pvlan\":\n  /proc/sys/net/ipv4/conf/*/proxy_arp_pvlan\n\nThis switch technology is known by different vendor names:\n - In RFC 3069 it is called VLAN Aggregation.\n - Cisco and Allied Telesyn call it Private VLAN.\n - Hewlett-Packard call it Source-Port filtering or port-isolation.\n - Ericsson call it MAC-Forced Forwarding (RFC Draft).\n\nSigned-off-by: Jesper Dangaard Brouer \u003chawk@comx.dk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "cfe79c00a2f4f687eed8b7534d1d3d3d35540c29",
      "tree": "62c603938e7b740ca16ce1012a6ee7ab08b3f727",
      "parents": [
        "04e4f2b18c8de1389d1e00fef0f42a8099910daf"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier.adi@gmail.com",
        "time": "Wed Jan 06 17:23:23 2010 +0000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jan 06 18:16:02 2010 -0800"
      },
      "message": "NOMMU: Avoiding duplicate icache flushes of shared maps\n\nWhen working with FDPIC, there are many shared mappings of read-only\ncode regions between applications (the C library, applet packages like\nbusybox, etc.), but the current do_mmap_pgoff() function will issue an\nicache flush whenever a VMA is added to an MM instead of only doing it\nwhen the map is initially created.\n\nThe flush can instead be done when a region is first mmapped PROT_EXEC.\nNote that we may not rely on the first mapping of a region being\nexecutable - it\u0027s possible for it to be PROT_READ only, so we have to\nremember whether we\u0027ve flushed the region or not, and then flush the\nentire region when a bit of it is made executable.\n\nHowever, this also affects the brk area.  That will no longer be\nexecutable.  We can mprotect() it to PROT_EXEC on MPU-mode kernels, but\nfor NOMMU mode kernels, when it increases the brk allocation, making\nsys_brk() flush the extra from the icache should suffice.  The brk area\nprobably isn\u0027t used by NOMMU programs since the brk area can only use up\nthe leavings from the stack allocation, where the stack allocation is\nlarger than requested.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Mike Frysinger \u003cvapier@gentoo.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8558e3943df1c51c3377cb4e8a52ea484d6f357d",
      "tree": "64138cc5ec4336dd65ff6af95f8c29a4e1b2a6dc",
      "parents": [
        "74d2e4f8d79ae0c4b6ec027958d5b18058662eea"
      ],
      "author": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Jan 06 16:11:06 2010 -0500"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Jan 06 16:18:15 2010 -0500"
      },
      "message": "x86, ACPI: delete acpi_boot_table_init() return value\n\ncleanup only.\n\nsetup_arch(), doesn\u0027t care care if ACPI initialization succeeded\nor failed, so delete acpi_boot_table_init()\u0027s return value.\n\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "59b015133cd0034f5904a76969d73476380aac46",
      "tree": "578643cc919b7e62b5086718d5c3f9b0fee836a9",
      "parents": [
        "abf2a117c67a67fbb611913a31109d0ff66ab073"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Tue Jan 05 17:56:02 2010 -0800"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Wed Jan 06 00:14:32 2010 -0800"
      },
      "message": "Input: serio - fix potential deadlock when unbinding drivers\n\nsysfs_remove_group() waits for sysfs attributes to be removed, therefore\nwe do not need to worry about driver-specific attributes being accessed\nafter driver has been detached from the device. In fact, attempts to take\nserio-\u003edrv_mutex in attribute methods may lead to the following deadlock:\n\n                                          sysfs_read_file()\n                                            fill_read_buffer()\n                                              sysfs_get_active_two()\n                                                psmouse_attr_show_helper()\n                                                  serio_pin_driver()\nserio_disconnect_driver()\n  mutex_lock(\u0026serio-\u003edrv_mutex);\n                                \u003c--------\u003e        mutex_lock(\u0026serio_drv_mutex);\n    psmouse_disconnect()\n      sysfs_remove_group(... psmouse_attr_group);\n        ....\n        sysfs_deactivate();\n          wait_for_completion();\n\nFix this by removing calls to serio_[un]pin_driver() and functions themselves\nand using driver-private mutexes to serialize access to attribute\u0027s set()\nmethods that may change device state.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "1ae861e652b5457e7fa98ccbc55abea1e207916e",
      "tree": "d0326aab2746a779f3ab140ec9fdea2508f2e99b",
      "parents": [
        "6be954d1f91b81ca85c74792b13654069278c577"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Thu Dec 31 12:15:54 2009 +0100"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Mon Jan 04 15:41:47 2010 -0800"
      },
      "message": "PCI/PM: Use per-device D3 delays\n\nIt turns out that some PCI devices require extra delays when changing\npower state from D3 to D0 (and the other way around).  Although this\nis against the PCI specification, we can handle it quite easily by\nallowing drivers to define arbitrary D3 delays for devices known to\nrequire extra time for switching power states.\n\nIntroduce additional field d3_delay in struct pci_dev and use it to\nstore the value of the device\u0027s D0-\u003eD3 delay, in miliseconds.  Make\nthe PCI PM core code use the per-device d3_delay unless\npci_pm_d3_delay is greater (in which case the latter is used).\n[This also allows the driver to specify d3_delay shorter than the\n 10 ms required by the PCI standard if the device is known to be able\n to handle that.]\n\nMake the sky2 driver set d3_delay to 150 for devices handled by it.\n\nFixes http://bugzilla.kernel.org/show_bug.cgi?id\u003d14730 which is a\nlisted regression from 2.6.30.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "3e10e716abf3c71bdb5d86b8f507f9e72236c9cd",
      "tree": "c0dee002666c9aaf9862f3ec1140c5946461ec54",
      "parents": [
        "96d07d211739fd2450ac54e81d00fa40fcd4b1bd"
      ],
      "author": {
        "name": "Jiri Slaby",
        "email": "jslaby@suse.cz",
        "time": "Thu Nov 19 17:16:37 2009 +0100"
      },
      "committer": {
        "name": "Jiri Slaby",
        "email": "jslaby@suse.cz",
        "time": "Mon Jan 04 11:35:18 2010 +0100"
      },
      "message": "resource: add helpers for fetching rlimits\n\nWe want to be sure that compiler fetches the limit variable only\nonce, so add helpers for fetching current and maximal resource\nlimits which do that.\n\nAdd them to sched.h (instead of resource.h) due to circular dependency\n sched.h-\u003eresource.h-\u003etask_struct\nAlternative would be to create a separate res_access.h or similar.\n\nSigned-off-by: Jiri Slaby \u003cjslaby@suse.cz\u003e\nCc: James Morris \u003cjmorris@namei.org\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "96d07d211739fd2450ac54e81d00fa40fcd4b1bd",
      "tree": "7686b42b5f2aac370fb0d51646d492b0ca24959d",
      "parents": [
        "17740d89785aeb4143770923d67c293849414710"
      ],
      "author": {
        "name": "Jiri Slaby",
        "email": "jslaby@suse.cz",
        "time": "Fri Nov 20 14:16:33 2009 +0100"
      },
      "committer": {
        "name": "Jiri Slaby",
        "email": "jslaby@suse.cz",
        "time": "Mon Jan 04 11:33:58 2010 +0100"
      },
      "message": "resource: move kernel function inside __KERNEL__\n\nIt is an internal function. Move it inside __KERNEL__ ifdef, along\nwith task_struct declaration.\n\nThen we get:\n--- /usr/include/linux/resource.h       2009-09-14 15:09:29.000000000 +0200\n+++ usr/include/linux/resource.h       2010-01-04 11:30:54.000000000 +0100\n@@ -3,8 +3,6 @@\n\n #include \u003clinux/time.h\u003e\n\n-struct task_struct;\n-\n /*\n  * Resource control/accounting header file for linux\n  */\n@@ -70,6 +68,5 @@\n  */\n #include \u003casm/resource.h\u003e\n\n-int getrusage(struct task_struct *p, int who, struct rusage *ru);\n\n #endif\n\n***********\n\ninclude/linux/Kbuild is untouched, since unifdef is run even on\nheaders-y nowadays.\n\nSigned-off-by: Jiri Slaby \u003cjslaby@suse.cz\u003e\n"
    },
    {
      "commit": "c1c5523dd1517250cac8b15a4acbc237c24a67d4",
      "tree": "ce2e7962c10df3b2a8bda93db3393d898b47c98c",
      "parents": [
        "20dd3850bcf860561496827b711fa10fecf6e787"
      ],
      "author": {
        "name": "Marc Kleine-Budde",
        "email": "mkl@pengutronix.de",
        "time": "Wed Dec 23 01:27:48 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jan 03 21:31:03 2010 -0800"
      },
      "message": "can/netlink: add CAN_CTRLMODE_ONE_SHOT\n\nThis patch adds the flag CAN_CTRLMODE_ONE_SHOT. It is used as mask\nor flag in the \"struct can_ctrlmode\".\n\nIt allows userspace via netlink to set a CAN controller into the special\n\"one-shot\" mode. In this mode, if supported by the CAN controller, it\ntries only once to deliver a CAN frame and aborts it if an error\n(e.g.: arbitration lost) happens.\n\nSigned-off-by: Marc Kleine-Budde \u003cmkl@pengutronix.de\u003e\nAcked-by: Wolfgang Grandegger \u003cwg@grandegger.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "45d28b097280a78893ce25a5d0db41e6a2717853",
      "tree": "0c2049700c5fca3fc9d73d2f347fab21e84765f8",
      "parents": [
        "4207a152bc242effd0b8231143aa5b9f7a1593a9",
        "835d5247d98f46e35d007dcfa6215e526ca33360"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 02 11:17:05 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 02 11:17:05 2010 -0800"
      },
      "message": "Merge branch \u0027reiserfs/kill-bkl\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/frederic/random-tracing\n\n* \u0027reiserfs/kill-bkl\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/frederic/random-tracing:\n  reiserfs: Safely acquire i_mutex from xattr_rmdir\n  reiserfs: Safely acquire i_mutex from reiserfs_for_each_xattr\n  reiserfs: Fix journal mutex \u003c-\u003e inode mutex lock inversion\n  reiserfs: Fix unwanted recursive reiserfs lock in reiserfs_unlink()\n  reiserfs: Relax lock before open xattr dir in reiserfs_xattr_set_handle()\n  reiserfs: Relax reiserfs lock while freeing the journal\n  reiserfs: Fix reiserfs lock \u003c-\u003e i_mutex dependency inversion on xattr\n  reiserfs: Warn on lock relax if taken recursively\n  reiserfs: Fix reiserfs lock \u003c-\u003e i_xattr_sem dependency inversion\n  reiserfs: Fix remaining in-reclaim-fs \u003c-\u003e reclaim-fs-on locking inversion\n  reiserfs: Fix reiserfs lock \u003c-\u003e inode mutex dependency inversion\n  reiserfs: Fix reiserfs lock and journal lock inversion dependency\n  reiserfs: Fix possible recursive lock\n"
    },
    {
      "commit": "c4a62ca362258d98f42efb282cfbf9b61caffdbe",
      "tree": "017484107efa26789ddd96579fcef09d874333c0",
      "parents": [
        "0719d3434747889b314a1e8add776418c4148bcf"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Wed Dec 30 03:20:19 2009 +0100"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sat Jan 02 01:54:37 2010 +0100"
      },
      "message": "reiserfs: Warn on lock relax if taken recursively\n\nWhen we relax the reiserfs lock to avoid creating unwanted\ndependencies against others locks while grabbing these,\nwe want to ensure it has not been taken recursively, otherwise\nthe lock won\u0027t be really relaxed. Only its depth will be decreased.\nThe unwanted dependency would then actually happen.\n\nTo prevent from that, add a reiserfs_lock_check_recursive() call\nin the places that need it.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Alexander Beregalov \u003ca.beregalov@gmail.com\u003e\nCc: Chris Mason \u003cchris.mason@oracle.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "0719d3434747889b314a1e8add776418c4148bcf",
      "tree": "6ff1fea4ffa9c96ee504bcb026659101eea4a12f",
      "parents": [
        "98ea3f50bcc97689cc0e1fa3b6733f03aeb8fef4"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Wed Dec 30 00:39:22 2009 +0100"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sat Jan 02 01:54:04 2010 +0100"
      },
      "message": "reiserfs: Fix reiserfs lock \u003c-\u003e i_xattr_sem dependency inversion\n\ni_xattr_sem depends on the reiserfs lock. But after we grab\ni_xattr_sem, we may relax/relock the reiserfs lock while waiting\non a freezed filesystem, creating a dependency inversion between\nthe two locks.\n\nIn order to avoid the i_xattr_sem -\u003e reiserfs lock dependency, let\u0027s\ncreate a reiserfs_down_read_safe() that acts like\nreiserfs_mutex_lock_safe(): relax the reiserfs lock while grabbing\nanother lock to avoid undesired dependencies induced by the\nheivyweight reiserfs lock.\n\nThis fixes the following warning:\n\n[  990.005931] \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n[  990.012373] [ INFO: possible circular locking dependency detected ]\n[  990.013233] 2.6.33-rc1 #1\n[  990.013233] -------------------------------------------------------\n[  990.013233] dbench/1891 is trying to acquire lock:\n[  990.013233]  (\u0026REISERFS_SB(s)-\u003elock){+.+.+.}, at: [\u003cffffffff81159505\u003e] reiserfs_write_lock+0x35/0x50\n[  990.013233]\n[  990.013233] but task is already holding lock:\n[  990.013233]  (\u0026REISERFS_I(inode)-\u003ei_xattr_sem){+.+.+.}, at: [\u003cffffffff8115899a\u003e] reiserfs_xattr_set_handle+0x8a/0x470\n[  990.013233]\n[  990.013233] which lock already depends on the new lock.\n[  990.013233]\n[  990.013233]\n[  990.013233] the existing dependency chain (in reverse order) is:\n[  990.013233]\n[  990.013233] -\u003e #1 (\u0026REISERFS_I(inode)-\u003ei_xattr_sem){+.+.+.}:\n[  990.013233]        [\u003cffffffff81063afc\u003e] __lock_acquire+0xf9c/0x1560\n[  990.013233]        [\u003cffffffff8106414f\u003e] lock_acquire+0x8f/0xb0\n[  990.013233]        [\u003cffffffff814ac194\u003e] down_write+0x44/0x80\n[  990.013233]        [\u003cffffffff8115899a\u003e] reiserfs_xattr_set_handle+0x8a/0x470\n[  990.013233]        [\u003cffffffff81158e30\u003e] reiserfs_xattr_set+0xb0/0x150\n[  990.013233]        [\u003cffffffff8115a6aa\u003e] user_set+0x8a/0x90\n[  990.013233]        [\u003cffffffff8115901a\u003e] reiserfs_setxattr+0xaa/0xb0\n[  990.013233]        [\u003cffffffff810e2596\u003e] __vfs_setxattr_noperm+0x36/0xa0\n[  990.013233]        [\u003cffffffff810e26bc\u003e] vfs_setxattr+0xbc/0xc0\n[  990.013233]        [\u003cffffffff810e2780\u003e] setxattr+0xc0/0x150\n[  990.013233]        [\u003cffffffff810e289d\u003e] sys_fsetxattr+0x8d/0xa0\n[  990.013233]        [\u003cffffffff81002dab\u003e] system_call_fastpath+0x16/0x1b\n[  990.013233]\n[  990.013233] -\u003e #0 (\u0026REISERFS_SB(s)-\u003elock){+.+.+.}:\n[  990.013233]        [\u003cffffffff81063e30\u003e] __lock_acquire+0x12d0/0x1560\n[  990.013233]        [\u003cffffffff8106414f\u003e] lock_acquire+0x8f/0xb0\n[  990.013233]        [\u003cffffffff814aba77\u003e] __mutex_lock_common+0x47/0x3b0\n[  990.013233]        [\u003cffffffff814abebe\u003e] mutex_lock_nested+0x3e/0x50\n[  990.013233]        [\u003cffffffff81159505\u003e] reiserfs_write_lock+0x35/0x50\n[  990.013233]        [\u003cffffffff811340e5\u003e] reiserfs_prepare_write+0x45/0x180\n[  990.013233]        [\u003cffffffff81158bb6\u003e] reiserfs_xattr_set_handle+0x2a6/0x470\n[  990.013233]        [\u003cffffffff81158e30\u003e] reiserfs_xattr_set+0xb0/0x150\n[  990.013233]        [\u003cffffffff8115a6aa\u003e] user_set+0x8a/0x90\n[  990.013233]        [\u003cffffffff8115901a\u003e] reiserfs_setxattr+0xaa/0xb0\n[  990.013233]        [\u003cffffffff810e2596\u003e] __vfs_setxattr_noperm+0x36/0xa0\n[  990.013233]        [\u003cffffffff810e26bc\u003e] vfs_setxattr+0xbc/0xc0\n[  990.013233]        [\u003cffffffff810e2780\u003e] setxattr+0xc0/0x150\n[  990.013233]        [\u003cffffffff810e289d\u003e] sys_fsetxattr+0x8d/0xa0\n[  990.013233]        [\u003cffffffff81002dab\u003e] system_call_fastpath+0x16/0x1b\n[  990.013233]\n[  990.013233] other info that might help us debug this:\n[  990.013233]\n[  990.013233] 2 locks held by dbench/1891:\n[  990.013233]  #0:  (\u0026sb-\u003es_type-\u003ei_mutex_key#12){+.+.+.}, at: [\u003cffffffff810e2678\u003e] vfs_setxattr+0x78/0xc0\n[  990.013233]  #1:  (\u0026REISERFS_I(inode)-\u003ei_xattr_sem){+.+.+.}, at: [\u003cffffffff8115899a\u003e] reiserfs_xattr_set_handle+0x8a/0x470\n[  990.013233]\n[  990.013233] stack backtrace:\n[  990.013233] Pid: 1891, comm: dbench Not tainted 2.6.33-rc1 #1\n[  990.013233] Call Trace:\n[  990.013233]  [\u003cffffffff81061639\u003e] print_circular_bug+0xe9/0xf0\n[  990.013233]  [\u003cffffffff81063e30\u003e] __lock_acquire+0x12d0/0x1560\n[  990.013233]  [\u003cffffffff8115899a\u003e] ? reiserfs_xattr_set_handle+0x8a/0x470\n[  990.013233]  [\u003cffffffff8106414f\u003e] lock_acquire+0x8f/0xb0\n[  990.013233]  [\u003cffffffff81159505\u003e] ? reiserfs_write_lock+0x35/0x50\n[  990.013233]  [\u003cffffffff8115899a\u003e] ? reiserfs_xattr_set_handle+0x8a/0x470\n[  990.013233]  [\u003cffffffff814aba77\u003e] __mutex_lock_common+0x47/0x3b0\n[  990.013233]  [\u003cffffffff81159505\u003e] ? reiserfs_write_lock+0x35/0x50\n[  990.013233]  [\u003cffffffff81159505\u003e] ? reiserfs_write_lock+0x35/0x50\n[  990.013233]  [\u003cffffffff81062592\u003e] ? mark_held_locks+0x72/0xa0\n[  990.013233]  [\u003cffffffff814ab81d\u003e] ? __mutex_unlock_slowpath+0xbd/0x140\n[  990.013233]  [\u003cffffffff810628ad\u003e] ? trace_hardirqs_on_caller+0x14d/0x1a0\n[  990.013233]  [\u003cffffffff814abebe\u003e] mutex_lock_nested+0x3e/0x50\n[  990.013233]  [\u003cffffffff81159505\u003e] reiserfs_write_lock+0x35/0x50\n[  990.013233]  [\u003cffffffff811340e5\u003e] reiserfs_prepare_write+0x45/0x180\n[  990.013233]  [\u003cffffffff81158bb6\u003e] reiserfs_xattr_set_handle+0x2a6/0x470\n[  990.013233]  [\u003cffffffff81158e30\u003e] reiserfs_xattr_set+0xb0/0x150\n[  990.013233]  [\u003cffffffff814abcb4\u003e] ? __mutex_lock_common+0x284/0x3b0\n[  990.013233]  [\u003cffffffff8115a6aa\u003e] user_set+0x8a/0x90\n[  990.013233]  [\u003cffffffff8115901a\u003e] reiserfs_setxattr+0xaa/0xb0\n[  990.013233]  [\u003cffffffff810e2596\u003e] __vfs_setxattr_noperm+0x36/0xa0\n[  990.013233]  [\u003cffffffff810e26bc\u003e] vfs_setxattr+0xbc/0xc0\n[  990.013233]  [\u003cffffffff810e2780\u003e] setxattr+0xc0/0x150\n[  990.013233]  [\u003cffffffff81056018\u003e] ? sched_clock_cpu+0xb8/0x100\n[  990.013233]  [\u003cffffffff8105eded\u003e] ? trace_hardirqs_off+0xd/0x10\n[  990.013233]  [\u003cffffffff810560a3\u003e] ? cpu_clock+0x43/0x50\n[  990.013233]  [\u003cffffffff810c6820\u003e] ? fget+0xb0/0x110\n[  990.013233]  [\u003cffffffff810c6770\u003e] ? fget+0x0/0x110\n[  990.013233]  [\u003cffffffff81002ddc\u003e] ? sysret_check+0x27/0x62\n[  990.013233]  [\u003cffffffff810e289d\u003e] sys_fsetxattr+0x8d/0xa0\n[  990.013233]  [\u003cffffffff81002dab\u003e] system_call_fastpath+0x16/0x1b\n\nReported-and-tested-by: Christian Kujau \u003clists@nerdbynature.de\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Alexander Beregalov \u003ca.beregalov@gmail.com\u003e\nCc: Chris Mason \u003cchris.mason@oracle.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b7bfb2a7a9296871a5e45c35a2cdc6a174995aa7",
      "tree": "7e7bc2b636b2bd906455a45a9cae648f957a27fc",
      "parents": [
        "5b889bf237fca383b5807ad69fde3ad1e2287e42",
        "5d7db0499e5bb13381a7fbfdd0d913b966545e75"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 31 12:01:24 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 31 12:01:24 2009 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6:\n  firewire, ieee1394: update Kconfig help\n  firewire, ieee1394: update MAINTAINERS entries\n  firewire: ohci: always use packet-per-buffer mode for isochronous reception\n  firewire: cdev: fix another memory leak in an error path\n  firewire: fix use of multiple AV/C devices, allow multiple FCP listeners\n\nComments from Stefan:\n\n   Distributors who still ship the old stack (ieee1394, ohci1394,\n   raw1394, sbp2, eth1394 and more) should now switch to the new one\n   (firewire-core, firewire-ohci, firewire-sbp2, firewire-net).  In the\n   first iteration, those distributors might want to ship the old stack\n   also (but blacklisted) as a fallback for their users if unforeseen\n   problems with the newer replacement drivers are encountered.\n\n   The older FireWire stack contains several known problems which are\n   not going to be fixed; instead, those issues are addressed by the new\n   stack.  An incomplete list of these issues is kept in bugzilla:\n\n\thttp://bugzilla.kernel.org/show_bug.cgi?id\u003d10046\n\n   We have a guide on migration from the older to the newer stack:\n\n\thttp://ieee1394.wiki.kernel.org/index.php/Juju_Migration\n"
    }
  ],
  "next": "b21c07040304b8716e38a4a0e4ab60f386357e61"
}
