)]}'
{
  "log": [
    {
      "commit": "270ca16bc7ff575a5900aec2475fa7f8742f7337",
      "tree": "871cf67fee714cd512dace820e89405a41a70685",
      "parents": [
        "4596fde5401679f062336c6dbad8d9e4043858c2"
      ],
      "author": {
        "name": "Syam Sidhardhan",
        "email": "s.syam@samsung.com",
        "time": "Thu Apr 12 20:33:19 2012 +0530"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo@padovan.org",
        "time": "Wed May 09 01:40:34 2012 -0300"
      },
      "message": "Bluetooth: remove header declared but not defined\n\nhci_del_off_timer() doesn\u0027t exist anymore.\n\nSigned-off-by: Syam Sidhardhan \u003cs.syam@samsung.com\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo@padovan.org\u003e\n"
    },
    {
      "commit": "3c588192b5e5328cdfc8e299c55477004d397208",
      "tree": "1bedbf322a6b1ded901dc00724e5f8c290098997",
      "parents": [
        "9033894722ec595053c92bfa4359b37e7bc91b78"
      ],
      "author": {
        "name": "Mat Martineau",
        "email": "mathewm@codeaurora.org",
        "time": "Wed Apr 11 10:48:42 2012 -0700"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo@padovan.org",
        "time": "Wed May 09 01:40:30 2012 -0300"
      },
      "message": "Bluetooth: Add the l2cap_seq_list structure for tracking frames\n\nA sequence list is a data structure used to track frames that need to\nbe retransmitted, and frames that have been requested for\nretransmission by the remote device.  It can compactly represent a\nlist of sequence numbers within the ERTM transmit window.  Memory for\nthe list is allocated once at connection time, and common operations\nin ERTM are O(1).\n\nSigned-off-by: Mat Martineau \u003cmathewm@codeaurora.org\u003e\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "9033894722ec595053c92bfa4359b37e7bc91b78",
      "tree": "33707a9d67a8d024ebe78551ec8d1bded53666b8",
      "parents": [
        "bd4b165312bacbf1e732cbc22c141362cfb5fda3"
      ],
      "author": {
        "name": "Gustavo Padovan",
        "email": "gustavo@padovan.org",
        "time": "Fri Apr 06 20:15:47 2012 -0300"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo@padovan.org",
        "time": "Wed May 09 01:40:26 2012 -0300"
      },
      "message": "Bluetooth: Remove err parameter from alloc_skb()\n\nUse ERR_PTR maginc instead.\n\nSigned-off-by: Gustavo Padovan \u003cgustavo@padovan.org\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "bd4b165312bacbf1e732cbc22c141362cfb5fda3",
      "tree": "189a94b160db0ab5100863d50dfe36959a52ea07",
      "parents": [
        "6bcbc4893fe8a6be3c3c5a83449d79dc9e9a51ac"
      ],
      "author": {
        "name": "Andrei Emeltchenko",
        "email": "andrei.emeltchenko@intel.com",
        "time": "Wed Mar 28 16:31:25 2012 +0300"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo@padovan.org",
        "time": "Wed May 09 00:41:39 2012 -0300"
      },
      "message": "Bluetooth: Adds set_default function in L2CAP setup\n\nSome parameters in L2CAP chan are set to default similar way in\nsocket based channels and A2MP channels. Adds common function which\nsets all defaults.\n\nSigned-off-by: Andrei Emeltchenko \u003candrei.emeltchenko@intel.com\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo@padovan.org\u003e\n"
    },
    {
      "commit": "0ed09148fa61e01cd27c92933ba275ea8078b34d",
      "tree": "f0369054b06186149844c40a43f49b50213bf972",
      "parents": [
        "eb19aaacb3f88dbd69e1cd9a2b1f054d4dade678"
      ],
      "author": {
        "name": "Andre Guedes",
        "email": "andre.guedes@openbossa.org",
        "time": "Tue Apr 03 08:46:54 2012 -0300"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo@padovan.org",
        "time": "Wed May 09 00:41:37 2012 -0300"
      },
      "message": "Bluetooth: Remove MGMT_ADDR_INVALID macro\n\nThis patch removes the MGMT_ADDR_INVALID macro. If the address type\nisn\u0027t LE, we consider it is BR/EDR type.\n\nSigned-off-by: Andre Guedes \u003candre.guedes@openbossa.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "eef1d9b668c51dcae58d8bb41ce0c805f866dbbd",
      "tree": "ca3bdca54bbeeb59a15d8d4dafbda33dbb000101",
      "parents": [
        "14a284918416e480bf49f8c05dfeefa02640d2d6"
      ],
      "author": {
        "name": "Gustavo Padovan",
        "email": "gustavo@padovan.org",
        "time": "Sun Mar 25 13:59:16 2012 -0300"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo@padovan.org",
        "time": "Wed May 09 00:41:36 2012 -0300"
      },
      "message": "Bluetooth: Remove sk parameter from l2cap_chan_create()\n\nFollowing the separation if core and sock code this change avoid\nmanipulation of sk inside l2cap_chan_create().\n\nSigned-off-by: Gustavo Padovan \u003cgustavo@padovan.org\u003e\n"
    },
    {
      "commit": "00e3112c5a90963bb7b56e0648d22fc51ed17d23",
      "tree": "97707023c5e51df24adf574cb727e9a28f569289",
      "parents": [
        "d5f7ac38102c12069de247890cfdd357bf845a77"
      ],
      "author": {
        "name": "Mat Martineau",
        "email": "mathewm@codeaurora.org",
        "time": "Fri Mar 23 16:56:56 2012 -0700"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo@padovan.org",
        "time": "Wed May 09 00:41:35 2012 -0300"
      },
      "message": "Bluetooth: Add a structure to carry ERTM data in skb control blocks\n\nEvery field from ERTM control headers is now carried in the control\nblock so it only has to be parsed or generated once, and can be\nefficiently accessed throughout the ERTM code.\n\nSigned-off-by: Mat Martineau \u003cmathewm@codeaurora.org\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo@padovan.org\u003e\n"
    },
    {
      "commit": "d5f7ac38102c12069de247890cfdd357bf845a77",
      "tree": "ace2361d4551f92d52a29cdfecee95c68d2da085",
      "parents": [
        "6f74b6f36fc06fafb0c5868563385a59dc22b1b2"
      ],
      "author": {
        "name": "Mat Martineau",
        "email": "mathewm@codeaurora.org",
        "time": "Fri Mar 23 16:56:55 2012 -0700"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo@padovan.org",
        "time": "Wed May 09 00:41:35 2012 -0300"
      },
      "message": "Bluetooth: Add definitions and struct members for new ERTM state machine\n\nAdds some missing values for control field parsing, additional data\nfor the new state machine, and enumerations for states, incoming\npacket classification, and state machine events.\n\nSigned-off-by: Mat Martineau \u003cmathewm@codeaurora.org\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo@padovan.org\u003e\n"
    },
    {
      "commit": "6f74b6f36fc06fafb0c5868563385a59dc22b1b2",
      "tree": "e64631126c9715b503e5f899abe7007cc7a2448f",
      "parents": [
        "21693c15c0c3be1aac16eee19497a545f12b1a37"
      ],
      "author": {
        "name": "Andrei Emeltchenko",
        "email": "andrei.emeltchenko@intel.com",
        "time": "Fri Mar 23 16:31:50 2012 +0200"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo@padovan.org",
        "time": "Wed May 09 00:41:35 2012 -0300"
      },
      "message": "Bluetooth: Comments and style fixes\n\nAdd comments to timer implementation and style fixes.\n\nSigned-off-by: Andrei Emeltchenko \u003candrei.emeltchenko@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo@padovan.org\u003e\n"
    },
    {
      "commit": "21693c15c0c3be1aac16eee19497a545f12b1a37",
      "tree": "42b5ddd0c4e0d1c02da1d91dbf1bfee0cf0291f5",
      "parents": [
        "79d6e068bee82e9998b2be78bc0f08f2dec8777a"
      ],
      "author": {
        "name": "Andre Guedes",
        "email": "aguedespe@gmail.com",
        "time": "Wed Mar 21 00:03:36 2012 -0300"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo@padovan.org",
        "time": "Wed May 09 00:41:35 2012 -0300"
      },
      "message": "Bluetooth: Add HCI_PERIODIC_INQ to dev_flags\n\nThis patch adds the HCI_PERIODIC_INQ flag to dev_flags. This flag\ntracks if periodic inquiry is enabled or not.\n\nSigned-off-by: Andre Guedes \u003caguedespe@gmail.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo@padovan.org\u003e\n"
    },
    {
      "commit": "79d6e068bee82e9998b2be78bc0f08f2dec8777a",
      "tree": "94fecedf158694febe31813ac121310539639497",
      "parents": [
        "1519cc177a05b96d8715c3cda244c46d6457efbb"
      ],
      "author": {
        "name": "Andre Guedes",
        "email": "aguedespe@gmail.com",
        "time": "Wed Mar 21 00:03:35 2012 -0300"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo@padovan.org",
        "time": "Wed May 09 00:41:35 2012 -0300"
      },
      "message": "Bluetooth: Add Periodic Inquiry command complete handler\n\nThis patch adds a handler function to Periodic Inquiry command\ncomplete event.\n\nSigned-off-by: Andre Guedes \u003caguedespe@gmail.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo@padovan.org\u003e\n"
    },
    {
      "commit": "7dbfac1d720d3ea68e00e187bbd2f1147257528b",
      "tree": "717ef375cd89784a2281c8a40080afe272286ede",
      "parents": [
        "2e3c35ead821498f5b0a5b6c62365fbb187420fc"
      ],
      "author": {
        "name": "Andre Guedes",
        "email": "andre.guedes@openbossa.org",
        "time": "Thu Mar 15 16:52:07 2012 -0300"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo@padovan.org",
        "time": "Wed May 09 00:41:32 2012 -0300"
      },
      "message": "Bluetooth: Add hci_cancel_le_scan() to hci_core\n\nThis patch adds to hci_core the hci_cancel_le_scan function which\nshould be used to cancel an ongoing LE scan.\n\nSigned-off-by: Andre Guedes \u003candre.guedes@openbossa.org\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "58115373e74c7ee18d0f54f00831649a6471a899",
      "tree": "976c058a3f36020beb284509c98cb894345ca671",
      "parents": [
        "eb55ef07a211eea95088eb0e6cdbd53cd65d9755"
      ],
      "author": {
        "name": "Andrei Emeltchenko",
        "email": "andrei.emeltchenko@intel.com",
        "time": "Mon Mar 12 12:13:06 2012 +0200"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo@padovan.org",
        "time": "Wed May 09 00:41:30 2012 -0300"
      },
      "message": "Bluetooth: Correct ediv in SMP\n\nediv is already in little endian order.\n\nSigned-off-by: Andrei Emeltchenko \u003candrei.emeltchenko@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "cdbaccca733c9dde3faf150150102dade311c91f",
      "tree": "75a4d5600a6ab8db1b9a6f6019981b651be7cac6",
      "parents": [
        "2b9be137b70bef9ec7835d83e225d8b35ba9c7ae"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sun Mar 11 20:00:29 2012 -0700"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo@padovan.org",
        "time": "Wed May 09 00:41:30 2012 -0300"
      },
      "message": "Bluetooth: Add management command for setting Device ID\n\nThe Device ID details need to be programmed into the kernel for every\ncontroller at least once. So provide management command for this.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "2b9be137b70bef9ec7835d83e225d8b35ba9c7ae",
      "tree": "596f3ca1945aadf68898174dff2150ef80ac134c",
      "parents": [
        "91c4e9b1ac595f83681c9a9de691e0f30eeafb44"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sun Mar 11 19:32:12 2012 -0700"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo@padovan.org",
        "time": "Wed May 09 00:41:30 2012 -0300"
      },
      "message": "Bluetooth: Handle EIR tags for Device ID\n\nThe Device ID information can be provided via Extended Inquiry Data\nas well. If a valid source is present, then include it.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "91c4e9b1ac595f83681c9a9de691e0f30eeafb44",
      "tree": "a9917d121f19adafb81abf4b7f264f185f60b736",
      "parents": [
        "6935e0f5181644201894f0b7fbe3d8910c18af05"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sun Mar 11 19:27:21 2012 -0700"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo@padovan.org",
        "time": "Wed May 09 00:41:30 2012 -0300"
      },
      "message": "Bluetooth: Add TX power tag to EIR data\n\nThe Inquiry Response TX power tag should be added to the Extended\nInquiry Data (EIR) as well.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "6935e0f5181644201894f0b7fbe3d8910c18af05",
      "tree": "5420f01c982898aaac0204d9761b23fc39bcc081",
      "parents": [
        "bc3dd33cef001e61da0f71b5d8f918b3dbaa4a94"
      ],
      "author": {
        "name": "David Herrmann",
        "email": "dh.herrmann@googlemail.com",
        "time": "Fri Mar 09 15:53:42 2012 +0100"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo@padovan.org",
        "time": "Wed May 09 00:41:30 2012 -0300"
      },
      "message": "Bluetooth: Remove redundant hdev-\u003eparent field\n\nWe initialize the \"struct device\" in hci_alloc_dev() for a long time now\nso we can access hdev-\u003edev.parent directly. Hence, we can drop the\ntemporary field hdev-\u003eparent which is used in no other place than\nhci_add_sysfs().\n\nSET_HCIDEV_DEV() is never called after registering a device by the\ndrivers so we do not overwrite internal device-state. Furthermore,\nhdev-\u003edev is initialized to 0 by kzalloc() inside hci_alloc_dev() so the\ndefault behavior with dev.parent \u003d NULL is kept.\n\nSigned-off-by: David Herrmann \u003cdh.herrmann@googlemail.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "9a0066579270584108f1f2f97d98fe989d8117df",
      "tree": "aaa0f4ad4bcd1e88f1029011c2662d714ae76a29",
      "parents": [
        "7d69230c4381a5abc7286a8dfc893268e14e6ead"
      ],
      "author": {
        "name": "Andrei Emeltchenko",
        "email": "andrei.emeltchenko@intel.com",
        "time": "Fri Mar 09 12:12:12 2012 +0200"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo@padovan.org",
        "time": "Wed May 09 00:41:29 2012 -0300"
      },
      "message": "Bluetooth: Correct type for ediv to __le16\n\nCorrect type warnings reported by sparse to show that this\nfunctions takes ediv argument in __le16 format.\n\nSigned-off-by: Andrei Emeltchenko \u003candrei.emeltchenko@intel.com\u003e\nSigned-off-by: Gustavo F. Padovan \u003cpadovan@profusion.mobi\u003e\n"
    },
    {
      "commit": "7d69230c4381a5abc7286a8dfc893268e14e6ead",
      "tree": "4eb2046f211bebabc163ae11a972b6c5f07fa7c8",
      "parents": [
        "e46668819c1bd5930720a7e020e2a45291f9de4f"
      ],
      "author": {
        "name": "Andrei Emeltchenko",
        "email": "andrei.emeltchenko@intel.com",
        "time": "Fri Mar 09 11:46:49 2012 +0200"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo@padovan.org",
        "time": "Wed May 09 00:41:28 2012 -0300"
      },
      "message": "Bluetooth: Correct type for hdev lmp_subver\n\nKeep lmp_subver in host byte order. We have following conversion\nin hci_cc_read_local_version:\nhdev-\u003elmp_subver \u003d __le16_to_cpu(rp-\u003elmp_subver);\n\nSigned-off-by: Andrei Emeltchenko \u003candrei.emeltchenko@intel.com\u003e\nSigned-off-by: Gustavo F. Padovan \u003cpadovan@profusion.mobi\u003e\n"
    },
    {
      "commit": "70c33eaae79e53f9e48324736c0cb85534d3f093",
      "tree": "103c59d0356e55341052adca0624b6256525ddbb",
      "parents": [
        "b91e64aad2c78b0477b9eb3a26335668b4032002"
      ],
      "author": {
        "name": "Ashok Nagarajan",
        "email": "ashok@cozybit.com",
        "time": "Mon Apr 30 14:20:32 2012 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue May 08 21:53:59 2012 -0400"
      },
      "message": "{nl,cfg,mac}80211: Allow user to see/configure HT protection mode\n\nThis patch introduces a new mesh configuration parameter \"ht_opmode\" and will\nallow user to check the current HT protection mode selected. Users could\nconfigure the protection mode by the command \"iw mesh_iface set mesh_param\nmesh_ht_protection_mode\u003d2\". The default protection mode of mesh is set to\nnon-HT mixed mode.\n\nSigned-off-by: Ashok Nagarajan \u003cashok@cozybit.com\u003e\nReviewed-by: Thomas Pedersen \u003cthomas@cozybit.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "e352114fd62f6d568ca0cb18f589cb8df710cf02",
      "tree": "aadf36af471d9ccfd50561acf8bb052f1bace468",
      "parents": [
        "b1ab79255c539ebe740baa89f8a44ab139381e1c"
      ],
      "author": {
        "name": "Ben Greear",
        "email": "greearb@candelatech.com",
        "time": "Mon Apr 23 12:50:31 2012 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue May 08 21:53:51 2012 -0400"
      },
      "message": "mac80211: Framework to get wifi-driver stats via ethtool.\n\nThis adds hooks to call into the driver to get additional\nstats for the ethtool API.\n\nSigned-off-by: Ben Greear \u003cgreearb@candelatech.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "d61992182e41e1beec0507fd7bce4ba1face12d6",
      "tree": "dab94e062e0793a5f8a7cf54d336866f9aca0328",
      "parents": [
        "35e7adaaf6932c5ffb22c6ec521734434c65adc5"
      ],
      "author": {
        "name": "Ben Greear",
        "email": "greearb@candelatech.com",
        "time": "Mon Apr 23 12:50:29 2012 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue May 08 21:53:49 2012 -0400"
      },
      "message": "cfg80211: Add framework to support ethtool stats.\n\nSigned-off-by: Ben Greear \u003cgreearb@candelatech.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "9bb862beb6e5839e92f709d33fda07678f062f20",
      "tree": "a2c396712c5a2cda380034173fd07a67bfa0489f",
      "parents": [
        "b44907e64cc1987153f6577306108379be1523b7",
        "d16cf20e2f2f13411eece7f7fb72c17d141c4a84"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue May 08 14:40:21 2012 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue May 08 14:40:21 2012 -0400"
      },
      "message": "Merge branch \u0027master\u0027 of git://1984.lsi.us.es/net-next\n"
    },
    {
      "commit": "d16cf20e2f2f13411eece7f7fb72c17d141c4a84",
      "tree": "8154b3db8cdbb4b8d9f35d4c407cfe961253f0b4",
      "parents": [
        "6714cf5465d2803a21c6a46c1ea747795a8889fa"
      ],
      "author": {
        "name": "Pablo Neira Ayuso",
        "email": "pablo@netfilter.org",
        "time": "Tue May 08 19:45:28 2012 +0200"
      },
      "committer": {
        "name": "Pablo Neira Ayuso",
        "email": "pablo@netfilter.org",
        "time": "Tue May 08 20:25:42 2012 +0200"
      },
      "message": "netfilter: remove ip_queue support\n\nThis patch removes ip_queue support which was marked as obsolete\nyears ago. The nfnetlink_queue modules provides more advanced\nuser-space packet queueing mechanism.\n\nThis patch also removes capability code included in SELinux that\nrefers to ip_queue. Otherwise, we break compilation.\n\nSeveral warning has been sent regarding this to the mailing list\nin the past month without anyone rising the hand to stop this\nwith some strong argument.\n\nSigned-off-by: Pablo Neira Ayuso \u003cpablo@netfilter.org\u003e\n"
    },
    {
      "commit": "6714cf5465d2803a21c6a46c1ea747795a8889fa",
      "tree": "eccfd714c4d320f4724e15e59b964ddd487e8f09",
      "parents": [
        "9768e1ace458fa4ebf88bc3943fd8fb77113ed9c"
      ],
      "author": {
        "name": "Pablo Neira Ayuso",
        "email": "pablo@netfilter.org",
        "time": "Thu May 03 02:17:45 2012 +0000"
      },
      "committer": {
        "name": "Pablo Neira Ayuso",
        "email": "pablo@netfilter.org",
        "time": "Tue May 08 19:44:42 2012 +0200"
      },
      "message": "netfilter: nf_conntrack: fix explicit helper attachment and NAT\n\nExplicit helper attachment via the CT target is broken with NAT\nif non-standard ports are used. This problem was hidden behind\nthe automatic helper assignment routine. Thus, it becomes more\nnoticeable now that we can disable the automatic helper assignment\nwith Eric Leblond\u0027s:\n\n9e8ac5a netfilter: nf_ct_helper: allow to disable automatic helper assignment\n\nBasically, nf_conntrack_alter_reply asks for looking up the helper\nup if NAT is enabled. Unfortunately, we don\u0027t have the conntrack\ntemplate at that point anymore.\n\nSince we don\u0027t want to rely on the automatic helper assignment,\nwe can skip the second look-up and stick to the helper that was\nattached by iptables. With the CT target, the user is in full\ncontrol of helper attachment, thus, the policy is to trust what\nthe user explicitly configures via iptables (no automatic magic\nanymore).\n\nInterestingly, this bug was hidden by the automatic helper look-up\ncode. But it can be easily trigger if you attach the helper in\na non-standard port, eg.\n\niptables -I PREROUTING -t raw -p tcp --dport 8888 \\\n\t-j CT --helper ftp\n\nAnd you disabled the automatic helper assignment.\n\nI added the IPS_HELPER_BIT that allows us to differenciate between\na helper that has been explicitly attached and those that have been\nautomatically assigned. I didn\u0027t come up with a better solution\n(having backward compatibility in mind).\n\nSigned-off-by: Pablo Neira Ayuso \u003cpablo@netfilter.org\u003e\n"
    },
    {
      "commit": "f73181c8288fc38747ec4f0f3e8a9052ab785cd5",
      "tree": "9523b3ba632e051b3d196f3bc6d8b0258e7c4fcd",
      "parents": [
        "749c42b620a9511782bc38d0a88702a42434529e"
      ],
      "author": {
        "name": "Pablo Neira Ayuso",
        "email": "pablo@netfilter.org",
        "time": "Tue May 08 19:40:30 2012 +0200"
      },
      "committer": {
        "name": "Pablo Neira Ayuso",
        "email": "pablo@netfilter.org",
        "time": "Tue May 08 19:40:33 2012 +0200"
      },
      "message": "ipvs: add support for sync threads\n\n\tAllow master and backup servers to use many threads\nfor sync traffic. Add sysctl var \"sync_ports\" to define the\nnumber of threads. Every thread will use single UDP port,\nthread 0 will use the default port 8848 while last thread\nwill use port 8848+sync_ports-1.\n\n\tThe sync traffic for connections is scheduled to many\nmaster threads based on the cp address but one connection is\nalways assigned to same thread to avoid reordering of the\nsync messages.\n\n\tRemove ip_vs_sync_switch_mode because this check\nfor sync mode change is still risky. Instead, check for mode\nchange under sync_buff_lock.\n\n\tMake sure the backup socks do not block on reading.\n\nSpecial thanks to Aleksey Chudov for helping in all tests.\n\nSigned-off-by: Julian Anastasov \u003cja@ssi.bg\u003e\nTested-by: Aleksey Chudov \u003caleksey.chudov@gmail.com\u003e\nSigned-off-by: Simon Horman \u003chorms@verge.net.au\u003e\n"
    },
    {
      "commit": "749c42b620a9511782bc38d0a88702a42434529e",
      "tree": "057b15f2bbd7fad96becdada1dc2ee775482e0b6",
      "parents": [
        "1c003b1580e20ff9f500846677303a695b1837cc"
      ],
      "author": {
        "name": "Julian Anastasov",
        "email": "ja@ssi.bg",
        "time": "Tue Apr 24 23:46:40 2012 +0300"
      },
      "committer": {
        "name": "Pablo Neira Ayuso",
        "email": "pablo@netfilter.org",
        "time": "Tue May 08 19:40:10 2012 +0200"
      },
      "message": "ipvs: reduce sync rate with time thresholds\n\n\tAdd two new sysctl vars to control the sync rate with the\nmain idea to reduce the rate for connection templates because\ncurrently it depends on the packet rate for controlled connections.\nThis mechanism should be useful also for normal connections\nwith high traffic.\n\nsync_refresh_period: in seconds, difference in reported connection\n\ttimer that triggers new sync message. It can be used to\n\tavoid sync messages for the specified period (or half of\n\tthe connection timeout if it is lower) if connection state\n\tis not changed from last sync.\n\nsync_retries: integer, 0..3, defines sync retries with period of\n\tsync_refresh_period/8. Useful to protect against loss of\n\tsync messages.\n\n\tAllow sysctl_sync_threshold to be used with\nsysctl_sync_period\u003d0, so that only single sync message is sent\nif sync_refresh_period is also 0.\n\n\tAdd new field \"sync_endtime\" in connection structure to\nhold the reported time when connection expires. The 2 lowest\nbits will represent the retry count.\n\n\tAs the sysctl_sync_period now can be 0 use ACCESS_ONCE to\navoid division by zero.\n\n\tSpecial thanks to Aleksey Chudov for being patient with me,\nfor his extensive reports and helping in all tests.\n\nSigned-off-by: Julian Anastasov \u003cja@ssi.bg\u003e\nTested-by: Aleksey Chudov \u003caleksey.chudov@gmail.com\u003e\nSigned-off-by: Simon Horman \u003chorms@verge.net.au\u003e\n"
    },
    {
      "commit": "1c003b1580e20ff9f500846677303a695b1837cc",
      "tree": "d00c951b6e4c88edd403b4d8ead96a57b9bfc808",
      "parents": [
        "cdcc5e905d59026fbf2e7f74f9cc834203b6207b"
      ],
      "author": {
        "name": "Pablo Neira Ayuso",
        "email": "pablo@netfilter.org",
        "time": "Tue May 08 19:39:49 2012 +0200"
      },
      "committer": {
        "name": "Pablo Neira Ayuso",
        "email": "pablo@netfilter.org",
        "time": "Tue May 08 19:39:53 2012 +0200"
      },
      "message": "ipvs: wakeup master thread\n\n\tHigh rate of sync messages in master can lead to\noverflowing the socket buffer and dropping the messages.\nFixed sleep of 1 second without wakeup events is not suitable\nfor loaded masters,\n\n\tUse delayed_work to schedule sending for queued messages\nand limit the delay to IPVS_SYNC_SEND_DELAY (20ms). This will\nreduce the rate of wakeups but to avoid sending long bursts we\nwakeup the master thread after IPVS_SYNC_WAKEUP_RATE (8) messages.\n\n\tAdd hard limit for the queued messages before sending\nby using \"sync_qlen_max\" sysctl var. It defaults to 1/32 of\nthe memory pages but actually represents number of messages.\nIt will protect us from allocating large parts of memory\nwhen the sending rate is lower than the queuing rate.\n\n\tAs suggested by Pablo, add new sysctl var\n\"sync_sock_size\" to configure the SNDBUF (master) or\nRCVBUF (slave) socket limit. Default value is 0 (preserve\nsystem defaults).\n\n\tChange the master thread to detect and block on\nSNDBUF overflow, so that we do not drop messages when\nthe socket limit is low but the sync_qlen_max limit is\nnot reached. On ENOBUFS or other errors just drop the\nmessages.\n\n\tChange master thread to enter TASK_INTERRUPTIBLE\nstate early, so that we do not miss wakeups due to messages or\nkthread_should_stop event.\n\nThanks to Pablo Neira Ayuso for his valuable feedback!\n\nSigned-off-by: Julian Anastasov \u003cja@ssi.bg\u003e\nSigned-off-by: Simon Horman \u003chorms@verge.net.au\u003e\n"
    },
    {
      "commit": "cdcc5e905d59026fbf2e7f74f9cc834203b6207b",
      "tree": "3f8c6440384a2d0e753d35f51e344269953a986a",
      "parents": [
        "882a844bd5b3ffa35e059f21ee920cc113985a89"
      ],
      "author": {
        "name": "Julian Anastasov",
        "email": "ja@ssi.bg",
        "time": "Tue Apr 24 23:46:38 2012 +0300"
      },
      "committer": {
        "name": "Pablo Neira Ayuso",
        "email": "pablo@netfilter.org",
        "time": "Tue May 08 19:38:31 2012 +0200"
      },
      "message": "ipvs: always update some of the flags bits in backup\n\n\tAs the goal is to mirror the inactconns/activeconns\ncounters in the backup server, make sure the cp-\u003eflags are\nupdated even if cp is still not bound to dest. If cp-\u003eflags\nare not updated ip_vs_bind_dest will rely only on the initial\nflags when updating the counters. To avoid mistakes and\ncomplicated checks for protocol state rely only on the\nIP_VS_CONN_F_INACTIVE bit when updating the counters.\n\nSigned-off-by: Julian Anastasov \u003cja@ssi.bg\u003e\nTested-by: Aleksey Chudov \u003caleksey.chudov@gmail.com\u003e\nSigned-off-by: Simon Horman \u003chorms@verge.net.au\u003e\n"
    },
    {
      "commit": "ac3a546ac89fdf3c4b50e40039a5a7f6df4dda72",
      "tree": "8fbe86f3e2fcd9c2ba23a7cc0832f60240b07658",
      "parents": [
        "a9006892643a8f4e885b692de0708bcb35a7d530"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "edumazet@google.com",
        "time": "Wed Apr 18 06:36:40 2012 +0200"
      },
      "committer": {
        "name": "Pablo Neira Ayuso",
        "email": "pablo@netfilter.org",
        "time": "Tue May 08 19:36:33 2012 +0200"
      },
      "message": "netfilter: nf_conntrack: use this_cpu_inc()\n\nthis_cpu_inc() is IRQ safe and faster than\nlocal_bh_disable()/__this_cpu_inc()/local_bh_enable(), at least on x86.\n\nSigned-off-by: Eric Dumazet \u003cedumazet@google.com\u003e\nCc: Patrick McHardy \u003ckaber@trash.net\u003e\nCc: Christoph Lameter \u003ccl@linux.com\u003e\nCc: Tejun Heo \u003ctj@kernel.org\u003e\nReviewed-by: Christoph Lameter \u003ccl@linux.com\u003e\nSigned-off-by: Pablo Neira Ayuso \u003cpablo@netfilter.org\u003e\n"
    },
    {
      "commit": "a9006892643a8f4e885b692de0708bcb35a7d530",
      "tree": "de5ba86bb36d05cd859bffb2370a9a3b462722d9",
      "parents": [
        "031d7709f21c778bcb1eed96d790e82b3bee96b5"
      ],
      "author": {
        "name": "Eric Leblond",
        "email": "eric@regit.org",
        "time": "Wed Apr 18 11:20:41 2012 +0200"
      },
      "committer": {
        "name": "Pablo Neira Ayuso",
        "email": "pablo@netfilter.org",
        "time": "Tue May 08 19:35:18 2012 +0200"
      },
      "message": "netfilter: nf_ct_helper: allow to disable automatic helper assignment\n\nThis patch allows you to disable automatic conntrack helper\nlookup based on TCP/UDP ports, eg.\n\necho 0 \u003e /proc/sys/net/netfilter/nf_conntrack_helper\n\n[ Note: flows that already got a helper will keep using it even\n  if automatic helper assignment has been disabled ]\n\nOnce this behaviour has been disabled, you have to explicitly\nuse the iptables CT target to attach helper to flows.\n\nThere are good reasons to stop supporting automatic helper\nassignment, for further information, please read:\n\nhttp://www.netfilter.org/news.html#2012-04-03\n\nThis patch also adds one message to inform that automatic helper\nassignment is deprecated and it will be removed soon (this is\nspotted only once, with the first flow that gets a helper attached\nto make it as less annoying as possible).\n\nSigned-off-by: Eric Leblond \u003ceric@regit.org\u003e\nSigned-off-by: Pablo Neira Ayuso \u003cpablo@netfilter.org\u003e\n"
    },
    {
      "commit": "b44907e64cc1987153f6577306108379be1523b7",
      "tree": "09ec9814903e61a85f51de0249f65e1a25f40aa4",
      "parents": [
        "97138a1ca7917c11431293e668457f916a610ca5"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Tue May 08 06:44:40 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue May 08 13:06:16 2012 -0400"
      },
      "message": "etherdev.h: Convert int is_\u003cfoo\u003e_ether_addr to bool\n\nMake the return value explicitly true or false.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0d6c4a2e4641bbc556dd74d3aa158c413a972492",
      "tree": "da944af17682659bb433dc2282dcb48380c14cd1",
      "parents": [
        "6e06c0e2347ec79d0bd5702b2438fe883f784545",
        "1c430a727fa512500a422ffe4712166c550ea06a"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 07 23:35:40 2012 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 07 23:35:40 2012 -0400"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net\n\nConflicts:\n\tdrivers/net/ethernet/intel/e1000e/param.c\n\tdrivers/net/wireless/iwlwifi/iwl-agn-rx.c\n\tdrivers/net/wireless/iwlwifi/iwl-trans-pcie-rx.c\n\tdrivers/net/wireless/iwlwifi/iwl-trans.h\n\nResolved the iwlwifi conflict with mainline using 3-way diff posted\nby John Linville and Stephen Rothwell.  In \u0027net\u0027 we added a bug\nfix to make iwlwifi report a more accurate skb-\u003etruesize but this\nconflicted with RX path changes that happened meanwhile in net-next.\n\nIn e1000e a conflict arose in the validation code for settings of\nadapter-\u003eitr.  \u0027net-next\u0027 had more sophisticated logic so that\nlogic was used.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0ca2997d145268e6b4ef000692061849cdab8348",
      "tree": "deeca7985f029cae477945e988816889c986e263",
      "parents": [
        "251060220021283eef3652145a41f5b26db97ce5"
      ],
      "author": {
        "name": "David Daney",
        "email": "david.daney@cavium.com",
        "time": "Wed May 02 15:16:38 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 07 22:58:09 2012 -0400"
      },
      "message": "netdev/of/phy: Add MDIO bus multiplexer support.\n\nThis patch adds a somewhat generic framework for MDIO bus\nmultiplexers.  It is modeled on the I2C multiplexer.\n\nThe multiplexer is needed if there are multiple PHYs with the same\naddress connected to the same MDIO bus adepter, or if there is\ninsufficient electrical drive capability for all the connected PHY\ndevices.\n\nConceptually it could look something like this:\n\n                   ------------------\n                   | Control Signal |\n                   --------+---------\n                           |\n ---------------   --------+------\n | MDIO MASTER |---| Multiplexer |\n ---------------   --+-------+----\n                     |       |\n                     C       C\n                     h       h\n                     i       i\n                     l       l\n                     d       d\n                     |       |\n     ---------       A       B   ---------\n     |       |       |       |   |       |\n     | PHY@1 +-------+       +---+ PHY@1 |\n     |       |       |       |   |       |\n     ---------       |       |   ---------\n     ---------       |       |   ---------\n     |       |       |       |   |       |\n     | PHY@2 +-------+       +---+ PHY@2 |\n     |       |                   |       |\n     ---------                   ---------\n\nThis framework configures the bus topology from device tree data.  The\nmechanics of switching the multiplexer is left to device specific\ndrivers.\n\nThe follow-on patch contains a multiplexer driven by GPIO lines.\n\nSigned-off-by: David Daney \u003cdavid.daney@cavium.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "251060220021283eef3652145a41f5b26db97ce5",
      "tree": "e04d2a1695e19e959873cf8a6d571a925ca59cc5",
      "parents": [
        "7dc2ce5f12cb5d166140820d5063027dc2449ac1"
      ],
      "author": {
        "name": "David Daney",
        "email": "david.daney@cavium.com",
        "time": "Wed May 02 15:16:37 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 07 22:58:09 2012 -0400"
      },
      "message": "netdev/of/phy: New function: of_mdio_find_bus().\n\nAdd of_mdio_find_bus() which allows an mii_bus to be located given its\nassociated the device tree node.\n\nThis is needed by the follow-on patch to add a driver for MDIO bus\nmultiplexers.\n\nThe of_mdiobus_register() function is modified so that the device tree\nnode is recorded in the mii_bus.  Then we can find it again by\niterating over all mdio_bus_class devices.\n\nBecause the OF device tree has now become an integral part of the\nkernel, this can live in mdio_bus.c (which contains the needed\nmdio_bus_class structure) instead of of_mdio.c.\n\nSigned-off-by: David Daney \u003cdavid.daney@cavium.com\u003e\nCc: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1c430a727fa512500a422ffe4712166c550ea06a",
      "tree": "5027e4edc9c66a9e49e0e73ba866f5bb326fadcd",
      "parents": [
        "6eddcb4c82883451aec3be1240f17793370fa62f"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Mon May 07 15:39:06 2012 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 07 19:21:29 2012 -0400"
      },
      "message": "net: compare_ether_addr[_64bits]() has no ordering\n\nNeither compare_ether_addr() nor compare_ether_addr_64bits()\n(as it can fall back to the former) have comparison semantics\nlike memcmp() where the sign of the return value indicates sort\norder. We had a bug in the wireless code due to a blind memcmp\nreplacement because of this.\n\nA cursory look suggests that the wireless bug was the only one\ndue to this semantic difference.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ec47ea82477404631d49b8e568c71826c9b663ac",
      "tree": "8b7890f23ad078d9eccbd4571e0b2da86b04a6a0",
      "parents": [
        "3e24591a19bbda6fcb2cbe383b41b4ba794501bf"
      ],
      "author": {
        "name": "Alexander Duyck",
        "email": "alexander.h.duyck@intel.com",
        "time": "Fri May 04 14:26:56 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun May 06 13:13:19 2012 -0400"
      },
      "message": "skb: Add inline helper for getting the skb end offset from head\n\nWith the recent changes for how we compute the skb truesize it occurs to me\nwe are probably going to have a lot of calls to skb_end_pointer -\nskb-\u003ehead.  Instead of running all over the place doing that it would make\nmore sense to just make it a separate inline skb_end_offset(skb) that way\nwe can return the correct value without having gcc having to do all the\noptimization to cancel out skb-\u003ehead - skb-\u003ehead.\n\nSigned-off-by: Alexander Duyck \u003calexander.h.duyck@intel.com\u003e\nAcked-by: Eric Dumazet \u003cedumazet@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "bd14b1b2e29bd6812597f896dde06eaf7c6d2f24",
      "tree": "bd641279d50993e32da8f8d72672bce4e54820bd",
      "parents": [
        "f45ebf3a6be9da051f078b30e7309b6788932189"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "edumazet@google.com",
        "time": "Fri May 04 05:14:02 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri May 04 12:05:27 2012 -0400"
      },
      "message": "tcp: be more strict before accepting ECN negociation\n\nIt appears some networks play bad games with the two bits reserved for\nECN. This can trigger false congestion notifications and very slow\ntransferts.\n\nSince RFC 3168 (6.1.1) forbids SYN packets to carry CT bits, we can\ndisable TCP ECN negociation if it happens we receive mangled CT bits in\nthe SYN packet.\n\nSigned-off-by: Eric Dumazet \u003cedumazet@google.com\u003e\nCc: Perry Lorier \u003cperryl@google.com\u003e\nCc: Matt Mathis \u003cmattmathis@google.com\u003e\nCc: Yuchung Cheng \u003cycheng@google.com\u003e\nCc: Neal Cardwell \u003cncardwell@google.com\u003e\nCc: Wilmer van der Gaast \u003cwilmer@google.com\u003e\nCc: Ankur Jain \u003cjankur@google.com\u003e\nCc: Tom Herbert \u003ctherbert@google.com\u003e\nCc: Dave Täht \u003cdave.taht@bufferbloat.net\u003e\nAcked-by: Neal Cardwell \u003cncardwell@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f45ebf3a6be9da051f078b30e7309b6788932189",
      "tree": "539bb636aec1ec8542218c54866f724b39164182",
      "parents": [
        "1ea52fbda1629216182a0b0fbee9d65e8bcedd1e"
      ],
      "author": {
        "name": "Karsten Keil",
        "email": "isdn@linux-pingi.de",
        "time": "Fri May 04 04:15:35 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri May 04 11:56:19 2012 -0400"
      },
      "message": "mISDN: Help to identify the card\n\nWith multiple cards is hard to figure out which port caused trouble\nint the layer2 routines (e.g. got a timeout).\nNow we have the informations in the log output.\n\nSigned-off-by: Karsten Keil \u003ckkeil@linux-pingi.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c626c127279b265ab293348763e043864d58d42c",
      "tree": "476fa67d42bff3a1a27d97818fa66d16bf501a88",
      "parents": [
        "8423e6b212a19d5f02232855dec73196297b5ee9"
      ],
      "author": {
        "name": "Karsten Keil",
        "email": "isdn@linux-pingi.de",
        "time": "Fri May 04 04:15:33 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri May 04 11:55:05 2012 -0400"
      },
      "message": "mISDN: Make layer1 timer 3 value configurable\n\nFor certification test it is very useful to change the layer1\ntimer3 value on runtime.\n\nSigned-off-by: Karsten Keil \u003ckkeil@linux-pingi.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8423e6b212a19d5f02232855dec73196297b5ee9",
      "tree": "bb244d8d7743d2c078fe817d25a3ae4a37ca3d39",
      "parents": [
        "7ed80fe45d42678fb234bf9d18de6a98cfa9830d"
      ],
      "author": {
        "name": "Karsten Keil",
        "email": "isdn@linux-pingi.de",
        "time": "Fri May 04 04:15:32 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri May 04 11:54:27 2012 -0400"
      },
      "message": "mISDN: L2 timeouts need to be queued as L2 event\n\nTo be full preemptiv safe, we cannot handle a L2 timeout in the timer\ncontext itself, we should do all actions via the D-channel thread.\n\nSigned-off-by: Karsten Keil \u003ckkeil@linux-pingi.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c42f1d4b523950c4af060f8fc0c7016755d8a3bc",
      "tree": "8322c9c14b0c7055ce924d12c1150d2acb0ea95e",
      "parents": [
        "913a90416918a591e6d5ece036b795c58a08131d",
        "5a8887d39e1ba5ee2d4ccb94b14d6f2dce5ddfca"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 03 17:10:39 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 03 17:10:39 2012 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net\n\nPull networking fixes from David Miller:\n\n 1) Transfer padding was wrong for full-speed USB in ASIX driver, fix\n    from Ingo van Lil.\n\n 2) Propagate the negative packet offset fix into the PowerPC BPF JIT.\n    From Jan Seiffert.\n\n 3) dl2k driver\u0027s private ioctls were letting unprivileged tasks make\n    MII writes and other ugly bits like that.  Fix from Jeff Mahoney.\n\n 4) Fix TX VLAN and RX packet drops in ucc_geth, from Joakim Tjernlund.\n\n 5) OOPS and network namespace fixes in IPVS from Hans Schillstrom and\n    Julian Anastasov.\n\n 6) Fix races and sleeping in locked context bugs in drop_monitor, from\n    Neil Horman.\n\n 7) Fix link status indication in smsc95xx driver, from Paolo Pisati.\n\n 8) Fix bridge netfilter OOPS, from Peter Huang.\n\n 9) L2TP sendmsg can return on error conditions with the socket lock\n    held, oops.  Fix from Sasha Levin.\n\n10) udp_diag should return meaningful values for socket memory usage,\n    from Shan Wei.\n\n11) Eric Dumazet is so awesome he gets his own section:\n\n       Socket memory cgroup code (I never should have applied those\n       patches, grumble...) made erroneous changes to\n       sk_sockets_allocated_read_positive().  It was changed to\n       use percpu_counter_sum_positive (which requires BH disabling)\n       instead of percpu_counter_read_positive (which does not).\n       Revert back to avoid crashes and lockdep warnings.\n\n       Adjust the default tcp_adv_win_scale and tcp_rmem[2] values\n       to fix throughput regressions.  This is necessary as a result\n       of our more precise skb-\u003etruesize tracking.\n\n       Fix SKB leak in netem packet scheduler.\n\n12) New device IDs for various bluetooth devices, from Manoj Iyer,\n    AceLan Kao, and Steven Harms.\n\n13) Fix command completion race in ipw2200, from Stanislav Yakovlev.\n\n14) Fix rtlwifi oops on unload, from Larry Finger.\n\n15) Fix hard_mtu when adjusting hard_header_len in smsc95xx driver.\n    From Stephane Fillod.\n\n16) ehea driver registers it\u0027s IRQ before all the necessary state is\n    setup, resulting in crashes.  Fix from Thadeu Lima de Souza\n    Cascardo.\n\n17) Fix PHY connection failures in davinci_emac driver, from Anatolij\n    Gustschin.\n\n18) Missing break; in switch statement in bluetooth\u0027s\n    hci_cmd_complete_evt().  Fix from Szymon Janc.\n\n19) Fix queue programming in iwlwifi, from Johannes Berg.\n\n20) Interrupt throttling defaults not being actually programmed into the\n    hardware, fix from Jeff Kirsher and Ying Cai.\n\n21) TLAN driver SKB encoding in descriptor busted on 64-bit, fix from\n    Benjamin Poirier.\n\n22) Fix blind status block RX producer pointer deref in TG3 driver, from\n    Matt Carlson.\n\n23) Promisc and multicast are busted on ehea, fixes from Thadeu Lima de\n    Souza Cascardo.\n\n24) Fix crashes in 6lowpan, from Alexander Smirnov.\n\n25) tcp_complete_cwr() needs to be careful to not rewind the CWND to\n    ssthresh if ssthresh has the \"infinite\" value.  Fix from Yuchung\n    Cheng.\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (81 commits)\n  sungem: Fix WakeOnLan\n  tcp: change tcp_adv_win_scale and tcp_rmem[2]\n  net: l2tp: unlock socket lock before returning from l2tp_ip_sendmsg\n  drop_monitor: prevent init path from scheduling on the wrong cpu\n  usbnet: fix failure handling in usbnet_probe\n  usbnet: fix leak of transfer buffer of dev-\u003einterrupt\n  ucc_geth: Add 16 bytes to max TX frame for VLANs\n  net: ucc_geth, increase no. of HW RX descriptors\n  netem: fix possible skb leak\n  sky2: fix receive length error in mixed non-VLAN/VLAN traffic\n  sky2: propogate rx hash when packet is copied\n  net: fix two typos in skbuff.h\n  cxgb3: Don\u0027t call cxgb_vlan_mode until q locks are initialized\n  ixgbe: fix calling skb_put on nonlinear skb assertion bug\n  ixgbe: Fix a memory leak in IEEE DCB\n  igbvf: fix the bug when initializing the igbvf\n  smsc75xx: enable mac to detect speed/duplex from phy\n  smsc75xx: declare smsc75xx\u0027s MII as GMII capable\n  smsc75xx: fix phy interrupt acknowledge\n  smsc75xx: fix phy init reset loop\n  ...\n"
    },
    {
      "commit": "3a7c1ee4ab89f9250b8f82656a7be0ae14aa3691",
      "tree": "9dc10e067f2364fd3590b38cd5db495cd09c32e6",
      "parents": [
        "715dc1f342713816d1be1c37643a2c9e6ee181a7"
      ],
      "author": {
        "name": "Alexander Duyck",
        "email": "alexander.h.duyck@intel.com",
        "time": "Thu May 03 01:09:42 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu May 03 13:18:37 2012 -0400"
      },
      "message": "skb: Add skb_head_is_locked helper function\n\nThis patch adds support for a skb_head_is_locked helper function.  It is\nmeant to be used any time we are considering transferring the head from\nskb-\u003ehead to a paged frag.  If the head is locked it means we cannot remove\nthe head from the skb so it must be copied or we must take the skb as a\nwhole.\n\nSigned-off-by: Alexander Duyck \u003calexander.h.duyck@intel.com\u003e\nAcked-by: Eric Dumazet \u003cedumazet@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b081f85c2977b1cbb6e635d53d9512f1ef985972",
      "tree": "3b41dfe3ee282c175907e8bcf9614385115fa2e6",
      "parents": [
        "923dd347b8904c24bcac89bf038ed4da87f8aa90"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "edumazet@google.com",
        "time": "Wed May 02 09:58:29 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed May 02 21:11:11 2012 -0400"
      },
      "message": "net: implement tcp coalescing in tcp_queue_rcv()\n\nExtend tcp coalescing implementing it from tcp_queue_rcv(), the main\nreceiver function when application is not blocked in recvmsg().\n\nFunction tcp_queue_rcv() is moved a bit to allow its call from\ntcp_data_queue()\n\nThis gives good results especially if GRO could not kick, and if skb\nhead is a fragment.\n\nSigned-off-by: Eric Dumazet \u003cedumazet@google.com\u003e\nCc: Alexander Duyck \u003calexander.h.duyck@intel.com\u003e\nCc: Neal Cardwell \u003cncardwell@google.com\u003e\nCc: Tom Herbert \u003ctherbert@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "750ea2bafa55aaed208b2583470ecd7122225634",
      "tree": "7656d7697566b0cecc7fbbdd8dbae288bca6d7e3",
      "parents": [
        "eed530b6c67624db3f2cf477bac7c4d005d8f7ba"
      ],
      "author": {
        "name": "Yuchung Cheng",
        "email": "ycheng@google.com",
        "time": "Wed May 02 13:30:04 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed May 02 20:56:10 2012 -0400"
      },
      "message": "tcp: early retransmit: delayed fast retransmit\n\nImplementing the advanced early retransmit (sysctl_tcp_early_retrans\u003d\u003d2).\nDelays the fast retransmit by an interval of RTT/4. We borrow the\nRTO timer to implement the delay. If we receive another ACK or send\na new packet, the timer is cancelled and restored to original RTO\nvalue offset by time elapsed.  When the delayed-ER timer fires,\nwe enter fast recovery and perform fast retransmit.\n\nSigned-off-by: Yuchung Cheng \u003cycheng@google.com\u003e\nAcked-by: Neal Cardwell \u003cncardwell@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "eed530b6c67624db3f2cf477bac7c4d005d8f7ba",
      "tree": "c07096807ead2adb9d85e85d1a9cd1ada85755ac",
      "parents": [
        "1fbc340514fc3003514bd681b372e1f47ae6183f"
      ],
      "author": {
        "name": "Yuchung Cheng",
        "email": "ycheng@google.com",
        "time": "Wed May 02 13:30:03 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed May 02 20:56:10 2012 -0400"
      },
      "message": "tcp: early retransmit\n\nThis patch implements RFC 5827 early retransmit (ER) for TCP.\nIt reduces DUPACK threshold (dupthresh) if outstanding packets are\nless than 4 to recover losses by fast recovery instead of timeout.\n\nWhile the algorithm is simple, small but frequent network reordering\nmakes this feature dangerous: the connection repeatedly enter\nfalse recovery and degrade performance. Therefore we implement\na mitigation suggested in the appendix of the RFC that delays\nentering fast recovery by a small interval, i.e., RTT/4. Currently\nER is conservative and is disabled for the rest of the connection\nafter the first reordering event. A large scale web server\nexperiment on the performance impact of ER is summarized in\nsection 6 of the paper \"Proportional Rate Reduction for TCP”,\nIMC 2011. http://conferences.sigcomm.org/imc/2011/docs/p155.pdf\n\nNote that Linux has a similar feature called THIN_DUPACK. The\ndifferences are THIN_DUPACK do not mitigate reorderings and is only\nused after slow start. Currently ER is disabled if THIN_DUPACK is\nenabled. I would be happy to merge THIN_DUPACK feature with ER if\npeople think it\u0027s a good idea.\n\nER is enabled by sysctl_tcp_early_retrans:\n  0: Disables ER\n\n  1: Reduce dupthresh to packets_out - 1 when outstanding packets \u003c 4.\n\n  2: (Default) reduce dupthresh like mode 1. In addition, delay\n     entering fast recovery by RTT/4.\n\nNote: mode 2 is implemented in the third part of this patch series.\n\nSigned-off-by: Yuchung Cheng \u003cycheng@google.com\u003e\nAcked-by: Neal Cardwell \u003cncardwell@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "076e7779c07c56c7fa593a28c71ea7432d0c7c95",
      "tree": "70a4227b5d898c1abf37ed5779b0cd6f29b471bc",
      "parents": [
        "116a0fc31c6c9b8fc821be5a96e5bf0b43260131",
        "66f2c99af3d6f2d0aa1120884cf1c60613ef61c0"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue May 01 14:14:05 2012 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue May 01 14:14:05 2012 -0400"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless into for-davem\n"
    },
    {
      "commit": "d961949660fa1c1b7eb0c3a3c157989c90f14e8e",
      "tree": "399d4b607366367f9dcf9d9d04c132a34a3a6d21",
      "parents": [
        "60158e64641fd8c780a6d14de2bf42aabc419916"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "edumazet@google.com",
        "time": "Mon Apr 30 21:29:16 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue May 01 09:40:19 2012 -0400"
      },
      "message": "net: fix two typos in skbuff.h\n\nfix kernel doc typos in function names\n\nSigned-off-by: Eric Dumazet \u003cedumazet@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e4ae004b84b315dd4b762e474f97403eac70f76a",
      "tree": "c1f514987070e02c4792a84d0d5417dfa288a8cb",
      "parents": [
        "18d0700024d68a075c507b845d85eda2abb5aee7"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "edumazet@google.com",
        "time": "Mon Apr 30 23:11:05 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue May 01 09:39:48 2012 -0400"
      },
      "message": "netem: add ECN capability\n\nAdd ECN (Explicit Congestion Notification) marking capability to netem\n\ntc qdisc add dev eth0 root netem drop 0.5 ecn\n\nInstead of dropping packets, try to ECN mark them.\n\nSigned-off-by: Eric Dumazet \u003cedumazet@google.com\u003e\nCc: Neal Cardwell \u003cncardwell@google.com\u003e\nCc: Tom Herbert \u003ctherbert@google.com\u003e\nCc: Hagen Paul Pfeifer \u003chagen@jauu.net\u003e\nCc: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nAcked-by: Hagen Paul Pfeifer \u003chagen@jauu.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "18d0700024d68a075c507b845d85eda2abb5aee7",
      "tree": "bc733355c1aa30aa3e24cadf26747413ca74a207",
      "parents": [
        "e4cbb02a1070ebf0185f67a8887cc05f8a183d71"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "edumazet@google.com",
        "time": "Mon Apr 30 16:31:46 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue May 01 09:39:48 2012 -0400"
      },
      "message": "net: skb_peek()/skb_peek_tail() cleanups\n\nremove useless casts and rename variables for less confusion.\n\nSigned-off-by: Eric Dumazet \u003cedumazet@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a32e0eec7042b21ccb52896cf715e3e2641fed93",
      "tree": "12880271e8f5fb4c5e48a0633e9a38d5a67a3448",
      "parents": [
        "a495f8364efe11f4813914b09cf0d026364d6969"
      ],
      "author": {
        "name": "Chris Elston",
        "email": "celston@katalix.com",
        "time": "Sun Apr 29 21:48:54 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue May 01 09:30:55 2012 -0400"
      },
      "message": "l2tp: introduce L2TPv3 IP encapsulation support for IPv6\n\nL2TPv3 defines an IP encapsulation packet format where data is carried\ndirectly over IP (no UDP). The kernel already has support for L2TP IP\nencapsulation over IPv4 (l2tp_ip). This patch introduces support for\nL2TP IP encapsulation over IPv6.\n\nThe implementation is derived from ipv6/raw and ipv4/l2tp_ip.\n\nSigned-off-by: Chris Elston \u003ccelston@katalix.com\u003e\nSigned-off-by: James Chapman \u003cjchapman@katalix.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f9bac8df908d7c0a36960265c92f3445623b19d1",
      "tree": "58bc4af4f65eed62a01027d2358b713b1a060e37",
      "parents": [
        "2121c3f571f08bd723f449f2477f1582709f5a2a"
      ],
      "author": {
        "name": "Chris Elston",
        "email": "celston@katalix.com",
        "time": "Sun Apr 29 21:48:52 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue May 01 09:30:55 2012 -0400"
      },
      "message": "l2tp: netlink api for l2tpv3 ipv6 unmanaged tunnels\n\nThis patch adds support for unmanaged L2TPv3 tunnels over IPv6 using\nthe netlink API. We already support unmanaged L2TPv3 tunnels over\nIPv4. A patch to iproute2 to make use of this feature will be\nsubmitted separately.\n\nSigned-off-by: Chris Elston \u003ccelston@katalix.com\u003e\nSigned-off-by: James Chapman \u003cjchapman@katalix.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9d4ec1aeda4a2754681a93029adf89f8f41b9a4d",
      "tree": "a2eb7e9a142b57c77638995f5635402e404e296c",
      "parents": [
        "c8657fd50a7553a4a9cb4b04cdc11419c9d93d9b"
      ],
      "author": {
        "name": "James Chapman",
        "email": "jchapman@katalix.com",
        "time": "Sun Apr 29 21:48:49 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue May 01 09:30:55 2012 -0400"
      },
      "message": "pppox: Replace __attribute__((packed)) in if_pppox.h\n\nCheckpatch warns about the use of __attribute__((packed)). So use the\nrecommended __packed syntax instead.\n\nSigned-off-by: James Chapman \u003cjchapman@katalix.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d7e8883cfcf4851afe74fb380cc62b7fa9cf66ba",
      "tree": "1b513349c4f1c7edf7991de2016b3a2ed1083deb",
      "parents": [
        "8d4057a938481351dc690fbe23e8c72af08d5890"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "edumazet@google.com",
        "time": "Mon Apr 30 08:10:34 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 30 21:35:49 2012 -0400"
      },
      "message": "net: make GRO aware of skb-\u003ehead_frag\n\nGRO can check if skb to be merged has its skb-\u003ehead mapped to a page\nfragment, instead of a kmalloc() area.\n\nWe \u0027upgrade\u0027 skb-\u003ehead as a fragment in itself\n\nThis avoids the frag_list fallback, and permits to build true GRO skb\n(one sk_buff and up to 16 fragments), using less memory.\n\nThis reduces number of cache misses when user makes its copy, since a\nsingle sk_buff is fetched.\n\nThis is a followup of patch \"net: allow skb-\u003ehead to be a page fragment\"\n\nSigned-off-by: Eric Dumazet \u003cedumazet@google.com\u003e\nCc: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nCc: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nCc: Maciej Żenczykowski \u003cmaze@google.com\u003e\nCc: Neal Cardwell \u003cncardwell@google.com\u003e\nCc: Tom Herbert \u003ctherbert@google.com\u003e\nCc: Jeff Kirsher \u003cjeffrey.t.kirsher@intel.com\u003e\nCc: Ben Hutchings \u003cbhutchings@solarflare.com\u003e\nCc: Matt Carlson \u003cmcarlson@broadcom.com\u003e\nCc: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d3836f21b0af5513ef55701dd3f50b8c42e44c7a",
      "tree": "69a471411b1dbbc2bb0997dd5f9f53fce6c74a7e",
      "parents": [
        "49cbb1c1e6fd8fb069ef9fbfadc97042168f93bf"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "edumazet@google.com",
        "time": "Fri Apr 27 00:33:38 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 30 21:35:11 2012 -0400"
      },
      "message": "net: allow skb-\u003ehead to be a page fragment\n\nskb-\u003ehead is currently allocated from kmalloc(). This is convenient but\nhas the drawback the data cannot be converted to a page fragment if\nneeded.\n\nWe have three spots were it hurts :\n\n1) GRO aggregation\n\n When a linear skb must be appended to another skb, GRO uses the\nfrag_list fallback, very inefficient since we keep all struct sk_buff\naround. So drivers enabling GRO but delivering linear skbs to network\nstack aren\u0027t enabling full GRO power.\n\n2) splice(socket -\u003e pipe).\n\n We must copy the linear part to a page fragment.\n This kind of defeats splice() purpose (zero copy claim)\n\n3) TCP coalescing.\n\n Recently introduced, this permits to group several contiguous segments\ninto a single skb. This shortens queue lengths and save kernel memory,\nand greatly reduce probabilities of TCP collapses. This coalescing\ndoesnt work on linear skbs (or we would need to copy data, this would be\ntoo slow)\n\nGiven all these issues, the following patch introduces the possibility\nof having skb-\u003ehead be a fragment in itself. We use a new skb flag,\nskb-\u003ehead_frag to carry this information.\n\nbuild_skb() is changed to accept a frag_size argument. Drivers willing\nto provide a page fragment instead of kmalloc() data will set a non zero\nvalue, set to the fragment size.\n\nThen, on situations we need to convert the skb head to a frag in itself,\nwe can check if skb-\u003ehead_frag is set and avoid the copies or various\nfallbacks we have.\n\nThis means drivers currently using frags could be updated to avoid the\ncurrent skb-\u003ehead allocation and reduce their memory footprint (aka skb\ntruesize). (thats 512 or 1024 bytes saved per skb). This also makes\nbpf/netfilter faster since the \u0027first frag\u0027 will be part of skb linear\npart, no need to copy data.\n\nSigned-off-by: Eric Dumazet \u003cedumazet@google.com\u003e\nCc: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nCc: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nCc: Maciej Żenczykowski \u003cmaze@google.com\u003e\nCc: Neal Cardwell \u003cncardwell@google.com\u003e\nCc: Tom Herbert \u003ctherbert@google.com\u003e\nCc: Jeff Kirsher \u003cjeffrey.t.kirsher@intel.com\u003e\nCc: Ben Hutchings \u003cbhutchings@solarflare.com\u003e\nCc: Matt Carlson \u003cmcarlson@broadcom.com\u003e\nCc: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e7a7c9ab415874f4ad78a0352ca0ec6711092017",
      "tree": "db86f0bf794a33cc4cb6f3cdb06b9d8fae001b9d",
      "parents": [
        "fec6c20b570bcf541e581fc97f2e0cbdb9725b98",
        "93f90e5186053611fe93d889e99ee2852f4da250"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 30 15:33:50 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 30 15:33:50 2012 -0700"
      },
      "message": "Merge tag \u0027scsi-fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi\n\nPull SCSI fixes from James Bottomley:\n \"This is a set of SAS and SATA fixes; there are one or two longstanding\n  bug fixes, but most of this is regression fixes.\"\n\n* tag \u0027scsi-fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi:\n  [SCSI] libfc: update mfs boundry checking\n  [SCSI] Revert \"[SCSI] libsas: fix sas port naming\"\n  [SCSI] libsas: fix false positive \u0027device attached\u0027 conditions\n  [SCSI] libsas, libata: fix start of life for a sas ata_port\n  [SCSI] libsas: fix ata_eh clobbering ex_phys via smp_ata_check_ready\n  [SCSI] libsas: unify domain_device sas_rphy lifetimes\n  [SCSI] libsas: fix sas_get_port_device regression\n  [SCSI] libsas: fix sas_find_bcast_phy() in the presence of \u0027vacant\u0027 phys\n  [SCSI] libsas: introduce sas_work to fix sas_drain_work vs sas_queue_work\n  [SCSI] libata: Pass correct DMA device to scsi host\n  [SCSI] scsi_lib: use correct DMA device in __scsi_alloc_queue\n"
    },
    {
      "commit": "41b3254c93acc56adc3c4477fef7c9512d47659e",
      "tree": "2a8fed385a37a70551cb11c8694301b686a6ebd1",
      "parents": [
        "8a7dc4b04b22be285ea5bef7d01a02f91e30d562"
      ],
      "author": {
        "name": "Matthew Garrett",
        "email": "mjg@redhat.com",
        "time": "Mon Apr 30 16:11:29 2012 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 30 15:30:18 2012 -0700"
      },
      "message": "efi: Add new variable attributes\n\nMore recent versions of the UEFI spec have added new attributes for\nvariables. Add them.\n\nSigned-off-by: Matthew Garrett \u003cmjg@redhat.com\u003e\nCc: stable@vger.kernel.org\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "518fbf9cdf17875d808596afd77fc115a6f942ca",
      "tree": "608d2b518feafdfeade863774e14fc6e37ca31dd",
      "parents": [
        "5414fc12e32a0e0833ec61ba8be864c46cd19966"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "edumazet@google.com",
        "time": "Sat Apr 28 23:21:56 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 30 13:37:59 2012 -0400"
      },
      "message": "net: fix sk_sockets_allocated_read_positive\n\nDenys Fedoryshchenko reported frequent crashes on a proxy server and kindly\nprovided a lockdep report that explains it all :\n\n  [  762.903868]\n  [  762.903880] \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  [  762.903890] [ INFO: inconsistent lock state ]\n  [  762.903903] 3.3.4-build-0061 #8 Not tainted\n  [  762.904133] ---------------------------------\n  [  762.904344] inconsistent {IN-SOFTIRQ-W} -\u003e {SOFTIRQ-ON-W} usage.\n  [  762.904542] squid/1603 [HC0[0]:SC0[0]:HE1:SE1] takes:\n  [  762.904542]  (key#3){+.?...}, at: [\u003cc0232cc4\u003e]\n__percpu_counter_sum+0xd/0x58\n  [  762.904542] {IN-SOFTIRQ-W} state was registered at:\n  [  762.904542]   [\u003cc0158b84\u003e] __lock_acquire+0x284/0xc26\n  [  762.904542]   [\u003cc01598e8\u003e] lock_acquire+0x71/0x85\n  [  762.904542]   [\u003cc0349765\u003e] _raw_spin_lock+0x33/0x40\n  [  762.904542]   [\u003cc0232c93\u003e] __percpu_counter_add+0x58/0x7c\n  [  762.904542]   [\u003cc02cfde1\u003e] sk_clone_lock+0x1e5/0x200\n  [  762.904542]   [\u003cc0303ee4\u003e] inet_csk_clone_lock+0xe/0x78\n  [  762.904542]   [\u003cc0315778\u003e] tcp_create_openreq_child+0x1b/0x404\n  [  762.904542]   [\u003cc031339c\u003e] tcp_v4_syn_recv_sock+0x32/0x1c1\n  [  762.904542]   [\u003cc031615a\u003e] tcp_check_req+0x1fd/0x2d7\n  [  762.904542]   [\u003cc0313f77\u003e] tcp_v4_do_rcv+0xab/0x194\n  [  762.904542]   [\u003cc03153bb\u003e] tcp_v4_rcv+0x3b3/0x5cc\n  [  762.904542]   [\u003cc02fc0c4\u003e] ip_local_deliver_finish+0x13a/0x1e9\n  [  762.904542]   [\u003cc02fc539\u003e] NF_HOOK.clone.11+0x46/0x4d\n  [  762.904542]   [\u003cc02fc652\u003e] ip_local_deliver+0x41/0x45\n  [  762.904542]   [\u003cc02fc4d1\u003e] ip_rcv_finish+0x31a/0x33c\n  [  762.904542]   [\u003cc02fc539\u003e] NF_HOOK.clone.11+0x46/0x4d\n  [  762.904542]   [\u003cc02fc857\u003e] ip_rcv+0x201/0x23e\n  [  762.904542]   [\u003cc02daa3a\u003e] __netif_receive_skb+0x319/0x368\n  [  762.904542]   [\u003cc02dac07\u003e] netif_receive_skb+0x4e/0x7d\n  [  762.904542]   [\u003cc02dacf6\u003e] napi_skb_finish+0x1e/0x34\n  [  762.904542]   [\u003cc02db122\u003e] napi_gro_receive+0x20/0x24\n  [  762.904542]   [\u003cf85d1743\u003e] e1000_receive_skb+0x3f/0x45 [e1000e]\n  [  762.904542]   [\u003cf85d3464\u003e] e1000_clean_rx_irq+0x1f9/0x284 [e1000e]\n  [  762.904542]   [\u003cf85d3926\u003e] e1000_clean+0x62/0x1f4 [e1000e]\n  [  762.904542]   [\u003cc02db228\u003e] net_rx_action+0x90/0x160\n  [  762.904542]   [\u003cc012a445\u003e] __do_softirq+0x7b/0x118\n  [  762.904542] irq event stamp: 156915469\n  [  762.904542] hardirqs last  enabled at (156915469): [\u003cc019b4f4\u003e]\n__slab_alloc.clone.58.clone.63+0xc4/0x2de\n  [  762.904542] hardirqs last disabled at (156915468): [\u003cc019b452\u003e]\n__slab_alloc.clone.58.clone.63+0x22/0x2de\n  [  762.904542] softirqs last  enabled at (156915466): [\u003cc02ce677\u003e]\nlock_sock_nested+0x64/0x6c\n  [  762.904542] softirqs last disabled at (156915464): [\u003cc0349914\u003e]\n_raw_spin_lock_bh+0xe/0x45\n  [  762.904542]\n  [  762.904542] other info that might help us debug this:\n  [  762.904542]  Possible unsafe locking scenario:\n  [  762.904542]\n  [  762.904542]        CPU0\n  [  762.904542]        ----\n  [  762.904542]   lock(key#3);\n  [  762.904542]   \u003cInterrupt\u003e\n  [  762.904542]     lock(key#3);\n  [  762.904542]\n  [  762.904542]  *** DEADLOCK ***\n  [  762.904542]\n  [  762.904542] 1 lock held by squid/1603:\n  [  762.904542]  #0:  (sk_lock-AF_INET){+.+.+.}, at: [\u003cc03055c0\u003e]\nlock_sock+0xa/0xc\n  [  762.904542]\n  [  762.904542] stack backtrace:\n  [  762.904542] Pid: 1603, comm: squid Not tainted 3.3.4-build-0061 #8\n  [  762.904542] Call Trace:\n  [  762.904542]  [\u003cc0347b73\u003e] ? printk+0x18/0x1d\n  [  762.904542]  [\u003cc015873a\u003e] valid_state+0x1f6/0x201\n  [  762.904542]  [\u003cc0158816\u003e] mark_lock+0xd1/0x1bb\n  [  762.904542]  [\u003cc015876b\u003e] ? mark_lock+0x26/0x1bb\n  [  762.904542]  [\u003cc015805d\u003e] ? check_usage_forwards+0x77/0x77\n  [  762.904542]  [\u003cc0158bf8\u003e] __lock_acquire+0x2f8/0xc26\n  [  762.904542]  [\u003cc0159b8e\u003e] ? mark_held_locks+0x5d/0x7b\n  [  762.904542]  [\u003cc0159cf6\u003e] ? trace_hardirqs_on+0xb/0xd\n  [  762.904542]  [\u003cc0158dd4\u003e] ? __lock_acquire+0x4d4/0xc26\n  [  762.904542]  [\u003cc01598e8\u003e] lock_acquire+0x71/0x85\n  [  762.904542]  [\u003cc0232cc4\u003e] ? __percpu_counter_sum+0xd/0x58\n  [  762.904542]  [\u003cc0349765\u003e] _raw_spin_lock+0x33/0x40\n  [  762.904542]  [\u003cc0232cc4\u003e] ? __percpu_counter_sum+0xd/0x58\n  [  762.904542]  [\u003cc0232cc4\u003e] __percpu_counter_sum+0xd/0x58\n  [  762.904542]  [\u003cc02cebc4\u003e] __sk_mem_schedule+0xdd/0x1c7\n  [  762.904542]  [\u003cc02d178d\u003e] ? __alloc_skb+0x76/0x100\n  [  762.904542]  [\u003cc0305e8e\u003e] sk_wmem_schedule+0x21/0x2d\n  [  762.904542]  [\u003cc0306370\u003e] sk_stream_alloc_skb+0x42/0xaa\n  [  762.904542]  [\u003cc0306567\u003e] tcp_sendmsg+0x18f/0x68b\n  [  762.904542]  [\u003cc031f3dc\u003e] ? ip_fast_csum+0x30/0x30\n  [  762.904542]  [\u003cc0320193\u003e] inet_sendmsg+0x53/0x5a\n  [  762.904542]  [\u003cc02cb633\u003e] sock_aio_write+0xd2/0xda\n  [  762.904542]  [\u003cc015876b\u003e] ? mark_lock+0x26/0x1bb\n  [  762.904542]  [\u003cc01a1017\u003e] do_sync_write+0x9f/0xd9\n  [  762.904542]  [\u003cc01a2111\u003e] ? file_free_rcu+0x2f/0x2f\n  [  762.904542]  [\u003cc01a17a1\u003e] vfs_write+0x8f/0xab\n  [  762.904542]  [\u003cc01a284d\u003e] ? fget_light+0x75/0x7c\n  [  762.904542]  [\u003cc01a1900\u003e] sys_write+0x3d/0x5e\n  [  762.904542]  [\u003cc0349ec9\u003e] syscall_call+0x7/0xb\n  [  762.904542]  [\u003cc0340000\u003e] ? rp_sidt+0x41/0x83\n\nBug is that sk_sockets_allocated_read_positive() calls\npercpu_counter_sum_positive() without BH being disabled.\n\nThis bug was added in commit 180d8cd942ce33\n(foundations of per-cgroup memory pressure controlling.), since previous\ncode was using percpu_counter_read_positive() which is IRQ safe.\n\nIn __sk_mem_schedule() we dont need the precise count of allocated\nsockets and can revert to previous behavior.\n\nReported-by: Denys Fedoryshchenko \u003cdenys@visp.net.lb\u003e\nSined-off-by: Eric Dumazet \u003cedumazet@google.com\u003e\nCc: Glauber Costa \u003cglommer@parallels.com\u003e\nAcked-by: Neal Cardwell \u003cncardwell@google.com\u003e\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5414fc12e32a0e0833ec61ba8be864c46cd19966",
      "tree": "ee196c526a87c126655624218969a191b60e365f",
      "parents": [
        "3885ca785a3618593226687ced84f3f336dc3860",
        "6cf51852486af3d79f57bf46d00209a14244dbaa"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 30 13:23:22 2012 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 30 13:23:22 2012 -0400"
      },
      "message": "Merge branch \u0027master\u0027 of git://1984.lsi.us.es/net\n"
    },
    {
      "commit": "8537de8a7ab6681cc72fb0411ab1ba7fdba62dd0",
      "tree": "7a57ad6ef5aa0147dd13bba8be9bd77ab60f3f50",
      "parents": [
        "582b8e3eadaec77788c1aa188081a8d5059c42a6"
      ],
      "author": {
        "name": "Hans Schillstrom",
        "email": "hans.schillstrom@ericsson.com",
        "time": "Thu Apr 26 07:47:44 2012 +0200"
      },
      "committer": {
        "name": "Pablo Neira Ayuso",
        "email": "pablo@netfilter.org",
        "time": "Mon Apr 30 10:40:35 2012 +0200"
      },
      "message": "ipvs: kernel oops - do_ip_vs_get_ctl\n\nChange order of init so netns init is ready\nwhen register ioctl and netlink.\n\nVer2\n\tWhitespace fixes and __init added.\n\nReported-by: \"Ryan O\u0027Hara\" \u003crohara@redhat.com\u003e\nSigned-off-by: Hans Schillstrom \u003chans.schillstrom@ericsson.com\u003e\nAcked-by: Julian Anastasov \u003cja@ssi.bg\u003e\nSigned-off-by: Jesper Dangaard Brouer \u003cbrouer@redhat.com\u003e\nSigned-off-by: Simon Horman \u003chorms@verge.net.au\u003e\n"
    },
    {
      "commit": "582b8e3eadaec77788c1aa188081a8d5059c42a6",
      "tree": "57f869aac66f51e56499c06027c7d1055285600b",
      "parents": [
        "4b984cd50bc1b6d492175cd77bfabb78e76ffa67"
      ],
      "author": {
        "name": "Hans Schillstrom",
        "email": "hans.schillstrom@ericsson.com",
        "time": "Thu Apr 26 09:45:35 2012 +0200"
      },
      "committer": {
        "name": "Pablo Neira Ayuso",
        "email": "pablo@netfilter.org",
        "time": "Mon Apr 30 10:40:35 2012 +0200"
      },
      "message": "ipvs: take care of return value from protocol init_netns\n\nip_vs_create_timeout_table() can return NULL\nAll functions protocol init_netns is affected of this patch.\n\nSigned-off-by: Hans Schillstrom \u003chans.schillstrom@ericsson.com\u003e\nAcked-by: Julian Anastasov \u003cja@ssi.bg\u003e\nSigned-off-by: Simon Horman \u003chorms@verge.net.au\u003e\n"
    },
    {
      "commit": "9883035ae7edef3ec62ad215611cb8e17d6a1a5d",
      "tree": "ab4afff1603e0f1e85e349b8a1fdb8415cc457cf",
      "parents": [
        "de9e24eda331bbefb9195a4d646c786bdcbba7d4"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Apr 29 13:12:42 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Apr 29 13:12:42 2012 -0700"
      },
      "message": "pipes: add a \"packetized pipe\" mode for writing\n\nThe actual internal pipe implementation is already really about\nindividual packets (called \"pipe buffers\"), and this simply exposes that\nas a special packetized mode.\n\nWhen we are in the packetized mode (marked by O_DIRECT as suggested by\nAlan Cox), a write() on a pipe will not merge the new data with previous\nwrites, so each write will get a pipe buffer of its own.  The pipe\nbuffer is then marked with the PIPE_BUF_FLAG_PACKET flag, which in turn\nwill tell the reader side to break the read at that boundary (and throw\naway any partial packet contents that do not fit in the read buffer).\n\nEnd result: as long as you do writes less than PIPE_BUF in size (so that\nthe pipe doesn\u0027t have to split them up), you can now treat the pipe as a\npacket interface, where each read() system call will read one packet at\na time.  You can just use a sufficiently big read buffer (PIPE_BUF is\nsufficient, since bigger than that doesn\u0027t guarantee atomicity anyway),\nand the return value of the read() will naturally give you the size of\nthe packet.\n\nNOTE! We do not support zero-sized packets, and zero-sized reads and\nwrites to a pipe continue to be no-ops.  Also note that big packets will\ncurrently be split at write time, but that the size at which that\nhappens is not really specified (except that it\u0027s bigger than PIPE_BUF).\nCurrently that limit is the system page size, but we might want to\nexplicitly support bigger packets some day.\n\nThe main user for this is going to be the autofs packet interface,\nallowing us to stop having to care so deeply about exact packet sizes\n(which have had bugs with 32/64-bit compatibility modes).  But user\nspace can create packetized pipes with \"pipe2(fd, O_DIRECT)\", which will\nfail with an EINVAL on kernels that do not support this interface.\n\nTested-by: Michael Tokarev \u003cmjt@tls.msk.ru\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nCc: David Miller \u003cdavem@davemloft.net\u003e\nCc: Ian Kent \u003craven@themaw.net\u003e\nCc: Thomas Meyer \u003cthomas@m3y3r.de\u003e\nCc: stable@kernel.org  # needed for systemd/autofs interaction fix\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8d7d1adcd77ffa2e0edec79d4e48a7b1a1943c47",
      "tree": "45d2f7fc7588306fd9eb19415d3ee541698a1289",
      "parents": [
        "f7b006931751f029620ad2f8310ac7a1484fbdb4",
        "41c8a48aa8de88ff56ed2f657b93d2446dd7882c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Apr 29 12:17:54 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Apr 29 12:17:54 2012 -0700"
      },
      "message": "Merge tag \u0027usb-3.4-rc5\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb\n\nPull USB fixes from Greg Kroah-Hartman:\n \"Here are a number of small USB fixes for 3.4-rc5.\n\n  Nothing major, as before, some USB gadget fixes.  There\u0027s a crash fix\n  for a number of ASUS laptops on resume that had been reported by a\n  number of different people.  We think the fix might also pertain to\n  other machines, as this was a BIOS bug, and they seem to travel to\n  different models and manufacturers quite easily.  Other than that,\n  some other reported problems fixed as well.\"\n\n* tag \u0027usb-3.4-rc5\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb:\n  usb: gadget: udc-core: fix incompatibility with dummy-hcd\n  usb: gadget: udc-core: fix wrong call order\n  USB: cdc-wdm: fix race leading leading to memory corruption\n  USB: EHCI: fix crash during suspend on ASUS computers\n  usb gadget: uvc: uvc_request_data::length field must be signed\n  usb: gadget: dummy: do not call pullup() on udc_stop()\n  usb: musb: davinci.c: add missing unregister\n  usb: musb: drop __deprecated flag\n  USB: gadget: storage gadgets send wrong error code for unknown commands\n  usb: otg: gpio_vbus: Add otg transceiver events and notifiers\n"
    },
    {
      "commit": "d2cf3361677e5bb5d01d45052212b7050a9aa8c4",
      "tree": "a0239e574876ca385c8578c7cbffb783bf951e51",
      "parents": [
        "d7f3f62167bc2299d9669888b493b6e6ba561c35"
      ],
      "author": {
        "name": "Benjamin LaHaise",
        "email": "bcrl@kvack.org",
        "time": "Fri Apr 27 08:24:18 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Apr 28 22:21:51 2012 -0400"
      },
      "message": "net/l2tp: add support for L2TP over IPv6 UDP\n\nNow that encap_rcv() works on IPv6 UDP sockets, wire L2TP up to IPv6.\nSupport has been tested with and without hardware offloading.  This\nversion fixes the L2TP over localhost issue with incorrect checksums\nbeing reported.\n\nSigned-off-by: Benjamin LaHaise \u003cbcrl@kvack.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d7f3f62167bc2299d9669888b493b6e6ba561c35",
      "tree": "54bf3e1e796aba2aa1eb6b5e3fd0381c91327385",
      "parents": [
        "cb80ef463d1881757ade3197cdf875a2ff856651"
      ],
      "author": {
        "name": "Benjamin LaHaise",
        "email": "bcrl@kvack.org",
        "time": "Fri Apr 27 08:24:08 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Apr 28 22:21:51 2012 -0400"
      },
      "message": "net/ipv6/udp: UDP encapsulation: introduce encap_rcv hook into IPv6\n\nNow that the sematics of udpv6_queue_rcv_skb() match IPv4\u0027s\nudp_queue_rcv_skb(), introduce the UDP encap_rcv() hook for IPv6.\n\nSigned-off-by: Benjamin LaHaise \u003cbcrl@kvack.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b990f9b3cb068578b8aefd3a34f8c8555661ef95",
      "tree": "091e7f7d62bcc75c244f9cc4615eaab2da6b9991",
      "parents": [
        "cd88e3a61683d3d13276dda9d0debe5dc43c0727",
        "6e76538b9ef2b2a14ad9b57d65dc35d151765917"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Apr 28 09:28:43 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Apr 28 09:28:43 2012 -0700"
      },
      "message": "Merge tag \u0027fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc\n\nPull ARM SoC fixes from Olof Johansson:\n \"Nothing controversial, just another batch of fixes:\n\n   - Samsung/exynos fixes for more merge window fallout: build errors\n     and warnings mostly, but also some clock/device setup issues on\n     exynos4/5\n   - PXA bug and warning fixes related to gpio and pinmux\n   - IRQ domain conversion bugfixes for U300 and MSM\n   - A regulator setup fix for U300\"\n\n* tag \u0027fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc:\n  ARM: PXA2xx: MFP: fix potential direction bug\n  ARM: PXA2xx: MFP: fix bug with MFP_LPM_KEEP_OUTPUT\n  arm/sa1100: fix sa1100-rtc memory resource\n  ARM: pxa: fix gpio wakeup setting\n  ARM: SAMSUNG: add missing MMC_CAP2_BROKEN_VOLTAGE capability\n  ARM: EXYNOS: Fix compilation error when CONFIG_OF is not defined\n  ARM: EXYNOS: Fix resource on dev-dwmci.c\n  ARM: S3C24XX: Fix build warning for S3C2410_PM\n  ARM: mini2440_defconfig: Fix build error\n  ARM: msm: Fix gic irqdomain support\n  ARM: EXYNOS: Fix incorrect initialization of GIC\n  ARM: EXYNOS: use \u0027exynos4-sdhci\u0027 as device name for sdhci controllers\n  ARM: u300: bump all IRQ numbers by one\n  ARM: ux300: Fix unimplementable regulation constraints\n"
    },
    {
      "commit": "84c6a81bc68ca5cf15d1b2b58bcc5645c64010b5",
      "tree": "cd2e0ccf78d2226fcc969539594d392088dddac9",
      "parents": [
        "9f7e2f9037ffa03f4c4cd6f19159a367e4e02f44",
        "2431a8154634027ce3915200699f26fb3725a1f2"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 27 19:52:30 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 27 19:52:30 2012 -0700"
      },
      "message": "Merge tag \u0027spi-for-linus\u0027 of git://git.secretlab.ca/git/linux-2.6\n\nPull misc SPI device driver bug fixes from Grant Likely.\n\n* tag \u0027spi-for-linus\u0027 of git://git.secretlab.ca/git/linux-2.6:\n  spi/spi-bfin5xx: Fix flush of last bit after each spi transfer\n  spi/spi-bfin5xx: fix reversed if condition in interrupt mode\n  spi/spi_bfin_sport: drop bits_per_word from client data\n  spi/bfin_spi: drop bits_per_word from client data\n  spi/spi-bfin-sport: move word length setup to transfer handler\n  spi/bfin5xx: rename config macro name for bfin5xx spi controller driver\n  spi/pl022: Allow request for higher frequency than maximum possible\n  spi/bcm63xx: set master driver mode_bits.\n  spi/bcm63xx: don\u0027t use the stopping state\n  spi/bcm63xx: convert to the pump message infrastructure\n  spi/spi-ep93xx.c: use dma_transfer_direction instead of dma_data_direction\n  spi: fix spi.h kernel-doc warning\n  spi/pl022: Fix calculate_effective_freq()\n  spi/pl022: Fix range checking for bits per word\n"
    },
    {
      "commit": "4dcc0637fc3c36c1f58ffdcaf2dc0dc7de72449f",
      "tree": "587ffa9493e4b6af014f9acb2c09177c2c54af3b",
      "parents": [
        "afa762f6871a8cb05fbef5d0f83fac14304aa816",
        "985140369be1e886754d8ac0375dd64e4f727311"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Apr 27 15:16:43 2012 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Apr 27 15:16:43 2012 -0400"
      },
      "message": "Merge branch \u0027for-upstream\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/bluetooth/bluetooth\n"
    },
    {
      "commit": "dbabe0d659d3cfe42830a779909ab3cd42f7b027",
      "tree": "bc058a8d9f92df91064e0dc458a145be448a194f",
      "parents": [
        "5eb806a3a68920a9f373f18b03fa14852047e62b"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "rdunlap@xenotime.net",
        "time": "Tue Apr 17 17:03:50 2012 -0700"
      },
      "committer": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Fri Apr 27 11:03:38 2012 -0600"
      },
      "message": "spi: fix spi.h kernel-doc warning\n\nFix kernel-doc warning in spi.h (copy/paste):\n\nWarning(include/linux/spi/spi.h:365): No description found for parameter \u0027unprepare_transfer_hardware\u0027\n\nSigned-off-by: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nSigned-off-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\n"
    },
    {
      "commit": "67469601406c12ced3db9956aeb0ef0854e2952f",
      "tree": "a25902d49946c394ebf110265179da2dc5b7d827",
      "parents": [
        "a85c9bb895aed633615078f69f4a4bce9e39be5f"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "edumazet@google.com",
        "time": "Tue Apr 24 07:37:38 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 27 00:03:34 2012 -0400"
      },
      "message": "ipv6: RTAX_FEATURE_ALLFRAG causes inefficient TCP segment sizing\n\nQuoting Tore Anderson from :\nhttps://bugzilla.kernel.org/show_bug.cgi?id\u003d42572\n\nWhen RTAX_FEATURE_ALLFRAG is set on a route, the effective TCP segment\nsize does not take into account the size of the IPv6 Fragmentation\nheader that needs to be included in outbound packets, causing every\ntransmitted TCP segment to be fragmented across two IPv6 packets, the\nlatter of which will only contain 8 bytes of actual payload.\n\nRTAX_FEATURE_ALLFRAG is typically set on a route in response to\nreceving a ICMPv6 Packet Too Big message indicating a Path MTU of less\nthan 1280 bytes. 1280 bytes is the minimum IPv6 MTU, however ICMPv6\nPTBs with MTU \u003c 1280 are still valid, in particular when an IPv6\npacket is sent to an IPv4 destination through a stateless translator.\nAny ICMPv4 Need To Fragment packets originated from the IPv4 part of\nthe path will be translated to ICMPv6 PTB which may then indicate an\nMTU of less than 1280.\n\nThe Linux kernel refuses to reduce the effective MTU to anything below\n1280 bytes, instead it sets it to exactly 1280 bytes, and\nRTAX_FEATURE_ALLFRAG is also set. However, the TCP segment size appears\nto be set to 1240 bytes (1280 Path MTU - 40 bytes of IPv6 header),\ninstead of 1232 (additionally taking into account the 8 bytes required\nby the IPv6 Fragmentation extension header).\n\nThis in turn results in rather inefficient transmission, as every\ntransmitted TCP segment now is split in two fragments containing\n1232+8 bytes of payload.\n\nAfter this patch, all the outgoing packets that includes a\nFragmentation header all are \"atomic\" or \"non-fragmented\" fragments,\ni.e., they both have Offset\u003d0 and More Fragments\u003d0.\n\nWith help from David S. Miller\n\nReported-by: Tore Anderson \u003ctore@fud.no\u003e\nSigned-off-by: Eric Dumazet \u003cedumazet@google.com\u003e\nCc: Maciej Żenczykowski \u003cmaze@google.com\u003e\nCc: Tom Herbert \u003ctherbert@google.com\u003e\nTested-by: Tore Anderson \u003ctore@fud.no\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b95ace54a23e2f8ebb032744cebb17c9f43bf651",
      "tree": "7c7053a33426848bd27edabc977b7d5cfd1b84a7",
      "parents": [
        "66f75a5d028beaf67c931435fdc3e7823125730c"
      ],
      "author": {
        "name": "Robert Jarzmik",
        "email": "robert.jarzmik@free.fr",
        "time": "Sun Apr 22 13:37:24 2012 +0200"
      },
      "committer": {
        "name": "Haojian Zhuang",
        "email": "haojian.zhuang@gmail.com",
        "time": "Fri Apr 27 10:46:45 2012 +0800"
      },
      "message": "ARM: pxa: fix gpio wakeup setting\n\nIn 3.3, gpio wakeup setting was broken. The call\nenable_irq_wake() didn\u0027t set up the PXA gpio registers\n(PWER, ...) anymore.\n\nFix it at least for pxa27x. The driver doesn\u0027t seem to be\nused in pxa25x (weird ...), and the fix doesn\u0027t extend to\npxa3xx and pxa95x (which don\u0027t have a gpio_set_wake()\navailable).\n\nSigned-off-by: Robert Jarzmik \u003crobert.jarzmik@free.fr\u003e\nSigned-off-by: Haojian Zhuang \u003chaojian.zhuang@gmail.com\u003e\n"
    },
    {
      "commit": "110a5c8b389407e1e859c43293179f9089671a60",
      "tree": "83245c842a809ecd728f12814a344e7224109d7a",
      "parents": [
        "2300fd67b4f29eec19addb15a8571837228f63fc",
        "6e8b09eaf268bceac0c62e389b4bc0cb83dfb8e5"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 26 15:24:45 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 26 15:24:45 2012 -0700"
      },
      "message": "Merge branch \u0027akpm\u0027 (Andrew\u0027s patch-bomb)\n\nMerge fixes from Andrew Morton:\n \"13 fixes.  The acerhdf patches aren\u0027t (really) fixes.  But they\u0027ve\n  been stuck in my tree for up to two years, sent to Matthew multiple\n  times and the developers are unhappy.\"\n\n* emailed from Andrew Morton \u003cakpm@linux-foundation.org\u003e: (13 patches)\n  mm: fix NULL ptr dereference in move_pages\n  mm: fix NULL ptr dereference in migrate_pages\n  revert \"proc: clear_refs: do not clear reserved pages\"\n  drivers/rtc/rtc-ds1307.c: fix BUG shown with lock debugging enabled\n  arch/arm/mach-ux500/mbox-db5500.c: world-writable sysfs fifo file\n  hugetlbfs: lockdep annotate root inode properly\n  acerhdf: lowered default temp fanon/fanoff values\n  acerhdf: add support for new hardware\n  acerhdf: add support for Aspire 1410 BIOS v1.3314\n  fs/buffer.c: remove BUG() in possible but rare condition\n  mm: fix up the vmscan stat in vmstat\n  epoll: clear the tfile_check_list on -ELOOP\n  mm/hugetlb: fix warning in alloc_huge_page/dequeue_huge_page_vma\n"
    },
    {
      "commit": "a85c9bb895aed633615078f69f4a4bce9e39be5f",
      "tree": "0eafc0be614fc70a1c853ee2249e3152d8d15718",
      "parents": [
        "de248a75c35e0208294cf304b112916254b69184",
        "d9b8ae6bd8c3304569a25079fcdbebaa28a48ee4"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 26 15:54:45 2012 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 26 15:54:45 2012 -0400"
      },
      "message": "Merge branch \u0027for-davem\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next\n"
    },
    {
      "commit": "d9b8ae6bd8c3304569a25079fcdbebaa28a48ee4",
      "tree": "9ce3e4eb355685f970dd7333a0a935109aff0583",
      "parents": [
        "872f24dbc604ef585ea7eec73020dcdfaffd1956",
        "94c514fe240fc0dd02187b78facefde8b6744634"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Apr 26 15:03:48 2012 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Apr 26 15:03:48 2012 -0400"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next into for-davem\n\nConflicts:\n\tdrivers/net/wireless/iwlwifi/iwl-testmode.c\n"
    },
    {
      "commit": "de248a75c35e0208294cf304b112916254b69184",
      "tree": "0d00a02fdb994f8b1cbf239c11080fec86977639",
      "parents": [
        "2d319508a3551d2995e5cd12d649821b3be00e5b"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@parallels.com",
        "time": "Wed Apr 25 23:43:04 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 26 06:13:51 2012 -0400"
      },
      "message": "tcp repair: Fix unaligned access when repairing options (v2)\n\nDon\u0027t pick __u8/__u16 values directly from raw pointers, but instead use\nan array of structures of code:value pairs. This is OK, since the buffer\nwe take options from is not an skb memory, but a user-to-kernel one.\n\nFor those options which don\u0027t require any value now, require this to be\nzero (for potential future extension of this API).\n\nv2: Changed tcp_repair_opt to use two __u32-s as spotted by David Laight.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@parallels.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2300fd67b4f29eec19addb15a8571837228f63fc",
      "tree": "5f2cfcc87f81ff9fa607ab45c1f0a9adf644cc76",
      "parents": [
        "86ec090e58fca1025676e775093a87ab699f7f4d",
        "7bf97bc27308cfdc7a8dadd40ae50f7c4cb09b01"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Apr 25 21:38:44 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Apr 25 21:38:44 2012 -0700"
      },
      "message": "Merge tag \u0027nfs-for-3.4-3\u0027 of git://git.linux-nfs.org/projects/trondmy/linux-nfs\n\nPull NFS client bugfixes from Trond Myklebust:\n - Fix NFSv4 infinite loops on open(O_TRUNC)\n - Fix an Oops and an infinite loop in the NFSv4 flock code\n - Don\u0027t register the PipeFS filesystem until it has been set up\n - Fix an Oops in nfs_try_to_update_request\n - Don\u0027t reuse NFSv4 open owners: fixes a bad sequence id storm.\n\n* tag \u0027nfs-for-3.4-3\u0027 of git://git.linux-nfs.org/projects/trondmy/linux-nfs:\n  NFSv4: Keep dropped state owners on the LRU list for a while\n  NFSv4: Ensure that we don\u0027t drop a state owner more than once\n  NFSv4: Ensure we do not reuse open owner names\n  nfs: Enclose hostname in brackets when needed in nfs_do_root_mount\n  NFS: put open context on error in nfs_flush_multi\n  NFS: put open context on error in nfs_pagein_multi\n  NFSv4: Fix open(O_TRUNC) and ftruncate() error handling\n  NFSv4: Ensure that we check lock exclusive/shared type against open modes\n  NFSv4: Ensure that the LOCK code sets exception-\u003einode\n  NFS: check for req\u003d\u003dNULL in nfs_try_to_update_request cleanup\n  SUNRPC: register PipeFS file system after pernet sybsystem\n"
    },
    {
      "commit": "86ec090e58fca1025676e775093a87ab699f7f4d",
      "tree": "d3fb6c1898c8c1ea78462f0ec748c8da1086fff0",
      "parents": [
        "bdd4f709a1501055ccb24f204fb24dd653244fd8",
        "89b8835ec865dddd6673a8dd7003581bf2377176"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Apr 25 21:29:26 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Apr 25 21:29:26 2012 -0700"
      },
      "message": "Merge branch \u0027x86-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull x86 fixes from H. Peter Anvin.\n\n* \u0027x86-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  x32, siginfo: Provide proper overrides for x32 siginfo_t\n  asm-generic: Allow overriding clock_t and add attributes to siginfo_t\n  x32: Check __ILP32__ instead of __LP64__ for x32\n  x86, acpi: Call acpi_enter_sleep_state via an asmlinkage C function from assembler\n  ACPI: Convert wake_sleep_flags to a value instead of function\n  x86, apic: APIC code touches invalid MSR on P5 class machines\n  i387: ptrace breaks the lazy-fpu-restore logic\n  x86/platform: Remove incorrect error message in x86_default_fixup_cpu_id()\n  x86, efi: Add dedicated EFI stub entry point\n  x86/amd: Remove broken links from comment and kernel message\n  x86, microcode: Ensure that module is only loaded on supported AMD CPUs\n  x86, microcode: Fix sysfs warning during module unload on unsupported CPUs\n"
    },
    {
      "commit": "904249aa68010c8e223263c922fcbb840a3f42e4",
      "tree": "5476bdf728cd77ac6fcaaeb986df1ddd5c9527d7",
      "parents": [
        "13d518074a952d33d47c428419693f63389547e9"
      ],
      "author": {
        "name": "Ying Han",
        "email": "yinghan@google.com",
        "time": "Wed Apr 25 16:01:48 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Apr 25 21:26:33 2012 -0700"
      },
      "message": "mm: fix up the vmscan stat in vmstat\n\nThe \"pgsteal\" stat is confusing because it counts both direct reclaim as\nwell as background reclaim.  However, we have \"kswapd_steal\" which also\ncounts background reclaim value.\n\nThis patch fixes it and also makes it match the existng \"pgscan_\" stats.\n\nTest:\npgsteal_kswapd_dma32 447623\npgsteal_kswapd_normal 42272677\npgsteal_kswapd_movable 0\npgsteal_direct_dma32 2801\npgsteal_direct_normal 44353270\npgsteal_direct_movable 0\n\nSigned-off-by: Ying Han \u003cyinghan@google.com\u003e\nReviewed-by: Rik van Riel \u003criel@redhat.com\u003e\nAcked-by: Christoph Lameter \u003ccl@linux.com\u003e\nCc: Johannes Weiner \u003channes@cmpxchg.org\u003e\nCc: Michal Hocko \u003cmhocko@suse.cz\u003e\nCc: Mel Gorman \u003cmel@csn.ul.ie\u003e\nAcked-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Hillf Danton \u003cdhillf@gmail.com\u003e\nCc: Hugh Dickins \u003chughd@google.com\u003e\nCc: Dan Magenheimer \u003cdan.magenheimer@oracle.com\u003e\nReviewed-by: Minchan Kim \u003cminchan@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8dcf01fc009d12d01fd195ed95eaaee61178f21a",
      "tree": "daa9665ec6c4fe8ca17232242c8b3126e7b14076",
      "parents": [
        "808db80a7eeff8314ac51654bfefc864582eea13"
      ],
      "author": {
        "name": "Shan Wei",
        "email": "davidshan@tencent.com",
        "time": "Tue Apr 24 18:21:07 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Apr 25 20:46:59 2012 -0400"
      },
      "message": "net: sock_diag_handler structs can be const\n\nread only, so change it to const.\n\nSigned-off-by: Shan Wei \u003cdavidshan@tencent.com\u003e\nAcked-by: Pavel Emelyanov \u003cxemul@parallels.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "151b61284776be2d6f02d48c23c3625678960b97",
      "tree": "db1924a65d3f4416122ab4bb0600f750a6f9dd00",
      "parents": [
        "6f6543f53f9ce136e01d7114bf6f0818ca54fb41"
      ],
      "author": {
        "name": "Alan Stern",
        "email": "stern@rowland.harvard.edu",
        "time": "Tue Apr 24 14:07:22 2012 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Tue Apr 24 13:55:43 2012 -0700"
      },
      "message": "USB: EHCI: fix crash during suspend on ASUS computers\n\nThis patch (as1545) fixes a problem affecting several ASUS computers:\nThe machine crashes or corrupts memory when going into suspend if the\nehci-hcd driver is bound to any controllers.  Users have been forced\nto unbind or unload ehci-hcd before putting their systems to sleep.\n\nAfter extensive testing, it was determined that the machines don\u0027t\nlike going into suspend when any EHCI controllers are in the PCI D3\npower state.  Presumably this is a firmware bug, but there\u0027s nothing\nwe can do about it except to avoid putting the controllers in D3\nduring system sleep.\n\nThe patch adds a new flag to indicate whether the problem is present,\nand avoids changing the controller\u0027s power state if the flag is set.\nRuntime suspend is unaffected; this matters only for system suspend.\nHowever as a side effect, the controller will not respond to remote\nwakeup requests while the system is asleep.  Hence USB wakeup is not\nfunctional -- but of course, this is already true in the current state\nof affairs.\n\nThis fixes Bugzilla #42728.\n\nSigned-off-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nTested-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nTested-by: Andrey Rahmatullin \u003cwrar@wrar.name\u003e\nTested-by: Oleksij Rempel (fishor) \u003cbug-track@fisher-privat.net\u003e\nCc: stable \u003cstable@vger.kernel.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "423b40e194a8ad8f7cc15cc38bd18633891a04ad",
      "tree": "c2252ac61f575576d6ffa50689cb5b08876afff0",
      "parents": [
        "95f714727436836bb46236ce2bcd8ee8f9274aed",
        "24b7099af71232b7568acd74770e6eb8f174f5d6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 24 08:20:28 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 24 08:20:28 2012 -0700"
      },
      "message": "Merge tag \u0027hsi_fixes_for_3.4\u0027 of git://gitorious.org/kernel-hsi/kernel-hsi\n\nPull HSI fixes and ABI documentation from Carlos Chinea\n\n* tag \u0027hsi_fixes_for_3.4\u0027 of git://gitorious.org/kernel-hsi/kernel-hsi:\n  HSI: Add HSI ABI documentation\n  HSI: hsi_char: Remove max_data_size from sysfs\n  HSI: hsi: Rework hsi_event interface\n  HSI: hsi: Remove controllers and ports from the bus\n  HSI: hsi: Fix error path cleanup on client registration\n  HSI: hsi: Rework hsi_controller release\n"
    },
    {
      "commit": "38ba0a65faf451dd46c7860b4fade84c0b8e444f",
      "tree": "30689f565d6ff6a0b046e0c8b05a5aa7544144dd",
      "parents": [
        "783c175f902b1ae011f12de45770e7912638ea1a"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "edumazet@google.com",
        "time": "Mon Apr 23 17:48:27 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Apr 24 00:18:02 2012 -0400"
      },
      "message": "net: skb_can_coalesce returns a boolean\n\nSigned-off-by: Eric Dumazet \u003cedumazet@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a881e963c7fe1f226e991ee9bbe8907acda93294",
      "tree": "5d2b2c01097300377821132f743cddd4fc90fed6",
      "parents": [
        "4d634ca35a8b38530b134ae92bc9e3cc9c23c030"
      ],
      "author": {
        "name": "Peter Huang (Peng)",
        "email": "peter.huangpeng@huawei.com",
        "time": "Thu Apr 19 20:12:51 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Apr 24 00:16:24 2012 -0400"
      },
      "message": "set fake_rtable\u0027s dst to NULL to avoid kernel Oops\n\nbridge: set fake_rtable\u0027s dst to NULL to avoid kernel Oops\n\nwhen bridge is deleted before tap/vif device\u0027s delete, kernel may\nencounter an oops because of NULL reference to fake_rtable\u0027s dst.\nSet fake_rtable\u0027s dst to NULL before sending packets out can solve\nthis problem.\n\nv4 reformat, change br_drop_fake_rtable(skb) to {}\n\nv3 enrich commit header\n\nv2 introducing new flag DST_FAKE_RTABLE to dst_entry struct.\n\n[ Use \"do { } while (0)\" for nop br_drop_fake_rtable()\n  implementation -DaveM ]\n\nAcked-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: Peter Huang \u003cpeter.huangpeng@huawei.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f24001941c99776f41bd3f09c07d91205c2ad9d4",
      "tree": "0ab31480ccdf343b61db045e195d096068ef7c73",
      "parents": [
        "a108d5f35adc5c5d5cdc882dc0bb920565551bff",
        "4d634ca35a8b38530b134ae92bc9e3cc9c23c030"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 23 23:14:36 2012 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 23 23:15:17 2012 -0400"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net\n\nFix merge between commit 3adadc08cc1e (\"net ax25: Reorder ax25_exit to\nremove races\") and commit 0ca7a4c87d27 (\"net ax25: Simplify and\ncleanup the ax25 sysctl handling\")\n\nThe former moved around the sysctl register/unregister calls, the\nlater simply removed them.\n\nWith help from Stephen Rothwell.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f545a38f74584cc7424cb74f792a00c6d2589485",
      "tree": "b272cbfed3267a7750f55f23989e1b070ae6ac3e",
      "parents": [
        "b98985073bc5403ef1320866e4ef8bbc5d587ceb"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "edumazet@google.com",
        "time": "Sun Apr 22 23:34:26 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 23 22:28:28 2012 -0400"
      },
      "message": "net: add a limit parameter to sk_add_backlog()\n\nsk_add_backlog() \u0026 sk_rcvqueues_full() hard coded sk_rcvbuf as the\nmemory limit. We need to make this limit a parameter for TCP use.\n\nNo functional change expected in this patch, all callers still using the\nold sk_rcvbuf limit.\n\nSigned-off-by: Eric Dumazet \u003cedumazet@google.com\u003e\nCc: Neal Cardwell \u003cncardwell@google.com\u003e\nCc: Tom Herbert \u003ctherbert@google.com\u003e\nCc: Maciej Żenczykowski \u003cmaze@google.com\u003e\nCc: Yuchung Cheng \u003cycheng@google.com\u003e\nCc: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nCc: Rick Jones \u003crick.jones2@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b98985073bc5403ef1320866e4ef8bbc5d587ceb",
      "tree": "316170ba340cfa9dbd4a39efb19e7e1f736bd236",
      "parents": [
        "48c74958571b609522c016136259a1369a3ddd24"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Mon Apr 23 14:25:49 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 23 22:14:47 2012 -0400"
      },
      "message": "net ax25: Fix the build when sysctl support is disabled.\n\nRandy Dunlap \u003crdunlap@xenotime.net\u003e reported:\n\n\u003e On 04/23/2012 12:07 AM, Stephen Rothwell wrote:\n\u003e\n\u003e\u003e Hi all,\n\u003e\u003e\n\u003e\u003e Changes since 20120420:\n\u003e\n\u003e\n\u003e include/net/ax25.h:447:75: error: expected \u0027;\u0027 before \u0027}\u0027 token\n\u003e\n\u003e static inline int ax25_register_dev_sysctl(ax25_dev *ax25_dev) { return 0 };\n\u003e static inline void ax25_unregister_dev_sysctl(ax25_dev *ax25_dev) {};\n\u003e\n\u003e First function:  move \u0027;\u0027 inside braces.\n\u003e Second function:  drop the \u0027;\u0027.\n\nPut the semicolons where it makes sense.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nAcked-by: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d643bdca8ab9cd333da1b68267d0e47328e56f56",
      "tree": "59fa93e4f8e51fcbd862aeeef25d026d19c18459",
      "parents": [
        "98e5272fe70d62e193f70acf9951667beab27aba"
      ],
      "author": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Mon Apr 23 16:29:18 2012 -0700"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Mon Apr 23 16:29:18 2012 -0700"
      },
      "message": "asm-generic: Allow overriding clock_t and add attributes to siginfo_t\n\nFor the particular issue of x32, which shares code with i386 in the\nhandling of compat_siginfo_t, the use of a 64-bit clock_t bumps the\nsigchld structure out of alignment, which triggers a messy cascade of\npadding.\n\nThis was already handled on the kernel compat side, but it needs\nhandling on the user space side, which uses the generic header.  To\nmake that possible:\n\n1. Allow __kernel_clock_t to be overridden in struct siginfo;\n2. Allow there to be attributes added to struct siginfo.\n\nReported-by: H.J. Lu \u003chjl.rools@gmail.com\u003e\nCc: Bruce J. Beare \u003cbruce.j.beare@intel.com\u003e\nCc: Arnd Bergmann \u003carnd@arndb.de\u003e\nLink: http://lkml.kernel.org/r/CAMe9rOqF6Kh6-NK7oP0Fpzkd4SBAWU%2BG53hwBbSD4iA2UzyxuA@mail.gmail.com\nSigned-off-by: H. Peter Anvin \u003chpa@linux.intel.com\u003e\n"
    },
    {
      "commit": "48c74958571b609522c016136259a1369a3ddd24",
      "tree": "364e264d5b53d5fdad36dd424ad0e241e6934417",
      "parents": [
        "42f11cf20cc5b76766fd1f0e591eda26283a38ec"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Mon Apr 23 12:13:02 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 23 19:24:28 2012 -0400"
      },
      "message": "net sysctl: Add place holder functions for when sysctl support is compiled out of the kernel.\n\nRandy Dunlap \u003crdunlap@xenotime.net\u003e reported:\n\u003e On 04/23/2012 12:07 AM, Stephen Rothwell wrote:\n\u003e\n\u003e\u003e Hi all,\n\u003e\u003e\n\u003e\u003e Changes since 20120420:\n\u003e\n\u003e\n\u003e\n\u003e ERROR: \"unregister_net_sysctl_table\" [net/phonet/phonet.ko] undefined!\n\u003e ERROR: \"register_net_sysctl\" [net/phonet/phonet.ko] undefined!\n\u003e\n\u003e when CONFIG_SYSCTL is not enabled.\n\nAdd static inline stub functions to gracefully handle the case when sysctl\nsupport is not present.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nAcked-by: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0d8a0a17288e419c2e5e9ce18c8b66b390eb7e23",
      "tree": "73660da190f46b320b45f6fdf7491b9c0a0364d4",
      "parents": [
        "6ac95b57657d1bf5776f29a1697c123f62d5a58a"
      ],
      "author": {
        "name": "Wey-Yi Guy",
        "email": "wey-yi.w.guy@intel.com",
        "time": "Fri Apr 20 11:57:00 2012 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Apr 23 15:37:41 2012 -0400"
      },
      "message": "mac80211: declare ieee80211_ave_rssi as EXPORT\n\nieee80211_ave_rssi need to be declare as export for driver to use it.\n\nSigned-off-by: Wey-Yi Guy \u003cwey-yi.w.guy@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "ec1c56ff813a198d656d4aa42e5de03e45751bf8",
      "tree": "b066f0a692454be661907d6ab91b4194f09c0fca",
      "parents": [
        "6f02b9e9b44a3bfc0046da3ff2707dae0b5e2f30"
      ],
      "author": {
        "name": "Carlos Chinea",
        "email": "carlos.chinea@nokia.com",
        "time": "Wed Apr 11 10:55:53 2012 +0300"
      },
      "committer": {
        "name": "Carlos Chinea",
        "email": "carlos.chinea@nokia.com",
        "time": "Mon Apr 23 14:23:32 2012 +0300"
      },
      "message": "HSI: hsi: Rework hsi_event interface\n\nRemove custom hack and make use of the notifier chain interfaces for\ndelivering events from the ports to their associated clients.\nClients that want to receive port events need to register their callbacks\nusing hsi_register_port_event(). The callbacks can be called in interrupt\ncontext. Use hsi_unregestier_port_event() to undo the registration.\n\nSigned-off-by: Carlos Chinea \u003ccarlos.chinea@nokia.com\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\n"
    },
    {
      "commit": "5a218ceba7b64f506bf4f004b04bb457c1805a62",
      "tree": "f1f123391bbebd8c6136e9118bf8a2f6b0c49734",
      "parents": [
        "66f75a5d028beaf67c931435fdc3e7823125730c"
      ],
      "author": {
        "name": "Carlos Chinea",
        "email": "carlos.chinea@nokia.com",
        "time": "Wed Apr 04 14:11:45 2012 +0300"
      },
      "committer": {
        "name": "Carlos Chinea",
        "email": "carlos.chinea@nokia.com",
        "time": "Mon Apr 23 14:23:31 2012 +0300"
      },
      "message": "HSI: hsi: Rework hsi_controller release\n\nUse the proper release mechanism for hsi_controller and\nhsi_ports structures. Free the structures through their\nassociated device release callbacks.\n\nSigned-off-by: Carlos Chinea \u003ccarlos.chinea@nokia.com\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\n"
    },
    {
      "commit": "b2024459252a9d2d312ee562f86f332a1498f412",
      "tree": "751987779eee44a601a68c766ba2ff258b77d25a",
      "parents": [
        "0f3fce5cc77e1f35758ef0e46a989e76e5046a7b"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Wed Mar 21 21:09:07 2012 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "JBottomley@Parallels.com",
        "time": "Mon Apr 23 12:11:47 2012 +0100"
      },
      "message": "[SCSI] libsas, libata: fix start of life for a sas ata_port\n\nThis changes the ordering of initialization and probing events from:\n  1/ allocate rphy in PORTE_BYTES_DMAED, DISCE_REVALIDATE_DOMAIN\n  2/ allocate ata_port and schedule port probe in DISCE_PROBE\n...to:\n  1/ allocate ata_port in PORTE_BYTES_DMAED, DISCE_REVALIDATE_DOMAIN\n  2/ allocate rphy in PORTE_BYTES_DMAED, DISCE_REVALIDATE_DOMAIN\n  3/ schedule port probe in DISCE_PROBE\n\nThis ordering prevents PHYE_SIGNAL_LOSS_EVENTS from sneaking in to\ndestrory ata devices before they have been fully initialized:\n\n  BUG: unable to handle kernel paging request at 0000000000003b10\n  IP: [\u003cffffffffa0053d7e\u003e] sas_ata_end_eh+0x12/0x5e [libsas]\n  ...\n  [\u003cffffffffa004d1af\u003e] sas_unregister_common_dev+0x78/0xc9 [libsas]\n  [\u003cffffffffa004d4d4\u003e] sas_unregister_dev+0x4f/0xad [libsas]\n  [\u003cffffffffa004d5b1\u003e] sas_unregister_domain_devices+0x7f/0xbf [libsas]\n  [\u003cffffffffa004c487\u003e] sas_deform_port+0x61/0x1b8 [libsas]\n  [\u003cffffffffa004bed0\u003e] sas_phye_loss_of_signal+0x29/0x2b [libsas]\n\n...and kills the awkward \"sata domain_device briefly existing in the\ndomain without an ata_port\" state.\n\nReported-by: Michal Kosciowski \u003cmichal.kosciowski@intel.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\nAcked-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\nSigned-off-by: James Bottomley \u003cJBottomley@Parallels.com\u003e\n"
    },
    {
      "commit": "22b9153faa2263aa89625de25e71c7d44c8dbd16",
      "tree": "1157d64a9c63c5b7b48b4a5b3610965d8d4c9624",
      "parents": [
        "f8fc75dc576eac0c996e4a792a4701819d999260"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Fri Mar 09 11:00:06 2012 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "JBottomley@Parallels.com",
        "time": "Mon Apr 23 12:03:39 2012 +0100"
      },
      "message": "[SCSI] libsas: introduce sas_work to fix sas_drain_work vs sas_queue_work\n\nWhen requeuing work to a draining workqueue the last work instance may\nnot be idle, so sas_queue_work() must not touch work-\u003eentry.  Introduce\nsas_work with a drain_node list_head to have a private list for\ncollecting work deferred due to drain collision.\n\nFixes reports like:\n  BUG: unable to handle kernel NULL pointer dereference at           (null)\n  IP: [\u003cffffffff810410d4\u003e] process_one_work+0x2e/0x338\n\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJBottomley@Parallels.com\u003e\n"
    },
    {
      "commit": "205b9c9c6eb9c309759ff1e52ffa85ae8965b382",
      "tree": "4ca6761d0fd5bc5b04bd2b059bfe8cbd59c067f6",
      "parents": [
        "7e296295437d3e54662e9e217fb20330e3c38f6f",
        "446f6d06fab0b49c61887ecbe8286d6aaa796637"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Apr 22 21:07:51 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Apr 22 21:07:51 2012 -0700"
      },
      "message": "Merge branch \u0027merge\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc\n\nPull powerpc fixes from Benjamin Herrenschmidt:\n \"Here are a few fixes for powerpc.  Note the addition to the generic\n  irq.h.  This is part of a 3-patches regression fix for mpic due to\n  changes in how IRQ_TYPE_NONE is being handled.  Thomas agreed to the\n  addition of the new IRQ_TYPE_DEFAULT contant, however he hasn\u0027t\n  replied with an Ack to the actual patch yet.  I don\u0027t to wait much\n  longer with these patches tho.\"\n\n* \u0027merge\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc:\n  powerpc/mpic: Properly set default triggers\n  irq: Add IRQ_TYPE_DEFAULT for use by PIC drivers\n  powerpc/mpic: Fix confusion between hw_irq and virq\n  powerpc/pmac: Don\u0027t add_timer() twice\n  powerpc/eeh: Fix crash caused by null eeh_dev\n  powerpc/mpc85xx: add MPIC message dts node\n  powerpc/mpic_msgr: fix offset error when setting mer register\n  powerpc/mpic_msgr: add lock for MPIC message global variable\n  powerpc/mpic_msgr: fix compile error when SMP disabled\n  powerpc: fix build when CONFIG_BOOKE_WDT is enabled\n  powerpc/85xx: don\u0027t call of_platform_bus_probe() twice\n"
    },
    {
      "commit": "7e296295437d3e54662e9e217fb20330e3c38f6f",
      "tree": "ff3385c8a7615f9fa1c8fe1b6bc0406559afe62f",
      "parents": [
        "66f75a5d028beaf67c931435fdc3e7823125730c",
        "d135c522f1234f62e81be29cebdf59e9955139ad"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Apr 22 21:02:57 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Apr 22 21:02:57 2012 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net\n\nPull networking fixes from David Miller:\n\n 1) Fix namespace init and cleanup in phonet to fix some oopses, from\n    Eric W. Biederman.\n\n 2) Missing kfree_skb() in AF_KEY, from Julia Lawall.\n\n 3) Refcount leak and source address handling fix in l2tp from James\n    Chapman.\n\n 4) Memory leak fix in CAIF from Tomasz Gregorek.\n\n 5) When routes are cloned from ipv6 addrconf routes, we don\u0027t process\n    expirations properly.  Fix from Gao Feng.\n\n 6) Fix panic on DMA errors in atl1 driver, from Tony Zelenoff.\n\n 7) Only enable interrupts in 8139cp driver after we\u0027ve registered the\n    IRQ handler.  From Jason Wang.\n\n 8) Fix too many reads of KS_CIDER register in ks8851 during probe,\n    fixing crashes on spurious interrupts.  From Matt Renzelmann.\n\n 9) Missing include in ath5k driver and missing iounmap on probe\n    failure, from Jonathan Bither.\n\n10) Fix RX packet handling in smsc911x driver, from Will Deacon.\n\n11) Fix ixgbe WoL on fiber by leaving the laser on during shutdown.\n\n12) ks8851 needs MAX_RECV_FRAMES increased otherwise the internal MAC\n    buffers are easily overflown.  Fix from Davide Cimingahi.\n\n13) Fix memory leaks in peak_usb CAN driver, from Jesper Juhl.\n\n14) gred packet scheduler can dump in WRED more when doing a netlink\n    dump.  Fix from David Ward.\n\n15) Fix MTU in USB smsc75xx driver, from Stephane Fillod.\n\n16) Dummy device needs -\u003endo_uninit handler to properly handle\n    -\u003endo_init failures.  From Hiroaki SHIMODA.\n\n17) Fix TX fragmentation in ath9k driver, from Sujith Manoharan.\n\n18) Missing RTNL lock in ixgbe PM resume, from Benjamin Poirier.\n\n19) Missing iounmap in farsync WAN driver, from Julia Lawall.\n\n20) With LRO/GRO, tcp_grow_window() is easily tricked into not growing\n    the receive window properly, and this hurts performance.  Fix from\n    Eric Dumazet.\n\n21) Network namespace init failure can leak net_generic data, fix from\n    Julian Anastasov.\n\n22) Fix skb_over_panic due to mis-accounting in TCP for partially ACK\u0027d\n    SKBs.  From Eric Dumazet.\n\n23) New IDs for qmi_wwan driver, from Bjørn Mork.\n\n24) Fix races in ax25_exit(), from Eric W. Biederman.\n\n25) IPV6 TCP doesn\u0027t handle TCP_MAXSEG socket option properly, copy over\n    logic from the IPV4 side.  From Neal Cardwell.\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (59 commits)\n  tcp: fix TCP_MAXSEG for established IPv6 passive sockets\n  drivers/net: Do not free an IRQ if its request failed\n  drop_monitor: allow more events per second\n  ks8851: Fix request_irq/free_irq mismatch\n  net/hyperv: Adding cancellation to ensure rndis filter is closed\n  ks8851: Fix mutex deadlock in ks8851_net_stop()\n  net ax25: Reorder ax25_exit to remove races.\n  icplus: fix interrupt for IC+ 101A/G and 1001LF\n  net: qmi_wwan: support Sierra Wireless MC77xx devices in QMI mode\n  bnx2x: off by one in bnx2x_ets_e3b0_sp_pri_to_cos_set()\n  ksz884x: don\u0027t copy too much in netdev_set_mac_address()\n  tcp: fix retransmit of partially acked frames\n  netns: do not leak net_generic data on failed init\n  net/sock.h: fix sk_peek_off kernel-doc warning\n  tcp: fix tcp_grow_window() for large incoming frames\n  drivers/net/wan/farsync.c: add missing iounmap\n  davinci_mdio: Fix MDIO timeout check\n  ipv6: clean up rt6_clean_expires\n  ipv6: fix rt6_update_expires\n  arcnet: rimi: Fix device name in debug output\n  ...\n"
    },
    {
      "commit": "3fca40c704dd013797f2c0c518f37cd2cc8e19fe",
      "tree": "250169398a74aca872c11717135f84826cbfbdad",
      "parents": [
        "3a2b4f7c355ff1c97e4adebadf0a1aefd7c4518a"
      ],
      "author": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Thu Apr 19 17:29:42 2012 +0000"
      },
      "committer": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Mon Apr 23 11:04:29 2012 +1000"
      },
      "message": "irq: Add IRQ_TYPE_DEFAULT for use by PIC drivers\n\nThis is meant typically to allow a PIC driver\u0027s irq domain map() callback\nto establish sane defaults for the interrupt (and make sure that the HW\nand the irq_desc are in sync as far as the trigger is concerned).\n\nThe irq core may not call the set_trigger callback if it thinks the\ntrigger is already set to the right setting, so we need to ensure new\ndescriptors are properly synchronized with the hardware.\n\nSigned-off-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\n"
    },
    {
      "commit": "900f65d361d333c949ef76a828343075f4fdf523",
      "tree": "8b4474c6c9df1fcad4d946c64bcc1535450d0927",
      "parents": [
        "e66e9a31474dcce5be6f1186dc933d8a991c707b"
      ],
      "author": {
        "name": "Neal Cardwell",
        "email": "ncardwell@google.com",
        "time": "Thu Apr 19 09:55:21 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Apr 21 16:36:42 2012 -0400"
      },
      "message": "tcp: move duplicate code from tcp_v4_init_sock()/tcp_v6_init_sock()\n\nThis commit moves the (substantial) common code shared between\ntcp_v4_init_sock() and tcp_v6_init_sock() to a new address-family\nindependent function, tcp_init_sock().\n\nCentralizing this functionality should help avoid drift issues,\ne.g. where the IPv4 side is updated without a corresponding update to\nIPv6. There was already some drift: IPv4 initialized snd_cwnd to\nTCP_INIT_CWND, while the IPv6 side was still initializing snd_cwnd to\n2 (in this case it should not matter, since snd_cwnd is also\ninitialized in tcp_init_metrics(), but the general risks and\nmaintenance overhead remain).\n\nWhen diffing the old and new code, note that new tcp_init_sock()\nfunction uses the order of steps from the tcp_v4_init_sock()\nimplementation (the order is slightly different in\ntcp_v6_init_sock()).\n\nSigned-off-by: Neal Cardwell \u003cncardwell@google.com\u003e\nAcked-by: Eric Dumazet \u003cedumazet@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "19a0b58e506b06fd41659d8734bba6a3e87980f4",
      "tree": "f9844eaf9d1471c6fcd98c850b1ed6cd57f2bce3",
      "parents": [
        "4c78bb845bd2aaf1f7136e75314c7d034cfd120f"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Fri Apr 20 04:42:05 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Apr 21 16:26:33 2012 -0400"
      },
      "message": "team: allow to enable/disable ports\n\nThis patch changes content of hashlist (used to get port struct by\ncomputed index (0...en_port_count-1)). Now the hash list contains only\nenabled ports so userspace will be able to say what ports can be used\nfor tx/rx. This becomes handy when userspace will need to disable ports\nwhich does not belong to active aggregator. By default, newly added port\nis enabled.\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b139ba4e90dccbf4cd4efb112af96a5c9e0b098c",
      "tree": "c955ff09255e74b8cc991dfa6f67853668a3b3c4",
      "parents": [
        "5e6a3ce6573f0c519d1ff57df60e3877bb2d3151"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@parallels.com",
        "time": "Thu Apr 19 03:41:57 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Apr 21 15:52:25 2012 -0400"
      },
      "message": "tcp: Repair connection-time negotiated parameters\n\nThere are options, which are set up on a socket while performing\nTCP handshake. Need to resurrect them on a socket while repairing.\nA new sockoption accepts a buffer and parses it. The buffer should\nbe CODE:VALUE sequence of bytes, where CODE is standard option\ncode and VALUE is the respective value.\n\nOnly 4 options should be handled on repaired socket.\n\nTo read 3 out of 4 of these options the TCP_INFO sockoption can be\nused. An ability to get the last one (the mss_clamp) was added by\nthe previous patch.\n\nNow the restore. Three of these options -- timestamp_ok, mss_clamp\nand snd_wscale -- are just restored on a coket.\n\nThe sack_ok flags has 2 issues. First, whether or not to do sacks\nat all. This flag is just read and set back. No other sack  info is\nsaved or restored, since according to the standart and the code\ndropping all sack-ed segments is OK, the sender will resubmit them\nagain, so after the repair we will probably experience a pause in\nconnection. Next, the fack bit. It\u0027s just set back on a socket if\nthe respective sysctl is set. No collected stats about packets flow\nis preserved. As far as I see (plz, correct me if I\u0027m wrong) the\nfack-based congestion algorithm survives dropping all of the stats\nand repairs itself eventually, probably losing the performance for\nthat period.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ee9952831cfd0bbe834f4a26489d7dce74582e37",
      "tree": "64c195fa45e1a200f38d68751161d8e06dfb5a6c",
      "parents": [
        "370816aef0c5436c2adbec3966038f36ca326933"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@parallels.com",
        "time": "Thu Apr 19 03:40:39 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Apr 21 15:52:25 2012 -0400"
      },
      "message": "tcp: Initial repair mode\n\nThis includes (according the the previous description):\n\n* TCP_REPAIR sockoption\n\nThis one just puts the socket in/out of the repair mode.\nAllowed for CAP_NET_ADMIN and for closed/establised sockets only.\nWhen repair mode is turned off and the socket happens to be in\nthe established state the window probe is sent to the peer to\n\u0027unlock\u0027 the connection.\n\n* TCP_REPAIR_QUEUE sockoption\n\nThis one sets the queue which we\u0027re about to repair. The\n\u0027no-queue\u0027 is set by default.\n\n* TCP_QUEUE_SEQ socoption\n\nSets the write_seq/rcv_nxt of a selected repaired queue.\nAllowed for TCP_CLOSE-d sockets only. When the socket changes\nits state the other seq-s are changed by the kernel according\nto the protocol rules (most of the existing code is actually\nreused).\n\n* Ability to forcibly bind a socket to a port\n\nThe sk-\u003esk_reuse is set to SK_FORCE_REUSE.\n\n* Immediate connect modification\n\nThe connect syscall initializes the connection, then directly jumps\nto the code which finalizes it.\n\n* Silent close modification\n\nThe close just aborts the connection (similar to SO_LINGER with 0\ntime) but without sending any FIN/RST-s to peer.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@parallels.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    }
  ],
  "next": "370816aef0c5436c2adbec3966038f36ca326933"
}
