)]}'
{
  "log": [
    {
      "commit": "766b8a7f7ee006dfd73dbc676addd80f7dbe86ef",
      "tree": "818c4c1709838ac321940e68624ec6d0228b9db1",
      "parents": [
        "0d5b25f934978301b2a1385c72f3b6abe04db484"
      ],
      "author": {
        "name": "Clemens Ladisch",
        "email": "clemens@ladisch.de",
        "time": "Sat Dec 03 23:41:31 2011 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 12 11:35:25 2012 -0800"
      },
      "message": "usb: fix number of mapped SG DMA entries\n\ncommit bc677d5b64644c399cd3db6a905453e611f402ab upstream.\n\nAdd a new field num_mapped_sgs to struct urb so that we have a place to\nstore the number of mapped entries and can also retain the original\nvalue of entries in num_sgs.  Previously, usb_hcd_map_urb_for_dma()\nwould overwrite this with the number of mapped entries, which would\nbreak dma_unmap_sg() because it requires the original number of entries.\n\nThis fixes warnings like the following when using USB storage devices:\n ------------[ cut here ]------------\n WARNING: at lib/dma-debug.c:902 check_unmap+0x4e4/0x695()\n ehci_hcd 0000:00:12.2: DMA-API: device driver frees DMA sg list with different entry count [map count\u003d4] [unmap count\u003d1]\n Modules linked in: ohci_hcd ehci_hcd\n Pid: 0, comm: kworker/0:1 Not tainted 3.2.0-rc2+ #319\n Call Trace:\n  \u003cIRQ\u003e  [\u003cffffffff81036d3b\u003e] warn_slowpath_common+0x80/0x98\n  [\u003cffffffff81036de7\u003e] warn_slowpath_fmt+0x41/0x43\n  [\u003cffffffff811fa5ae\u003e] check_unmap+0x4e4/0x695\n  [\u003cffffffff8105e92c\u003e] ? trace_hardirqs_off+0xd/0xf\n  [\u003cffffffff8147208b\u003e] ? _raw_spin_unlock_irqrestore+0x33/0x50\n  [\u003cffffffff811fa84a\u003e] debug_dma_unmap_sg+0xeb/0x117\n  [\u003cffffffff8137b02f\u003e] usb_hcd_unmap_urb_for_dma+0x71/0x188\n  [\u003cffffffff8137b166\u003e] unmap_urb_for_dma+0x20/0x22\n  [\u003cffffffff8137b1c5\u003e] usb_hcd_giveback_urb+0x5d/0xc0\n  [\u003cffffffffa0000d02\u003e] ehci_urb_done+0xf7/0x10c [ehci_hcd]\n  [\u003cffffffffa0001140\u003e] qh_completions+0x429/0x4bd [ehci_hcd]\n  [\u003cffffffffa000340a\u003e] ehci_work+0x95/0x9c0 [ehci_hcd]\n  ...\n ---[ end trace f29ac88a5a48c580 ]---\n Mapped at:\n  [\u003cffffffff811faac4\u003e] debug_dma_map_sg+0x45/0x139\n  [\u003cffffffff8137bc0b\u003e] usb_hcd_map_urb_for_dma+0x22e/0x478\n  [\u003cffffffff8137c494\u003e] usb_hcd_submit_urb+0x63f/0x6fa\n  [\u003cffffffff8137d01c\u003e] usb_submit_urb+0x2c7/0x2de\n  [\u003cffffffff8137dcd4\u003e] usb_sg_wait+0x55/0x161\n\nSigned-off-by: Clemens Ladisch \u003cclemens@ladisch.de\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "cb3b250af580752ed54642e37640daf714b30ad3",
      "tree": "3e1d0f2ffc295112ef7b6b5b18caabce4dab540c",
      "parents": [
        "b5e0e13b29aa292a2ece89a78757a55e85e9e626"
      ],
      "author": {
        "name": "Kyle Manna",
        "email": "kyle@kylemanna.com",
        "time": "Thu Aug 11 22:33:13 2011 -0500"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Jan 06 14:14:11 2012 -0800"
      },
      "message": "mfd: Turn on the twl4030-madc MADC clock\n\ncommit 3d6271f92e98094584fd1e609a9969cd33e61122 upstream.\n\nWithout turning the MADC clock on, no MADC conversions occur.\n\n$ cat /sys/class/hwmon/hwmon0/device/in8_input\n[   53.428436] twl4030_madc twl4030_madc: conversion timeout!\ncat: read error: Resource temporarily unavailable\n\nSigned-off-by: Kyle Manna \u003ckyle@kylemanna.com\u003e\nSigned-off-by: Samuel Ortiz \u003csameo@linux.intel.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "f6e4c89e089ae671a677242edb9e8b08c369c415",
      "tree": "8fc6a469a63235c7a4bf389833962eae9f8302ec",
      "parents": [
        "01d6bbab3834409c220083f25810be9f1a553054"
      ],
      "author": {
        "name": "Xi Wang",
        "email": "xi.wang@gmail.com",
        "time": "Fri Dec 16 12:44:15 2011 +0000"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Jan 06 14:14:08 2012 -0800"
      },
      "message": "sctp: fix incorrect overflow check on autoclose\n\n[ Upstream commit 2692ba61a82203404abd7dd2a027bda962861f74 ]\n\nCommit 8ffd3208 voids the previous patches f6778aab and 810c0719 for\nlimiting the autoclose value.  If userspace passes in -1 on 32-bit\nplatform, the overflow check didn\u0027t work and autoclose would be set\nto 0xffffffff.\n\nThis patch defines a max_autoclose (in seconds) for limiting the value\nand exposes it through sysctl, with the following intentions.\n\n1) Avoid overflowing autoclose * HZ.\n\n2) Keep the default autoclose bound consistent across 32- and 64-bit\n   platforms (INT_MAX / HZ in this patch).\n\n3) Keep the autoclose value consistent between setsockopt() and\n   getsockopt() calls.\n\nSuggested-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: Xi Wang \u003cxi.wang@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "f3545737cf06d342d34483b7a8421d0bb90b9c1b",
      "tree": "67af107bae299cdcbde04d8504cc26c4acba738f",
      "parents": [
        "4875f39a0548a1fa5f55b4a90dca0f4a7ad8f237"
      ],
      "author": {
        "name": "Srivatsa S. Bhat",
        "email": "srivatsa.bhat@linux.vnet.ibm.com",
        "time": "Thu Dec 22 02:45:29 2011 +0530"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Jan 06 14:13:55 2012 -0800"
      },
      "message": "VFS: Fix race between CPU hotplug and lglocks\n\ncommit e30e2fdfe56288576ee9e04dbb06b4bd5f282203 upstream.\n\nCurrently, the *_global_[un]lock_online() routines are not at all synchronized\nwith CPU hotplug. Soft-lockups detected as a consequence of this race was\nreported earlier at https://lkml.org/lkml/2011/8/24/185. (Thanks to Cong Meng\nfor finding out that the root-cause of this issue is the race condition\nbetween br_write_[un]lock() and CPU hotplug, which results in the lock states\ngetting messed up).\n\nFixing this race by just adding {get,put}_online_cpus() at appropriate places\nin *_global_[un]lock_online() is not a good option, because, then suddenly\nbr_write_[un]lock() would become blocking, whereas they have been kept as\nnon-blocking all this time, and we would want to keep them that way.\n\nSo, overall, we want to ensure 3 things:\n1. br_write_lock() and br_write_unlock() must remain as non-blocking.\n2. The corresponding lock and unlock of the per-cpu spinlocks must not happen\n   for different sets of CPUs.\n3. Either prevent any new CPU online operation in between this lock-unlock, or\n   ensure that the newly onlined CPU does not proceed with its corresponding\n   per-cpu spinlock unlocked.\n\nTo achieve all this:\n(a) We introduce a new spinlock that is taken by the *_global_lock_online()\n    routine and released by the *_global_unlock_online() routine.\n(b) We register a callback for CPU hotplug notifications, and this callback\n    takes the same spinlock as above.\n(c) We maintain a bitmap which is close to the cpu_online_mask, and once it is\n    initialized in the lock_init() code, all future updates to it are done in\n    the callback, under the above spinlock.\n(d) The above bitmap is used (instead of cpu_online_mask) while locking and\n    unlocking the per-cpu locks.\n\nThe callback takes the spinlock upon the CPU_UP_PREPARE event. So, if the\nbr_write_lock-unlock sequence is in progress, the callback keeps spinning,\nthus preventing the CPU online operation till the lock-unlock sequence is\ncomplete. This takes care of requirement (3).\n\nThe bitmap that we maintain remains unmodified throughout the lock-unlock\nsequence, since all updates to it are managed by the callback, which takes\nthe same spinlock as the one taken by the lock code and released only by the\nunlock routine. Combining this with (d) above, satisfies requirement (2).\n\nOverall, since we use a spinlock (mentioned in (a)) to prevent CPU hotplug\noperations from racing with br_write_lock-unlock, requirement (1) is also\ntaken care of.\n\nBy the way, it is to be noted that a CPU offline operation can actually run\nin parallel with our lock-unlock sequence, because our callback doesn\u0027t react\nto notifications earlier than CPU_DEAD (in order to maintain our bitmap\nproperly). And this means, since we use our own bitmap (which is stale, on\npurpose) during the lock-unlock sequence, we could end up unlocking the\nper-cpu lock of an offline CPU (because we had locked it earlier, when the\nCPU was online), in order to satisfy requirement (2). But this is harmless,\nthough it looks a bit awkward.\n\nDebugged-by: Cong Meng \u003cmc@linux.vnet.ibm.com\u003e\nSigned-off-by: Srivatsa S. Bhat \u003csrivatsa.bhat@linux.vnet.ibm.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "d27bf91d1a9ea58a32bf9dd949e93bb1dc1fc9bf",
      "tree": "3b71c18560ce6e675525c0d0899f542fabaa72a4",
      "parents": [
        "afa2450ce311b3182c737c3fda59bb557da93409"
      ],
      "author": {
        "name": "Mike Snitzer",
        "email": "snitzer@redhat.com",
        "time": "Wed Nov 23 10:59:13 2011 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Jan 06 14:13:48 2012 -0800"
      },
      "message": "block: initialize request_queue\u0027s numa node during\n\ncommit 5151412dd4338b273afdb107c3772528e9e67d92 upstream.\n\nstruct request_queue is allocated with __GFP_ZERO so its \"node\" field is\nzero before initialization.  This causes an oops if node 0 is offline in\nthe page allocator because its zonelists are not initialized.  From Dave\nYoung\u0027s dmesg:\n\n\tSRAT: Node 1 PXM 2 0-d0000000\n\tSRAT: Node 1 PXM 2 100000000-330000000\n\tSRAT: Node 0 PXM 1 330000000-630000000\n\tInitmem setup node 1 0000000000000000-000000000affb000\n\t...\n\tBuilt 1 zonelists in Node order, mobility grouping on.\n\t...\n\tBUG: unable to handle kernel paging request at 0000000000001c08\n\tIP: [\u003cffffffff8111c355\u003e] __alloc_pages_nodemask+0xb5/0x870\n\nand __alloc_pages_nodemask+0xb5 translates to a NULL pointer on\nzonelist-\u003e_zonerefs.\n\nThe fix is to initialize q-\u003enode at the time of allocation so the correct\nnode is passed to the slab allocator later.\n\nSince blk_init_allocated_queue_node() is no longer needed, merge it with\nblk_init_allocated_queue().\n\n[rientjes@google.com: changelog, initializing q-\u003enode]\nReported-by: Dave Young \u003cdyoung@redhat.com\u003e\nSigned-off-by: Mike Snitzer \u003csnitzer@redhat.com\u003e\nSigned-off-by: David Rientjes \u003crientjes@google.com\u003e\nTested-by: Dave Young \u003cdyoung@redhat.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@kernel.dk\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "8cce5e94c35994eab76780648ee8788b0a7a7728",
      "tree": "7d71af0384c15e8b029818e508d7b366b61fe89b",
      "parents": [
        "fa0bd1d27724944e5c8a93ebfdf70af50bec9972"
      ],
      "author": {
        "name": "Alex Deucher",
        "email": "alexander.deucher@amd.com",
        "time": "Mon Dec 12 09:23:48 2011 -0500"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Wed Dec 21 12:57:45 2011 -0800"
      },
      "message": "drm/radeon/kms: add some new pci ids\n\ncommit cd5cfce856684e13b9b57d46b78bb827e9c4da3c upstream.\n\nFixes:\nhttps://bugs.freedesktop.org/show_bug.cgi?id\u003d43739\n\nSigned-off-by: Alex Deucher \u003calexander.deucher@amd.com\u003e\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "c1f95ce58fb4257de087ab89343adea9a47c2144",
      "tree": "09b03b1eba2b7091adef6ad9736986b2d8ca2134",
      "parents": [
        "5009514a0967db0060656c70de812b8643417da7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 12 22:06:55 2011 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Wed Dec 21 12:57:38 2011 -0800"
      },
      "message": "linux/log2.h: Fix rounddown_pow_of_two(1)\n\ncommit 13c07b0286d340275f2d97adf085cecda37ede37 upstream.\n\nExactly like roundup_pow_of_two(1), the rounddown version was buggy for\nthe case of a compile-time constant \u00271\u0027 argument.  Probably because it\noriginated from the same code, sharing history with the roundup version\nfrom before the bugfix (for that one, see commit 1a06a52ee1b0: \"Fix\nroundup_pow_of_two(1)\").\n\nHowever, unlike the roundup version, the fix for rounddown is to just\nremove the broken special case entirely.  It\u0027s simply not needed - the\ngeneric code\n\n    1UL \u003c\u003c ilog2(n)\n\ndoes the right thing for the constant \u00271\u0027 argment too.  The only reason\nroundup needed that special case was because rounding up does so by\nsubtracting one from the argument (and then adding one to the result)\ncausing the obvious problems with \"ilog2(0)\".\n\nBut rounddown doesn\u0027t do any of that, since ilog2() naturally truncates\n(ie \"rounds down\") to the right rounded down value.  And without the\nilog2(0) case, there\u0027s no reason for the special case that had the wrong\nvalue.\n\ntl;dr: rounddown_pow_of_two(1) should be 1, not 0.\n\nAcked-by: Dmitry Torokhov \u003cdtor@vmware.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "58a48c4b50249df1bebcedca479f6faa7091bd0e",
      "tree": "672a16e3580207b7ada626032f218d1ce247cabc",
      "parents": [
        "3a15d7377faf8b10d04febc6c265ecf5f52c2558"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Dec 05 08:43:34 2011 -0500"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Wed Dec 21 12:57:36 2011 -0800"
      },
      "message": "fix apparmor dereferencing potentially freed dentry, sanitize __d_path() API\n\ncommit 02125a826459a6ad142f8d91c5b6357562f96615 upstream.\n\n__d_path() API is asking for trouble and in case of apparmor d_namespace_path()\ngetting just that.  The root cause is that when __d_path() misses the root\nit had been told to look for, it stores the location of the most remote ancestor\nin *root.  Without grabbing references.  Sure, at the moment of call it had\nbeen pinned down by what we have in *path.  And if we raced with umount -l, we\ncould have very well stopped at vfsmount/dentry that got freed as soon as\nprepend_path() dropped vfsmount_lock.\n\nIt is safe to compare these pointers with pre-existing (and known to be still\nalive) vfsmount and dentry, as long as all we are asking is \"is it the same\naddress?\".  Dereferencing is not safe and apparmor ended up stepping into\nthat.  d_namespace_path() really wants to examine the place where we stopped,\neven if it\u0027s not connected to our namespace.  As the result, it looked\nat -\u003ed_sb-\u003es_magic of a dentry that might\u0027ve been already freed by that point.\nAll other callers had been careful enough to avoid that, but it\u0027s really\na bad interface - it invites that kind of trouble.\n\nThe fix is fairly straightforward, even though it\u0027s bigger than I\u0027d like:\n\t* prepend_path() root argument becomes const.\n\t* __d_path() is never called with NULL/NULL root.  It was a kludge\nto start with.  Instead, we have an explicit function - d_absolute_root().\nSame as __d_path(), except that it doesn\u0027t get root passed and stops where\nit stops.  apparmor and tomoyo are using it.\n\t* __d_path() returns NULL on path outside of root.  The main\ncaller is show_mountinfo() and that\u0027s precisely what we pass root for - to\nskip those outside chroot jail.  Those who don\u0027t want that can (and do)\nuse d_path().\n\t* __d_path() root argument becomes const.  Everyone agrees, I hope.\n\t* apparmor does *NOT* try to use __d_path() or any of its variants\nwhen it sees that path-\u003emnt is an internal vfsmount.  In that case it\u0027s\ndefinitely not mounted anywhere and dentry_path() is exactly what we want\nthere.  Handling of sysctl()-triggered weirdness is moved to that place.\n\t* if apparmor is asked to do pathname relative to chroot jail\nand __d_path() tells it we it\u0027s not in that jail, the sucker just calls\nd_absolute_path() instead.  That\u0027s the other remaining caller of __d_path(),\nBTW.\n        * seq_path_root() does _NOT_ return -ENAMETOOLONG (it\u0027s stupid anyway -\nthe normal seq_file logics will take care of growing the buffer and redoing\nthe call of -\u003eshow() just fine).  However, if it gets path not reachable\nfrom root, it returns SEQ_SKIP.  The only caller adjusted (i.e. stopped\nignoring the return value as it used to do).\n\nReviewed-by: John Johansen \u003cjohn.johansen@canonical.com\u003e\nACKed-by: John Johansen \u003cjohn.johansen@canonical.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "f90312c8cf03b2294f6840c7dc01236838896acc",
      "tree": "1da5b6b751d3986c20ebae062ddfc1b80b2620c1",
      "parents": [
        "cd319e4350715b72939eec5c526ab60bd02b5229"
      ],
      "author": {
        "name": "Lars-Peter Clausen",
        "email": "lars@metafoo.de",
        "time": "Mon Nov 28 09:44:16 2011 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 09 08:52:39 2011 -0800"
      },
      "message": "firmware: Sigma: Fix endianess issues\n\ncommit bda63586bc5929e97288cdb371bb6456504867ed upstream.\n\nCurrently the SigmaDSP firmware loader only works correctly on little-endian\nsystems. Fix this by using the proper endianess conversion functions.\n\nSigned-off-by: Lars-Peter Clausen \u003clars@metafoo.de\u003e\nAcked-by: Mike Frysinger \u003cvapier@gentoo.org\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "f18cc6ba85619dfee8ed4a9564ae8c0fcb874cbe",
      "tree": "f1fd6d2d0cc5fe9e564943ee4b75e184e02a88d6",
      "parents": [
        "6a82412403cee54e4ce87b9dea9c275a46d4e682"
      ],
      "author": {
        "name": "Lars-Peter Clausen",
        "email": "lars@metafoo.de",
        "time": "Mon Nov 28 09:44:14 2011 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 09 08:52:38 2011 -0800"
      },
      "message": "firmware: Sigma: Prevent out of bounds memory access\n\ncommit 4f718a29fe4908c2cea782f751e9805319684e2b upstream.\n\nThe SigmaDSP firmware loader currently does not perform enough boundary size\nchecks when processing the firmware. As a result it is possible that a\nmalformed firmware can cause an out of bounds memory access.\n\nThis patch adds checks which ensure that both the action header and the payload\nare completely inside the firmware data boundaries before processing them.\n\nSigned-off-by: Lars-Peter Clausen \u003clars@metafoo.de\u003e\nAcked-by: Mike Frysinger \u003cvapier@gentoo.org\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "08d618b2080d8b3afac6db1a361c54d827b8d044",
      "tree": "a52d8d4df968f8dca0ac5e16b994d2a07f089635",
      "parents": [
        "d98627dd4a3e2cd4a7602a845fd1c1c78d372e97"
      ],
      "author": {
        "name": "Alex Deucher",
        "email": "alexander.deucher@amd.com",
        "time": "Thu Dec 01 11:02:11 2011 -0500"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 09 08:52:37 2011 -0800"
      },
      "message": "drm/radeon/kms: add some new pci ids\n\ncommit 2ed4d9d648cbd4fb1c232a646dbdbdfdd373ca94 upstream.\n\nSigned-off-by: Alex Deucher \u003calexander.deucher@amd.com\u003e\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "61aff74833b86c735ee901c1038f0cbfcd606ae7",
      "tree": "9c05d7c1ca3eaba38dc2264b2181fa07767a62b3",
      "parents": [
        "e84ce11bd0183328e00accb611893b9a819dc0ba"
      ],
      "author": {
        "name": "Xi Wang",
        "email": "xi.wang@gmail.com",
        "time": "Wed Nov 23 01:12:01 2011 -0500"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 09 08:52:20 2011 -0800"
      },
      "message": "drm: integer overflow in drm_mode_dirtyfb_ioctl()\n\ncommit a5cd335165e31db9dbab636fd29895d41da55dd2 upstream.\n\nThere is a potential integer overflow in drm_mode_dirtyfb_ioctl()\nif userspace passes in a large num_clips.  The call to kmalloc would\nallocate a small buffer, and the call to fb-\u003efuncs-\u003edirty may result\nin a memory corruption.\n\nReported-by: Haogang Chen \u003chaogangchen@gmail.com\u003e\nSigned-off-by: Xi Wang \u003cxi.wang@gmail.com\u003e\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "124e35242a58c479cea2a3d6d2b2605737e27309",
      "tree": "2b487f31afc0cb7b296ecc121ceaa6a6c742ecdf",
      "parents": [
        "ecaaa92488e2589cc6b0a409ce44e7e47a3bb846"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Fri Nov 04 13:31:21 2011 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Sat Nov 26 09:09:59 2011 -0800"
      },
      "message": "nfs: when attempting to open a directory, fall back on normal lookup (try #5)\n\ncommit 1788ea6e3b2a58cf4fb00206e362d9caff8d86a7 upstream.\n\ncommit d953126 changed how nfs_atomic_lookup handles an -EISDIR return\nfrom an OPEN call. Prior to that patch, that caused the client to fall\nback to doing a normal lookup. When that patch went in, the code began\nreturning that error to userspace. The d_revalidate codepath however\nnever had the corresponding change, so it was still possible to end up\nwith a NULL ctx-\u003estate pointer after that.\n\nThat patch caused a regression. When we attempt to open a directory that\ndoes not have a cached dentry, that open now errors out with EISDIR. If\nyou attempt the same open with a cached dentry, it will succeed.\n\nFix this by reverting the change in nfs_atomic_lookup and allowing\nattempts to open directories to fall back to a normal lookup\n\nAlso, add a NFSv4-specific f_ops-\u003eopen routine that just returns\n-ENOTDIR. This should never be called if things are working properly,\nbut if it ever is, then the dprintk may help in debugging.\n\nTo facilitate this, a new file_operations field is also added to the\nnfs_rpc_ops struct.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "efd5ea63c5632e2365373458e013e2d4d0fc73ac",
      "tree": "725ae4b0bf591b8f2a6d8697b839b55649fc83bc",
      "parents": [
        "30b205cbe5b6b239e13829ff435c726c2a206e8d"
      ],
      "author": {
        "name": "Alex Deucher",
        "email": "alexander.deucher@amd.com",
        "time": "Mon Nov 14 09:33:56 2011 -0500"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Nov 21 14:31:19 2011 -0800"
      },
      "message": "drm/radeon: add some missing FireMV pci ids\n\ncommit b872a37437e93df9d112ce674752b3b3a0a17020 upstream.\n\nNoticed by Egbert.\n\nSigned-off-by: Alex Deucher \u003calexander.deucher@amd.com\u003e\nCc: Egbert Eich \u003ceich@suse.de\u003e\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "3fa57c1bf5fb311544199b7837a08b9f5bf5e6e4",
      "tree": "9285297f1b3fee391dca9773416e900d0b49b7a8",
      "parents": [
        "867ca3109d0289d0a62bb3c7fc3d365e9d478fae"
      ],
      "author": {
        "name": "dpward",
        "email": "david.ward@ll.mit.edu",
        "time": "Mon Sep 05 16:47:24 2011 +0000"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Nov 11 09:37:17 2011 -0800"
      },
      "message": "net: Handle different key sizes between address families in flow cache\n\ncommit aa1c366e4febc7f5c2b84958a2dd7cd70e28f9d0 upstream.\n\nWith the conversion of struct flowi to a union of AF-specific structs, some\noperations on the flow cache need to account for the exact size of the key.\n\nSigned-off-by: David Ward \u003cdavid.ward@ll.mit.edu\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\nCc: Kim Phillips \u003ckim.phillips@freescale.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "867ca3109d0289d0a62bb3c7fc3d365e9d478fae",
      "tree": "9a163483db34db0e8c55f09280bf68b429a35621",
      "parents": [
        "ef52f3936f9f5d770ea177e5c769e68af1701a90"
      ],
      "author": {
        "name": "David Ward",
        "email": "david.ward@ll.mit.edu",
        "time": "Mon Sep 05 16:47:23 2011 +0000"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Nov 11 09:37:17 2011 -0800"
      },
      "message": "net: Align AF-specific flowi structs to long\n\ncommit 728871bc05afc8ff310b17dba3e57a2472792b13 upstream.\n\nAF-specific flowi structs are now passed to flow_key_compare, which must\nalso be aligned to a long.\n\nSigned-off-by: David Ward \u003cdavid.ward@ll.mit.edu\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\nCc: Kim Phillips \u003ckim.phillips@freescale.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "35f6259abb1d8153d6a7552895e8126b8bcf2c61",
      "tree": "9eccf745f632ae0ec83c03670a327f3252bdb616",
      "parents": [
        "ff356c22478a5487e2edaaad31f60bc3868c43f5"
      ],
      "author": {
        "name": "Alex Deucher",
        "email": "alexander.deucher@amd.com",
        "time": "Mon Oct 31 08:54:41 2011 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Nov 11 09:36:54 2011 -0800"
      },
      "message": "drm/radeon/kms: properly set panel mode for eDP\n\ncommit 00dfb8df5bf8c3afe4c0bb8361133156b06b7a2c upstream.\n\nThis should make eDP more reliable.\n\nSigned-off-by: Alex Deucher \u003calexander.deucher@amd.com\u003e\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "621112ec06bbe3a6dbb6af5f4db3451d01b309f9",
      "tree": "1b8dbf57854f8bee13a88a7492d7ba8ca93ceb8c",
      "parents": [
        "1a2417c30c86961992afae7eb8f803acca2f6b9b"
      ],
      "author": {
        "name": "Andrea Arcangeli",
        "email": "aarcange@redhat.com",
        "time": "Wed Nov 02 13:37:36 2011 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Nov 11 09:36:48 2011 -0800"
      },
      "message": "thp: share get_huge_page_tail()\n\ncommit b35a35b556f5e6b7993ad0baf20173e75c09ce8c upstream.\n\nThis avoids duplicating the function in every arch gup_fast.\n\nSigned-off-by: Andrea Arcangeli \u003caarcange@redhat.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Hugh Dickins \u003chughd@google.com\u003e\nCc: Johannes Weiner \u003cjweiner@redhat.com\u003e\nCc: Rik van Riel \u003criel@redhat.com\u003e\nCc: Mel Gorman \u003cmgorman@suse.de\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: David Gibson \u003cdavid@gibson.dropbear.id.au\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: David Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "d24f405b711a4247f31358339dc1112ca659e6fe",
      "tree": "4cea1a63deebfd31be589d98d6c594b15ff156e8",
      "parents": [
        "b97cdd64caeac76928c0bac6a844743fa2431200"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Wed Aug 31 11:54:51 2011 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Nov 11 09:36:32 2011 -0800"
      },
      "message": "ext2,ext3,ext4: don\u0027t inherit APPEND_FL or IMMUTABLE_FL for new inodes\n\ncommit 1cd9f0976aa4606db8d6e3dc3edd0aca8019372a upstream.\n\nThis doesn\u0027t make much sense, and it exposes a bug in the kernel where\nattempts to create a new file in an append-only directory using\nO_CREAT will fail (but still leave a zero-length file).  This was\ndiscovered when xfstests #79 was generalized so it could run on all\nfile systems.\n\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "68fe9d9c796303de600dbc622086768ca4d8408b",
      "tree": "4d7c0a4d52960df61e3c61e4a894a182de5ae839",
      "parents": [
        "a00fb1451d630898c1380349ac3776688e58010f"
      ],
      "author": {
        "name": "Andrea Arcangeli",
        "email": "aarcange@redhat.com",
        "time": "Wed Nov 02 13:36:59 2011 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Nov 11 09:36:29 2011 -0800"
      },
      "message": "mm: thp: tail page refcounting fix\n\ncommit 70b50f94f1644e2aa7cb374819cfd93f3c28d725 upstream.\n\nMichel while working on the working set estimation code, noticed that\ncalling get_page_unless_zero() on a random pfn_to_page(random_pfn)\nwasn\u0027t safe, if the pfn ended up being a tail page of a transparent\nhugepage under splitting by __split_huge_page_refcount().\n\nHe then found the problem could also theoretically materialize with\npage_cache_get_speculative() during the speculative radix tree lookups\nthat uses get_page_unless_zero() in SMP if the radix tree page is freed\nand reallocated and get_user_pages is called on it before\npage_cache_get_speculative has a chance to call get_page_unless_zero().\n\nSo the best way to fix the problem is to keep page_tail-\u003e_count zero at\nall times.  This will guarantee that get_page_unless_zero() can never\nsucceed on any tail page.  page_tail-\u003e_mapcount is guaranteed zero and\nis unused for all tail pages of a compound page, so we can simply\naccount the tail page references there and transfer them to\ntail_page-\u003e_count in __split_huge_page_refcount() (in addition to the\nhead_page-\u003e_mapcount).\n\nWhile debugging this s/_count/_mapcount/ change I also noticed get_page is\ncalled by direct-io.c on pages returned by get_user_pages.  That wasn\u0027t\nentirely safe because the two atomic_inc in get_page weren\u0027t atomic.  As\nopposed to other get_user_page users like secondary-MMU page fault to\nestablish the shadow pagetables would never call any superflous get_page\nafter get_user_page returns.  It\u0027s safer to make get_page universally safe\nfor tail pages and to use get_page_foll() within follow_page (inside\nget_user_pages()).  get_page_foll() is safe to do the refcounting for tail\npages without taking any locks because it is run within PT lock protected\ncritical sections (PT lock for pte and page_table_lock for\npmd_trans_huge).\n\nThe standard get_page() as invoked by direct-io instead will now take\nthe compound_lock but still only for tail pages.  The direct-io paths\nare usually I/O bound and the compound_lock is per THP so very\nfinegrined, so there\u0027s no risk of scalability issues with it.  A simple\ndirect-io benchmarks with all lockdep prove locking and spinlock\ndebugging infrastructure enabled shows identical performance and no\noverhead.  So it\u0027s worth it.  Ideally direct-io should stop calling\nget_page() on pages returned by get_user_pages().  The spinlock in\nget_page() is already optimized away for no-THP builds but doing\nget_page() on tail pages returned by GUP is generally a rare operation\nand usually only run in I/O paths.\n\nThis new refcounting on page_tail-\u003e_mapcount in addition to avoiding new\nRCU critical sections will also allow the working set estimation code to\nwork without any further complexity associated to the tail page\nrefcounting with THP.\n\nSigned-off-by: Andrea Arcangeli \u003caarcange@redhat.com\u003e\nReported-by: Michel Lespinasse \u003cwalken@google.com\u003e\nReviewed-by: Michel Lespinasse \u003cwalken@google.com\u003e\nReviewed-by: Minchan Kim \u003cminchan.kim@gmail.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Hugh Dickins \u003chughd@google.com\u003e\nCc: Johannes Weiner \u003cjweiner@redhat.com\u003e\nCc: Rik van Riel \u003criel@redhat.com\u003e\nCc: Mel Gorman \u003cmgorman@suse.de\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: David Gibson \u003cdavid@gibson.dropbear.id.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "eb4b2df8f20d4479eceeb9bc51695caaa7bcd229",
      "tree": "ee209363a04b46e9d7a30e38e166a6d5eb70cff0",
      "parents": [
        "6c36547293e6c46fe5df46e5e1b9ce9babb9eb37"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 25 13:59:48 2011 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Nov 11 09:36:23 2011 -0800"
      },
      "message": "vfs pathname lookup: Add LOOKUP_AUTOMOUNT flag\n\nSince we\u0027ve now turned around and made LOOKUP_FOLLOW *not* force an\nautomount, we want to add the ability to force an automount event on\nlookup even if we don\u0027t happen to have one of the other flags that force\nit implicitly (LOOKUP_OPEN, LOOKUP_DIRECTORY, LOOKUP_PARENT..)\n\nMost cases will never want to use this, since you\u0027d normally want to\ndelay automounting as long as possible, which usually implies\nLOOKUP_OPEN (when we open a file or directory, we really cannot avoid\nthe automount any more).\n\nBut Trond argued sufficiently forcefully that at a minimum bind mounting\na file and quotactl will want to force the automount lookup.  Some other\ncases (like nfs_follow_remote_path()) could use it too, although\nLOOKUP_DIRECTORY would work there as well.\n\nThis commit just adds the flag and logic, no users yet, though.  It also\ndoesn\u0027t actually touch the LOOKUP_NO_AUTOMOUNT flag that is related, and\nwas made irrelevant by the same change that made us not follow on\nLOOKUP_FOLLOW.\n\nCc: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\nCc: Ian Kent \u003craven@themaw.net\u003e\nCc: Jeff Layton \u003cjlayton@redhat.com\u003e\nCc: Miklos Szeredi \u003cmiklos@szeredi.hu\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nSigned-off-by: Miklos Szeredi \u003cmszeredi@suse.cz\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "b0917c31699319f0b0ce0747e26bd66e8ed83491",
      "tree": "357f87260c815d39f7efdd36f072ccd64a017a46",
      "parents": [
        "5f0d9e03e7e0792fbd36ba9fb9859f0ef7956a20"
      ],
      "author": {
        "name": "Andy Whitcroft",
        "email": "apw@canonical.com",
        "time": "Wed Nov 02 09:44:39 2011 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Nov 11 09:36:19 2011 -0800"
      },
      "message": "readlinkat: ensure we return ENOENT for the empty pathname for normal lookups\n\ncommit 1fa1e7f615f4d3ae436fa319af6e4eebdd4026a8 upstream.\n\nSince the commit below which added O_PATH support to the *at() calls, the\nerror return for readlink/readlinkat for the empty pathname has switched\nfrom ENOENT to EINVAL:\n\n  commit 65cfc6722361570bfe255698d9cd4dccaf47570d\n  Author: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n  Date:   Sun Mar 13 15:56:26 2011 -0400\n\n    readlinkat(), fchownat() and fstatat() with empty relative pathnames\n\nThis is both unexpected for userspace and makes readlink/readlinkat\ninconsistant with all other interfaces; and inconsistant with our stated\nreturn for these pathnames.\n\nAs the readlinkat call does not have a flags parameter we cannot use the\nAT_EMPTY_PATH approach used in the other calls.  Therefore expose whether\nthe original path is infact entry via a new user_path_at_empty() path\nlookup function.  Use this to determine whether to default to EINVAL or\nENOENT for failures.\n\nAddresses http://bugs.launchpad.net/bugs/817187\n\n[akpm@linux-foundation.org: remove unused getname_flags()]\nSigned-off-by: Andy Whitcroft \u003capw@canonical.com\u003e\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "38af8ddb4b8877c0b90f8413a20517ba245c4d0b",
      "tree": "902c951d9637a24de29c54556f5fd388863c6dd8",
      "parents": [
        "ad417042d59a26bedf600ab162b20b79fdcd1fa1"
      ],
      "author": {
        "name": "Mitsuo Hayasaka",
        "email": "mitsuo.hayasaka.hu@hitachi.com",
        "time": "Mon Oct 31 17:08:13 2011 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Nov 11 09:36:18 2011 -0800"
      },
      "message": "mm: avoid null pointer access in vm_struct via /proc/vmallocinfo\n\ncommit f5252e009d5b87071a919221e4f6624184005368 upstream.\n\nThe /proc/vmallocinfo shows information about vmalloc allocations in\nvmlist that is a linklist of vm_struct.  It, however, may access pages\nfield of vm_struct where a page was not allocated.  This results in a null\npointer access and leads to a kernel panic.\n\nWhy this happens: In __vmalloc_node_range() called from vmalloc(), newly\nallocated vm_struct is added to vmlist at __get_vm_area_node() and then,\nsome fields of vm_struct such as nr_pages and pages are set at\n__vmalloc_area_node().  In other words, it is added to vmlist before it is\nfully initialized.  At the same time, when the /proc/vmallocinfo is read,\nit accesses the pages field of vm_struct according to the nr_pages field\nat show_numa_info().  Thus, a null pointer access happens.\n\nThe patch adds the newly allocated vm_struct to the vmlist *after* it is\nfully initialized.  So, it can avoid accessing the pages field with\nunallocated page when show_numa_info() is called.\n\nSigned-off-by: Mitsuo Hayasaka \u003cmitsuo.hayasaka.hu@hitachi.com\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: Namhyung Kim \u003cnamhyung@gmail.com\u003e\nCc: \"Paul E. McKenney\" \u003cpaulmck@linux.vnet.ibm.com\u003e\nCc: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "0198c89767e26f78e619eef2309be74186b4fdcd",
      "tree": "1f169dd328d36785f3f8d8c0428564f282cb2377",
      "parents": [
        "2f8c09acae88d1bf0aeedffd3f788eb5c5b4db29"
      ],
      "author": {
        "name": "Daniel Vetter",
        "email": "daniel.vetter@ffwll.ch",
        "time": "Wed Sep 28 11:57:23 2011 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Nov 11 09:36:00 2011 -0800"
      },
      "message": "io-mapping: ensure io_mapping_map_atomic _is_ atomic\n\ncommit 24dd85ff723f142093f44244764b9b5c152235b8 upstream.\n\nFor the !HAVE_ATOMIC_IOMAP case the stub functions did not call\npagefault_disable/_enable. The i915 driver relies on the map\nactually being atomic, otherwise it can deadlock with it\u0027s own\npagefault handler in the gtt pwrite fastpath.\n\nThis is exercised by gem_mmap_gtt from the intel-gpu-toosl gem\ntestsuite.\n\nv2: Chris Wilson noted the lack of an include.\n\nBugzilla: https://bugs.freedesktop.org/show_bug.cgi?id\u003d38115\nSigned-off-by: Daniel Vetter \u003cdaniel.vetter@ffwll.ch\u003e\nReviewed-by: Chris Wilson \u003cchris@chris-wilson.co.uk\u003e\nSigned-off-by: Keith Packard \u003ckeithp@keithp.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "09bb52774e0543390bdba59b67ade093d34e4906",
      "tree": "0515e384685d0898716bfb63cebd4c39be24ee27",
      "parents": [
        "12cb3e734a5616ea0057aee938c553ff6ccbdfbd"
      ],
      "author": {
        "name": "Ian Campbell",
        "email": "ian.campbell@citrix.com",
        "time": "Mon Oct 03 15:37:00 2011 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Nov 11 09:35:54 2011 -0800"
      },
      "message": "genirq: Add IRQF_RESUME_EARLY and resume such IRQs earlier\n\ncommit 9bab0b7fbaceec47d32db51cd9e59c82fb071f5a upstream.\n\nThis adds a mechanism to resume selected IRQs during syscore_resume\ninstead of dpm_resume_noirq.\n\nUnder Xen we need to resume IRQs associated with IPIs early enough\nthat the resched IPI is unmasked and we can therefore schedule\nourselves out of the stop_machine where the suspend/resume takes\nplace.\n\nThis issue was introduced by 676dc3cf5bc3 \"xen: Use IRQF_FORCE_RESUME\".\n\nSigned-off-by: Ian Campbell \u003cian.campbell@citrix.com\u003e\nCc: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nCc: Jeremy Fitzhardinge \u003cJeremy.Fitzhardinge@citrix.com\u003e\nCc: xen-devel \u003cxen-devel@lists.xensource.com\u003e\nCc: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\nLink: http://lkml.kernel.org/r/1318713254.11016.52.camel@dagon.hellion.org.uk\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "c7f65094f7e2b8463a7c002e967e78db8f30468a",
      "tree": "da95910f073769273a1708fccc566e18337d0752",
      "parents": [
        "40b3c4dc2c6c44972323be3a1ebd62c4fe35fac0"
      ],
      "author": {
        "name": "hank",
        "email": "pyu@redhat.com",
        "time": "Tue Sep 20 13:53:39 2011 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Nov 11 09:35:52 2011 -0800"
      },
      "message": "time: Change jiffies_to_clock_t() argument type to unsigned long\n\ncommit cbbc719fccdb8cbd87350a05c0d33167c9b79365 upstream.\n\nThe parameter\u0027s origin type is long. On an i386 architecture, it can\neasily be larger than 0x80000000, causing this function to convert it\nto a sign-extended u64 type.\n\nChange the type to unsigned long so we get the correct result.\n\nSigned-off-by: hank \u003cpyu@redhat.com\u003e\nCc: John Stultz \u003cjohn.stultz@linaro.org\u003e\n[ build fix ]\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "babba877daf7a7ee0cb03dfb5e63f23e2d32dddf",
      "tree": "024acb25011c38ad4b28e5f6c09e726ab350f62a",
      "parents": [
        "4641f8a010eb97303fbc9bd8a094139b52ffd629"
      ],
      "author": {
        "name": "Richard Cochran",
        "email": "richardcochran@gmail.com",
        "time": "Fri Oct 21 00:49:15 2011 +0000"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Nov 11 09:35:52 2011 -0800"
      },
      "message": "net: hold sock reference while processing tx timestamps\n\ncommit da92b194cc36b5dc1fbd85206aeeffd80bee0c39 upstream.\n\nThe pair of functions,\n\n * skb_clone_tx_timestamp()\n * skb_complete_tx_timestamp()\n\nwere designed to allow timestamping in PHY devices. The first\nfunction, called during the MAC driver\u0027s hard_xmit method, identifies\nPTP protocol packets, clones them, and gives them to the PHY device\ndriver. The PHY driver may hold onto the packet and deliver it at a\nlater time using the second function, which adds the packet to the\nsocket\u0027s error queue.\n\nAs pointed out by Johannes, nothing prevents the socket from\ndisappearing while the cloned packet is sitting in the PHY driver\nawaiting a timestamp. This patch fixes the issue by taking a reference\non the socket for each such packet. In addition, the comments\nregarding the usage of these function are expanded to highlight the\nrule that PHY drivers must use skb_complete_tx_timestamp() to release\nthe packet, in order to release the socket reference, too.\n\nThese functions first appeared in v2.6.36.\n\nReported-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: Richard Cochran \u003crichard.cochran@omicron.at\u003e\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nReviewed-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "7eede2cbc1066124a0a4fee4d9671e28f7c62277",
      "tree": "538804b241ed227c23f89164dc39bad6eb811e3a",
      "parents": [
        "cd0712116761eed1500b2272a5492d2120c30f26"
      ],
      "author": {
        "name": "Harro Haan",
        "email": "hrhaan@gmail.com",
        "time": "Mon Oct 10 14:38:27 2011 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Nov 11 09:35:16 2011 -0800"
      },
      "message": "USB: fix ehci alignment error\n\ncommit 276532ba9666b36974cbe16f303fc8be99c9da17 upstream.\n\nThe Kirkwood gave an unaligned memory access error on\nline 742 of drivers/usb/host/echi-hcd.c:\n\"ehci-\u003elast_periodic_enable \u003d ktime_get_real();\"\n\nSigned-off-by: Harro Haan \u003chrhaan@gmail.com\u003e\nAcked-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "0c1f111ae7fcea822fd1c078ef48e88d93afc57a",
      "tree": "5816e47f84c99a1378563bc88b7503f974cf1f61",
      "parents": [
        "36174dd629350d0654982977d7795ca28475c16f"
      ],
      "author": {
        "name": "Jiri Slaby",
        "email": "jslaby@suse.cz",
        "time": "Wed Oct 12 11:32:43 2011 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Nov 11 09:35:12 2011 -0800"
      },
      "message": "TTY: make tty_add_file non-failing\n\ncommit fa90e1c935472281de314e6d7c9a37db9cbc2e4e upstream.\n\nIf tty_add_file fails at the point it is now, we have to revert all\nthe changes we did to the tty. It means either decrease all refcounts\nif this was a tty reopen or delete the tty if it was newly allocated.\n\nThere was a try to fix this in v3.0-rc2 using tty_release in 0259894c7\n(TTY: fix fail path in tty_open). But instead it introduced a NULL\ndereference. It\u0027s because tty_release dereferences\nfilp-\u003eprivate_data, but that one is set even in our tty_add_file. And\nwhen tty_add_file fails, it\u0027s still NULL/garbage. Hence tty_release\ncannot be called there.\n\nTo circumvent the original leak (and the current NULL deref) we split\ntty_add_file into two functions, making the latter non-failing. In\nthat case we may do the former early in open, where handling failures\nis easy. The latter stays as it is now. So there is no change in\nfunctionality.\n\nThe original bug (leak) was introduced by f573bd176 (tty: Remove\n__GFP_NOFAIL from tty_add_file()). Thanks Dan for reporting this.\n\nLater, we may split tty_release into more functions and call only some\nof them in this fail path instead. (If at all possible.)\n\nIntroduced-in: v2.6.37-rc2\nSigned-off-by: Jiri Slaby \u003cjslaby@suse.cz\u003e\nReported-by: Dan Carpenter \u003cdan.carpenter@oracle.com\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nCc: Pekka Enberg \u003cpenberg@kernel.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "371d201b6da50d324e9ef405d23dac144a5407e7",
      "tree": "9b2eaa54ffcb74d3e92055b19dffb894a2e28531",
      "parents": [
        "9374622a9923b2343ee2f5083ebe6c51fcc914c5"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Jul 11 10:12:59 2011 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Sun Oct 16 14:14:55 2011 -0700"
      },
      "message": "ftrace: Fix warning when CONFIG_FUNCTION_TRACER is not defined\n\ncommit 04da85b86188f224cc9b391b5bdd92a3ba20ffcf upstream.\n\nThe struct ftrace_hash was declared within CONFIG_FUNCTION_TRACER\nbut was referenced outside of it.\n\nReported-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n\n"
    },
    {
      "commit": "d7f04c486e494bf96166ff53b0957369e32509c6",
      "tree": "5f133f3a4b823bcbdbe66aa1265254bf8f7e316f",
      "parents": [
        "e35c99bc50ef74c02244d6e6d40868f9a49a59be"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Jul 07 11:09:22 2011 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Sun Oct 16 14:14:55 2011 -0700"
      },
      "message": "ftrace: Fix regression of :mod:module function enabling\n\ncommit 43dd61c9a09bd413e837df829e6bfb42159be52a upstream.\n\nThe new code that allows different utilities to pick and choose\nwhat functions they trace broke the :mod: hook that allows users\nto trace only functions of a particular module.\n\nThe reason is that the :mod: hook bypasses the hash that is setup\nto allow individual users to trace their own functions and uses\nthe global hash directly. But if the global hash has not been\nset up, it will cause a bug:\n\necho \u0027*:mod:radeon\u0027 \u003e /sys/kernel/debug/set_ftrace_filter\n\nproduces:\n\n [drm:drm_mode_getfb] *ERROR* invalid framebuffer id\n [drm:radeon_crtc_page_flip] *ERROR* failed to reserve new rbo buffer before flip\n BUG: unable to handle kernel paging request at ffffffff8160ec90\n IP: [\u003cffffffff810d9136\u003e] add_hash_entry+0x66/0xd0\n PGD 1a05067 PUD 1a09063 PMD 80000000016001e1\n Oops: 0003 [#1] SMP Jul  7 04:02:28 phyllis kernel: [55303.858604] CPU 1\n Modules linked in: cryptd aes_x86_64 aes_generic binfmt_misc rfcomm bnep ip6table_filter hid radeon r8169 ahci libahci mii ttm drm_kms_helper drm video i2c_algo_bit intel_agp intel_gtt\n\n Pid: 10344, comm: bash Tainted: G        WC  3.0.0-rc5 #1 Dell Inc. Inspiron N5010/0YXXJJ\n RIP: 0010:[\u003cffffffff810d9136\u003e]  [\u003cffffffff810d9136\u003e] add_hash_entry+0x66/0xd0\n RSP: 0018:ffff88003a96bda8  EFLAGS: 00010246\n RAX: ffff8801301735c0 RBX: ffffffff8160ec80 RCX: 0000000000306ee0\n RDX: 0000000000000000 RSI: 0000000000000000 RDI: ffff880137c92940\n RBP: ffff88003a96bdb8 R08: ffff880137c95680 R09: 0000000000000000\n R10: 0000000000000001 R11: 0000000000000000 R12: ffffffff81c9df78\n R13: ffff8801153d1000 R14: 0000000000000000 R15: 0000000000000000\n FS: 00007f329c18a700(0000) GS:ffff880137c80000(0000) knlGS:0000000000000000\n CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033\n CR2: ffffffff8160ec90 CR3: 000000003002b000 CR4: 00000000000006e0\n DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000\n DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400\n Process bash (pid: 10344, threadinfo ffff88003a96a000, task ffff88012fcfc470)\n Stack:\n  0000000000000fd0 00000000000000fc ffff88003a96be38 ffffffff810d92f5\n  ffff88011c4c4e00 ffff880000000000 000000000b69f4d0 ffffffff8160ec80\n  ffff8800300e6f06 0000000081130295 0000000000000282 ffff8800300e6f00\n Call Trace:\n  [\u003cffffffff810d92f5\u003e] match_records+0x155/0x1b0\n  [\u003cffffffff810d940c\u003e] ftrace_mod_callback+0xbc/0x100\n  [\u003cffffffff810dafdf\u003e] ftrace_regex_write+0x16f/0x210\n  [\u003cffffffff810db09f\u003e] ftrace_filter_write+0xf/0x20\n  [\u003cffffffff81166e48\u003e] vfs_write+0xc8/0x190\n  [\u003cffffffff81167001\u003e] sys_write+0x51/0x90\n  [\u003cffffffff815c7e02\u003e] system_call_fastpath+0x16/0x1b\n Code: 48 8b 33 31 d2 48 85 f6 75 33 49 89 d4 4c 03 63 08 49 8b 14 24 48 85 d2 48 89 10 74 04 48 89 42 08 49 89 04 24 4c 89 60 08 31 d2\n RIP [\u003cffffffff810d9136\u003e] add_hash_entry+0x66/0xd0\n  RSP \u003cffff88003a96bda8\u003e\n CR2: ffffffff8160ec90\n ---[ end trace a5d031828efdd88e ]---\n\nReported-by: Brian Marete \u003cmarete@toshnix.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "a1b7ab0836a56fa4c9578f88ba1042398d7d9316",
      "tree": "5b5435397e994519b529c143c6960a35eb015308",
      "parents": [
        "00b8e8ceece20db990b1fbb11f1d6051a276436b"
      ],
      "author": {
        "name": "Jason Wang",
        "email": "jasowang@redhat.com",
        "time": "Sun Oct 09 10:56:44 2011 +0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Sun Oct 16 14:14:54 2011 -0700"
      },
      "message": "ipv6: fix NULL dereference in udp6_ufo_fragment()\n\nThis patch fixes the issue caused by ef81bb40bf15f350fe865f31fa42f1082772a576\nwhich is a backport of upstream 87c48fa3b4630905f98268dde838ee43626a060c. The\nproblem does not exist in upstream.\n\nWe do not check whether route is attached before trying to assign ip\nidentification through route dest which lead NULL pointer dereference. This\nhappens when host bridge transmit a packet from guest.\n\nThis patch changes ipv6_select_ident() to accept in6_addr as its paramter and\nfix the issue by using the destination address in ipv6 header when no route is\nattached.\n\nSigned-off-by: Jason Wang \u003cjasowang@redhat.com\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "a94a36c352abcf3c7126b238cfbf9a79314a609b",
      "tree": "7e25425f8ed760aa32ecd5073f1528ace25163ae",
      "parents": [
        "416a1b0477b56ac8e7dc3b91d5c18c8da242555c"
      ],
      "author": {
        "name": "Richard Cochran",
        "email": "richardcochran@gmail.com",
        "time": "Tue Sep 20 01:25:41 2011 +0000"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Sun Oct 16 14:14:53 2011 -0700"
      },
      "message": "ptp: fix L2 event message recognition\n\ncommit f75159e9936143177b442afc78150b7a7ad8aa07 upstream.\n\nThe IEEE 1588 standard defines two kinds of messages, event and general\nmessages. Event messages require time stamping, and general do not. When\nusing UDP transport, two separate ports are used for the two message\ntypes.\n\nThe BPF designed to recognize event messages incorrectly classifies L2\ngeneral messages as event messages. This commit fixes the issue by\nextending the filter to check the message type field for L2 PTP packets.\nEvent messages are be distinguished from general messages by testing\nthe \"general\" bit.\n\nSigned-off-by: Richard Cochran \u003crichard.cochran@omicron.at\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "249cf808ba1a0d403fe7c476a74b66e2bc0a8e53",
      "tree": "e090348cc2bc2a3a1a226f35e6c6f99f76c1bebb",
      "parents": [
        "3217df8e225c8579293fd2e193ba5cee709b6eba"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Thu Sep 01 12:42:04 2011 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Sun Oct 16 14:14:51 2011 -0700"
      },
      "message": "posix-cpu-timers: Cure SMP wobbles\n\ncommit d670ec13178d0fd8680e6742a2bc6e04f28f87d8 upstream.\n\nDavid reported:\n\n  Attached below is a watered-down version of rt/tst-cpuclock2.c from\n  GLIBC.  Just build it with \"gcc -o test test.c -lpthread -lrt\" or\n  similar.\n\n  Run it several times, and you will see cases where the main thread\n  will measure a process clock difference before and after the nanosleep\n  which is smaller than the cpu-burner thread\u0027s individual thread clock\n  difference.  This doesn\u0027t make any sense since the cpu-burner thread\n  is part of the top-level process\u0027s thread group.\n\n  I\u0027ve reproduced this on both x86-64 and sparc64 (using both 32-bit and\n  64-bit binaries).\n\n  For example:\n\n  [davem@boricha build-x86_64-linux]$ ./test\n  process: before(0.001221967) after(0.498624371) diff(497402404)\n  thread:  before(0.000081692) after(0.498316431) diff(498234739)\n  self:    before(0.001223521) after(0.001240219) diff(16698)\n  [davem@boricha build-x86_64-linux]$\n\n  The diff of \u0027process\u0027 should always be \u003e\u003d the diff of \u0027thread\u0027.\n\n  I make sure to wrap the \u0027thread\u0027 clock measurements the most tightly\n  around the nanosleep() call, and that the \u0027process\u0027 clock measurements\n  are the outer-most ones.\n\n  ---\n  #include \u003cunistd.h\u003e\n  #include \u003cstdio.h\u003e\n  #include \u003cstdlib.h\u003e\n  #include \u003ctime.h\u003e\n  #include \u003cfcntl.h\u003e\n  #include \u003cstring.h\u003e\n  #include \u003cerrno.h\u003e\n  #include \u003cpthread.h\u003e\n\n  static pthread_barrier_t barrier;\n\n  static void *chew_cpu(void *arg)\n  {\n\t  pthread_barrier_wait(\u0026barrier);\n\t  while (1)\n\t\t  __asm__ __volatile__(\"\" : : : \"memory\");\n\t  return NULL;\n  }\n\n  int main(void)\n  {\n\t  clockid_t process_clock, my_thread_clock, th_clock;\n\t  struct timespec process_before, process_after;\n\t  struct timespec me_before, me_after;\n\t  struct timespec th_before, th_after;\n\t  struct timespec sleeptime;\n\t  unsigned long diff;\n\t  pthread_t th;\n\t  int err;\n\n\t  err \u003d clock_getcpuclockid(0, \u0026process_clock);\n\t  if (err)\n\t\t  return 1;\n\n\t  err \u003d pthread_getcpuclockid(pthread_self(), \u0026my_thread_clock);\n\t  if (err)\n\t\t  return 1;\n\n\t  pthread_barrier_init(\u0026barrier, NULL, 2);\n\t  err \u003d pthread_create(\u0026th, NULL, chew_cpu, NULL);\n\t  if (err)\n\t\t  return 1;\n\n\t  err \u003d pthread_getcpuclockid(th, \u0026th_clock);\n\t  if (err)\n\t\t  return 1;\n\n\t  pthread_barrier_wait(\u0026barrier);\n\n\t  err \u003d clock_gettime(process_clock, \u0026process_before);\n\t  if (err)\n\t\t  return 1;\n\n\t  err \u003d clock_gettime(my_thread_clock, \u0026me_before);\n\t  if (err)\n\t\t  return 1;\n\n\t  err \u003d clock_gettime(th_clock, \u0026th_before);\n\t  if (err)\n\t\t  return 1;\n\n\t  sleeptime.tv_sec \u003d 0;\n\t  sleeptime.tv_nsec \u003d 500000000;\n\t  nanosleep(\u0026sleeptime, NULL);\n\n\t  err \u003d clock_gettime(th_clock, \u0026th_after);\n\t  if (err)\n\t\t  return 1;\n\n\t  err \u003d clock_gettime(my_thread_clock, \u0026me_after);\n\t  if (err)\n\t\t  return 1;\n\n\t  err \u003d clock_gettime(process_clock, \u0026process_after);\n\t  if (err)\n\t\t  return 1;\n\n\t  diff \u003d process_after.tv_nsec - process_before.tv_nsec;\n\t  printf(\"process: before(%lu.%.9lu) after(%lu.%.9lu) diff(%lu)\\n\",\n\t\t process_before.tv_sec, process_before.tv_nsec,\n\t\t process_after.tv_sec, process_after.tv_nsec, diff);\n\t  diff \u003d th_after.tv_nsec - th_before.tv_nsec;\n\t  printf(\"thread:  before(%lu.%.9lu) after(%lu.%.9lu) diff(%lu)\\n\",\n\t\t th_before.tv_sec, th_before.tv_nsec,\n\t\t th_after.tv_sec, th_after.tv_nsec, diff);\n\t  diff \u003d me_after.tv_nsec - me_before.tv_nsec;\n\t  printf(\"self:    before(%lu.%.9lu) after(%lu.%.9lu) diff(%lu)\\n\",\n\t\t me_before.tv_sec, me_before.tv_nsec,\n\t\t me_after.tv_sec, me_after.tv_nsec, diff);\n\n\t  return 0;\n  }\n\nThis is due to us using p-\u003ese.sum_exec_runtime in\nthread_group_cputime() where we iterate the thread group and sum all\ndata. This does not take time since the last schedule operation (tick\nor otherwise) into account. We can cure this by using\ntask_sched_runtime() at the cost of having to take locks.\n\nThis also means we can (and must) do away with\nthread_group_sched_runtime() since the modified thread_group_cputime()\nis now more accurate and would deadlock when called from\nthread_group_sched_runtime().\n\nAside of that it makes the function safe on 32 bit systems. The old\ncode added t-\u003ese.sum_exec_runtime unprotected. sum_exec_runtime is a\n64bit value and could be changed on another cpu at the same time.\n\nReported-by: David Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1314874459.7945.22.camel@twins\nTested-by: David Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "ac693061b11c33d5a5c5ec1925de7abd3fcb0971",
      "tree": "968e4efb688a21caedd5a3e7baea3d6343abf4bd",
      "parents": [
        "0d39ea76fa3b9a97e9dc45282613bc239ffa8509"
      ],
      "author": {
        "name": "Wu Fengguang",
        "email": "fengguang.wu@intel.com",
        "time": "Sun Jun 06 10:38:15 2010 -0600"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Oct 03 11:40:43 2011 -0700"
      },
      "message": "writeback: introduce .tagged_writepages for the WB_SYNC_NONE sync stage\n\ncommit 6e6938b6d3130305a5960c86b1a9b21e58cf6144 upstream.\n\nsync(2) is performed in two stages: the WB_SYNC_NONE sync and the\nWB_SYNC_ALL sync. Identify the first stage with .tagged_writepages and\ndo livelock prevention for it, too.\n\nJan\u0027s commit f446daaea9 (\"mm: implement writeback livelock avoidance\nusing page tagging\") is a partial fix in that it only fixed the\nWB_SYNC_ALL phase livelock.\n\nAlthough ext4 is tested to no longer livelock with commit f446daaea9,\nit may due to some \"redirty_tail() after pages_skipped\" effect which\nis by no means a guarantee for _all_ the file systems.\n\nNote that writeback_inodes_sb() is called by not only sync(), they are\ntreated the same because the other callers also need livelock prevention.\n\nImpact:  It changes the order in which pages/inodes are synced to disk.\nNow in the WB_SYNC_NONE stage, it won\u0027t proceed to write the next inode\nuntil finished with the current inode.\n\nAcked-by: Jan Kara \u003cjack@suse.cz\u003e\nCC: Dave Chinner \u003cdavid@fromorbit.com\u003e\nSigned-off-by: Wu Fengguang \u003cfengguang.wu@intel.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "7edcab441920647c6ffec304451e11bc18ff1b11",
      "tree": "a4dcbb48220e7c57b4520912ebe2793a2a18b84c",
      "parents": [
        "1bfc85f2f23469eedf4ac65fed44573be1a5a133"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Wed Aug 03 18:04:29 2011 +0900"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Oct 03 11:40:26 2011 -0700"
      },
      "message": "mfd: Fix value of WM8994_CONFIGURE_GPIO\n\ncommit 8efcc57dedfebc99c3cd39564e3fc47cd1a24b75 upstream.\n\nThis needs to be an out of band value for the register and on this device\nregisters are 16 bit so we must shift left one to the 17th bit.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\nSigned-off-by: Samuel Ortiz \u003csameo@linux.intel.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "101e357617f790d36b999dada08c437fd2431c3c",
      "tree": "4a4c4abfbf50e05efec65926c66a1a037faa0437",
      "parents": [
        "8bdb14f9c33bb0ad8b37a9465c968ccce4ecda3b"
      ],
      "author": {
        "name": "Jim Garlick",
        "email": "garlick.jim@gmail.com",
        "time": "Sun Aug 21 00:21:18 2011 +0530"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Oct 03 11:40:22 2011 -0700"
      },
      "message": "fs/9p: Use protocol-defined value for lock/getlock \u0027type\u0027 field.\n\ncommit 51b8b4fb32271d39fbdd760397406177b2b0fd36 upstream.\n\nSigned-off-by: Jim Garlick \u003cgarlick@llnl.gov\u003e\nSigned-off-by: Aneesh Kumar K.V \u003caneesh.kumar@linux.vnet.ibm.com\u003e\nSigned-off-by: Harsh Prateek Bora \u003charsh@linux.vnet.ibm.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "a111278ea956e42e2d1ac4b4f04a2c71d322235b",
      "tree": "ed4dec0ef5ce9447f05b4836c0bc4534886aeecb",
      "parents": [
        "29a3e8657d2a2640384166e3fe29a086d235fc33"
      ],
      "author": {
        "name": "Aneesh Kumar K.V",
        "email": "aneesh.kumar@linux.vnet.ibm.com",
        "time": "Wed Aug 03 19:55:32 2011 +0530"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Oct 03 11:40:21 2011 -0700"
      },
      "message": "fs/9p: Add OS dependent open flags in 9p protocol\n\ncommit f88657ce3f9713a0c62101dffb0e972a979e77b9 upstream.\n\nSome of the flags are OS/arch dependent we add a 9p\nprotocol value which maps to asm-generic/fcntl.h values in Linux\nBased on the original patch from Venkateswararao Jujjuri \u003cjvrao@linux.vnet.ibm.com\u003e\n\n[extra comments from author as to why this needs to go to stable:\n\nEarlier for different operation such as open we used the values of open\nflag as defined by the OS.  But some of these flags such as O_DIRECT are\narch dependent. So if we have the 9p client and server running on\ndifferent architectures, we end up with client sending client\narchitecture value of these open flag and server will try to map these\nvalues to what its architecture states. For ex: O_DIRECT on a x86 client\nmaps to\n\n#define O_DIRECT        00040000\n\nWhere as on sparc server it will maps to\n\n#define O_DIRECT        0x100000\n\nHence we need to map these open flags to OS/arch independent flag\nvalues.  Getting these changes to an early version of kernel ensures us\nthat we work with different combination of client and server. We should\nideally backport this patch to all possible kernel version.]\n\nSigned-off-by: Aneesh Kumar K.V \u003caneesh.kumar@linux.vnet.ibm.com\u003e\nSigned-off-by: Harsh Prateek Bora \u003charsh@linux.vnet.ibm.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "1ed2053563d4d0bf70864a9df53c7a5dce7724e9",
      "tree": "e6ab98a2249cc9015a48deb25d0255837de25f58",
      "parents": [
        "c3a44b4d23f4cb1b3eafb8c2c74d88f452d50a6d"
      ],
      "author": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Fri Jul 22 09:12:51 2011 +0000"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Oct 03 11:40:08 2011 -0700"
      },
      "message": "rtc: Fix RTC PIE frequency limit\n\ncommit 938f97bcf1bdd1b681d5d14d1d7117a2e22d4434 upstream.\n\nThomas earlier submitted a fix to limit the RTC PIE freq, but\npicked 5000Hz out of the air. Willy noticed that we should\ninstead use the 8192Hz max from the rtc man documentation.\n\nCc: Willy Tarreau \u003cw@1wt.eu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "a38df1a01320298198c7cb2e3e8a61fc54459d6a",
      "tree": "358a4b7c1a12a3ac49fa41c9baea128de9577734",
      "parents": [
        "64da3499c911698c004a2d47fd0af6ad683a811a"
      ],
      "author": {
        "name": "Jiri Slaby",
        "email": "jslaby@suse.cz",
        "time": "Wed Aug 10 14:59:28 2011 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Oct 03 11:39:49 2011 -0700"
      },
      "message": "TTY: pty, fix pty counting\n\ncommit 24d406a6bf736f7aebdc8fa0f0ec86e0890c6d24 upstream.\n\ntty_operations-\u003eremove is normally called like:\nqueue_release_one_tty\n -\u003etty_shutdown\n   -\u003etty_driver_remove_tty\n     -\u003etty_operations-\u003eremove\n\nHowever tty_shutdown() is called from queue_release_one_tty() only if\ntty_operations-\u003eshutdown is NULL. But for pty, it is not.\npty_unix98_shutdown() is used there as -\u003eshutdown.\n\nSo tty_operations-\u003eremove of pty (i.e. pty_unix98_remove()) is never\ncalled. This results in invalid pty_count. I.e. what can be seen in\n/proc/sys/kernel/pty/nr.\n\nI see this was already reported at:\n  https://lkml.org/lkml/2009/11/5/370\nBut it was not fixed since then.\n\nThis patch is kind of a hackish way. The problem lies in -\u003einstall. We\nallocate there another tty (so-called tty-\u003elink). So -\u003einstall is\ncalled once, but -\u003eremove twice, for both tty and tty-\u003elink. The fix\nhere is to count both tty and tty-\u003elink and divide the count by 2 for\nuser.\n\nAnd to have -\u003eremove called, let\u0027s make tty_driver_remove_tty() global\nand call that from pty_unix98_shutdown() (tty_operations-\u003eshutdown).\n\nWhile at it, let\u0027s document that when -\u003eshutdown is defined,\ntty_shutdown() is not called.\n\nSigned-off-by: Jiri Slaby \u003cjslaby@suse.cz\u003e\nCc: Alan Cox \u003calan@linux.intel.com\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "ae0250b118d5b55392264accf72a0a3d658e0da9",
      "tree": "045f90274d30db6f756a4dad0249c20a5e5a273a",
      "parents": [
        "7f4e15693062aa1afcfc8f05f6790baf29bacfa3"
      ],
      "author": {
        "name": "Alexandre Bounine",
        "email": "alexandre.bounine@idt.com",
        "time": "Thu Aug 25 15:59:13 2011 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Oct 03 11:39:46 2011 -0700"
      },
      "message": "rapidio: fix use of non-compatible registers\n\ncommit 284fb68d00c56e971ed01e0b4bac5ddd4d1b74ab upstream.\n\nReplace/remove use of RIO v.1.2 registers/bits that are not\nforward-compatible with newer versions of RapidIO specification.\n\nRapidIO specification v.1.3 removed Write Port CSR, Doorbell CSR,\nMailbox CSR and Mailbox and Doorbell bits of the PEF CAR.\n\nUse of removed (since RIO v.1.3) register bits affects users of\ncurrently available 1.3 and 2.x compliant devices who may use not so\nrecent kernel versions.\n\nRemoving checks for unsupported bits makes corresponding routines\ncompatible with all versions of RapidIO specification.  Therefore,\nbackporting makes stable kernel versions compliant with RIO v.1.3 and\nlater as well.\n\nSigned-off-by: Alexandre Bounine \u003calexandre.bounine@idt.com\u003e\nCc: Kumar Gala \u003cgalak@kernel.crashing.org\u003e\nCc: Matt Porter \u003cmporter@kernel.crashing.org\u003e\nCc: Li Yang \u003cleoli@freescale.com\u003e\nCc: Thomas Moll \u003cthomas.moll@sysgo.com\u003e\nCc: Chul Kim \u003cchul.kim@idt.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "512228f0be3af44bf5cf6cc5750ddd279bbedaf3",
      "tree": "4efaddfd0a353537b70c2a1059ebf49a1b624286",
      "parents": [
        "80b5405f36fba0caa9a142f978c00afa6aa7714c"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@linux.intel.com",
        "time": "Fri Aug 19 16:15:10 2011 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Aug 29 13:29:16 2011 -0700"
      },
      "message": "Add a personality to report 2.6.x version numbers\n\ncommit be27425dcc516fd08245b047ea57f83b8f6f0903 upstream.\n\nI ran into a couple of programs which broke with the new Linux 3.0\nversion.  Some of those were binary only.  I tried to use LD_PRELOAD to\nwork around it, but it was quite difficult and in one case impossible\nbecause of a mix of 32bit and 64bit executables.\n\nFor example, all kind of management software from HP doesnt work, unless\nwe pretend to run a 2.6 kernel.\n\n  $ uname -a\n  Linux svivoipvnx001 3.0.0-08107-g97cd98f #1062 SMP Fri Aug 12 18:11:45 CEST 2011 i686 i686 i386 GNU/Linux\n\n  $ hpacucli ctrl all show\n\n  Error: No controllers detected.\n\n  $ rpm -qf /usr/sbin/hpacucli\n  hpacucli-8.75-12.0\n\nAnother notable case is that Python now reports \"linux3\" from\nsys.platform(); which in turn can break things that were checking\nsys.platform() \u003d\u003d \"linux2\":\n\n  https://bugzilla.mozilla.org/show_bug.cgi?id\u003d664564\n\nIt seems pretty clear to me though it\u0027s a bug in the apps that are using\n\u0027\u003d\u003d\u0027 instead of .startswith(), but this allows us to unbreak broken\nprograms.\n\nThis patch adds a UNAME26 personality that makes the kernel report a\n2.6.40+x version number instead.  The x is the x in 3.x.\n\nI know this is somewhat ugly, but I didn\u0027t find a better workaround, and\ncompatibility to existing programs is important.\n\nSome programs also read /proc/sys/kernel/osrelease.  This can be worked\naround in user space with mount --bind (and a mount namespace)\n\nTo use:\n\n  wget ftp://ftp.kernel.org/pub/linux/kernel/people/ak/uname26/uname26.c\n  gcc -o uname26 uname26.c\n  ./uname26 program\n\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "6857336c7fddaf460a13adc0c395698fcf9423ff",
      "tree": "dac27f38c28bf9d30535b5abc51a6424e7b32afb",
      "parents": [
        "e25d2c749d25fc559f374766af66d267c97e0877"
      ],
      "author": {
        "name": "Suresh Siddha",
        "email": "suresh.b.siddha@intel.com",
        "time": "Thu Jun 23 11:19:26 2011 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Aug 29 13:29:08 2011 -0700"
      },
      "message": "x86, mtrr: lock stop machine during MTRR rendezvous sequence\n\ncommit 6d3321e8e2b3bf6a5892e2ef673c7bf536e3f904 upstream.\n\nMTRR rendezvous sequence using stop_one_cpu_nowait() can potentially\nhappen in parallel with another system wide rendezvous using\nstop_machine(). This can lead to deadlock (The order in which\nworks are queued can be different on different cpu\u0027s. Some cpu\u0027s\nwill be running the first rendezvous handler and others will be running\nthe second rendezvous handler. Each set waiting for the other set to join\nfor the system wide rendezvous, leading to a deadlock).\n\nMTRR rendezvous sequence is not implemented using stop_machine() as this\ngets called both from the process context aswell as the cpu online paths\n(where the cpu has not come online and the interrupts are disabled etc).\nstop_machine() works with only online cpus.\n\nFor now, take the stop_machine mutex in the MTRR rendezvous sequence that\ngets called from an online cpu (here we are in the process context\nand can potentially sleep while taking the mutex). And the MTRR rendezvous\nthat gets triggered during cpu online doesn\u0027t need to take this stop_machine\nlock (as the stop_machine() already ensures that there is no cpu hotplug\ngoing on in parallel by doing get_online_cpus())\n\n    TBD: Pursue a cleaner solution of extending the stop_machine()\n         infrastructure to handle the case where the calling cpu is\n         still not online and use this for MTRR rendezvous sequence.\n\nfixes: https://bugzilla.novell.com/show_bug.cgi?id\u003d672008\n\nReported-by: Vadim Kotelnikov \u003cvadimuzzz@inbox.ru\u003e\nSigned-off-by: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nLink: http://lkml.kernel.org/r/20110623182056.807230326@sbsiddha-MOBL3.sc.intel.com\nSigned-off-by: H. Peter Anvin \u003chpa@linux.intel.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "0db4b32c1f389165369b384fd13200277202cdd0",
      "tree": "71d977341f1b7e117c4464d1c87c23dad3ddaec2",
      "parents": [
        "8af1028380467f993573b5eef904522b9e2f5951"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "peterz@infradead.org",
        "time": "Wed Jul 27 12:17:11 2011 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Aug 15 18:31:43 2011 -0700"
      },
      "message": "mm: Fix fixup_user_fault() for MMU\u003dn\n\ncommit 5c723ba5b7886909b2e430f2eae454c33f7fe5c6 upstream.\n\nIn commit 2efaca927f5c (\"mm/futex: fix futex writes on archs with SW\ntracking of dirty \u0026 young\") we forgot about MMU\u003dn.  This patch fixes\nthat.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nAcked-by: David Howells \u003cdhowells@redhat.com\u003e\nLink: http://lkml.kernel.org/r/1311761831.24752.413.camel@twins\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Mike Frysinger \u003cvapier.adi@gmail.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "60f17a7798369bec34f171ca126f8247c773763b",
      "tree": "84f10726110facc5c624bccedc02cab0fa6da970",
      "parents": [
        "711ae7c7a810eb8bc92cac46041c996eb66dbd54"
      ],
      "author": {
        "name": "Neil Horman",
        "email": "nhorman@tuxdriver.com",
        "time": "Tue Jul 26 06:05:37 2011 +0000"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Aug 15 18:31:38 2011 -0700"
      },
      "message": "net: add IFF_SKB_TX_SHARED flag to priv_flags\n\n[ Upstream commit d8873315065f1f527c7c380402cf59b1e1d0ae36 ]\n\nPktgen attempts to transmit shared skbs to net devices, which can\u0027t be used by\nsome drivers as they keep state information in skbs.  This patch adds a flag\nmarking drivers as being able to handle shared skbs in their tx path.  Drivers\nare defaulted to being unable to do so, but calling ether_setup enables this\nflag, as 90% of the drivers calling ether_setup touch real hardware and can\nhandle shared skbs.  A subsequent patch will audit drivers to ensure that the\nflag is set properly\n\nSigned-off-by: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nReported-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nCC: Robert Olsson \u003crobert.olsson@its.uu.se\u003e\nCC: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCC: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nCC: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "ef81bb40bf15f350fe865f31fa42f1082772a576",
      "tree": "f89c3e9616127d234207a84e108bf147cc393215",
      "parents": [
        "eb473dd5ad8785d35142966cdcd6896d8dff5a22"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Mon Aug 08 23:44:00 2011 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Aug 15 18:31:37 2011 -0700"
      },
      "message": "ipv6: make fragment identifications less predictable\n\n[ Backport of upstream commit 87c48fa3b4630905f98268dde838ee43626a060c ]\n\nFernando Gont reported current IPv6 fragment identification generation\nwas not secure, because using a very predictable system-wide generator,\nallowing various attacks.\n\nIPv4 uses inetpeer cache to address this problem and to get good\nperformance. We\u0027ll use this mechanism when IPv6 inetpeer is stable\nenough in linux-3.1\n\nFor the time being, we use jhash on destination address to provide less\npredictable identifications. Also remove a spinlock and use cmpxchg() to\nget better SMP performance.\n\nReported-by: Fernando Gont \u003cfernando@gont.com.ar\u003e\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "e997d47bff5a467262ef224b4cf8cbba2d3eceea",
      "tree": "6560c0ac8f2b19a4b7f40db6cc22a9857fe4f1a3",
      "parents": [
        "2468b895fc7dcbc436cb02f0707ab8d7cb2f0aa7"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Aug 03 20:50:44 2011 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Aug 15 18:31:35 2011 -0700"
      },
      "message": "net: Compute protocol sequence numbers and fragment IDs using MD5.\n\nComputers have become a lot faster since we compromised on the\npartial MD4 hash which we use currently for performance reasons.\n\nMD5 is a much safer choice, and is inline with both RFC1948 and\nother ISS generators (OpenBSD, Solaris, etc.)\n\nFurthermore, only having 24-bits of the sequence number be truly\nunpredictable is a very serious limitation.  So the periodic\nregeneration and 8-bit counter have been removed.  We compute and\nuse a full 32-bit sequence number.\n\nFor ipv6, DCCP was found to use a 32-bit truncated initial sequence\nnumber (it needs 43-bits) and that is fixed here as well.\n\nReported-by: Dan Kaminsky \u003cdan@doxpara.com\u003e\nTested-by: Willy Tarreau \u003cw@1wt.eu\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "2468b895fc7dcbc436cb02f0707ab8d7cb2f0aa7",
      "tree": "06fad85c0ac37b8f7221388b836b8e3c4b8aa225",
      "parents": [
        "c1c741511cbe9fe55257959a83d1fa4361afc5dd"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Aug 03 19:45:10 2011 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Aug 15 18:31:35 2011 -0700"
      },
      "message": "crypto: Move md5_transform to lib/md5.c\n\nWe are going to use this for TCP/IP sequence number and fragment ID\ngeneration.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "9ae352371ad759dba1053a284625a2dee785353f",
      "tree": "06e5c5b249ce4b76b736e05c3baf523b821b4b37",
      "parents": [
        "c7b53ef3876b12a225039b930088eec77234661f"
      ],
      "author": {
        "name": "Ole Henrik Jahren",
        "email": "olehenja@alumni.ntnu.no",
        "time": "Fri Jul 22 15:56:01 2011 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Aug 15 18:31:35 2011 -0700"
      },
      "message": "drm/i915: Fix typo in DRM_I915_OVERLAY_PUT_IMAGE ioctl define\n\ncommit 842d452985300f4ec14c68cb86046e8a1a3b7251 upstream.\n\nBecause of a typo, calling ioctl with DRM_IOCTL_I915_OVERLAY_PUT_IMAGE\nis broken if the macro is used directly. When using libdrm the bug is\nnot hit, since libdrm handles the ioctl encoding internally.\n\nThe typo also leads to the .cmd and .cmd_drv fields of the drm_ioctl\nstructure for DRM_I915_OVERLAY_PUT_IMAGE having inconsistent content.\n\nSigned-off-by: Ole Henrik Jahren \u003colehenja@alumni.ntnu.no\u003e\nAcked-by: Daniel Vetter \u003cdaniel.vetter@ffwll.ch\u003e\nSigned-off-by: Keith Packard \u003ckeithp@keithp.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "ca0acca0f0382ed27f2c64d5db4e8b82b8ff1169",
      "tree": "7fca7c8d0090707752a2d4cf8793e3be5aacc4a3",
      "parents": [
        "a18696ca2b7699c1949ac3f606bd28264e48f8dd"
      ],
      "author": {
        "name": "Thomas Reim",
        "email": "reimth@gmail.com",
        "time": "Fri Jul 29 14:28:57 2011 +0000"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Aug 15 18:31:34 2011 -0700"
      },
      "message": "drm: Separate EDID Header Check from EDID Block Check\n\ncommit 051963d4832ed61e5ae74f5330b0a94489e101b9 upstream.\n\n    Provides function drm_edid_header_is_valid() for EDID header check\n    and replaces EDID header check part of function drm_edid_block_valid()\n    by a call of drm_edid_header_is_valid().\n    This is a prerequisite to extend DDC probing, e. g. in function\n    radeon_ddc_probe() for Radeon devices, by a central EDID header check.\n\n    Tested for kernel 2.6.35, 2.6.38 and 3.0\n\nSigned-off-by: Thomas Reim \u003creimth@gmail.com\u003e\nReviewed-by: Alex Deucher \u003calexdeucher@gmail.com\u003e\nAcked-by: Stephen Michaels \u003cStephen.Micheals@gmail.com\u003e\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "a18696ca2b7699c1949ac3f606bd28264e48f8dd",
      "tree": "3bf1a31c4d2be51eae01ab11c56e3b0fca376299",
      "parents": [
        "5b47b8038f183b44d2d8ff1c7d11a5c1be706b34"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy.fitzhardinge@citrix.com",
        "time": "Tue May 31 10:50:10 2011 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Aug 15 18:31:34 2011 -0700"
      },
      "message": "xen: allow enable use of VGA console on dom0\n\ncommit c2419b4a4727f67af2fc2cd68b0d878b75e781bb upstream.\n\nGet the information about the VGA console hardware from Xen, and put\nit into the form the bootloader normally generates, so that the rest\nof the kernel can deal with VGA as usual.\n\n[ Impact: make VGA console work in dom0 ]\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\n[v1: Rebased on 2.6.39]\n[v2: Removed incorrect comments and fixed compile warnings]\nSigned-off-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "c14acb19a4b1482b6dd6e9d0874b2c8e32d6599d",
      "tree": "09449801fb0b88b73bdbb83876f251a65a2120ac",
      "parents": [
        "1fcb9d4b03b6ad6f4de417bbbe21d82123290114"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Jul 30 12:45:35 2011 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Aug 04 21:58:40 2011 -0700"
      },
      "message": "NFS: Fix spurious readdir cookie loop messages\n\ncommit 0c0308066ca53fdf1423895f3a42838b67b3a5a8 upstream.\n\nIf the directory contents change, then we have to accept that the\nfile-\u003ef_pos value may shrink if we do a \u0027search-by-cookie\u0027. In that\ncase, we should turn off the loop detection and let the NFS client\ntry to recover.\n\nThe patch also fixes a second loop detection bug by ensuring\nthat after turning on the ctx-\u003eduped flag, we read at least one new\ncookie into ctx-\u003edir_cookie before attempting to match with\nctx-\u003edup_cookie.\n\nReported-by: Petr Vandrovec \u003cpetr@vandrovec.name\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "b045b9a265fb46d8197b7d78aff1a8f6ab8e23df",
      "tree": "650daaba84981a7ac749611f2ccee133380940c5",
      "parents": [
        "cb83d9f7840657a0f0cc29ba5c01ce7320e28e9a"
      ],
      "author": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Mon Jul 25 17:12:32 2011 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Aug 04 21:58:38 2011 -0700"
      },
      "message": "mm/futex: fix futex writes on archs with SW tracking of dirty \u0026 young\n\ncommit 2efaca927f5cd7ecd0f1554b8f9b6a9a2c329c03 upstream.\n\nI haven\u0027t reproduced it myself but the fail scenario is that on such\nmachines (notably ARM and some embedded powerpc), if you manage to hit\nthat futex path on a writable page whose dirty bit has gone from the PTE,\nyou\u0027ll livelock inside the kernel from what I can tell.\n\nIt will go in a loop of trying the atomic access, failing, trying gup to\n\"fix it up\", getting succcess from gup, go back to the atomic access,\nfailing again because dirty wasn\u0027t fixed etc...\n\nSo I think you essentially hang in the kernel.\n\nThe scenario is probably rare\u0027ish because affected architecture are\nembedded and tend to not swap much (if at all) so we probably rarely hit\nthe case where dirty is missing or young is missing, but I think Shan has\na piece of SW that can reliably reproduce it using a shared writable\nmapping \u0026 fork or something like that.\n\nOn archs who use SW tracking of dirty \u0026 young, a page without dirty is\neffectively mapped read-only and a page without young unaccessible in the\nPTE.\n\nAdditionally, some architectures might lazily flush the TLB when relaxing\nwrite protection (by doing only a local flush), and expect a fault to\ninvalidate the stale entry if it\u0027s still present on another processor.\n\nThe futex code assumes that if the \"in_atomic()\" access -EFAULT\u0027s, it can\n\"fix it up\" by causing get_user_pages() which would then be equivalent to\ntaking the fault.\n\nHowever that isn\u0027t the case.  get_user_pages() will not call\nhandle_mm_fault() in the case where the PTE seems to have the right\npermissions, regardless of the dirty and young state.  It will eventually\nupdate those bits ...  in the struct page, but not in the PTE.\n\nAdditionally, it will not handle the lazy TLB flushing that can be\nrequired by some architectures in the fault case.\n\nBasically, gup is the wrong interface for the job.  The patch provides a\nmore appropriate one which boils down to just calling handle_mm_fault()\nsince what we are trying to do is simulate a real page fault.\n\nThe futex code currently attempts to write to user memory within a\npagefault disabled section, and if that fails, tries to fix it up using\nget_user_pages().\n\nThis doesn\u0027t work on archs where the dirty and young bits are maintained\nby software, since they will gate access permission in the TLB, and will\nnot be updated by gup().\n\nIn addition, there\u0027s an expectation on some archs that a spurious write\nfault triggers a local TLB flush, and that is missing from the picture as\nwell.\n\nI decided that adding those \"features\" to gup() would be too much for this\nalready too complex function, and instead added a new simpler\nfixup_user_fault() which is essentially a wrapper around handle_mm_fault()\nwhich the futex code can call.\n\n[akpm@linux-foundation.org: coding-style fixes]\n[akpm@linux-foundation.org: fix some nits Darren saw, fiddle comment layout]\nSigned-off-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nReported-by: Shan Hai \u003chaishan.bai@gmail.com\u003e\nTested-by: Shan Hai \u003chaishan.bai@gmail.com\u003e\nCc: David Laight \u003cDavid.Laight@ACULAB.COM\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Darren Hart \u003cdarren.hart@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "892cd4a38f0d379dfdbc1a0a45eaa31a89976796",
      "tree": "edc8337ed3451ff819dc20e3436b5019479b6c87",
      "parents": [
        "f45c1d4647a37feee31f4bca9ebd9b90ebdc98a3"
      ],
      "author": {
        "name": "Peng Tao",
        "email": "peng_tao@emc.com",
        "time": "Sat Jul 30 20:52:33 2011 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Aug 04 21:58:37 2011 -0700"
      },
      "message": "pnfs: let layoutcommit handle a list of lseg\n\ncommit a9bae5666d0510ad69bdb437371c9a3e6b770705 upstream.\n\nThere can be multiple lseg per file, so layoutcommit should be\nable to handle it.\n\n[Needed in v3.0]\nSigned-off-by: Peng Tao \u003cpeng_tao@emc.com\u003e\nSigned-off-by: Boaz Harrosh \u003cbharrosh@panasas.com\u003e\nSigned-off-by: Jim Rees \u003crees@umich.edu\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "6f437783919467437f19ec534a0317aef2fd2584",
      "tree": "01e8500766574786b1fd63e9a3090ac2c45777f9",
      "parents": [
        "63ab4325d0df2ccefaeb932210d4046f2223e338"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sat Jul 09 16:43:22 2011 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Aug 04 21:58:34 2011 -0700"
      },
      "message": "firewire: cdev: prevent race between first get_info ioctl and bus reset event queuing\n\ncommit 93b37905f70083d6143f5f4dba0a45cc64379a62 upstream.\n\nBetween open(2) of a /dev/fw* and the first FW_CDEV_IOC_GET_INFO\nioctl(2) on it, the kernel already queues FW_CDEV_EVENT_BUS_RESET events\nto be read(2) by the client.  The get_info ioctl is practically always\nissued right away after open, hence this condition only occurs if the\nclient opens during a bus reset, especially during a rapid series of bus\nresets.\n\nThe problem with this condition is twofold:\n\n  - These bus reset events carry the (as yet undocumented) @closure\n    value of 0.  But it is not the kernel\u0027s place to choose closures;\n    they are privat to the client.  E.g., this 0 value forced from the\n    kernel makes it unsafe for clients to dereference it as a pointer to\n    a closure object without NULL pointer check.\n\n  - It is impossible for clients to determine the relative order of bus\n    reset events from get_info ioctl(2) versus those from read(2),\n    except in one way:  By comparison of closure values.  Again, such a\n    procedure imposes complexity on clients and reduces freedom in use\n    of the bus reset closure.\n\nSo, change the ABI to suppress queuing of bus reset events before the\nfirst FW_CDEV_IOC_GET_INFO ioctl was issued by the client.\n\nNote, this ABI change cannot be version-controlled.  The kernel cannot\ndistinguish old from new clients before the first FW_CDEV_IOC_GET_INFO\nioctl.\n\nWe will try to back-merge this change into currently maintained stable/\nlongterm series, and we only document the new behaviour.  The old\nbehavior is now considered a kernel bug, which it basically is.\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\nCc: \u003cstable@kernel.org\u003e\n\n"
    },
    {
      "commit": "97edbc901240090ca75b81aa8955bcef8d570434",
      "tree": "98938f16e4c6cc3faf2cbe6cf66d75f7f731f769",
      "parents": [
        "bde99f604b42182e590ac4b7176b5235321bc94c"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Wed Jul 27 06:16:28 2011 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Aug 04 21:58:31 2011 -0700"
      },
      "message": "gro: Only reset frag0 when skb can be pulled\n\ncommit 17dd759c67f21e34f2156abcf415e1f60605a188 upstream.\n\nCurrently skb_gro_header_slow unconditionally resets frag0 and\nfrag0_len.  However, when we can\u0027t pull on the skb this leaves\nthe GRO fields in an inconsistent state.\n\nThis patch fixes this by only resetting those fields after the\npskb_may_pull test.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "cf6ace16a3cd8b728fb0afa68368fd40bbeae19f",
      "tree": "489c64380668e8c5a29d3f36f37554e4b081a647",
      "parents": [
        "acc11eab70591744369722280c9ce162a6193494",
        "d1e9ae47a0285d3f1699e8219ce50f656243b93f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 20 15:56:25 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 20 15:56:25 2011 -0700"
      },
      "message": "Merge branch \u0027core-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  signal: align __lock_task_sighand() irq disabling and RCU\n  softirq,rcu: Inform RCU of irq_exit() activity\n  sched: Add irq_{enter,exit}() to scheduler_ipi()\n  rcu: protect __rcu_read_unlock() against scheduler-using irq handlers\n  rcu: Streamline code produced by __rcu_read_unlock()\n  rcu: Fix RCU_BOOST race handling current-\u003ercu_read_unlock_special\n  rcu: decrease rcu_report_exp_rnp coupling with scheduler\n"
    },
    {
      "commit": "d1e9ae47a0285d3f1699e8219ce50f656243b93f",
      "tree": "2f5a68b5ba1677bcd49ee759f09ffc5ccccb1455",
      "parents": [
        "e6625fa48e6580a74b7e700efd7e6463e282810b",
        "a841796f11c90d53dbac773be56b04fbee8af272"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jul 20 20:59:26 2011 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jul 20 20:59:26 2011 +0200"
      },
      "message": "Merge branch \u0027rcu/urgent\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-2.6-rcu into core/urgent\n"
    },
    {
      "commit": "e3589f6c81e4764d32a25d2a2a0afe54fa344f5c",
      "tree": "414bf6bdbad3f04f629fa2a72254ea85acf723f4",
      "parents": [
        "9c3f75cbd144014bea6af866a154cc2e73ab2287"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri Jul 15 10:35:52 2011 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jul 20 18:32:41 2011 +0200"
      },
      "message": "sched: Allow for overlapping sched_domain spans\n\nAllow for sched_domain spans that overlap by giving such domains their\nown sched_group list instead of sharing the sched_groups amongst\neach-other.\n\nThis is needed for machines with more than 16 nodes, because\nsched_domain_node_span() will generate a node mask from the\n16 nearest nodes without regard if these masks have any overlap.\n\nCurrently sched_domains have a sched_group that maps to their child\nsched_domain span, and since there is no overlap we share the\nsched_group between the sched_domains of the various CPUs. If however\nthere is overlap, we would need to link the sched_group list in\ndifferent ways for each cpu, and hence sharing isn\u0027t possible.\n\nIn order to solve this, allocate private sched_groups for each CPU\u0027s\nsched_domain but have the sched_groups share a sched_group_power\nstructure such that we can uniquely track the power.\n\nReported-and-tested-by: Anton Blanchard \u003canton@samba.org\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nLink: http://lkml.kernel.org/n/tip-08bxqw9wis3qti9u5inifh3y@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "9c3f75cbd144014bea6af866a154cc2e73ab2287",
      "tree": "2a565f7ff0820269973415c5605e313cfff903b4",
      "parents": [
        "e6625fa48e6580a74b7e700efd7e6463e282810b"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Thu Jul 14 13:00:06 2011 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jul 20 18:32:40 2011 +0200"
      },
      "message": "sched: Break out cpu_power from the sched_group structure\n\nIn order to prepare for non-unique sched_groups per domain, we need to\ncarry the cpu_power elsewhere, so put a level of indirection in.\n\nReported-and-tested-by: Anton Blanchard \u003canton@samba.org\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nLink: http://lkml.kernel.org/n/tip-qkho2byuhe4482fuknss40ad@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "7765be2fec0f476fcd61812d5f9406b04c765020",
      "tree": "e89ccb3fbd5655090b05f608f8e1d39924f23a9a",
      "parents": [
        "131906b0062ddde7f85bbe67754983c754648bd8"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paul.mckenney@linaro.org",
        "time": "Thu Jul 14 12:24:11 2011 -0700"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Tue Jul 19 21:38:52 2011 -0700"
      },
      "message": "rcu: Fix RCU_BOOST race handling current-\u003ercu_read_unlock_special\n\nThe RCU_BOOST commits for TREE_PREEMPT_RCU introduced an other-task\nwrite to a new RCU_READ_UNLOCK_BOOSTED bit in the task_struct structure\u0027s\n-\u003ercu_read_unlock_special field, but, as noted by Steven Rostedt, without\ncorrectly synchronizing all accesses to -\u003ercu_read_unlock_special.\nThis could result in bits in -\u003ercu_read_unlock_special being spuriously\nset and cleared due to conflicting accesses, which in turn could result\nin deadlocks between the rcu_node structure\u0027s -\u003elock and the scheduler\u0027s\nrq and pi locks.  These deadlocks would result from RCU incorrectly\nbelieving that the just-ended RCU read-side critical section had been\npreempted and/or boosted.  If that RCU read-side critical section was\nexecuted with either rq or pi locks held, RCU\u0027s ensuing (incorrect)\ncalls to the scheduler would cause the scheduler to attempt to once\nagain acquire the rq and pi locks, resulting in deadlock.  More complex\ndeadlock cycles are also possible, involving multiple rq and pi locks\nas well as locks from multiple rcu_node structures.\n\nThis commit fixes synchronization by creating -\u003ercu_boosted field in\ntask_struct that is accessed and modified only when holding the -\u003elock\nin the rcu_node structure on which the task is queued (on that rcu_node\nstructure\u0027s -\u003eblkd_tasks list).  This results in tasks accessing only\ntheir own current-\u003ercu_read_unlock_special fields, making unsynchronized\naccess once again legal, and keeping the rcu_read_unlock() fastpath free\nof atomic instructions and memory barriers.\n\nThe reason that the rcu_read_unlock() fastpath does not need to access\nthe new current-\u003ercu_boosted field is that this new field cannot\nbe non-zero unless the RCU_READ_UNLOCK_BLOCKED bit is set in the\ncurrent-\u003ercu_read_unlock_special field.  Therefore, rcu_read_unlock()\nneed only test current-\u003ercu_read_unlock_special: if that is zero, then\ncurrent-\u003ercu_boosted must also be zero.\n\nThis bug does not affect TINY_PREEMPT_RCU because this implementation\nof RCU accesses current-\u003ercu_read_unlock_special with irqs disabled,\nthus preventing races on the !SMP systems that TINY_PREEMPT_RCU runs on.\n\nMaybe-reported-by: Dave Jones \u003cdavej@redhat.com\u003e\nMaybe-reported-by: Sergey Senozhatsky \u003csergey.senozhatsky@gmail.com\u003e\nReported-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Paul E. McKenney \u003cpaul.mckenney@linaro.org\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nReviewed-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "a07c7964a29b6dc515b120f1e1c223ac2f8666f5",
      "tree": "cf45e084be0437ca921c0623569932bf1d142c1d",
      "parents": [
        "0b8f6273eb6fd0611849d6fb432151f04e042434"
      ],
      "author": {
        "name": "WANG Cong",
        "email": "xiyou.wangcong@gmail.com",
        "time": "Sat Jul 16 22:22:20 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 18 11:06:03 2011 -0700"
      },
      "message": "include/linux/sdla.h: remove the prototype of sdla()\n\n`make headers_check` complains that\n\nlinux-2.6/usr/include/linux/sdla.h:116: userspace cannot reference\nfunction or variable defined in the kernel\n\nthis is due to that there is no such a kernel function,\n\nvoid sdla(void *cfg_info, char *dev, struct frad_conf *conf, int quiet);\n\nI don\u0027t know why we have it in a kernel header, so remove it.\n\nSigned-off-by: WANG Cong \u003cxiyou.wangcong@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3d68bd0010d2c9bc9ad6004fdcc4d6a56dcae199",
      "tree": "013ac9bd1bc68d1d9dda17346eefc617aeb47265",
      "parents": [
        "efcbae253f97bf82e7befd372da3ad5995a53f1a",
        "05e9a2f67849e427f8900bad0a3f2a939e8dd3d6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jul 17 12:49:28 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jul 17 12:49:28 2011 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6:\n  Bluetooth: Fix crash with incoming L2CAP connections\n  Bluetooth: Fix regression in L2CAP connection procedure\n  gianfar: rx parser\n  r6040: only disable RX interrupt if napi_schedule_prep is successful\n  net: remove NETIF_F_ALL_TX_OFFLOADS\n  net: sctp: fix checksum marking for outgoing packets\n"
    },
    {
      "commit": "a6b52a9db891e2a39e8a0fed6005935d8b1aa59c",
      "tree": "3fbef9df274667d1e96894c2b8c373b7192cfaf1",
      "parents": [
        "247dc220f410969b35f884f1554fe9b78119dd59",
        "7fb574a97f7147610c44cef55d0cde2409392a80"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jul 17 12:47:47 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jul 17 12:47:47 2011 -0700"
      },
      "message": "Merge branch \u0027release\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6\n\n* \u0027release\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6:\n  ACPI: Fixes device power states array overflow\n  ACPI, APEI, HEST, Detect duplicated hardware error source ID\n  ACPI: Fix lockdep false positives in acpi_power_off()\n"
    },
    {
      "commit": "e3c1620434ac77b618ce74c024ace3559602ac99",
      "tree": "40b976b6914b40b44741a5b63c7a700a7884d592",
      "parents": [
        "5dcd07b9f39ca3e9be5bcc387d193fc0674e1c81"
      ],
      "author": {
        "name": "Alex Deucher",
        "email": "alexdeucher@gmail.com",
        "time": "Fri Jul 15 14:39:10 2011 +0000"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Fri Jul 15 16:10:55 2011 +0100"
      },
      "message": "drm/radeon/kms: add new NI pci ids\n\nSigned-off-by: Alex Deucher \u003calexander.deucher@amd.com\u003e\nCc: stable@kernel.org\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "62f2a3a48bdc99822a24356e667e52c30df287c9",
      "tree": "acad792fc90ac7d55974729f3b591e75b0f591dd",
      "parents": [
        "b73c43f884b1b26ef8e824a33f3924f92e493c11"
      ],
      "author": {
        "name": "Michał Mirosław",
        "email": "mirq-linux@rere.qmqm.pl",
        "time": "Wed Jul 13 14:10:29 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 14 15:18:49 2011 -0700"
      },
      "message": "net: remove NETIF_F_ALL_TX_OFFLOADS\n\nThere is no software fallback implemented for SCTP or FCoE checksumming,\nand so it should not be passed on by software devices like bridge or bonding.\n\nFor VLAN devices, this is different. First, the driver for underlying device\nshould be prepared to get offloaded packets even when the feature is disabled\n(especially if it advertises it in vlan_features). Second, devices under\nVLANs do not get replaced without tearing down the VLAN first.\n\nThis fixes a mess I accidentally introduced while converting bonding to\nndo_fix_features.\n\nNETIF_F_SOFT_FEATURES are removed from BOND_VLAN_FEATURES because they\nare unused as of commit 712ae51afd.\n\nSigned-off-by: Michał Mirosław \u003cmirq-linux@rere.qmqm.pl\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7fb574a97f7147610c44cef55d0cde2409392a80",
      "tree": "5743047d3efb8535167b8c1b177dd8e9518208c8",
      "parents": [
        "b4a03b9aa96cc186bf3cfd7a55cb7d7227f0cf4d",
        "4d2b2956ef1113f1cc43e98e947c20d9c7d2712c",
        "07e49a7a31153a95caa270d8ad7350a0bcd4d511"
      ],
      "author": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Thu Jul 14 00:16:38 2011 -0400"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Thu Jul 14 00:16:38 2011 -0400"
      },
      "message": "Merge branches \u0027d3cold\u0027, \u0027bugzilla-37412\u0027 and \u0027bugzilla-38152\u0027 into release\n"
    },
    {
      "commit": "b4a03b9aa96cc186bf3cfd7a55cb7d7227f0cf4d",
      "tree": "3bee07efb713e740f631f00e22989c7be1161c91",
      "parents": [
        "8d86e5f91440aa56a5df516bf58fe3883552ad56"
      ],
      "author": {
        "name": "Lin Ming",
        "email": "ming.m.lin@intel.com",
        "time": "Wed Jun 01 23:54:02 2011 +0800"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Jul 13 23:53:22 2011 -0400"
      },
      "message": "ACPI: Fixes device power states array overflow\n\nCommit 28c2103 added new state ACPI_STATE_D3_COLD, so the device power\nstates array must be expanded by one also.\n\nv2: Use ACPI_D_STATE_COUNT instead of number 5 for the array size.\n\nReported-by: Dan Carpenter \u003cerror27@gmail.com\u003e\nSuggested-by: Oldřich Jedlička \u003coldium.pro@seznam.cz\u003e\nSigned-off-by: Lin Ming \u003cming.m.lin@intel.com\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "51414d41084496aaefd06d7f19eb8206e8bfac2d",
      "tree": "31c7624d28a564e1cc918a30b8570a3c001a9c7c",
      "parents": [
        "201f92e2ca789d529418da8fa027d5457f0df024",
        "f39b2dd9d065151a04f5996656d1f27a7eb32d45"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 13 16:47:31 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 13 16:47:31 2011 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc:\n  mmc: core: Bus width testing needs to handle suspend/resume\n"
    },
    {
      "commit": "5d7d5d933256fc44f68e061ccd103b027fef0fc9",
      "tree": "c3effea9a99409d4adec80dcf358e6d99736ed25",
      "parents": [
        "8d86e5f91440aa56a5df516bf58fe3883552ad56",
        "7686d1cc5ed0932a533a5acbc3888b48de63bef8"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 13 13:51:32 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 13 13:51:32 2011 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (21 commits)\n  slip: fix wrong SLIP6 ifdef-endif placing\n  natsemi: fix another dma-debug report\n  sctp: ABORT if receive, reassmbly, or reodering queue is not empty while closing socket\n  net: Fix default in docs for tcp_orphan_retries.\n  hso: fix a use after free condition\n  net/natsemi: Fix module parameter permissions\n  XFRM: Fix memory leak in xfrm_state_update\n  sctp: Enforce retransmission limit during shutdown\n  mac80211: fix TKIP replay vulnerability\n  mac80211: fix ie memory allocation for scheduled scans\n  ssb: fix init regression of hostmode PCI core\n  rtlwifi: rtl8192cu: Add new USB ID for Netgear WNA1000M\n  ath9k: Fix tx throughput drops for AR9003 chips with AES encryption\n  carl9170: add NEC WL300NU-AG usbid\n  cfg80211: fix deadlock with rfkill/sched_scan by adding new mutex\n  ath5k: fix incorrect use of drvdata in PCI suspend/resume code\n  ath5k: fix incorrect use of drvdata in sysfs code\n  Bluetooth: Fix memory leak under page timeouts\n  Bluetooth: Fix regression with incoming L2CAP connections\n  Bluetooth: Fix hidp disconnect deadlocks and lost wakeup\n  ...\n"
    },
    {
      "commit": "f39b2dd9d065151a04f5996656d1f27a7eb32d45",
      "tree": "3801f7d6793529d737fcbfd6af05b6900ef2cd06",
      "parents": [
        "c31b55cd4eaf050bb5a15bd8251da1b3c7edeb1c"
      ],
      "author": {
        "name": "Philip Rakity",
        "email": "prakity@marvell.com",
        "time": "Thu Jul 07 09:04:55 2011 -0700"
      },
      "committer": {
        "name": "Chris Ball",
        "email": "cjb@laptop.org",
        "time": "Wed Jul 13 14:54:37 2011 -0400"
      },
      "message": "mmc: core: Bus width testing needs to handle suspend/resume\n\nOn reading the ext_csd for the first time (in 1 bit mode), save the\next_csd information needed for bus width compare.\n\nOn every pass we make re-reading the ext_csd, compare the data\nagainst the saved ext_csd data.\n\nThis fixes a regression introduced in 3.0-rc1 by 08ee80cc397ac1a3\n(\"mmc: core: eMMC bus width may not work on all platforms\"), which\nincorrectly assumed we would be re-reading the ext_csd at resume-\ntime.\n\nSigned-off-by: Philip Rakity \u003cprakity@marvell.com\u003e\nTested-by: Jaehoon Chung \u003cjh80.chung@samsung.com\u003e\nSigned-off-by: Chris Ball \u003ccjb@laptop.org\u003e\n"
    },
    {
      "commit": "07e49a7a31153a95caa270d8ad7350a0bcd4d511",
      "tree": "6a3fd7777be85069bcc44177b2348f7f618d4a47",
      "parents": [
        "8d86e5f91440aa56a5df516bf58fe3883552ad56"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Jul 06 20:44:25 2011 +0200"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Jul 13 14:49:09 2011 -0400"
      },
      "message": "ACPI: Fix lockdep false positives in acpi_power_off()\n\nAll ACPICA locks are allocated by the same function,\nacpi_os_create_lock(), with the help of a local variable called\n\"lock\".  Thus, when lockdep is enabled, it uses \"lock\" as the\nname of all those locks and regards them as instances of the same\nlock, which causes it to report possible locking problems with them\nwhen there aren\u0027t any.\n\nTo work around this problem, define acpi_os_create_lock() as a macro\nand make it pass its argument to spin_lock_init(), so that lockdep\nuses it as the name of the new lock.  Define this macron in a\nLinux-specific file, to minimize the resulting modifications of\nthe OS-independent ACPICA parts.\n\nThis change is based on an earlier patch from Andrea Righi and it\naddresses a regression from 2.6.39 tracked as\nhttps://bugzilla.kernel.org/show_bug.cgi?id\u003d38152\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nReported-and-tested-by: Borislav Petkov \u003cbp@alien8.de\u003e\nTested-by: Andrea Righi \u003candrea@betterlinux.com\u003e\nReviewed-by: Florian Mickler \u003cflorian@mickler.org\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "8d86e5f91440aa56a5df516bf58fe3883552ad56",
      "tree": "94c8aea597b9e1ade376743a3f8f830e5195fa57",
      "parents": [
        "d93a881dd7d71ad0e6504af232be2795044ab686",
        "770e1ac5f29003fca18af4e67eb5a05ddb5b1491"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 12 14:21:19 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 12 14:21:19 2011 -0700"
      },
      "message": "Merge branch \u0027merge\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc\n\n* \u0027merge\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc:\n  powerpc/mm: Fix memory_block_size_bytes() for non-pseries\n  mm: Move definition of MIN_MEMORY_BLOCK_SIZE to a header\n"
    },
    {
      "commit": "d93a881dd7d71ad0e6504af232be2795044ab686",
      "tree": "71fc6918e676a0cf53d585f5a253646a49b60c83",
      "parents": [
        "d1ca1a004822983e2fc702d5382b4b9a5527cfbe",
        "24109afd17426e1a2b72141e4a2b730057e1a0ea"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 12 14:19:51 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 12 14:19:51 2011 -0700"
      },
      "message": "Merge branch \u0027fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/arm/linux-arm-soc\n\n* \u0027fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/arm/linux-arm-soc:\n  pcmcia: pxa2xx/vpac270: free gpios on exist rather than requesting\n  ARM: pxa/raumfeld: fix device name for codec ak4104\n  ARM: pxa/raumfeld: display initialisation fixes\n  ARM: pxa/raumfeld: adapt to upcoming hardware change\n  ARM: pxa: fix gpio_to_chip() clash with gpiolib namespace\n  genirq: replace irq_gc_ack() with {set,clr}_bit variants (fwd)\n  arm: mach-vt8500: add forgotten irq_data conversion\n  ARM: pxa168: correct nand pmu setting\n  ARM: pxa910: correct nand pmu setting\n  ARM: pxa: fix PGSR register address calculation\n"
    },
    {
      "commit": "a63fdc5156f2ef5690b6cf03d72b0c4917efbba7",
      "tree": "03d9b67a5d07ab9d805ea39db2f331740eba1d4c",
      "parents": [
        "620917de59eeb934b9f8cf35cc2d95c1ac8ed0fc"
      ],
      "author": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Tue Jun 14 10:57:50 2011 +1000"
      },
      "committer": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Tue Jul 12 11:08:01 2011 +1000"
      },
      "message": "mm: Move definition of MIN_MEMORY_BLOCK_SIZE to a header\n\nThe macro MIN_MEMORY_BLOCK_SIZE is currently defined twice in two .c\nfiles, and I need it in a third one to fix a powerpc bug, so let\u0027s\nfirst move it into a header\n\nSigned-off-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c15000b40d46c0affa4c142c4ecb7beee4ce03f3",
      "tree": "14fe31249f9f8c882fecc63542821d6b431630c6",
      "parents": [
        "9ddf7f5058c4f4badd38dba8d5896a5dbd7e716f",
        "ddc6ff31cc22720c46c1547a5310ea260a968ae9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 11 16:43:27 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 11 16:43:27 2011 -0700"
      },
      "message": "Merge branch \u0027v4l_for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6\n\n* \u0027v4l_for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6:\n  [media] msp3400: fill in v4l2_tuner based on vt-\u003etype field\n  [media] tuner-core.c: don\u0027t change type field in g_tuner or g_frequency\n  [media] cx18/ivtv: fix g_tuner support\n  [media] tuner-core: power up tuner when called with s_power(1)\n  [media] v4l2-ioctl.c: check for valid tuner type in S_HW_FREQ_SEEK\n  [media] tuner-core: simplify the standard fixup\n  [media] tuner-core/v4l2-subdev: document that the type field has to be filled in\n  [media] v4l2-subdev.h: remove unused s_mode tuner op\n  [media] feature-removal-schedule: change in how radio device nodes are handled\n  [media] bttv: fix s_tuner for radio\n  [media] pvrusb2: fix g/s_tuner support\n  [media] v4l2-ioctl.c: prefill tuner type for g_frequency and g/s_tuner\n  [media] tuner-core: fix tuner_resume: use t-\u003emode instead of t-\u003etype\n  [media] tuner-core: fix s_std and s_tuner\n"
    },
    {
      "commit": "f607e7fc5fb94d92030c4527287e9c149ddf9e65",
      "tree": "49ac9020b87f028e947580425fef84222332fdf8",
      "parents": [
        "453a9bf347f1e22a5bb3605ced43b2366921221d"
      ],
      "author": {
        "name": "Jean-François Dagenais",
        "email": "dagenaisj@sonatest.com",
        "time": "Fri Jul 08 15:39:44 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 08 21:14:44 2011 -0700"
      },
      "message": "w1: ds1wm: add a reset recovery parameter\n\nThis fixes a regression in 3.0 reported by Paul Parsons regarding the\nremoval of the msleep(1) in the ds1wm_reset() function:\n\n: The linux-3.0-rc4 DS1WM 1-wire driver is logging \"bus error, retrying\"\n: error messages on an HP iPAQ hx4700 PDA (XScale-PXA270):\n:\n: \u003csnip\u003e\n: Driver for 1-wire Dallas network protocol.\n: DS1WM w1 busmaster driver - (c) 2004 Szabolcs Gyurko\n: 1-Wire driver for the DS2760 battery monitor  chip  - (c) 2004-2005, Szabolcs Gyurko\n: ds1wm ds1wm: pass: 1 bus error, retrying\n: ds1wm ds1wm: pass: 2 bus error, retrying\n: ds1wm ds1wm: pass: 3 bus error, retrying\n: ds1wm ds1wm: pass: 4 bus error, retrying\n: ds1wm ds1wm: pass: 5 bus error, retrying\n: ...\n:\n: The visible result is that the battery charging LED is erratic; sometimes\n: it works, mostly it doesn\u0027t.\n:\n: The linux-2.6.39 DS1WM 1-wire driver worked OK.  I haven\u0027t tried 3.0-rc1,\n: 3.0-rc2, or 3.0-rc3.\n\nThis sleep should not be required on normal circuitry provided the\npull-ups on the bus are correctly adapted to the slaves.  Unfortunately,\nthis is not always the case.  The sleep is restored but as a parameter to\nthe probe function in the pdata.\n\n[akpm@linux-foundation.org: coding-style fixes]\nReported-by: Paul Parsons \u003clost.distance@yahoo.com\u003e\nTested-by: Paul Parsons \u003clost.distance@yahoo.com\u003e\nSigned-off-by: Jean-François Dagenais \u003cdagenaisj@sonatest.com\u003e\nCc: Evgeniy Polyakov \u003cjohnpol@2ka.mipt.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cd4fcc704f30f2064ab30b5300d44d431e46db50",
      "tree": "cc08106433d2353adb5f7b52b7bfe6e4f9ebceb8",
      "parents": [
        "3f97fae9482dac1dbdd870a25c89033d3a0b35dc"
      ],
      "author": {
        "name": "Thomas Graf",
        "email": "tgraf@infradead.org",
        "time": "Fri Jul 08 04:37:46 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jul 08 09:53:08 2011 -0700"
      },
      "message": "sctp: ABORT if receive, reassmbly, or reodering queue is not empty while closing socket\n\nTrigger user ABORT if application closes a socket which has data\nqueued on the socket receive queue or chunks waiting on the\nreassembly or ordering queue as this would imply data being lost\nwhich defeats the point of a graceful shutdown.\n\nThis behavior is already practiced in TCP.\n\nWe do not check the input queue because that would mean to parse\nall chunks on it to look for unacknowledged data which seems too\nmuch of an effort. Control chunks or duplicated chunks may also\nbe in the input queue and should not be stopping a graceful\nshutdown.\n\nSigned-off-by: Thomas Graf \u003ctgraf@infradead.org\u003e\nAcked-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f8d9605243280f1870dd2c6c37a735b925c15f3c",
      "tree": "2d6a3ce33c503bce8fca71489d4c4dc266579469",
      "parents": [
        "31cb852809c86541c817538c98003678546dfa58"
      ],
      "author": {
        "name": "Thomas Graf",
        "email": "tgraf@infradead.org",
        "time": "Thu Jul 07 00:28:35 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 07 14:08:44 2011 -0700"
      },
      "message": "sctp: Enforce retransmission limit during shutdown\n\nWhen initiating a graceful shutdown while having data chunks\non the retransmission queue with a peer which is in zero\nwindow mode the shutdown is never completed because the\nretransmission error count is reset periodically by the\nfollowing two rules:\n\n - Do not timeout association while doing zero window probe.\n - Reset overall error count when a heartbeat request has\n   been acknowledged.\n\nThe graceful shutdown will wait for all outstanding TSN to\nbe acknowledged before sending the SHUTDOWN request. This\nnever happens due to the peer\u0027s zero window not acknowledging\nthe continuously retransmitted data chunks. Although the\nerror counter is incremented for each failed retransmission,\nthe receiving of the SACK announcing the zero window clears\nthe error count again immediately. Also heartbeat requests\ncontinue to be sent periodically. The peer acknowledges these\nrequests causing the error counter to be reset as well.\n\nThis patch changes behaviour to only reset the overall error\ncounter for the above rules while not in shutdown. After\nreaching the maximum number of retransmission attempts, the\nT5 shutdown guard timer is scheduled to give the receiver\nsome additional time to recover. The timer is stopped as soon\nas the receiver acknowledges any data.\n\nThe issue can be easily reproduced by establishing a sctp\nassociation over the loopback device, constantly queueing\ndata at the sender while not reading any at the receiver.\nWait for the window to reach zero, then initiate a shutdown\nby killing both processes simultaneously. The association\nwill never be freed and the chunks on the retransmission\nqueue will be retransmitted indefinitely.\n\nSigned-off-by: Thomas Graf \u003ctgraf@infradead.org\u003e\nAcked-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2a9d6df425d7b46b23cbc8673b2dfefa4678abdb",
      "tree": "a6ec2ee125a3c02342b48a2e4a36598c26ca2b8b",
      "parents": [
        "c902ce1bfb40d8b049bd2319b388b4b68b04bc27",
        "7b28afe01ab6ffb5f152f47831b44933facd2328"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 07 13:22:26 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 07 13:22:26 2011 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.dk/linux-block\n\n* \u0027for-linus\u0027 of git://git.kernel.dk/linux-block:\n  drbd: we should write meta data updates with FLUSH FUA\n  drbd: fix limit define, we support 1 PiByte now\n  drbd: when receive times out on meta socket, also check last receive time on data socket\n  drbd: account bitmap IO during resync as resync-(related-)-io\n  drbd: don\u0027t cond_resched_lock with IRQs disabled\n  drbd: add missing spinlock to bitmap receive\n  drbd: Use the correct max_bio_size when creating resync requests\n  cfq-iosched: make code consistent\n  cfq-iosched: fix a rcu warning\n"
    },
    {
      "commit": "c902ce1bfb40d8b049bd2319b388b4b68b04bc27",
      "tree": "7dcb1e8378f8ec8e7ad7684cd26e9d5a1b5b22d1",
      "parents": [
        "075d9db13183c102770dc6cefabfee1b832f9614"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Thu Jul 07 12:19:48 2011 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 07 13:21:56 2011 -0700"
      },
      "message": "FS-Cache: Add a helper to bulk uncache pages on an inode\n\nAdd an FS-Cache helper to bulk uncache pages on an inode.  This will\nonly work for the circumstance where the pages in the cache correspond\n1:1 with the pages attached to an inode\u0027s page cache.\n\nThis is required for CIFS and NFS: When disabling inode cookie, we were\nreturning the cookie and setting cifsi-\u003efscache to NULL but failed to\ninvalidate any previously mapped pages.  This resulted in \"Bad page\nstate\" errors and manifested in other kind of errors when running\nfsstress.  Fix it by uncaching mapped pages when we disable the inode\ncookie.\n\nThis patch should fix the following oops and \"Bad page state\" errors\nseen during fsstress testing.\n\n  ------------[ cut here ]------------\n  kernel BUG at fs/cachefiles/namei.c:201!\n  invalid opcode: 0000 [#1] SMP\n  Pid: 5, comm: kworker/u:0 Not tainted 2.6.38.7-30.fc15.x86_64 #1 Bochs Bochs\n  RIP: 0010: cachefiles_walk_to_object+0x436/0x745 [cachefiles]\n  RSP: 0018:ffff88002ce6dd00  EFLAGS: 00010282\n  RAX: ffff88002ef165f0 RBX: ffff88001811f500 RCX: 0000000000000000\n  RDX: 0000000000000000 RSI: 0000000000000100 RDI: 0000000000000282\n  RBP: ffff88002ce6dda0 R08: 0000000000000100 R09: ffffffff81b3a300\n  R10: 0000ffff00066c0a R11: 0000000000000003 R12: ffff88002ae54840\n  R13: ffff88002ae54840 R14: ffff880029c29c00 R15: ffff88001811f4b0\n  FS:  00007f394dd32720(0000) GS:ffff88002ef00000(0000) knlGS:0000000000000000\n  CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b\n  CR2: 00007fffcb62ddf8 CR3: 000000001825f000 CR4: 00000000000006e0\n  DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000\n  DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400\n  Process kworker/u:0 (pid: 5, threadinfo ffff88002ce6c000, task ffff88002ce55cc0)\n  Stack:\n   0000000000000246 ffff88002ce55cc0 ffff88002ce6dd58 ffff88001815dc00\n   ffff8800185246c0 ffff88001811f618 ffff880029c29d18 ffff88001811f380\n   ffff88002ce6dd50 ffffffff814757e4 ffff88002ce6dda0 ffffffff8106ac56\n  Call Trace:\n   cachefiles_lookup_object+0x78/0xd4 [cachefiles]\n   fscache_lookup_object+0x131/0x16d [fscache]\n   fscache_object_work_func+0x1bc/0x669 [fscache]\n   process_one_work+0x186/0x298\n   worker_thread+0xda/0x15d\n   kthread+0x84/0x8c\n   kernel_thread_helper+0x4/0x10\n  RIP  cachefiles_walk_to_object+0x436/0x745 [cachefiles]\n  ---[ end trace 1d481c9af1804caa ]---\n\nI tested the uncaching by the following means:\n\n (1) Create a big file on my NFS server (104857600 bytes).\n\n (2) Read the file into the cache with md5sum on the NFS client.  Look in\n     /proc/fs/fscache/stats:\n\n\tPages  : mrk\u003d25601 unc\u003d0\n\n (3) Open the file for read/write (\"bash 5\u003c\u003e/warthog/bigfile\").  Look in proc\n     again:\n\n\tPages  : mrk\u003d25601 unc\u003d25601\n\nReported-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nReviewed-and-Tested-by: Suresh Jayaraman \u003csjayaraman@suse.de\u003e\ncc: stable@kernel.org\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "27a3b735b70651f28db03e5f92775a40661ba7a6",
      "tree": "9f300b93aa34381aa1d3121e9d53e8c8e1623a24",
      "parents": [
        "85746e429f8e5dc8c5c0beadc0f099cb1feab93e",
        "161b6ae0e067e421b20bb35caf66bdb405c929ac",
        "140fe3b1ab9c082182ef13359fab4ddba95c24c3",
        "e4c2fb0d5776b58049d2556b456144a4db3fe5a9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 07 13:17:45 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 07 13:17:45 2011 -0700"
      },
      "message": "Merge branches \u0027core-urgent-for-linus\u0027, \u0027perf-urgent-for-linus\u0027 and \u0027sched-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  debugobjects: Fix boot crash when kmemleak and debugobjects enabled\n\n* \u0027perf-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  jump_label: Fix jump_label update for modules\n  oprofile, x86: Fix race in nmi handler while starting counters\n\n* \u0027sched-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  sched: Disable (revert) SCHED_LOAD_SCALE increase\n  sched, cgroups: Fix MIN_SHARES on 64-bit boxen\n"
    },
    {
      "commit": "85746e429f8e5dc8c5c0beadc0f099cb1feab93e",
      "tree": "65a6852655b441d03899d1cb7d8012ff52a915a1",
      "parents": [
        "4dd1b49c6d215dc41ce50c80b4868388b93f31a3",
        "949123016a2ef578009b6aa3e98d45d1a154ebfb"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 07 13:16:21 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 07 13:16:21 2011 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (31 commits)\n  sctp: fix missing send up SCTP_SENDER_DRY_EVENT when subscribe it\n  net: refine {udp|tcp|sctp}_mem limits\n  vmxnet3: round down # of queues to power of two\n  net: sh_eth: fix the parameter for the ETHER of SH7757\n  net: sh_eth: fix cannot work half-duplex mode\n  net: vlan: enable soft features regardless of underlying device\n  vmxnet3: fix starving rx ring whenoc_skb kb fails\n  bridge: Always flood broadcast packets\n  greth: greth_set_mac_add would corrupt the MAC address.\n  net: bind() fix error return on wrong address family\n  natsemi: silence dma-debug warnings\n  net: 8139too: Initial necessary vlan_features to support vlan\n  Fix call trace when interrupts are disabled while sleeping function kzalloc is called\n  qlge:Version change to v1.00.00.29\n  qlge: Fix printk priority so chip fatal errors are always reported.\n  qlge:Fix crash caused by mailbox execution on wedged chip.\n  xfrm4: Don\u0027t call icmp_send on local error\n  ipv4: Don\u0027t use ufo handling on later transformed packets\n  xfrm: Remove family arg from xfrm_bundle_ok\n  ipv6: Don\u0027t put artificial limit on routing table size.\n  ...\n"
    },
    {
      "commit": "338e9e1ad541cbb2a3fa5839376ff6c138d40301",
      "tree": "0657639257487bc4ac5499e51e8a4083ea4de896",
      "parents": [
        "e206fc5e3de0e38a35b6f92941c913b6d8343fc6"
      ],
      "author": {
        "name": "Hans Verkuil",
        "email": "hans.verkuil@cisco.com",
        "time": "Mon Jun 13 09:35:56 2011 -0300"
      },
      "committer": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@redhat.com",
        "time": "Thu Jul 07 15:04:23 2011 -0300"
      },
      "message": "[media] tuner-core/v4l2-subdev: document that the type field has to be filled in\n\nThe tuner ops g_frequency, g_tuner and s_tuner require that the tuner type\nfield is filled in. Document this.\n\nThe tuner-core doc is based on a patch from Mauro Carvalho Chehab \u003cmchehab@redhat.com\u003e.\n\nSigned-off-by: Hans Verkuil \u003chans.verkuil@cisco.com\u003e\nSigned-off-by: Mauro Carvalho Chehab \u003cmchehab@redhat.com\u003e\n"
    },
    {
      "commit": "e206fc5e3de0e38a35b6f92941c913b6d8343fc6",
      "tree": "37419272d1da1ccaaa26c0adce7dd7299fc63a21",
      "parents": [
        "6293698277f04eb1623536887651381ed3abc8d0"
      ],
      "author": {
        "name": "Hans Verkuil",
        "email": "hans.verkuil@cisco.com",
        "time": "Mon Jun 13 09:34:56 2011 -0300"
      },
      "committer": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@redhat.com",
        "time": "Thu Jul 07 15:03:59 2011 -0300"
      },
      "message": "[media] v4l2-subdev.h: remove unused s_mode tuner op\n\ns_mode is no longer used, so remove it.\n\nSigned-off-by: Hans Verkuil \u003chans.verkuil@cisco.com\u003e\nSigned-off-by: Mauro Carvalho Chehab \u003cmchehab@redhat.com\u003e\n"
    },
    {
      "commit": "659fb32d1b67476f4ade25e9ea0e2642a5b9c4b5",
      "tree": "a875904f1c457f321563060491956266a57c6514",
      "parents": [
        "d30e1521b2afb5e6f21ca8bc1a4b6ec2afc93597"
      ],
      "author": {
        "name": "Simon Guinot",
        "email": "sguinot@lacie.com",
        "time": "Wed Jul 06 12:41:31 2011 -0400"
      },
      "committer": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Thu Jul 07 16:02:26 2011 +0000"
      },
      "message": "genirq: replace irq_gc_ack() with {set,clr}_bit variants (fwd)\n\nThis fixes a regression introduced by e59347a \"arm: orion:\nUse generic irq chip\".\n\nDepending on the device, interrupts acknowledgement is done by setting\nor by clearing a dedicated register. Replace irq_gc_ack() with some\n{set,clr}_bit variants allows to handle both cases.\n\nNote that this patch affects the following SoCs: Davinci, Samsung and\nOrion. Except for this last, the change is minor: irq_gc_ack() is just\nrenamed into irq_gc_ack_set_bit().\n\nFor the Orion SoCs, the edge GPIO interrupts support is currently\nbroken. irq_gc_ack() try to acknowledge a such interrupt by setting\nthe corresponding cause register bit. The Orion GPIO device expect the\nopposite. To fix this issue, the irq_gc_ack_clr_bit() variant is used.\n\nTested on Network Space v2.\n\nReported-by: Joey Oravec \u003cjoravec@drewtech.com\u003e\nSigned-off-by: Simon Guinot \u003csguinot@lacie.com\u003e\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\n"
    },
    {
      "commit": "de3796e77a587b28f0c9d8e04c02894d3939dc4e",
      "tree": "f5a414a421e45e7f90c113aaf3ef30e078672f46",
      "parents": [
        "bcb65a797eb7c51e4f227dd19295f14d38738fee",
        "98c32bcded0e249fd48726930ae9f393e0e318b4"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 06 12:16:49 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 06 12:16:49 2011 -0700"
      },
      "message": "Merge branch \u0027v4l_for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6\n\n* \u0027v4l_for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6: (46 commits)\n  [media] rc: call input_sync after scancode reports\n  [media] imon: allow either proto on unknown 0xffdc\n  [media] imon: auto-config ffdc 7e device\n  [media] saa7134: fix raw IR timeout value\n  [media] rc: fix ghost keypresses with certain hw\n  [media] [staging] lirc_serial: allocate irq at init time\n  [media] lirc_zilog: fix spinning rx thread\n  [media] keymaps: fix table for pinnacle pctv hd devices\n  [media] ite-cir: 8709 needs to use pnp resource 2\n  [media] V4L: mx1-camera: fix uninitialized variable\n  [media] omap_vout: Added check in reqbuf \u0026 mmap for buf_size allocation\n  [media] OMAP_VOUT: Change hardcoded device node number to -1\n  [media] OMAP_VOUTLIB: Fix wrong resizer calculation\n  [media] uvcvideo: Disable the queue when failing to start\n  [media] uvcvideo: Remove buffers from the queues when freeing\n  [media] uvcvideo: Ignore entities for terminals with no supported format\n  [media] v4l: Don\u0027t access media entity after is has been destroyed\n  [media] media: omap3isp: fix a potential NULL deref\n  [media] media: vb2: fix allocation failure check\n  [media] media: vb2: reset queued_count value during queue reinitialization\n  ...\n\nFix up trivial conflict in MAINTAINERS as per Mauro\n"
    },
    {
      "commit": "e4c2fb0d5776b58049d2556b456144a4db3fe5a9",
      "tree": "04cebbb24f524408728492cfeb396d66aa6127e4",
      "parents": [
        "cd62287e364c0d15d517c6ced4e4808b54711475"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue Jul 05 10:56:32 2011 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jul 05 11:28:18 2011 +0200"
      },
      "message": "sched: Disable (revert) SCHED_LOAD_SCALE increase\n\nAlex reported that commit c8b281161df (\"sched: Increase\nSCHED_LOAD_SCALE resolution\") caused a power usage regression\nunder light load as it increases the number of load-balance\noperations and keeps idle cpus from staying idle.\n\nTime has run out to find the root cause for this release so\ndisable the feature for v3.0 until we can figure out what\ncauses the problem.\n\nReported-by: \"Alex, Shi\" \u003calex.shi@intel.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Nikhil Rao \u003cncrao@google.com\u003e\nCc: Ming Lei \u003ctom.leiming@gmail.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nLink: http://lkml.kernel.org/n/tip-m4onxn0sxnyn5iz9o88eskc3@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "aababb9766f0e874da26a17acbbec867bf9501f0",
      "tree": "4dea1f04d8c6d66ce00bb0ab49b939c165c3f33b",
      "parents": [
        "b2bc4782191cb574924a1d09f48083ea8b33a93b",
        "3e86f1d8e397b1ef59a97910089e16a99e8f31f7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 04 15:53:53 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 04 15:53:53 2011 -0700"
      },
      "message": "Merge branch \u0027fbdev-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lethal/fbdev-3.x\n\n* \u0027fbdev-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lethal/fbdev-3.x:\n  vesafb: fix memory leak\n  fbdev: amba: Link fb device to its parent\n  fsl-diu-fb: remove check for pixel clock ranges\n  udlfb: Correct sub-optimal resolution selection.\n  hecubafb: add module_put on error path in hecubafb_probe()\n  sm501fb: fix section mismatch warning\n  gx1fb: Fix section mismatch warnings\n  fbdev: sh_mobile_meram: Correct pointer check for YCbCr chroma plane\n"
    },
    {
      "commit": "8aa7ad9018d7fa1e52d2ee350a2f62c5485d3fec",
      "tree": "67982a268cc4573aba1df10725019418b207d442",
      "parents": [
        "6e139047e2eecd0ccf8bc2f1564e82747cb6e56c",
        "4f3c7a18d9e8a287d31f828a259d713fe4859471"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 02 09:26:53 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 02 09:26:53 2011 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6:\n  ALSA: sb16 - Fix build errors on MIPS and others with 13bit ioctl size\n  ALSA: hdspm - Fix compile warnings with PPC\n  ALSA: cs5535 - Fix invalid big-endian conversions\n  ALSA: HDMI - fix ELD monitor name length\n  ALSA: atmel - update author email for ABDAC, AC97C and AT73C213\n  ALSA: HDA: Add model\u003dauto quirk for Acer Aspire 3830TG\n  ALSA: HDA: Add a new Conexant codec ID (506c)\n"
    },
    {
      "commit": "957c665f37007de93ccbe45902a23143724170d0",
      "tree": "d49f13d5b34ed1b1fc34828cbcd60afdbc9c4e5b",
      "parents": [
        "11d53b4990226247a950e2b1ccfa4cf93bfbc822"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jun 24 15:25:00 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jul 01 17:30:43 2011 -0700"
      },
      "message": "ipv6: Don\u0027t put artificial limit on routing table size.\n\nIPV6, unlike IPV4, doesn\u0027t have a routing cache.\n\nRouting table entries, as well as clones made in response\nto route lookup requests, all live in the same table.  And\nall of these things are together collected in the destination\ncache table for ipv6.\n\nThis means that routing table entries count against the garbage\ncollection limits, even though such entries cannot ever be reclaimed\nand are added explicitly by the administrator (rather than being\ncreated in response to lookups).\n\nTherefore it makes no sense to count ipv6 routing table entries\nagainst the GC limits.\n\nAdd a DST_NOCOUNT destination cache entry flag, and skip the counting\nif it is set.  Use this flag bit in ipv6 when adding routing table\nentries.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "60c2ce2b4facf28f569115a55e1f479eb12bd0f1",
      "tree": "9771312021bbece80efea2fb0823563e4f68b611",
      "parents": [
        "0e90ed0e8b9b1c25040442f1d20c799751b1e727",
        "690b0cacb6dbbbcb06b76139ab65e1bf3f63e7f1"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jul 01 01:52:02 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jul 01 01:52:02 2011 -0700"
      },
      "message": "Merge branch \u0027for-davem\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6\n"
    },
    {
      "commit": "690b0cacb6dbbbcb06b76139ab65e1bf3f63e7f1",
      "tree": "9199b20addcd9167a210957ac477a284c6f9a73d",
      "parents": [
        "16adf5d07987d93675945f3cecf0e33706566005",
        "a0b8de350be458b33248e48b2174d9af8a4c4798"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Jun 30 11:26:04 2011 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Jun 30 11:26:04 2011 -0400"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6 into for-davem\n"
    },
    {
      "commit": "4f3c7a18d9e8a287d31f828a259d713fe4859471",
      "tree": "eb587895c24cdf975caa9241443be4f1038d6d8a",
      "parents": [
        "286bed0f0c447b6660e72093d7e778784fdd9ee6"
      ],
      "author": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Thu Jun 30 15:08:04 2011 +0200"
      },
      "committer": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Thu Jun 30 15:33:57 2011 +0200"
      },
      "message": "ALSA: sb16 - Fix build errors on MIPS and others with 13bit ioctl size\n\nOne of ioctl definition in sound/sb16_csp.h contains the data size\nover 8kB, and this causes build errors on architectures like MIPS,\nwhich define _IOC_SIZEBITS\u003d13.\n\nFor avoiding this build errors but keeping the compatibility, manually\nexpand with _IOC() instead of using _IOW() for the problematic ioctl.\n\nSigned-off-by: Takashi Iwai \u003ctiwai@suse.de\u003e\n"
    },
    {
      "commit": "7b28afe01ab6ffb5f152f47831b44933facd2328",
      "tree": "a537d78f49fa1b959c9a453f459c1acd767a939f",
      "parents": [
        "726e99ab88db059fe1422e15376ae404f8c66eb4",
        "86e1e98e5c6b4edab97e2b058466ef553cfd878e"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Thu Jun 30 10:10:50 2011 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Thu Jun 30 10:10:50 2011 +0200"
      },
      "message": "Merge branch \u0027for-3.0-important\u0027 of git://git.drbd.org/linux-2.6-drbd into for-linus\n"
    },
    {
      "commit": "15b493d11fcce3c5547e3d7fb6d90e11ffe12777",
      "tree": "0638c261a1ca0ce54e1cbeb3ddaab10075717b27",
      "parents": [
        "cb6518cbef5e3e36b7ae90fcab610a52ea7e9fc0"
      ],
      "author": {
        "name": "Lars Ellenberg",
        "email": "lars.ellenberg@linbit.com",
        "time": "Tue Jun 28 09:48:48 2011 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Jun 30 09:23:45 2011 +0200"
      },
      "message": "drbd: fix limit define, we support 1 PiByte now\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "c89b857ce6d803905b2c9d71bc9effdd286c45ed",
      "tree": "6cf4a6e23f68f3b65906210dccb272ab2f9c5c74",
      "parents": [
        "2e34b429a404675dc4fc4ad2ee339eea028da3ca",
        "663dd6dcaf7e95526e469e91f41972a9c0cca30c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jun 28 11:15:36 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jun 28 11:15:36 2011 -0700"
      },
      "message": "Merge branch \u0027driver-core-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6\n\n* \u0027driver-core-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6:\n  Connector: Correctly set the error code in case of success when dispatching receive callbacks\n  Connector: Set the CN_NETLINK_USERS correctly\n  pti: PTI semantics fix in pti_tty_cleanup.\n  pti: ENXIO error case memory leak PTI fix.\n  pti: double-free security PTI fix\n  drivers:misc: ti-st: fix skipping of change remote baud\n  drivers/base/platform.c: don\u0027t mark platform_device_register_resndata() as __init_or_module\n  st_kim: Handle case of no device found for ID 0\n  firmware: fix GOOGLE_SMI kconfig dependency warning\n"
    },
    {
      "commit": "04b905942b482092a547798a2477f21e32a8f65d",
      "tree": "9ad2837587f5ce284f830432fec3569ecf44fbcb",
      "parents": [
        "d90ce8711ceb516de823ae878270e5a21d11dede",
        "3bc46b312b1486b1fe2db4246a34a30160d26d8d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jun 28 11:14:55 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jun 28 11:14:55 2011 -0700"
      },
      "message": "Merge branch \u0027tty-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty-2.6\n\n* \u0027tty-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty-2.6:\n  serial: bcm63xx_uart: fix irq storm after rx fifo overrun.\n  amba pl011: platform data for reg lockup and glitch v2\n  amba pl011: workaround for uart registers lockup\n  tty: n_gsm: improper skb_pull() use was leaking framed data\n  tty: n_gsm: Fixed logic to decode break signal from modem status\n  TTY: ntty, add one more sanity check\n  TTY: ldisc, do not close until there are readers\n  8250: Fix capabilities when changing the port type\n  8250_pci: Fix missing const from merges\n  ARM: SAMSUNG: serial: Fix on handling of one clock source for UART\n  serial: ioremap warning fix for jsm driver.\n  8250_pci: add -ENODEV code for Intel EG20T PCH\n"
    },
    {
      "commit": "08142579b6ca35883c1ed066a2681de6f6917062",
      "tree": "00735ed37753533f3b645714770b4fb036b5f7e0",
      "parents": [
        "9b679320a5fbf46454011e5c62e0b8991b0956d1"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Mon Jun 27 16:18:10 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 27 18:00:13 2011 -0700"
      },
      "message": "mm: fix assertion mapping-\u003enrpages \u003d\u003d 0 in end_writeback()\n\nUnder heavy memory and filesystem load, users observe the assertion\nmapping-\u003enrpages \u003d\u003d 0 in end_writeback() trigger.  This can be caused by\npage reclaim reclaiming the last page from a mapping in the following\nrace:\n\n\tCPU0\t\t\t\tCPU1\n  ...\n  shrink_page_list()\n    __remove_mapping()\n      __delete_from_page_cache()\n        radix_tree_delete()\n\t\t\t\t\tevict_inode()\n\t\t\t\t\t  truncate_inode_pages()\n\t\t\t\t\t    truncate_inode_pages_range()\n\t\t\t\t\t      pagevec_lookup() - finds nothing\n\t\t\t\t\t  end_writeback()\n\t\t\t\t\t    mapping-\u003enrpages !\u003d 0 -\u003e BUG\n        page-\u003emapping \u003d NULL\n        mapping-\u003enrpages--\n\nFix the problem by doing a reliable check of mapping-\u003enrpages under\nmapping-\u003etree_lock in end_writeback().\n\nAnalyzed by Jay \u003cjinshan.xiong@whamcloud.com\u003e, lost in LKML, and dug out\nby Miklos Szeredi \u003cmszeredi@suse.de\u003e.\n\nCc: Jay \u003cjinshan.xiong@whamcloud.com\u003e\nCc: Miklos Szeredi \u003cmszeredi@suse.de\u003e\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nCc: \u003cstable@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": "507c5f1224014f9956e604ee8703b3bbea7da4a4",
      "tree": "8af568077785c6159d5698741215b282788d661c",
      "parents": [
        "2b4b2482e70eba10dd98653a3a5ac68126565e24"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Mon Jun 27 16:18:07 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 27 18:00:13 2011 -0700"
      },
      "message": "include/linux/compat.h: declare compat_sys_sendmmsg()\n\nThis is required for tilegx to be able to use the compat unistd.h header\nwhere compat_sys_sendmmsg() is now mentioned.\n\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\nCc: Arnd Bergmann \u003carnd@arndb.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    }
  ],
  "next": "d9d90e5eb70e09903dadff42099b6c948f814050"
}
