)]}'
{
  "log": [
    {
      "commit": "9612090527526a15832480c48b1f4b39e93e8a35",
      "tree": "d34a4459c33251ed9dbcb395eb41dce790b9b75e",
      "parents": [
        "13614e0fb1a8840c134be35c179ff23e23676304"
      ],
      "author": {
        "name": "Steffen Klassert",
        "email": "steffen.klassert@secunet.com",
        "time": "Wed Mar 28 08:44:07 2012 +0200"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Thu Mar 29 19:52:46 2012 +0800"
      },
      "message": "padata: Fix cpu hotplug\n\nWe don\u0027t remove the cpu that went offline from our cpumasks\non cpu hotplug. This got lost somewhere along the line, so\nrestore it. This fixes a hang of the padata instance on cpu\nhotplug.\n\nSigned-off-by: Steffen Klassert \u003csteffen.klassert@secunet.com\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "13614e0fb1a8840c134be35c179ff23e23676304",
      "tree": "e9fb16b0d3840562ebe5b5a8f2eb6e37f9e26a8d",
      "parents": [
        "107f8bdac992356b3a80d41c9f6ff4399159aa81"
      ],
      "author": {
        "name": "Steffen Klassert",
        "email": "steffen.klassert@secunet.com",
        "time": "Wed Mar 28 08:43:21 2012 +0200"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Thu Mar 29 19:52:46 2012 +0800"
      },
      "message": "padata: Use the online cpumask as the default\n\nWe use the active cpumask to determine the superset of cpus\nto use for parallelization. However, the active cpumask is\nfor internal usage of the scheduler and therefore not the\nappropriate cpumask for these purposes. So use the online\ncpumask instead.\n\nReported-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nSigned-off-by: Steffen Klassert \u003csteffen.klassert@secunet.com\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "107f8bdac992356b3a80d41c9f6ff4399159aa81",
      "tree": "7eae814e5a38514d12aea5aba0896cb6cf40697e",
      "parents": [
        "6a76a6992341faab0ef31e7d97000e0cf336d0ba"
      ],
      "author": {
        "name": "Steffen Klassert",
        "email": "steffen.klassert@secunet.com",
        "time": "Wed Mar 28 08:42:34 2012 +0200"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Thu Mar 29 19:52:45 2012 +0800"
      },
      "message": "padata: Add a reference to the api documentation\n\nAdd a reference to the padata api documentation at Documentation/padata.txt\n\nSuggested-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nSigned-off-by: Steffen Klassert \u003csteffen.klassert@secunet.com\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "95211279c5ad00a317c98221d7e4365e02f20836",
      "tree": "2ddc8625378d2915b8c96392f3cf6663b705ed55",
      "parents": [
        "5375871d432ae9fc581014ac117b96aaee3cd0c7",
        "12724850e8064f64b6223d26d78c0597c742c65a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 09:04:48 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 09:04:48 2012 -0700"
      },
      "message": "Merge branch \u0027akpm\u0027 (Andrew\u0027s patch-bomb)\n\nMerge first batch of patches from Andrew Morton:\n \"A few misc things and all the MM queue\"\n\n* emailed from Andrew Morton \u003cakpm@linux-foundation.org\u003e: (92 commits)\n  memcg: avoid THP split in task migration\n  thp: add HPAGE_PMD_* definitions for !CONFIG_TRANSPARENT_HUGEPAGE\n  memcg: clean up existing move charge code\n  mm/memcontrol.c: remove unnecessary \u0027break\u0027 in mem_cgroup_read()\n  mm/memcontrol.c: remove redundant BUG_ON() in mem_cgroup_usage_unregister_event()\n  mm/memcontrol.c: s/stealed/stolen/\n  memcg: fix performance of mem_cgroup_begin_update_page_stat()\n  memcg: remove PCG_FILE_MAPPED\n  memcg: use new logic for page stat accounting\n  memcg: remove PCG_MOVE_LOCK flag from page_cgroup\n  memcg: simplify move_account() check\n  memcg: remove EXPORT_SYMBOL(mem_cgroup_update_page_stat)\n  memcg: kill dead prev_priority stubs\n  memcg: remove PCG_CACHE page_cgroup flag\n  memcg: let css_get_next() rely upon rcu_read_lock()\n  cgroup: revert ss_id_lock to spinlock\n  idr: make idr_get_next() good for rcu_read_lock()\n  memcg: remove unnecessary thp check in page stat accounting\n  memcg: remove redundant returns\n  memcg: enum lru_list lru\n  ...\n"
    },
    {
      "commit": "ca464d69b19120a826aa2534de2511a6f542edf5",
      "tree": "092582419a30825b8483640856483ea8ee56cf81",
      "parents": [
        "42aee6c495e07dba7410b863a360db6bb9ec6d66"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hughd@google.com",
        "time": "Wed Mar 21 16:34:21 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 21 17:55:01 2012 -0700"
      },
      "message": "memcg: let css_get_next() rely upon rcu_read_lock()\n\nRemove lock and unlock around css_get_next()\u0027s call to idr_get_next().\nmemcg iterators (only users of css_get_next) already did rcu_read_lock(),\nand its comment demands that; but add a WARN_ON_ONCE to make sure of it.\n\nSigned-off-by: Hugh Dickins \u003chughd@google.com\u003e\nAcked-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nAcked-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nAcked-by: Tejun Heo \u003ctj@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": "42aee6c495e07dba7410b863a360db6bb9ec6d66",
      "tree": "d014b2b5c7aa9d1a1f13686fa06699f9f734ee1c",
      "parents": [
        "9f7de8275b46d9d11b1505adbfe6c2bb48df4741"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hughd@google.com",
        "time": "Wed Mar 21 16:34:21 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 21 17:55:01 2012 -0700"
      },
      "message": "cgroup: revert ss_id_lock to spinlock\n\nCommit c1e2ee2dc436 (\"memcg: replace ss-\u003eid_lock with a rwlock\") has now\nbeen seen to cause the unfair behavior we should have expected from\nconverting a spinlock to an rwlock: softlockup in cgroup_mkdir(), whose\nget_new_cssid() is waiting for the wlock, while there are 19 tasks using\nthe rlock in css_get_next() to get on with their memcg workload (in an\nartificial test, admittedly).  Yet lib/idr.c was made suitable for RCU\nway back: revert that commit, restoring ss-\u003eid_lock to a spinlock.\n\nSigned-off-by: Hugh Dickins \u003chughd@google.com\u003e\nAcked-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nAcked-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nAcked-by: Tejun Heo \u003ctj@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": "05af2e104a0c282dcd9303431e1360750ba76de6",
      "tree": "cdd5876f2d17b26cc3ded7ef85d04d0e853e9b7e",
      "parents": [
        "90481622d75715bfcb68501280a917dbfe516029"
      ],
      "author": {
        "name": "David Rientjes",
        "email": "rientjes@google.com",
        "time": "Wed Mar 21 16:34:13 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 21 17:54:59 2012 -0700"
      },
      "message": "mm, counters: remove task argument to sync_mm_rss() and __sync_task_rss_stat()\n\nsync_mm_rss() can only be used for current to avoid race conditions in\niterating and clearing its per-task counters.  Remove the task argument\nfor it and its helper function, __sync_task_rss_stat(), to avoid thinking\nit can be used safely for anything other than current.\n\nSigned-off-by: David Rientjes \u003crientjes@google.com\u003e\nAcked-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cc9a6c8776615f9c194ccf0b63a0aa5628235545",
      "tree": "0cbbf118e86541f8eb2fc7b717a0e08eaced986d",
      "parents": [
        "e845e199362cc5712ba0e7eedc14eed70e144258"
      ],
      "author": {
        "name": "Mel Gorman",
        "email": "mgorman@suse.de",
        "time": "Wed Mar 21 16:34:11 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 21 17:54:59 2012 -0700"
      },
      "message": "cpuset: mm: reduce large amounts of memory barrier related damage v3\n\nCommit c0ff7453bb5c (\"cpuset,mm: fix no node to alloc memory when\nchanging cpuset\u0027s mems\") wins a super prize for the largest number of\nmemory barriers entered into fast paths for one commit.\n\n[get|put]_mems_allowed is incredibly heavy with pairs of full memory\nbarriers inserted into a number of hot paths.  This was detected while\ninvestigating at large page allocator slowdown introduced some time\nafter 2.6.32.  The largest portion of this overhead was shown by\noprofile to be at an mfence introduced by this commit into the page\nallocator hot path.\n\nFor extra style points, the commit introduced the use of yield() in an\nimplementation of what looks like a spinning mutex.\n\nThis patch replaces the full memory barriers on both read and write\nsides with a sequence counter with just read barriers on the fast path\nside.  This is much cheaper on some architectures, including x86.  The\nmain bulk of the patch is the retry logic if the nodemask changes in a\nmanner that can cause a false failure.\n\nWhile updating the nodemask, a check is made to see if a false failure\nis a risk.  If it is, the sequence number gets bumped and parallel\nallocators will briefly stall while the nodemask update takes place.\n\nIn a page fault test microbenchmark, oprofile samples from\n__alloc_pages_nodemask went from 4.53% of all samples to 1.15%.  The\nactual results were\n\n                             3.3.0-rc3          3.3.0-rc3\n                             rc3-vanilla        nobarrier-v2r1\n    Clients   1 UserTime       0.07 (  0.00%)   0.08 (-14.19%)\n    Clients   2 UserTime       0.07 (  0.00%)   0.07 (  2.72%)\n    Clients   4 UserTime       0.08 (  0.00%)   0.07 (  3.29%)\n    Clients   1 SysTime        0.70 (  0.00%)   0.65 (  6.65%)\n    Clients   2 SysTime        0.85 (  0.00%)   0.82 (  3.65%)\n    Clients   4 SysTime        1.41 (  0.00%)   1.41 (  0.32%)\n    Clients   1 WallTime       0.77 (  0.00%)   0.74 (  4.19%)\n    Clients   2 WallTime       0.47 (  0.00%)   0.45 (  3.73%)\n    Clients   4 WallTime       0.38 (  0.00%)   0.37 (  1.58%)\n    Clients   1 Flt/sec/cpu  497620.28 (  0.00%) 520294.53 (  4.56%)\n    Clients   2 Flt/sec/cpu  414639.05 (  0.00%) 429882.01 (  3.68%)\n    Clients   4 Flt/sec/cpu  257959.16 (  0.00%) 258761.48 (  0.31%)\n    Clients   1 Flt/sec      495161.39 (  0.00%) 517292.87 (  4.47%)\n    Clients   2 Flt/sec      820325.95 (  0.00%) 850289.77 (  3.65%)\n    Clients   4 Flt/sec      1020068.93 (  0.00%) 1022674.06 (  0.26%)\n    MMTests Statistics: duration\n    Sys Time Running Test (seconds)             135.68    132.17\n    User+Sys Time Running Test (seconds)         164.2    160.13\n    Total Elapsed Time (seconds)                123.46    120.87\n\nThe overall improvement is small but the System CPU time is much\nimproved and roughly in correlation to what oprofile reported (these\nperformance figures are without profiling so skew is expected).  The\nactual number of page faults is noticeably improved.\n\nFor benchmarks like kernel builds, the overall benefit is marginal but\nthe system CPU time is slightly reduced.\n\nTo test the actual bug the commit fixed I opened two terminals.  The\nfirst ran within a cpuset and continually ran a small program that\nfaulted 100M of anonymous data.  In a second window, the nodemask of the\ncpuset was continually randomised in a loop.\n\nWithout the commit, the program would fail every so often (usually\nwithin 10 seconds) and obviously with the commit everything worked fine.\nWith this patch applied, it also worked fine so the fix should be\nfunctionally equivalent.\n\nSigned-off-by: Mel Gorman \u003cmgorman@suse.de\u003e\nCc: Miao Xie \u003cmiaox@cn.fujitsu.com\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Christoph Lameter \u003ccl@linux.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c3f0327f8e9d7a503f0d64573c311eddd61f197d",
      "tree": "ebc59003d3bef08dd41d073eced2b53970e13662",
      "parents": [
        "dc3f21eadeea6d9898271ff32d35d5e00c6872ea"
      ],
      "author": {
        "name": "Konstantin Khlebnikov",
        "email": "khlebnikov@openvz.org",
        "time": "Wed Mar 21 16:33:48 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 21 17:54:55 2012 -0700"
      },
      "message": "mm: add rss counters consistency check\n\nWarn about non-zero rss counters at final mmdrop.\n\nThis check will prevent reoccurences of bugs such as that fixed in \"mm:\nfix rss count leakage during migration\".\n\nI didn\u0027t hide this check under CONFIG_VM_DEBUG because it rather small and\nrss counters cover whole page-table management, so this is a good\ninvariant.\n\nSigned-off-by: Konstantin Khlebnikov \u003ckhlebnikov@openvz.org\u003e\nCc: Hugh Dickins \u003chughd@google.com\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e2a0883e4071237d09b604a342c28b96b44a04b3",
      "tree": "aa56f4d376b5eb1c32358c19c2669c2a94e0e1fd",
      "parents": [
        "3a990a52f9f25f45469e272017a31e7a3fda60ed",
        "07c0c5d8b8c122b2f2df9ee574ac3083daefc981"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 21 13:36:41 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 21 13:36:41 2012 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs\n\nPull vfs pile 1 from Al Viro:\n \"This is _not_ all; in particular, Miklos\u0027 and Jan\u0027s stuff is not there\n  yet.\"\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs: (64 commits)\n  ext4: initialization of ext4_li_mtx needs to be done earlier\n  debugfs-related mode_t whack-a-mole\n  hfsplus: add an ioctl to bless files\n  hfsplus: change finder_info to u32\n  hfsplus: initialise userflags\n  qnx4: new helper - try_extent()\n  qnx4: get rid of qnx4_bread/qnx4_getblk\n  take removal of PF_FORKNOEXEC to flush_old_exec()\n  trim includes in inode.c\n  um: uml_dup_mmap() relies on -\u003emmap_sem being held, but activate_mm() doesn\u0027t hold it\n  um: embed -\u003estub_pages[] into mmu_context\n  gadgetfs: list_for_each_safe() misuse\n  ocfs2: fix leaks on failure exits in module_init\n  ecryptfs: make register_filesystem() the last potential failure exit\n  ntfs: forgets to unregister sysctls on register_filesystem() failure\n  logfs: missing cleanup on register_filesystem() failure\n  jfs: mising cleanup on register_filesystem() failure\n  make configfs_pin_fs() return root dentry on success\n  configfs: configfs_create_dir() has parent dentry in dentry-\u003ed_parent\n  configfs: sanitize configfs_create()\n  ...\n"
    },
    {
      "commit": "3556485f1595e3964ba539e39ea682acbb835cee",
      "tree": "7f5ee254f425b1427ac0059b5f347a307f8538a1",
      "parents": [
        "b8716614a7cc2fc15ea2a518edd04755fb08d922",
        "09f61cdbb32a9d812c618d3922db533542736bb0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 21 13:25:04 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 21 13:25:04 2012 -0700"
      },
      "message": "Merge branch \u0027next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security\n\nPull security subsystem updates for 3.4 from James Morris:\n \"The main addition here is the new Yama security module from Kees Cook,\n  which was discussed at the Linux Security Summit last year.  Its\n  purpose is to collect miscellaneous DAC security enhancements in one\n  place.  This also marks a departure in policy for LSM modules, which\n  were previously limited to being standalone access control systems.\n  Chromium OS is using Yama, and I believe there are plans for Ubuntu,\n  at least.\n\n  This patchset also includes maintenance updates for AppArmor, TOMOYO\n  and others.\"\n\nFix trivial conflict in \u003cnet/sock.h\u003e due to the jumo_label-\u003estatic_key\nrename.\n\n* \u0027next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security: (38 commits)\n  AppArmor: Fix location of const qualifier on generated string tables\n  TOMOYO: Return error if fails to delete a domain\n  AppArmor: add const qualifiers to string arrays\n  AppArmor: Add ability to load extended policy\n  TOMOYO: Return appropriate value to poll().\n  AppArmor: Move path failure information into aa_get_name and rename\n  AppArmor: Update dfa matching routines.\n  AppArmor: Minor cleanup of d_namespace_path to consolidate error handling\n  AppArmor: Retrieve the dentry_path for error reporting when path lookup fails\n  AppArmor: Add const qualifiers to generated string tables\n  AppArmor: Fix oops in policy unpack auditing\n  AppArmor: Fix error returned when a path lookup is disconnected\n  KEYS: testing wrong bit for KEY_FLAG_REVOKED\n  TOMOYO: Fix mount flags checking order.\n  security: fix ima kconfig warning\n  AppArmor: Fix the error case for chroot relative path name lookup\n  AppArmor: fix mapping of META_READ to audit and quiet flags\n  AppArmor: Fix underflow in xindex calculation\n  AppArmor: Fix dropping of allowed operations that are force audited\n  AppArmor: Add mising end of structure test to caps unpacking\n  ...\n"
    },
    {
      "commit": "b8716614a7cc2fc15ea2a518edd04755fb08d922",
      "tree": "2a8a5d04066b2bd589ba2ebbeb228e2a6a178ec9",
      "parents": [
        "31f6765266417c0d99f0e922fe82848a7c9c2ae9",
        "2dc9b5dbdef09840de852a4f0cc6a9c9eece7220"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 21 13:20:43 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 21 13:20:43 2012 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6\n\nPull crypto update from Herbert Xu:\n \"* sha512 bug fixes (already in your tree).\n  * SHA224/SHA384 AEAD support in caam.\n  * X86-64 optimised version of Camellia.\n  * Tegra AES support.\n  * Bulk algorithm registration interface to make driver registration easier.\n  * padata race fixes.\n  * Misc fixes.\"\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6: (31 commits)\n  padata: Fix race on sequence number wrap\n  padata: Fix race in the serialization path\n  crypto: camellia - add assembler implementation for x86_64\n  crypto: camellia - rename camellia.c to camellia_generic.c\n  crypto: camellia - fix checkpatch warnings\n  crypto: camellia - rename camellia module to camellia_generic\n  crypto: tcrypt - add more camellia tests\n  crypto: testmgr - add more camellia test vectors\n  crypto: camellia - simplify key setup and CAMELLIA_ROUNDSM macro\n  crypto: twofish-x86_64/i586 - set alignmask to zero\n  crypto: blowfish-x86_64 - set alignmask to zero\n  crypto: serpent-sse2 - combine ablk_*_init functions\n  crypto: blowfish-x86_64 - use crypto_[un]register_algs\n  crypto: twofish-x86_64-3way - use crypto_[un]register_algs\n  crypto: serpent-sse2 - use crypto_[un]register_algs\n  crypto: serpent-sse2 - remove dead code from serpent_sse2_glue.c::serpent_sse2_init()\n  crypto: twofish-x86 - Remove dead code from twofish_glue_3way.c::init()\n  crypto: In crypto_add_alg(), \u0027exact\u0027 wants to be initialized to 0\n  crypto: caam - fix gcc 4.6 warning\n  crypto: Add bulk algorithm registration interface\n  ...\n"
    },
    {
      "commit": "c207f3a43194e108dda43dc9a1ce507335cff6b9",
      "tree": "55880f8301e8546b1908f69947d0d41aaa044814",
      "parents": [
        "c7c66c0cb0c77b1a8edf09bca57d922312d58030",
        "e7cc3aca0f6a36b018934264ee20bee45dc13e29"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 21 10:27:19 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 21 10:27:19 2012 -0700"
      },
      "message": "Merge tag \u0027irqdomain-for-linus\u0027 of git://git.secretlab.ca/git/linux-2.6\n\nPull irq_domain support for all architectures from Grant Likely:\n \"Generialize powerpc\u0027s irq_host as irq_domain\n\n  This branch takes the PowerPC irq_host infrastructure (reverse mapping\n  from Linux IRQ numbers to hardware irq numbering), generalizes it,\n  renames it to irq_domain, and makes it available to all architectures.\n\n  Originally the plan has been to create an all-new irq_domain\n  implementation which addresses some of the powerpc shortcomings such\n  as not handling 1:1 mappings well, but doing that proved to be far\n  more difficult and invasive than generalizing the working code and\n  refactoring it in-place.  So, this branch rips out the \u0027new\u0027\n  irq_domain and replaces it with the modified powerpc version (in a\n  fully bisectable way of course).  It converts all users over to the\n  new API and makes irq_domain selectable on any architecture.\n\n  No architecture is forced to enable irq_domain, but the infrastructure\n  is required for doing OpenFirmware style irq translations.  It will\n  even work on SPARC even though SPARC has it\u0027s own mechanism for\n  translating irqs at boot time.  MIPS, microblaze, embedded x86 and c6x\n  are converted too.\n\n  The resulting irq_domain code is probably still too verbose and can be\n  optimized more, but that can be done incrementally and is a task for\n  follow-on patches.\"\n\n* tag \u0027irqdomain-for-linus\u0027 of git://git.secretlab.ca/git/linux-2.6: (31 commits)\n  dt: fix twl4030 for non-dt compile on x86\n  mfd: twl-core: Add IRQ_DOMAIN dependency\n  devicetree: Add empty of_platform_populate() for !CONFIG_OF_ADDRESS (sparc)\n  irq_domain: Centralize definition of irq_dispose_mapping()\n  irq_domain/mips: Allow irq_domain on MIPS\n  irq_domain/x86: Convert x86 (embedded) to use common irq_domain\n  ppc-6xx: fix build failure in flipper-pic.c and hlwd-pic.c\n  irq_domain/microblaze: Convert microblaze to use irq_domains\n  irq_domain/powerpc: Replace custom xlate functions with library functions\n  irq_domain/powerpc: constify irq_domain_ops\n  irq_domain/c6x: Use library of xlate functions\n  irq_domain/c6x: constify irq_domain structures\n  irq_domain/c6x: Convert c6x to use generic irq_domain support.\n  irq_domain: constify irq_domain_ops\n  irq_domain: Create common xlate functions that device drivers can use\n  irq_domain: Remove irq_domain_add_simple()\n  irq_domain: Remove \u0027new\u0027 irq_domain in favour of the ppc one\n  mfd: twl-core.c: Fix the number of interrupts managed by twl4030\n  of/address: add empty static inlines for !CONFIG_OF\n  irq_domain: Add support for base irq and hwirq in legacy mappings\n  ...\n"
    },
    {
      "commit": "c7c66c0cb0c77b1a8edf09bca57d922312d58030",
      "tree": "77277103c5f16aa4dee64978a060933d92e14776",
      "parents": [
        "9f3938346a5c1fa504647670edb5fea5756cfb00",
        "98e8bdafeb4728a6af7bbcbcc3984967d1cf2bc1"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 21 10:15:51 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 21 10:15:51 2012 -0700"
      },
      "message": "Merge tag \u0027pm-for-3.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm\n\nPull power management updates for 3.4 from Rafael Wysocki:\n \"Assorted extensions and fixes including:\n\n  * Introduction of early/late suspend/hibernation device callbacks.\n  * Generic PM domains extensions and fixes.\n  * devfreq updates from Axel Lin and MyungJoo Ham.\n  * Device PM QoS updates.\n  * Fixes of concurrency problems with wakeup sources.\n  * System suspend and hibernation fixes.\"\n\n* tag \u0027pm-for-3.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (43 commits)\n  PM / Domains: Check domain status during hibernation restore of devices\n  PM / devfreq: add relation of recommended frequency.\n  PM / shmobile: Make MTU2 driver use pm_genpd_dev_always_on()\n  PM / shmobile: Make CMT driver use pm_genpd_dev_always_on()\n  PM / shmobile: Make TMU driver use pm_genpd_dev_always_on()\n  PM / Domains: Introduce \"always on\" device flag\n  PM / Domains: Fix hibernation restore of devices, v2\n  PM / Domains: Fix handling of wakeup devices during system resume\n  sh_mmcif / PM: Use PM QoS latency constraint\n  tmio_mmc / PM: Use PM QoS latency constraint\n  PM / QoS: Make it possible to expose PM QoS latency constraints\n  PM / Sleep: JBD and JBD2 missing set_freezable()\n  PM / Domains: Fix include for PM_GENERIC_DOMAINS\u003dn case\n  PM / Freezer: Remove references to TIF_FREEZE in comments\n  PM / Sleep: Add more wakeup source initialization routines\n  PM / Hibernate: Enable usermodehelpers in hibernate() error path\n  PM / Sleep: Make __pm_stay_awake() delete wakeup source timers\n  PM / Sleep: Fix race conditions related to wakeup source timer function\n  PM / Sleep: Fix possible infinite loop during wakeup source destruction\n  PM / Hibernate: print physical addresses consistently with other parts of kernel\n  ...\n"
    },
    {
      "commit": "9f3938346a5c1fa504647670edb5fea5756cfb00",
      "tree": "7cf6d24d6b076c8db8571494984924cac03703a2",
      "parents": [
        "69a7aebcf019ab3ff5764525ad6858fbe23bb86d",
        "317b6e128247f75976b0fc2b9fd8d2c20ef13b3a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 21 09:40:26 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 21 09:40:26 2012 -0700"
      },
      "message": "Merge branch \u0027kmap_atomic\u0027 of git://github.com/congwang/linux\n\nPull kmap_atomic cleanup from Cong Wang.\n\nIt\u0027s been in -next for a long time, and it gets rid of the (no longer\nused) second argument to k[un]map_atomic().\n\nFix up a few trivial conflicts in various drivers, and do an \"evil\nmerge\" to catch some new uses that have come in since Cong\u0027s tree.\n\n* \u0027kmap_atomic\u0027 of git://github.com/congwang/linux: (59 commits)\n  feature-removal-schedule.txt: schedule the deprecated form of kmap_atomic() for removal\n  highmem: kill all __kmap_atomic() [swarren@nvidia.com: highmem: Fix ARM build break due to __kmap_atomic rename]\n  drbd: remove the second argument of k[un]map_atomic()\n  zcache: remove the second argument of k[un]map_atomic()\n  gma500: remove the second argument of k[un]map_atomic()\n  dm: remove the second argument of k[un]map_atomic()\n  tomoyo: remove the second argument of k[un]map_atomic()\n  sunrpc: remove the second argument of k[un]map_atomic()\n  rds: remove the second argument of k[un]map_atomic()\n  net: remove the second argument of k[un]map_atomic()\n  mm: remove the second argument of k[un]map_atomic()\n  lib: remove the second argument of k[un]map_atomic()\n  power: remove the second argument of k[un]map_atomic()\n  kdb: remove the second argument of k[un]map_atomic()\n  udf: remove the second argument of k[un]map_atomic()\n  ubifs: remove the second argument of k[un]map_atomic()\n  squashfs: remove the second argument of k[un]map_atomic()\n  reiserfs: remove the second argument of k[un]map_atomic()\n  ocfs2: remove the second argument of k[un]map_atomic()\n  ntfs: remove the second argument of k[un]map_atomic()\n  ...\n"
    },
    {
      "commit": "69a7aebcf019ab3ff5764525ad6858fbe23bb86d",
      "tree": "7211df5704b743a7667159748c670a9744164482",
      "parents": [
        "d464c92b5234227c1698862a1906827e2e398ae0",
        "f1f996b66cc3908a8f5ffccc2ff41840e92f3b10"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 20 21:12:50 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 20 21:12:50 2012 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial\n\nPull trivial tree from Jiri Kosina:\n \"It\u0027s indeed trivial -- mostly documentation updates and a bunch of\n  typo fixes from Masanari.\n\n  There are also several linux/version.h include removals from Jesper.\"\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (101 commits)\n  kcore: fix spelling in read_kcore() comment\n  constify struct pci_dev * in obvious cases\n  Revert \"char: Fix typo in viotape.c\"\n  init: fix wording error in mm_init comment\n  usb: gadget: Kconfig: fix typo for \u0027different\u0027\n  Revert \"power, max8998: Include linux/module.h just once in drivers/power/max8998_charger.c\"\n  writeback: fix fn name in writeback_inodes_sb_nr_if_idle() comment header\n  writeback: fix typo in the writeback_control comment\n  Documentation: Fix multiple typo in Documentation\n  tpm_tis: fix tis_lock with respect to RCU\n  Revert \"media: Fix typo in mixer_drv.c and hdmi_drv.c\"\n  Doc: Update numastat.txt\n  qla4xxx: Add missing spaces to error messages\n  compiler.h: Fix typo\n  security: struct security_operations kerneldoc fix\n  Documentation: broken URL in libata.tmpl\n  Documentation: broken URL in filesystems.tmpl\n  mtd: simplify return logic in do_map_probe()\n  mm: fix comment typo of truncate_inode_pages_range\n  power: bq27x00: Fix typos in comment\n  ...\n"
    },
    {
      "commit": "38eff2892628fa5c4fc8962a17b7296f42833ebe",
      "tree": "6a138b3a4bd712b65797bae334bd7bd3ec12c038",
      "parents": [
        "66b3fad3f4c535c92b6a1184d535a97d6aa5d82a"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Mar 14 21:51:10 2012 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Mar 20 21:29:40 2012 -0400"
      },
      "message": "constify path argument of trace_seq_path()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "66b3fad3f4c535c92b6a1184d535a97d6aa5d82a",
      "tree": "e0ac7f847b760b9e8b9777df27cd1581099935a2",
      "parents": [
        "9fcf03d0d6e845ed495fc8b1ec328b473ff298b3"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Mar 14 21:48:20 2012 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Mar 20 21:29:40 2012 -0400"
      },
      "message": "constify path argument of audit_log_d_path()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "48fde701aff662559b38d9a609574068f22d00fe",
      "tree": "aa6b203dc671b51d58575b65eb08310ff8309b60",
      "parents": [
        "6b4231e2f92adbcf96fb2a3fa751d7ca0a61b21f"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Jan 08 22:15:13 2012 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Mar 20 21:29:35 2012 -0400"
      },
      "message": "switch open-coded instances of d_make_root() to new helper\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "e45836fafe157df137a837093037f741ad8f4c90",
      "tree": "cba5fdef1fd2e70f3610c78dbcb56ebd1be67654",
      "parents": [
        "0d9cabdccedb79ee5f27b77ff51f29a9e7d23275",
        "e06ffa1ede4146cbc261d90f5dff3d63fe2e9d7a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 20 18:13:22 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 20 18:13:22 2012 -0700"
      },
      "message": "Merge branch \u0027for-3.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq\n\nPull workqueue changes from Tejun Heo:\n \"This contains only one commit which cleans up UP allocation path a\n  bit.\"\n\n* \u0027for-3.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq:\n  workqueue: use percpu allocator for cwq on UP\n"
    },
    {
      "commit": "0d9cabdccedb79ee5f27b77ff51f29a9e7d23275",
      "tree": "8bfb64c3672d058eb90aec3c3a9c4f61cef9097c",
      "parents": [
        "701085b219016d38f105b031381b9cee6200253a",
        "3ce3230a0cff484e5130153f244d4fb8a56b3a8b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 20 18:11:21 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 20 18:11:21 2012 -0700"
      },
      "message": "Merge branch \u0027for-3.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup\n\nPull cgroup changes from Tejun Heo:\n \"Out of the 8 commits, one fixes a long-standing locking issue around\n  tasklist walking and others are cleanups.\"\n\n* \u0027for-3.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup:\n  cgroup: Walk task list under tasklist_lock in cgroup_enable_task_cg_list\n  cgroup: Remove wrong comment on cgroup_enable_task_cg_list()\n  cgroup: remove cgroup_subsys argument from callbacks\n  cgroup: remove extra calls to find_existing_css_set\n  cgroup: replace tasklist_lock with rcu_read_lock\n  cgroup: simplify double-check locking in cgroup_attach_proc\n  cgroup: move struct cgroup_pidlist out from the header file\n  cgroup: remove cgroup_attach_task_current_cg()\n"
    },
    {
      "commit": "b6e238dceed36891cc633167afe7151f1f3d83c5",
      "tree": "eef4928c1a0cb1b56eb20f8d0ee592709d533f10",
      "parents": [
        "e636825346b36a07ccfc8e30946d52855e21f681"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Mon Mar 19 17:03:41 2012 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 20 14:16:50 2012 -0700"
      },
      "message": "exit_signal: fix the \"parent has changed security domain\" logic\n\nexit_notify() changes -\u003eexit_signal if the parent already did exec.\nThis doesn\u0027t really work, we are not going to send the signal now\nif there is another live thread or the exiting task is traced. The\nparent can exec before the last dies or the tracer detaches.\n\nMove this check into do_notify_parent() which actually sends the\nsignal.\n\nThe user-visible change is that we do not change -\u003eexit_signal,\nand thus the exiting task is still \"clone children\" for\ndo_wait()-\u003eeligible_child(__WCLONE). Hopefully this is fine, the\ncurrent logic is racy anyway.\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e636825346b36a07ccfc8e30946d52855e21f681",
      "tree": "128c37b3102223a95ce03b856766c33e4d077114",
      "parents": [
        "5f8aadd8b9966d71a77bba52b9d499cc2f38269f"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Mon Mar 19 17:03:22 2012 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 20 14:16:50 2012 -0700"
      },
      "message": "exit_signal: simplify the \"we have changed execution domain\" logic\n\nexit_notify() checks \"tsk-\u003eself_exec_id !\u003d tsk-\u003eparent_exec_id\"\nto handle the \"we have changed execution domain\" case.\n\nWe can change do_thread() to always set -\u003eexit_signal \u003d SIGCHLD\nand remove this check to simplify the code.\n\nWe could change setup_new_exec() instead, this looks more logical\nbecause it increments -\u003eself_exec_id. But note that de_thread()\nalready resets -\u003eexit_signal if it changes the leader, let\u0027s keep\nboth changes close to each other.\n\nNote that we change -\u003eexit_signal lockless, this changes the rules.\nThereafter -\u003eexit_signal is not stable under tasklist but this is\nfine, the only possible change is OLDSIG -\u003e SIGCHLD. This can race\nwith eligible_child() but the race is harmless. We can race with\nreparent_leader() which changes our -\u003eexit_signal in parallel, but\nit does the same change to SIGCHLD.\n\nThe noticeable user-visible change is that the execing task is not\n\"visible\" to do_wait()-\u003eeligible_child(__WCLONE) right after exec.\nTo me this looks more logical, and this is consistent with mt case.\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5f8aadd8b9966d71a77bba52b9d499cc2f38269f",
      "tree": "229735d79edf0c4cc82ac00ba1abaee63040ff6e",
      "parents": [
        "ed378a52dabf77b406b447fd3238f83ea24b71fa"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Wed Mar 14 19:55:38 2012 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 20 14:16:50 2012 -0700"
      },
      "message": "CLONE_PARENT shouldn\u0027t allow to set -\u003eexit_signal\n\nThe child must not control its -\u003eexit_signal, it is the parent who\ndecides which signal the child should use for notification.\n\nThis means that CLONE_PARENT should not use \"clone_flags \u0026 CSIGNAL\",\nthe forking task is the sibling of the new process and their parent\ndoesn\u0027t control exit_signal in this case.\n\nThis patch uses -\u003eexit_signal of the forking process, but perhaps\nwe should simply use SIGCHLD.\n\nWe read group_leader-\u003eexit_signal lockless, this can race with the\nORIGINAL_SIGNAL -\u003e SIGCHLD transition, but this is fine.\n\nPotentially this change allows to kill self_exec_id/parent_exec_id.\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "161f7a7161191ab9c2e97f787829ef8dd2b95771",
      "tree": "9776d3f963c7f0d247b7fb324eab4811a1302f67",
      "parents": [
        "2ba68940c893c8f0bfc8573c041254251bb6aeab",
        "a078c6d0e6288fad6d83fb6d5edd91ddb7b6ab33"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 20 10:32:09 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 20 10:32:09 2012 -0700"
      },
      "message": "Merge branch \u0027timers-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull timer changes for v3.4 from Ingo Molnar\n\n* \u0027timers-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (32 commits)\n  ntp: Fix integer overflow when setting time\n  math: Introduce div64_long\n  cs5535-clockevt: Allow the MFGPT IRQ to be shared\n  cs5535-clockevt: Don\u0027t ignore MFGPT on SMP-capable kernels\n  x86/time: Eliminate unused irq0_irqs counter\n  clocksource: scx200_hrt: Fix the build\n  x86/tsc: Reduce the TSC sync check time for core-siblings\n  timer: Fix bad idle check on irq entry\n  nohz: Remove ts-\u003eEinidle checks before restarting the tick\n  nohz: Remove update_ts_time_stat from tick_nohz_start_idle\n  clockevents: Leave the broadcast device in shutdown mode when not needed\n  clocksource: Load the ACPI PM clocksource asynchronously\n  clocksource: scx200_hrt: Convert scx200 to use clocksource_register_hz\n  clocksource: Get rid of clocksource_calc_mult_shift()\n  clocksource: dbx500: convert to clocksource_register_hz()\n  clocksource: scx200_hrt:  use pr_\u003clevel\u003e instead of printk\n  time: Move common updates to a function\n  time: Reorder so the hot data is together\n  time: Remove most of xtime_lock usage in timekeeping.c\n  ntp: Add ntp_lock to replace xtime_locking\n  ...\n"
    },
    {
      "commit": "2ba68940c893c8f0bfc8573c041254251bb6aeab",
      "tree": "fa83ebb01d32abd98123fa28f9f6f0b3eaeee25d",
      "parents": [
        "9c2b957db1772ebf942ae7a9346b14eba6c8ca66",
        "600e145882802d6ccbfe2c4aea243d97caeb91a9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 20 10:31:44 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 20 10:31:44 2012 -0700"
      },
      "message": "Merge branch \u0027sched-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull scheduler changes for v3.4 from Ingo Molnar\n\n* \u0027sched-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (27 commits)\n  printk: Make it compile with !CONFIG_PRINTK\n  sched/x86: Fix overflow in cyc2ns_offset\n  sched: Fix nohz load accounting -- again!\n  sched: Update yield() docs\n  printk/sched: Introduce special printk_sched() for those awkward moments\n  sched/nohz: Correctly initialize \u0027next_balance\u0027 in \u0027nohz\u0027 idle balancer\n  sched: Cleanup cpu_active madness\n  sched: Fix load-balance wreckage\n  sched: Clean up parameter passing of proc_sched_autogroup_set_nice()\n  sched: Ditch per cgroup task lists for load-balancing\n  sched: Rename load-balancing fields\n  sched: Move load-balancing arguments into helper struct\n  sched/rt: Do not submit new work when PI-blocked\n  sched/rt: Prevent idle task boosting\n  sched/wait: Add __wake_up_all_locked() API\n  sched/rt: Document scheduler related skip-resched-check sites\n  sched/rt: Use schedule_preempt_disabled()\n  sched/rt: Add schedule_preempt_disabled()\n  sched/rt: Do not throttle when PI boosting\n  sched/rt: Keep period timer ticking when rt throttling is active\n  ...\n"
    },
    {
      "commit": "9c2b957db1772ebf942ae7a9346b14eba6c8ca66",
      "tree": "0dbb83e57260ea7fc0dc421f214d5f1b26262005",
      "parents": [
        "0bbfcaff9b2a69c71a95e6902253487ab30cb498",
        "bea95c152dee1791dd02cbc708afbb115bb00f9a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 20 10:29:15 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 20 10:29:15 2012 -0700"
      },
      "message": "Merge branch \u0027perf-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull perf events changes for v3.4 from Ingo Molnar:\n\n - New \"hardware based branch profiling\" feature both on the kernel and\n   the tooling side, on CPUs that support it.  (modern x86 Intel CPUs\n   with the \u0027LBR\u0027 hardware feature currently.)\n\n   This new feature is basically a sophisticated \u0027magnifying glass\u0027 for\n   branch execution - something that is pretty difficult to extract from\n   regular, function histogram centric profiles.\n\n   The simplest mode is activated via \u0027perf record -b\u0027, and the result\n   looks like this in perf report:\n\n\t$ perf record -b any_call,u -e cycles:u branchy\n\n\t$ perf report -b --sort\u003dsymbol\n\t    52.34%  [.] main                   [.] f1\n\t    24.04%  [.] f1                     [.] f3\n\t    23.60%  [.] f1                     [.] f2\n\t     0.01%  [k] _IO_new_file_xsputn    [k] _IO_file_overflow\n\t     0.01%  [k] _IO_vfprintf_internal  [k] _IO_new_file_xsputn\n\t     0.01%  [k] _IO_vfprintf_internal  [k] strchrnul\n\t     0.01%  [k] __printf               [k] _IO_vfprintf_internal\n\t     0.01%  [k] main                   [k] __printf\n\n   This output shows from/to branch columns and shows the highest\n   percentage (from,to) jump combinations - i.e.  the most likely taken\n   branches in the system.  \"branches\" can also include function calls\n   and any other synchronous and asynchronous transitions of the\n   instruction pointer that are not \u0027next instruction\u0027 - such as system\n   calls, traps, interrupts, etc.\n\n   This feature comes with (hopefully intuitive) flat ascii and TUI\n   support in perf report.\n\n - Various \u0027perf annotate\u0027 visual improvements for us assembly junkies.\n   It will now recognize function calls in the TUI and by hitting enter\n   you can follow the call (recursively) and back, amongst other\n   improvements.\n\n - Multiple threads/processes recording support in perf record, perf\n   stat, perf top - which is activated via a comma-list of PIDs:\n\n\tperf top -p 21483,21485\n\tperf stat -p 21483,21485 -ddd\n\tperf record -p 21483,21485\n\n - Support for per UID views, via the --uid paramter to perf top, perf\n   report, etc.  For example \u0027perf top --uid mingo\u0027 will only show the\n   tasks that I am running, excluding other users, root, etc.\n\n - Jump label restructurings and improvements - this includes the\n   factoring out of the (hopefully much clearer) include/linux/static_key.h\n   generic facility:\n\n\tstruct static_key key \u003d STATIC_KEY_INIT_FALSE;\n\n\t...\n\n\tif (static_key_false(\u0026key))\n\t        do unlikely code\n\telse\n\t        do likely code\n\n\t...\n\tstatic_key_slow_inc();\n\t...\n\tstatic_key_slow_inc();\n\t...\n\n   The static_key_false() branch will be generated into the code with as\n   little impact to the likely code path as possible.  the\n   static_key_slow_*() APIs flip the branch via live kernel code patching.\n\n   This facility can now be used more widely within the kernel to\n   micro-optimize hot branches whose likelihood matches the static-key\n   usage and fast/slow cost patterns.\n\n - SW function tracer improvements: perf support and filtering support.\n\n - Various hardenings of the perf.data ABI, to make older perf.data\u0027s\n   smoother on newer tool versions, to make new features integrate more\n   smoothly, to support cross-endian recording/analyzing workflows\n   better, etc.\n\n - Restructuring of the kprobes code, the splitting out of \u0027optprobes\u0027,\n   and a corner case bugfix.\n\n - Allow the tracing of kernel console output (printk).\n\n - Improvements/fixes to user-space RDPMC support, allowing user-space\n   self-profiling code to extract PMU counts without performing any\n   system calls, while playing nice with the kernel side.\n\n - \u0027perf bench\u0027 improvements\n\n - ... and lots of internal restructurings, cleanups and fixes that made\n   these features possible.  And, as usual this list is incomplete as\n   there were also lots of other improvements\n\n* \u0027perf-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (120 commits)\n  perf report: Fix annotate double quit issue in branch view mode\n  perf report: Remove duplicate annotate choice in branch view mode\n  perf/x86: Prettify pmu config literals\n  perf report: Enable TUI in branch view mode\n  perf report: Auto-detect branch stack sampling mode\n  perf record: Add HEADER_BRANCH_STACK tag\n  perf record: Provide default branch stack sampling mode option\n  perf tools: Make perf able to read files from older ABIs\n  perf tools: Fix ABI compatibility bug in print_event_desc()\n  perf tools: Enable reading of perf.data files from different ABI rev\n  perf: Add ABI reference sizes\n  perf report: Add support for taken branch sampling\n  perf record: Add support for sampling taken branch\n  perf tools: Add code to support PERF_SAMPLE_BRANCH_STACK\n  x86/kprobes: Split out optprobe related code to kprobes-opt.c\n  x86/kprobes: Fix a bug which can modify kernel code permanently\n  x86/kprobes: Fix instruction recovery on optimized path\n  perf: Add callback to flush branch_stack on context switch\n  perf: Disable PERF_SAMPLE_BRANCH_* when not supported\n  perf/x86: Add LBR software filter support for Intel CPUs\n  ...\n"
    },
    {
      "commit": "0bbfcaff9b2a69c71a95e6902253487ab30cb498",
      "tree": "f422bbfb8ba57909bf6e43f1d560b3f056cc3c61",
      "parents": [
        "5928a2b60cfdbad730f93696acab142d0b607280",
        "e04268b0effc0ceea366c50b3107baad9edadafa"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 20 10:28:56 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 20 10:28:56 2012 -0700"
      },
      "message": "Merge branch \u0027irq-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull irq/core changes for v3.4 from Ingo Molnar\n\n* \u0027irq-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  genirq: Remove paranoid warnons and bogus fixups\n  genirq: Flush the irq thread on synchronization\n  genirq: Get rid of unnecessary IRQTF_DIED flag\n  genirq: No need to check IRQTF_DIED before stopping a thread handler\n  genirq: Get rid of unnecessary irqaction field in task_struct\n  genirq: Fix incorrect check for forced IRQ thread handler\n  softirq: Reduce invoke_softirq() code duplication\n  genirq: Fix long-term regression in genirq irq_set_irq_type() handling\n  x86-32/irq: Don\u0027t switch to irq stack for a user-mode irq\n"
    },
    {
      "commit": "5928a2b60cfdbad730f93696acab142d0b607280",
      "tree": "49bb21c9219673e61bad7a7c9202c7f25f5fe1be",
      "parents": [
        "5ed59af85077d28875a3a137b21933aaf1b4cd50",
        "bdd4431c8d071491a68a65d9457996f222b5ecd3"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Mar 19 17:12:34 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 20 10:10:18 2012 -0700"
      },
      "message": "Merge branch \u0027core-rcu-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull RCU changes for v3.4 from Ingo Molnar.  The major features of this\nseries are:\n\n - making RCU more aggressive about entering dyntick-idle mode in order\n   to improve energy efficiency\n\n - converting a few more call_rcu()s to kfree_rcu()s\n\n - applying a number of rcutree fixes and cleanups to rcutiny\n\n - removing CONFIG_SMP #ifdefs from treercu\n\n - allowing RCU CPU stall times to be set via sysfs\n\n - adding CPU-stall capability to rcutorture\n\n - adding more RCU-abuse diagnostics\n\n - updating documentation\n\n - fixing yet more issues located by the still-ongoing top-to-bottom\n   inspection of RCU, this time with a special focus on the CPU-hotplug\n   code path.\n\n* \u0027core-rcu-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (48 commits)\n  rcu: Stop spurious warnings from synchronize_sched_expedited\n  rcu: Hold off RCU_FAST_NO_HZ after timer posted\n  rcu: Eliminate softirq-mediated RCU_FAST_NO_HZ idle-entry loop\n  rcu: Add RCU_NONIDLE() for idle-loop RCU read-side critical sections\n  rcu: Allow nesting of rcu_idle_enter() and rcu_idle_exit()\n  rcu: Remove redundant check for rcu_head misalignment\n  PTR_ERR should be called before its argument is cleared.\n  rcu: Convert WARN_ON_ONCE() in rcu_lock_acquire() to lockdep\n  rcu: Trace only after NULL-pointer check\n  rcu: Call out dangers of expedited RCU primitives\n  rcu: Rework detection of use of RCU by offline CPUs\n  lockdep: Add CPU-idle/offline warning to lockdep-RCU splat\n  rcu: No interrupt disabling for rcu_prepare_for_idle()\n  rcu: Move synchronize_sched_expedited() to rcutree.c\n  rcu: Check for illegal use of RCU from offlined CPUs\n  rcu: Update stall-warning documentation\n  rcu: Add CPU-stall capability to rcutorture\n  rcu: Make documentation give more realistic rcutorture duration\n  rcutorture: Permit holding off CPU-hotplug operations during boot\n  rcu: Print scheduling-clock information on RCU CPU stall-warning messages\n  ...\n"
    },
    {
      "commit": "0de9a1e28a0d005f42c8cc5456a246710133b9ab",
      "tree": "89914affb67e9884ab13e15eb9ce79bfe1a3a13c",
      "parents": [
        "d762a50b5b1bb93e91cb3cd90b6ae133da98fe31"
      ],
      "author": {
        "name": "Cong Wang",
        "email": "amwang@redhat.com",
        "time": "Fri Nov 25 23:14:38 2011 +0800"
      },
      "committer": {
        "name": "Cong Wang",
        "email": "xiyou.wangcong@gmail.com",
        "time": "Tue Mar 20 21:48:26 2012 +0800"
      },
      "message": "power: remove the second argument of k[un]map_atomic()\n\nAcked-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Cong Wang \u003camwang@redhat.com\u003e\n"
    },
    {
      "commit": "d762a50b5b1bb93e91cb3cd90b6ae133da98fe31",
      "tree": "8d60c2041cb5f76a86de83eb109735fa105c6567",
      "parents": [
        "7c0fb227529102d38603c0afc76a2c18a7581afa"
      ],
      "author": {
        "name": "Cong Wang",
        "email": "amwang@redhat.com",
        "time": "Fri Nov 25 23:14:38 2011 +0800"
      },
      "committer": {
        "name": "Cong Wang",
        "email": "xiyou.wangcong@gmail.com",
        "time": "Tue Mar 20 21:48:26 2012 +0800"
      },
      "message": "kdb: remove the second argument of k[un]map_atomic()\n\nSigned-off-by: Cong Wang \u003camwang@redhat.com\u003e\n"
    },
    {
      "commit": "5ed59af85077d28875a3a137b21933aaf1b4cd50",
      "tree": "d225d654de47ebe480a59d479ae5b3cc7c90cd71",
      "parents": [
        "b7f077d7bc28649f6bd369fadec01219e725a9c6",
        "81b40539e748b108d143a5e38526ab00a6a784b6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Mar 19 17:11:15 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Mar 19 17:11:15 2012 -0700"
      },
      "message": "Merge branch \u0027core-locking-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull core/locking changes for v3.4 from Ingo Molnar\n\n* \u0027core-locking-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  futex: Simplify return logic\n  futex: Cover all PI opcodes with cmpxchg enabled check\n"
    },
    {
      "commit": "e04268b0effc0ceea366c50b3107baad9edadafa",
      "tree": "0248960f688b504d819a2cf1c11218edec962597",
      "parents": [
        "7140ea1980f2fae9c7aaeac5f6b35317e1389ee6"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Mar 15 22:55:21 2012 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Mar 16 11:27:28 2012 +0100"
      },
      "message": "genirq: Remove paranoid warnons and bogus fixups\n\nAlexander pointed out that the warnons in the regular exit path are\nbogus and the thread_mask one actually could be triggered when\n__setup_irq() hands out that thread_mask again after __free_irq()\ndropped irq_desc-\u003elock.\n\nThinking more about it, neither IRQTF_RUNTHREAD nor the bit in\nthread_mask can be set as this is the regular exit path. We come here\ndue to:\n\t__free_irq()\n\t   remove action from desc\n\t   synchronize_irq()\n\t   kthread_stop()\n\nSo synchronize_irq() makes sure that the thread finished running and\ncleaned up both the thread_active count and thread_mask. After that\npoint nothing can set IRQTF_RUNTHREAD on this action. So the warnons\nand the cleanups are pointless.\n\nReported-by: Alexander Gordeev \u003cagordeev@redhat.com\u003e\nCc: Ido Yariv \u003cido@wizery.com\u003e\nLink: http://lkml.kernel.org/r/20120315190755.GA6732@dhcp-26-207.brq.redhat.com\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "79f0713d403c800db9d89134e2fd7f846e68d6ee",
      "tree": "0c59c69742d70080f08d3c42febdf51b8db236ad",
      "parents": [
        "9bbad7da76b3dd578fb55c862624366a8c9ccd22"
      ],
      "author": {
        "name": "Cyrill Gorcunov",
        "email": "gorcunov@openvz.org",
        "time": "Thu Mar 15 15:17:10 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 15 17:03:03 2012 -0700"
      },
      "message": "prctl: use CAP_SYS_RESOURCE for PR_SET_MM option\n\nCAP_SYS_ADMIN is already overloaded left and right, so to have more\nfine-grained access control use CAP_SYS_RESOURCE here.\n\nThe CAP_SYS_RESOUCE is chosen because this prctl option allows a current\nprocess to adjust some fields of memory map descriptor which rather\nrepresents what the process owns: pointers to code, data, stack\nsegments, command line, auxiliary vector data and etc.\n\nSuggested-by: Michael Kerrisk \u003cmtk.manpages@gmail.com\u003e\nAcked-by: Kees Cook \u003ckeescook@chromium.org\u003e\nAcked-by: Michael Kerrisk \u003cmtk.manpages@gmail.com\u003e\nCc: Pavel Emelyanov \u003cxemul@parallels.com\u003e\nCc: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Paul Bolle \u003cpebolle@tiscali.nl\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nSigned-off-by: Cyrill Gorcunov \u003cgorcunov@openvz.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a078c6d0e6288fad6d83fb6d5edd91ddb7b6ab33",
      "tree": "473eb7484d966e65c51487c72d47502096ab7b99",
      "parents": [
        "f910381a55cdaa097030291f272f6e6e4380c39a"
      ],
      "author": {
        "name": "Sasha Levin",
        "email": "levinsasha928@gmail.com",
        "time": "Thu Mar 15 12:36:14 2012 -0400"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Mar 15 21:41:34 2012 +0100"
      },
      "message": "ntp: Fix integer overflow when setting time\n\n\u0027long secs\u0027 is passed as divisor to div_s64, which accepts a 32bit\ndivisor. On 64bit machines that value is trimmed back from 8 bytes\nback to 4, causing a divide by zero when the number is bigger than\n(1 \u003c\u003c 32) - 1 and all 32 lower bits are 0.\n\nUse div64_long() instead.\n\nSigned-off-by: Sasha Levin \u003clevinsasha928@gmail.com\u003e\nCc: johnstul@us.ibm.com\nLink: http://lkml.kernel.org/r/1331829374-31543-2-git-send-email-levinsasha928@gmail.com\nCc: stable@vger.kernel.org\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "600e145882802d6ccbfe2c4aea243d97caeb91a9",
      "tree": "0ad47fe66dfe2ea41a75c493e877483049dd446b",
      "parents": [
        "9993bc635d01a6ee7f6b833b4ee65ce7c06350b1"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "peterz@infradead.org",
        "time": "Thu Mar 15 12:35:37 2012 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 15 13:38:54 2012 +0100"
      },
      "message": "printk: Make it compile with !CONFIG_PRINTK\n\nCommit 3ccf3e830615 (\"printk/sched: Introduce special\nprintk_sched() for those awkward moments\") overlooked\nan #ifdef, so move code around to respect these directives.\n\nReported-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nLink: http://lkml.kernel.org/r/1331811337.18960.179.camel@twins\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "f1cbd03f5eabb75ea8ace23b47d2209f10871c16",
      "tree": "2ac398bd1a50ce135461fae5b5e91ba05831af84",
      "parents": [
        "ff398c45b03d9d64135d928c0146d8c38a70fd3b",
        "ff8c1474cc2f5e11414c71ec4d739c18e6e669c0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 14 17:16:45 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 14 17:16:45 2012 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.dk/linux-block\n\nPull block fixes from Jens Axboe:\n \"Been sitting on this for a while, but lets get this out the door.\n  This fixes various important bugs for 3.3 final, along with a few more\n  trivial ones.  Please pull!\"\n\n* \u0027for-linus\u0027 of git://git.kernel.dk/linux-block:\n  block: fix ioc leak in put_io_context\n  block, sx8: fix pointer math issue getting fw version\n  Block: use a freezable workqueue for disk-event polling\n  drivers/block/DAC960: fix -Wuninitialized warning\n  drivers/block/DAC960: fix DAC960_V2_IOCTL_Opcode_T -Wenum-compare warning\n  block: fix __blkdev_get and add_disk race condition\n  block: Fix setting bio flags in drivers (sd_dif/floppy)\n  block: Fix NULL pointer dereference in sd_revalidate_disk\n  block: exit_io_context() should call elevator_exit_icq_fn()\n  block: simplify ioc_release_fn()\n  block: replace icq-\u003echanged with icq-\u003eflags\n"
    },
    {
      "commit": "7140ea1980f2fae9c7aaeac5f6b35317e1389ee6",
      "tree": "7b1021c74dee94b0171db25bc1965555e0e9a9e5",
      "parents": [
        "df8d291f28aa1e8437c8f7816328a6516379c71b"
      ],
      "author": {
        "name": "Ido Yariv",
        "email": "ido@wizery.com",
        "time": "Fri Dec 02 18:24:12 2011 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Mar 14 11:56:20 2012 +0100"
      },
      "message": "genirq: Flush the irq thread on synchronization\n\nThe current implementation does not always flush the threaded handler\nwhen disabling the irq. In case the irq handler was called, but the\nthreaded handler hasn\u0027t started running yet, the interrupt will be\nflagged as pending, and the handler will not run. This implementation\nhas some issues:\n\nFirst, if the interrupt is a wake source and flagged as pending, the\nsystem will not be able to suspend.\n\nSecond, when quickly disabling and re-enabling the irq, the threaded\nhandler might continue to run after the irq is re-enabled without the\nirq handler being called first. This might be an unexpected behavior.\n\nIn addition, it might be counter-intuitive that the threaded handler\nwill not be called even though the irq handler was called and returned\nIRQ_WAKE_THREAD.\n\nFix this by always waiting for the threaded handler to complete in\nsynchronize_irq().\n\n[ tglx: Massaged comments, added WARN_ONs and the missing\n  \tIRQTF_RUNTHREAD check in exit_irq_thread() ]\n\nSigned-off-by: Ido Yariv \u003cido@wizery.com\u003e\nLink: http://lkml.kernel.org/r/1322843052-7166-1-git-send-email-ido@wizery.com\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "2dc9b5dbdef09840de852a4f0cc6a9c9eece7220",
      "tree": "4164272ddddfc2477005866ce3261c76470c0d1a",
      "parents": [
        "3047817b894ddae62be07787bc8735a616104398"
      ],
      "author": {
        "name": "Steffen Klassert",
        "email": "steffen.klassert@secunet.com",
        "time": "Fri Mar 09 07:20:49 2012 +0100"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Wed Mar 14 17:25:56 2012 +0800"
      },
      "message": "padata: Fix race on sequence number wrap\n\nWhen padata_do_parallel() is called from multiple cpus for the same\npadata instance, we can get object reordering on sequence number wrap\nbecause testing for sequence number wrap and reseting the sequence\nnumber must happen atomically but is implemented with two atomic\noperations. This patch fixes this by converting the sequence number\nfrom atomic_t to an unsigned int and protect the access with a\nspin_lock. As a side effect, we get rid of the sequence number wrap\nhandling because the seqence number wraps back to null now without\nthe need to do anything.\n\nSigned-off-by: Steffen Klassert \u003csteffen.klassert@secunet.com\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "3047817b894ddae62be07787bc8735a616104398",
      "tree": "e5eac5f11bb0c34a80224a62892f72a240eb1659",
      "parents": [
        "0b95ec56ae19f61ca664e83766a2180057f0e351"
      ],
      "author": {
        "name": "Steffen Klassert",
        "email": "steffen.klassert@secunet.com",
        "time": "Fri Mar 09 07:20:12 2012 +0100"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Wed Mar 14 17:25:56 2012 +0800"
      },
      "message": "padata: Fix race in the serialization path\n\nWhen a padata object is queued to the serialization queue, another\ncpu might process and free the padata object. So don\u0027t dereference\nit after queueing to the serialization queue.\n\nSigned-off-by: Steffen Klassert \u003csteffen.klassert@secunet.com\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "df8d291f28aa1e8437c8f7816328a6516379c71b",
      "tree": "26ae585aa259584ddd0d9088933547c065c37086",
      "parents": [
        "5234ffb9f74cfa8993d174782bc861dd9b7b5bfb",
        "fde7d9049e55ab85a390be7f415d74c9f62dd0f9"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Mar 13 16:34:48 2012 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Mar 13 16:35:16 2012 +0100"
      },
      "message": "Merge branch \u0027linus\u0027 into irq/core\n\nReason: Get upstream fixes integrated before further modifications.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "47258cf3c4aa5d56e678bafe0dd0d03ddd980b88",
      "tree": "4856f0fb1185ba97f320a7ed6fb63bf136708a42",
      "parents": [
        "c308b56b5398779cd3da0f62ab26b0453494c3d4",
        "fde7d9049e55ab85a390be7f415d74c9f62dd0f9"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Mar 13 16:26:52 2012 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Mar 13 16:26:52 2012 +0100"
      },
      "message": "Merge tag \u0027v3.3-rc7\u0027 into sched/core\n\nMerge reason: merge back final fixes, prepare for the merge window.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "bea95c152dee1791dd02cbc708afbb115bb00f9a",
      "tree": "af9994c42c5fdd81ba3dadd7b812e2fa85273353",
      "parents": [
        "f9b4eeb809c6d031cc9561cc34dd691701cb2c2a",
        "24bff2dc0f77b1f186b7bdf30060caf3df191a68"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 12 20:46:35 2012 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 12 20:47:05 2012 +0100"
      },
      "message": "Merge branch \u0027perf/hw-branch-sampling\u0027 into perf/core\n\nMerge reason: The \u0027perf record -b\u0027 hardware branch sampling feature is ready for upstream.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "35239e23c66f1614c76739b62a299c3c92d6eb68",
      "tree": "7b1e068df888ec9a00b43c1dd7517a6490da6a94",
      "parents": [
        "3f33ab1c0c741bfab2138c14ba1918a7905a1e8b",
        "87e24f4b67e68d9fd8df16e0bf9c66d1ad2a2533"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 12 20:44:07 2012 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 12 20:44:11 2012 +0100"
      },
      "message": "Merge branch \u0027perf/urgent\u0027 into perf/core\n\nMerge reason: We are going to queue up a dependent patch.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c308b56b5398779cd3da0f62ab26b0453494c3d4",
      "tree": "b2d90bd6f8ebbbeaae97f4ef319f7e22fcc77436",
      "parents": [
        "8e3fabfde445a872c8aec2296846badf24d7c8b4"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "peterz@infradead.org",
        "time": "Thu Mar 01 15:04:46 2012 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 12 20:43:17 2012 +0100"
      },
      "message": "sched: Fix nohz load accounting -- again!\n\nVarious people reported nohz load tracking still being wrecked, but Doug\nspotted the actual problem. We fold the nohz remainder in too soon,\ncausing us to loose samples and under-account.\n\nSo instead of playing catch-up up-front, always do a single load-fold\nwith whatever state we encounter and only then fold the nohz remainder\nand play catch-up.\n\nReported-by: Doug Smythies \u003cdsmythies@telus.net\u003e\nReported-by: LesÅ\u003d82aw Kope\u003dC4\u003d87 \u003cleslaw.kopec@nasza-klasa.pl\u003e\nReported-by: Aman Gupta \u003caman@tmm1.net\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/n/tip-4v31etnhgg9kwd6ocgx3rxl8@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "8e3fabfde445a872c8aec2296846badf24d7c8b4",
      "tree": "60f47d850adc39aff6de56ec82d7e1a13d93d4a8",
      "parents": [
        "3ccf3e8306156a28213adc720aba807e9a901ad5"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue Mar 06 18:54:26 2012 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 12 20:43:17 2012 +0100"
      },
      "message": "sched: Update yield() docs\n\nSuggested-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1331056466.11248.327.camel@twins\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "3ccf3e8306156a28213adc720aba807e9a901ad5",
      "tree": "5b9db344b702299ea7eb53fbff3d0d74707d40ec",
      "parents": [
        "554cecaf733623b327eef9652b65965eb1081b81"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Mon Feb 27 10:47:00 2012 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 12 20:43:16 2012 +0100"
      },
      "message": "printk/sched: Introduce special printk_sched() for those awkward moments\n\nThere\u0027s a few awkward printk()s inside of scheduler guts that people\nprefer to keep but really are rather deadlock prone. Fudge around it\nby storing the text in a per-cpu buffer and poll it using the existing\nprintk_tick() handler.\n\nThis will drop output when its more frequent than once a tick, however\nonly the affinity thing could possible go that fast and for that just\none should suffice to notify the admin he\u0027s done something silly..\n\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-wua3lmkt3dg8nfts66o6brne@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "554cecaf733623b327eef9652b65965eb1081b81",
      "tree": "4e471c4689563d3a882667323ece2e581d8f17c8",
      "parents": [
        "5fbd036b552f633abb394a319f7c62a5c86a9cd7"
      ],
      "author": {
        "name": "Diwakar Tundlam",
        "email": "dtundlam@nvidia.com",
        "time": "Wed Mar 07 14:44:26 2012 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 12 20:43:16 2012 +0100"
      },
      "message": "sched/nohz: Correctly initialize \u0027next_balance\u0027 in \u0027nohz\u0027 idle balancer\n\nThe \u0027next_balance\u0027 field of \u0027nohz\u0027 idle balancer must be initialized\nto jiffies. Since jiffies is initialized to negative 300 seconds the\n\u0027nohz\u0027 idle balancer does not run for the first 300s (5mins) after\nbootup. If no new processes are spawed or no idle cycles happen, the\nload on the cpus will remain unbalanced for that duration.\n\nSigned-off-by: Diwakar Tundlam \u003cdtundlam@nvidia.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1DD7BFEDD3147247B1355BEFEFE4665237994F30EF@HQMAIL04.nvidia.com\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "5fbd036b552f633abb394a319f7c62a5c86a9cd7",
      "tree": "fa91474a6aac5ea4aef0d7afc72af27c32d611af",
      "parents": [
        "5d6523ebd2f67de9d23285aad7f3910e7b0aee83"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "peterz@infradead.org",
        "time": "Thu Dec 15 17:09:22 2011 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 12 20:43:15 2012 +0100"
      },
      "message": "sched: Cleanup cpu_active madness\n\nStepan found:\n\nCPU0\t\tCPUn\n\n_cpu_up()\n  __cpu_up()\n\n\t\tboostrap()\n\t\t  notify_cpu_starting()\n\t\t  set_cpu_online()\n\t\t  while (!cpu_active())\n\t\t    cpu_relax()\n\n\u003cPREEMPT-out\u003e\n\nsmp_call_function(.wait\u003d1)\n  /* we find cpu_online() is true */\n  arch_send_call_function_ipi_mask()\n\n  /* wait-forever-more */\n\n\u003cPREEMPT-in\u003e\n\t\t  local_irq_enable()\n\n  cpu_notify(CPU_ONLINE)\n    sched_cpu_active()\n      set_cpu_active()\n\nNow the purpose of cpu_active is mostly with bringing down a cpu, where\nwe mark it !active to avoid the load-balancer from moving tasks to it\nwhile we tear down the cpu. This is required because we only update the\nsched_domain tree after we brought the cpu-down. And this is needed so\nthat some tasks can still run while we bring it down, we just don\u0027t want\nnew tasks to appear.\n\nOn cpu-up however the sched_domain tree doesn\u0027t yet include the new cpu,\nso its invisible to the load-balancer, regardless of the active state.\nSo instead of setting the active state after we boot the new cpu (and\nconsequently having to wait for it before enabling interrupts) set the\ncpu active before we set it online and avoid the whole mess.\n\nReported-by: Stepan Moskovchenko \u003cstepanm@codeaurora.org\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nLink: http://lkml.kernel.org/r/1323965362.18942.71.camel@twins\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "5d6523ebd2f67de9d23285aad7f3910e7b0aee83",
      "tree": "745ee9e9378dd255fe7097e42c34a86ba9b8ee48",
      "parents": [
        "2e5b5b3a1b7768c89fbfeca18e75f8ee377e924c"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Sat Mar 10 00:07:36 2012 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 12 20:43:15 2012 +0100"
      },
      "message": "sched: Fix load-balance wreckage\n\nCommit 367456c (\"sched: Ditch per cgroup task lists for\nload-balancing\") completely wrecked load-balancing due to\na few silly mistakes.\n\nCorrect those and remove more pointless code.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/n/tip-zk04ihygwxn7qqrlpaf73b0r@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e06ffa1ede4146cbc261d90f5dff3d63fe2e9d7a",
      "tree": "3d8a7bccc95926aeb08c1b03e1ea8cffe722d38c",
      "parents": [
        "fde7d9049e55ab85a390be7f415d74c9f62dd0f9"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Fri Mar 09 18:03:20 2012 +0800"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Mon Mar 12 09:21:17 2012 -0700"
      },
      "message": "workqueue: use percpu allocator for cwq on UP\n\nI notice that the commit bbddff makes percpu allocator can work on UP,\nSo we don\u0027t need the magic way for UP.\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "5234ffb9f74cfa8993d174782bc861dd9b7b5bfb",
      "tree": "c3933cd6177cde81a99f0bcdadb333b1233e007d",
      "parents": [
        "05d74efa3c72a5c40b0edeb15856c0230126313b"
      ],
      "author": {
        "name": "Alexander Gordeev",
        "email": "agordeev@redhat.com",
        "time": "Fri Mar 09 14:59:59 2012 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Mar 09 17:19:09 2012 +0100"
      },
      "message": "genirq: Get rid of unnecessary IRQTF_DIED flag\n\nCurrently IRQTF_DIED flag is set when a IRQ thread handler calls do_exit()\nBut also PF_EXITING per process flag gets set when a thread exits. This\nfix eliminates the duplicate by using PF_EXITING flag.\n\nAlso, there is a race condition in exit_irq_thread(). In case a thread\u0027s\nbit is cleared in desc-\u003ethreads_oneshot (and the IRQ line gets unmasked),\nbut before IRQTF_DIED flag is set, a new interrupt might come in and set\njust cleared bit again, this time forever. This fix throws IRQTF_DIED flag\naway, eliminating the race as a result.\n\n[ tglx: Test THREAD_EXITING first as suggested by Oleg ]\n\nReported-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nSigned-off-by: Alexander Gordeev \u003cagordeev@redhat.com\u003e\nLink: http://lkml.kernel.org/r/20120309135958.GD2114@dhcp-26-207.brq.redhat.com\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "05d74efa3c72a5c40b0edeb15856c0230126313b",
      "tree": "cac8c177adbf67f3b9234341da2516fff51a50ff",
      "parents": [
        "4bcdf1d0b652bc33d52f2322b77463e4dc58abf8"
      ],
      "author": {
        "name": "Alexander Gordeev",
        "email": "agordeev@redhat.com",
        "time": "Fri Mar 09 14:59:40 2012 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Mar 09 17:19:08 2012 +0100"
      },
      "message": "genirq: No need to check IRQTF_DIED before stopping a thread handler\n\nSince 63706172f332fd3f6e7458ebfb35fa6de9c21dc5 kthread_stop() is not\nafraid of dead kernel threads. So no need to check if a thread is\nalive before stopping it. These checks still were racy.\n\nReported-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nSigned-off-by: Alexander Gordeev \u003cagordeev@redhat.com\u003e\nLink: http://lkml.kernel.org/r/20120309135939.GC2114@dhcp-26-207.brq.redhat.com\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "4bcdf1d0b652bc33d52f2322b77463e4dc58abf8",
      "tree": "2a8ecf0f6ef1d0c85a4553cb1d1c7dc74706488a",
      "parents": [
        "540b60e24f3f4781d80e47122f0c4486a03375b8"
      ],
      "author": {
        "name": "Alexander Gordeev",
        "email": "agordeev@redhat.com",
        "time": "Fri Mar 09 14:59:26 2012 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Mar 09 17:19:08 2012 +0100"
      },
      "message": "genirq: Get rid of unnecessary irqaction field in task_struct\n\nWhen a new thread handler is created, an irqaction is passed to it as\ndata. Not only that irqaction is stored in task_struct by the handler\nfor later use, but also a structure associated with the kernel thread\nkeeps this value as long as the thread exists.\n\nThis fix kicks irqaction out off task_struct. Yes, I introduce new bit\nfield. But it allows not only to eliminate the duplicate, but also\nshortens size of task_struct.\n\nReported-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nSigned-off-by: Alexander Gordeev \u003cagordeev@redhat.com\u003e\nLink: http://lkml.kernel.org/r/20120309135925.GB2114@dhcp-26-207.brq.redhat.com\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "540b60e24f3f4781d80e47122f0c4486a03375b8",
      "tree": "bcea664a581d1d1dbf63f544d00b52988f1422a5",
      "parents": [
        "b2a00178614e2cdd981a708d22a05c1ce4eadfd7"
      ],
      "author": {
        "name": "Alexander Gordeev",
        "email": "agordeev@redhat.com",
        "time": "Fri Mar 09 14:59:13 2012 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Mar 09 17:19:08 2012 +0100"
      },
      "message": "genirq: Fix incorrect check for forced IRQ thread handler\n\nWe do not want a bitwise AND between boolean operands\n\nSigned-off-by: Alexander Gordeev \u003cagordeev@redhat.com\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nLink: http://lkml.kernel.org/r/20120309135912.GA2114@dhcp-26-207.brq.redhat.com\nCc: stable@vger.kernel.org\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "4293f20c19f44ca66e5ac836b411d25e14b9f185",
      "tree": "4f9ab09ca1f775907af2a78ebb8754b945570d39",
      "parents": [
        "dac12d1f5ef228e132c2457dc214e0703533b016"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 07 08:21:19 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 07 08:21:19 2012 -0800"
      },
      "message": "Revert \"CPU hotplug, cpusets, suspend: Don\u0027t touch cpusets during suspend/resume\"\n\nThis reverts commit 8f2f748b0656257153bcf0941df8d6060acc5ca6.\n\nIt causes some odd regression that we have not figured out, and it\u0027s too\nlate in the -rc series to try to figure it out now.\n\nAs reported by Konstantin Khlebnikov, it causes consistent hangs on his\nlaptop (Thinkpad x220: 2x cores + HT).  They can be avoided by adding\ncalls to \"rebuild_sched_domains();\" in cpuset_cpu_[in]active() for the\nCPU_{ONLINE/DOWN_FAILED/DOWN_PREPARE}_FROZEN cases, but it\u0027s not at all\nclear why, and it makes no sense.\n\nKonstantin\u0027s config doesn\u0027t even have CONFIG_CPUSETS enabled, just to\nmake things even more interesting.  So it\u0027s not the cpusets, it\u0027s just\nthe scheduling domains.\n\nSo until this is understood, revert.\n\nBisected-reported-and-tested-by: Konstantin Khlebnikov \u003ckhlebnikov@openvz.org\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nAcked-by: Srivatsa S. Bhat \u003csrivatsa.bhat@linux.vnet.ibm.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "52abb700e16a9aa4cbc03f3d7f80206cbbc80680",
      "tree": "f396df08518ff22039d2c4da153cba029f01ecd2",
      "parents": [
        "ce8fea7aa4ad9e3b40999a08622ef27c77159659"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Mar 06 23:18:54 2012 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 06 16:46:39 2012 -0800"
      },
      "message": "genirq: Clear action-\u003ethread_mask if IRQ_ONESHOT is not set\n\nXommit ac5637611(genirq: Unmask oneshot irqs when thread was not woken)\nfails to unmask when a !IRQ_ONESHOT threaded handler is handled by\nhandle_level_irq.\n\nThis happens because thread_mask is or\u0027ed unconditionally in\nirq_wake_thread(), but for !IRQ_ONESHOT interrupts never cleared.  So\nthe check for !desc-\u003ethread_active fails and keeps the interrupt\ndisabled.\n\nKeep the thread_mask zero for !IRQ_ONESHOT interrupts.\n\nDocument the thread_mask magic while at it.\n\nReported-and-tested-by: Sven Joachim \u003csvenjoac@gmx.de\u003e\nReported-and-tested-by: Stefan Lippers-Hollmann \u003cs.l-h@gmx.de\u003e\nCc: stable@vger.kernel.org\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b2a00178614e2cdd981a708d22a05c1ce4eadfd7",
      "tree": "774ffcfab7e84497ae39ab8f944a1c19deccc46d",
      "parents": [
        "a09b659cd68c10ec6a30cb91ebd2c327fcd5bfe5"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Mon Mar 05 15:07:25 2012 -0800"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Mar 06 13:33:27 2012 +0100"
      },
      "message": "softirq: Reduce invoke_softirq() code duplication\n\nThe two invoke_softirq() variants are identical except for a single\nline. So move the #ifdef __ARCH_IRQ_EXIT_IRQS_DISABLED inside one of\nthe functions and get rid of the other one.\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "a09b659cd68c10ec6a30cb91ebd2c327fcd5bfe5",
      "tree": "ea0b9390262eb337db89514e492968b92dc3dc04",
      "parents": [
        "986cb48c5a4de0085db94d343b4e7dcf54355ec1"
      ],
      "author": {
        "name": "Russell King",
        "email": "linux@arm.linux.org.uk",
        "time": "Mon Mar 05 15:07:25 2012 -0800"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Mar 06 13:33:27 2012 +0100"
      },
      "message": "genirq: Fix long-term regression in genirq irq_set_irq_type() handling\n\nIn 2008, commit 0c5d1eb77a8be (\"genirq: record trigger type\") modified the\nway set_irq_type() handles the \u0027no trigger\u0027 condition.  However, this has\nan adverse effect on PCMCIA support on Intel StrongARM and probably PXA\nplatforms.\n\nPCMCIA has several status signals on the socket which can trigger\ninterrupts; some of these status signals depend on the card\u0027s mode\n(whether it is configured in memory or IO mode).  For example, cards have\na \u0027Ready/IRQ\u0027 signal: in memory mode, this provides an indication to\nPCMCIA that the card has finished its power up initialization.  In IO\nmode, it provides the device interrupt signal.  Other status signals\nswitch between on-board battery status and loud speaker output.\n\nIn classical PCMCIA implementations, where you have a specific socket\ncontroller, the controller provides a method to mask interrupts from the\nsocket, and importantly ignore any state transitions on the pins which\ncorrespond with interrupts once masked.  This masking prevents unwanted\nevents caused by the removal and application of socket power being\nforwarded.\n\nHowever, on platforms where there is no socket controller, the PCMCIA\nstatus and interrupt signals are routed to standard edge-triggered GPIOs. \nThese GPIOs can be configured to interrupt on rising edge, falling edge,\nor never.  This is where the problems start.\n\nEdge triggered interrupts are required to record events while disabled via\nthe usual methods of {free,request,disable,enable}_irq() to prevent\nproblems with dropped interrupts (eg, the 8390 driver uses disable_irq()\nto defer the delivery of interrupts).  As a result, these interfaces can\nnot be used to implement the desired behaviour.\n\nThe side effect of this is that if the \u0027Ready/IRQ\u0027 GPIO is disabled via\ndisable_irq() on suspend, and enabled via enable_irq() after resume, we\nwill record the state transitions caused by powering events as valid\ninterrupts, and foward them to the card driver, which may attempt to\naccess a card which is not powered up.\n\nThis leads delays resume while drivers spin in their interrupt handlers,\nand complaints from drivers before they realize what\u0027s happened.\n\nMoreover, in the case of the \u0027Ready/IRQ\u0027 signal, this is requested and\nfreed by the card driver itself; the PCMCIA core has no idea whether the\ninterrupt is requested, and, therefore, whether a call to disable_irq()\nwould be valid.  (We tried this around 2.4.17 / 2.5.1 kernel era, and\nended up throwing it out because of this problem.)\n\nTherefore, it was decided back in around 2002 to disable the edge\ntriggering instead, resulting in all state transitions on the GPIO being\nignored.  That\u0027s what we actually need the hardware to do.\n\nThe commit above changes this behaviour; it explicitly prevents the \u0027no\ntrigger\u0027 state being selected.\n\nThe reason that request_irq() does not accept the \u0027no trigger\u0027 state is\nfor compatibility with existing drivers which do not provide their desired\ntriggering configuration.  The set_irq_type() function is \u0027new\u0027 and not\nused by non-trigger aware drivers.\n\nTherefore, revert this change, and restore previously working platforms\nback to their former state.\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nCc: linux@arm.linux.org.uk\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: stable@vger.kernel.org\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "6027ce497d44dd8eae1a9215789df178f6b422cc",
      "tree": "5844f0d3899a7a3214cb1145b3d9a8f9660dd7c7",
      "parents": [
        "6e27f63edbd7ab893258e16500171dd1270a1369"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Mon Mar 05 14:59:14 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Mar 05 15:49:42 2012 -0800"
      },
      "message": "hung_task: fix the broken rcu_lock_break() logic\n\ncheck_hung_uninterruptible_tasks()-\u003ercu_lock_break() introduced by\n\"softlockup: check all tasks in hung_task\" commit ce9dbe24 looks\nabsolutely wrong.\n\n\t- rcu_lock_break() does put_task_struct(). If the task has exited\n\t  it is not safe to even read its -\u003estate, nothing protects this\n\t  task_struct.\n\n\t- The TASK_DEAD checks are wrong too. Contrary to the comment, we\n\t  can\u0027t use it to check if the task was unhashed. It can be unhashed\n\t  without TASK_DEAD, or it can be valid with TASK_DEAD.\n\n\t  For example, an autoreaping task can do release_task(current)\n\t  long before it sets TASK_DEAD in do_exit().\n\n\t  Or, a zombie task can have -\u003estate \u003d\u003d TASK_DEAD but release_task()\n\t  was not called, and in this case we must not break the loop.\n\nChange this code to check pid_alive() instead, and do this before we drop\nthe reference to the task_struct.\n\nNote: while_each_thread() under rcu_read_lock() is not really safe, it can\nlivelock.  This will be fixed later, but fortunately in this case the\n\"max_count\" logic saves us anyway.\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nAcked-by: Mandeep Singh Baines \u003cmsb@google.com\u003e\nAcked-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nCc: Tetsuo Handa \u003cpenguin-kernel@I-love.SAKURA.ne.jp\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6e27f63edbd7ab893258e16500171dd1270a1369",
      "tree": "9c61b7c0dda37052e2285e90f914f8af5ed86f67",
      "parents": [
        "57b59c4a1400fa6c34764eab2e35a8762dc05a09"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Mon Mar 05 14:59:14 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Mar 05 15:49:42 2012 -0800"
      },
      "message": "vfork: kill PF_STARTING\n\nPreviously it was (ab)used by utrace.  Then it was wrongly used by the\nscheduler code.\n\nCurrently it is not used, kill it before it finds the new erroneous user.\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nAcked-by: Tejun Heo \u003ctj@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": "57b59c4a1400fa6c34764eab2e35a8762dc05a09",
      "tree": "e50e6a6f9f7fcd897856e5cdaca3d3caa18377d6",
      "parents": [
        "d68b46fe16ad59b3a5f51ec73daaa5dc06753798"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Mon Mar 05 14:59:13 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Mar 05 15:49:42 2012 -0800"
      },
      "message": "coredump_wait: don\u0027t call complete_vfork_done()\n\nNow that CLONE_VFORK is killable, coredump_wait() no longer needs\ncomplete_vfork_done().  zap_threads() should find and kill all tasks with\nthe same -\u003emm, this includes our parent if -\u003evfork_done is set.\n\nmm_release() becomes the only caller, unexport complete_vfork_done().\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nAcked-by: Tejun Heo \u003ctj@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": "d68b46fe16ad59b3a5f51ec73daaa5dc06753798",
      "tree": "4bae9ddc5f5bed853d1f0936d05c30e4f7ca924d",
      "parents": [
        "c415c3b47ea2754659d915cca387a20999044163"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Mon Mar 05 14:59:13 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Mar 05 15:49:42 2012 -0800"
      },
      "message": "vfork: make it killable\n\nMake vfork() killable.\n\nChange do_fork(CLONE_VFORK) to do wait_for_completion_killable().  If it\nfails we do not return to the user-mode and never touch the memory shared\nwith our child.\n\nHowever, in this case we should clear child-\u003evfork_done before return, we\nuse task_lock() in do_fork()-\u003ewait_for_vfork_done() and\ncomplete_vfork_done() to serialize with each other.\n\nNote: now that we use task_lock() we don\u0027t really need completion, we\ncould turn task-\u003evfork_done into \"task_struct *wake_up_me\" but this needs\nsome complications.\n\nNOTE: this and the next patches do not affect in-kernel users of\nCLONE_VFORK, kernel threads run with all signals ignored including\nSIGKILL/SIGSTOP.\n\nHowever this is obviously the user-visible change.  Not only a fatal\nsignal can kill the vforking parent, a sub-thread can do execve or\nexit_group() and kill the thread sleeping in vfork().\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nAcked-by: Tejun Heo \u003ctj@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": "c415c3b47ea2754659d915cca387a20999044163",
      "tree": "c2cb1134f139702e06ade8aecbeff70be7ea727c",
      "parents": [
        "880641bb9da2473e9ecf6c708d993b29928c1b3c"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Mon Mar 05 14:59:13 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Mar 05 15:49:42 2012 -0800"
      },
      "message": "vfork: introduce complete_vfork_done()\n\nNo functional changes.\n\nMove the clear-and-complete-vfork_done code into the new trivial helper,\ncomplete_vfork_done().\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nAcked-by: Tejun Heo \u003ctj@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": "f986a499ef6f317d906e6f6f281be966e1237a10",
      "tree": "88ceafe9a214907bd25e8a8ffd8990fd5bd2b40e",
      "parents": [
        "c22ab332902333f83766017478c1ef6607ace681"
      ],
      "author": {
        "name": "Prashanth Nageshappa",
        "email": "prashanth@linux.vnet.ibm.com",
        "time": "Mon Mar 05 14:59:12 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Mar 05 15:49:42 2012 -0800"
      },
      "message": "kprobes: return proper error code from register_kprobe()\n\nregister_kprobe() aborts if the address of the new request falls in a\nprohibited area (such as ftrace pouch, __kprobes annotated functions,\nnon-kernel text addresses, jump label text).  We however don\u0027t return the\nright error on this abort, resulting in a silent failure - incorrect\nadding/reporting of kprobes (\u0027perf probe do_fork+18\u0027 or \u0027perf probe\nmcount\u0027 for instance).\n\nIn V2 we are incorporating Masami Hiramatsu\u0027s  feedback.\n\nThis patch fixes it by returning -EINVAL upon failure.\n\nWhile we are here, rename the label used for exit to be more appropriate.\n\nSigned-off-by: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nSigned-off-by: Prashanth K Nageshappa \u003cprashanth@linux.vnet.ibm.com\u003e\nAcked-by: Masami Hiramatsu \u003cmasami.hiramatsu.pt@hitachi.com\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: \u003cstable@vger.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": "c22ab332902333f83766017478c1ef6607ace681",
      "tree": "20b7f296327cf1fd9349b7c99fdb11be1f4ff750",
      "parents": [
        "550cf00dbc8ee402bef71628cb71246493dd4500"
      ],
      "author": {
        "name": "Matthew Garrett",
        "email": "mjg@redhat.com",
        "time": "Mon Mar 05 14:59:10 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Mar 05 15:49:42 2012 -0800"
      },
      "message": "kmsg_dump: don\u0027t run on non-error paths by default\n\nSince commit 04c6862c055f (\"kmsg_dump: add kmsg_dump() calls to the\nreboot, halt, poweroff and emergency_restart paths\"), kmsg_dump() gets\nrun on normal paths including poweroff and reboot.\n\nThis is less than ideal given pstore implementations that can only\nrepresent single backtraces, since a reboot may overwrite a stored oops\nbefore it\u0027s been picked up by userspace.  In addition, some pstore\nbackends may have low performance and provide a significant delay in\nreboot as a result.\n\nThis patch adds a printk.always_kmsg_dump kernel parameter (which can also\nbe changed from userspace).  Without it, the code will only be run on\nfailure paths rather than on normal paths.  The option can be enabled in\nenvironments where there\u0027s a desire to attempt to audit whether or not a\nreboot was cleanly requested or not.\n\nSigned-off-by: Matthew Garrett \u003cmjg@redhat.com\u003e\nAcked-by: Seiji Aguchi \u003cseiji.aguchi@hds.com\u003e\nCc: Seiji Aguchi \u003cseiji.aguchi@hds.com\u003e\nCc: David Woodhouse \u003cdwmw2@infradead.org\u003e\nCc: Marco Stornelli \u003cmarco.stornelli@gmail.com\u003e\nCc: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Vivek Goyal \u003cvgoyal@redhat.com\u003e\nCc: Don Zickus \u003cdzickus@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d010b3326cf06b3406cdd88af16dcf4e4b6fec2e",
      "tree": "d0468d78582aeff6a603cb5d29b1a14310106896",
      "parents": [
        "2481c5fa6db0237e4f0168f88913178b2b495b7c"
      ],
      "author": {
        "name": "Stephane Eranian",
        "email": "eranian@google.com",
        "time": "Thu Feb 09 23:21:00 2012 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 05 14:55:42 2012 +0100"
      },
      "message": "perf: Add callback to flush branch_stack on context switch\n\nWith branch stack sampling, it is possible to filter by priv levels.\n\nIn system-wide mode, that means it is possible to capture only user\nlevel branches. The builtin SW LBR filter needs to disassemble code\nbased on LBR captured addresses. For that, it needs to know the task\nthe addresses are associated with. Because of context switches, the\ncontent of the branch stack buffer may contain addresses from\ndifferent tasks.\n\nWe need a callback on context switch to either flush the branch stack\nor save it. This patch adds a new callback in struct pmu which is called\nduring context switches. The callback is called only when necessary.\nThat is when a system-wide context has, at least, one event which\nuses PERF_SAMPLE_BRANCH_STACK. The callback is never called for\nper-thread context.\n\nIn this version, the Intel x86 code simply flushes (resets) the LBR\non context switches (fills it with zeroes). Those zeroed branches are\nthen filtered out by the SW filter.\n\nSigned-off-by: Stephane Eranian \u003ceranian@google.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1328826068-11713-11-git-send-email-eranian@google.com\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "2481c5fa6db0237e4f0168f88913178b2b495b7c",
      "tree": "4d0e8e9616c8e83ca2a72abbc3ac94621adc49be",
      "parents": [
        "3e702ff6d1ea12dcf1c798ecb61e7f3a1579df42"
      ],
      "author": {
        "name": "Stephane Eranian",
        "email": "eranian@google.com",
        "time": "Thu Feb 09 23:20:59 2012 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 05 14:55:42 2012 +0100"
      },
      "message": "perf: Disable PERF_SAMPLE_BRANCH_* when not supported\n\nPERF_SAMPLE_BRANCH_* is disabled for:\n\n - SW events (sw counters, tracepoints)\n - HW breakpoints\n - ALL but Intel x86 architecture\n - AMD64 processors\n\nSigned-off-by: Stephane Eranian \u003ceranian@google.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1328826068-11713-10-git-send-email-eranian@google.com\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "bce38cd53e5ddba9cb6d708c4ef3d04a4016ec7e",
      "tree": "8b42880d3ff9f250e246eb31bd80e6c36c99d8e1",
      "parents": [
        "737f24bda723fdf89ecaacb99fa2bf5683c32799"
      ],
      "author": {
        "name": "Stephane Eranian",
        "email": "eranian@google.com",
        "time": "Thu Feb 09 23:20:51 2012 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 05 14:55:39 2012 +0100"
      },
      "message": "perf: Add generic taken branch sampling support\n\nThis patch adds the ability to sample taken branches to the\nperf_event interface.\n\nThe ability to capture taken branches is very useful for all\nsorts of analysis. For instance, basic block profiling, call\ncounts, statistical call graph.\n\nThis new capability requires hardware assist and as such may\nnot be available on all HW platforms. On Intel x86 it is\nimplemented on top of the Last Branch Record (LBR) facility.\n\nTo enable taken branches sampling, the PERF_SAMPLE_BRANCH_STACK\nbit must be set in attr-\u003esample_type.\n\nSampled taken branches may be filtered by type and/or priv\nlevels.\n\nThe patch adds a new field, called branch_sample_type, to the\nperf_event_attr structure. It contains a bitmask of filters\nto apply to the sampled taken branches.\n\nFilters may be implemented in HW. If the HW filter does not exist\nor is not good enough, some arch may also implement a SW filter.\n\nThe following generic filters are currently defined:\n- PERF_SAMPLE_USER\n  only branches whose targets are at the user level\n\n- PERF_SAMPLE_KERNEL\n  only branches whose targets are at the kernel level\n\n- PERF_SAMPLE_HV\n  only branches whose targets are at the hypervisor level\n\n- PERF_SAMPLE_ANY\n  any type of branches (subject to priv levels filters)\n\n- PERF_SAMPLE_ANY_CALL\n  any call branches (may incl. syscall on some arch)\n\n- PERF_SAMPLE_ANY_RET\n  any return branches (may incl. syscall returns on some arch)\n\n- PERF_SAMPLE_IND_CALL\n  indirect call branches\n\nObviously filter may be combined. The priv level bits are optional.\nIf not provided, the priv level of the associated event are used. It\nis possible to collect branches at a priv level different from the\nassociated event. Use of kernel, hv priv levels is subject to permissions\nand availability (hv).\n\nThe number of taken branch records present in each sample may vary based\non HW, the type of sampled branches, the executed code. Therefore\neach sample contains the number of taken branches it contains.\n\nSigned-off-by: Stephane Eranian \u003ceranian@google.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1328826068-11713-2-git-send-email-eranian@google.com\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "737f24bda723fdf89ecaacb99fa2bf5683c32799",
      "tree": "35495fff3e9956679cb5468e74e6814c8e44ee66",
      "parents": [
        "8eedce996556d7d06522cd3a0e6069141c8dffe0",
        "b7c924274c456499264d1cfa3d44063bb11eb5db"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 05 09:20:08 2012 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 05 09:20:08 2012 +0100"
      },
      "message": "Merge branch \u0027perf/urgent\u0027 into perf/core\n\nConflicts:\n\ttools/perf/builtin-record.c\n\ttools/perf/builtin-top.c\n\ttools/perf/perf.h\n\ttools/perf/util/top.h\n\nMerge reason: resolve these cherry-picking conflicts.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ed819e3b964bba8bfae8e65d4d55a3f345f8da16",
      "tree": "345c6e010750627224ac8c64ad9be06692e5e273",
      "parents": [
        "48ed00031681c373ff81e78fd248710fe4cddda0",
        "a9b542ee607a8afafa9447292394959fc84ea650"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Mar 04 23:11:24 2012 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Mar 04 23:11:24 2012 +0100"
      },
      "message": "Merge branch \u0027pm-qos\u0027\n\n* pm-qos:\n  PM / QoS: unconditionally build the feature\n  PM / QoS: Simplify PM QoS expansion/merge\n"
    },
    {
      "commit": "643161ace2a7624fd0106ede12ae43bcbbfc1de0",
      "tree": "56fb5d4af5c5e46da8cfe3c613a84f1402a60d41",
      "parents": [
        "743c5bc210f45b728a246da65fd1a3160566d34d",
        "37f08be11be9a7d9351fb1b9b408259519a126f3"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Mar 04 23:11:14 2012 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Mar 04 23:11:14 2012 +0100"
      },
      "message": "Merge branch \u0027pm-sleep\u0027\n\n* pm-sleep:\n  PM / Freezer: Remove references to TIF_FREEZE in comments\n  PM / Sleep: Add more wakeup source initialization routines\n  PM / Hibernate: Enable usermodehelpers in hibernate() error path\n  PM / Sleep: Make __pm_stay_awake() delete wakeup source timers\n  PM / Sleep: Fix race conditions related to wakeup source timer function\n  PM / Sleep: Fix possible infinite loop during wakeup source destruction\n  PM / Hibernate: print physical addresses consistently with other parts of kernel\n  PM: Add comment describing relationships between PM callbacks to pm.h\n  PM / Sleep: Drop suspend_stats_update()\n  PM / Sleep: Make enter_state() in kernel/power/suspend.c static\n  PM / Sleep: Unify kerneldoc comments in kernel/power/suspend.c\n  PM / Sleep: Remove unnecessary label from suspend_freeze_processes()\n  PM / Sleep: Do not check wakeup too often in try_to_freeze_tasks()\n  PM / Sleep: Initialize wakeup source locks in wakeup_source_add()\n  PM / Hibernate: Refactor and simplify freezer_test_done\n  PM / Hibernate: Thaw kernel threads in hibernation_snapshot() in error/test path\n  PM / Freezer / Docs: Document the beauty of freeze/thaw semantics\n  PM / Suspend: Avoid code duplication in suspend statistics update\n  PM / Sleep: Introduce generic callbacks for new device PM phases\n  PM / Sleep: Introduce \"late suspend\" and \"early resume\" of devices\n"
    },
    {
      "commit": "37f08be11be9a7d9351fb1b9b408259519a126f3",
      "tree": "7edf402614ae9f36a6e9226b380072cec969c847",
      "parents": [
        "8671bbc1bd0442ef0eab27f7d56216431c490820"
      ],
      "author": {
        "name": "Marcos Paulo de Souza",
        "email": "marcos.mage@gmail.com",
        "time": "Tue Feb 21 23:57:47 2012 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Mar 04 23:08:54 2012 +0100"
      },
      "message": "PM / Freezer: Remove references to TIF_FREEZE in comments\n\nThis patch removes all the references in the code about the TIF_FREEZE\nflag removed by commit a3201227f803ad7fd43180c5195dbe5a2bf998aa\n\n    freezer: make freezing() test freeze conditions in effect instead of TIF_FREEZE\n\nThere still are some references to TIF_FREEZE in\nDocumentation/power/freezing-of-tasks.txt, but it looks like that\ndocumentation needs more thorough work to reflect how the new\nfreezer works, and hence merely removing the references to TIF_FREEZE\nwon\u0027t really help. So I have not touched that part in this patch.\n\nSuggested-by: Srivatsa S. Bhat \u003csrivatsa.bhat@linux.vnet.ibm.com\u003e\nSigned-off-by: Marcos Paulo de Souza \u003cmarcos.mage@gmail.com\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "05b4877f6a4f1ba4952d1222213d262bf8c132b7",
      "tree": "7205a80a5919c1f389873c78740d504800fb60e5",
      "parents": [
        "4782e1654bdbd30cf307da090b3c4f70157477cb"
      ],
      "author": {
        "name": "Srivatsa S. Bhat",
        "email": "srivatsa.bhat@linux.vnet.ibm.com",
        "time": "Fri Feb 17 23:39:51 2012 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Mar 04 23:08:37 2012 +0100"
      },
      "message": "PM / Hibernate: Enable usermodehelpers in hibernate() error path\n\nIf create_basic_memory_bitmaps() fails, usermodehelpers are not re-enabled\nbefore returning. Fix this. And while at it, reword the goto labels so that\nthey look more meaningful.\n\nSigned-off-by: Srivatsa S. Bhat \u003csrivatsa.bhat@linux.vnet.ibm.com\u003e\nCc: stable@vger.kernel.org\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "2273d5ccb882106a74c7b780a6bfa16fb210cd24",
      "tree": "229eaadb05940e8209cac36b0d8b0b4281d0bf08",
      "parents": [
        "5189fa19a4b2b4c3bec37c3a019d446148827717",
        "847854f5988a04fe7e02d2fdd4fa0df9f96360fe",
        "5d85d97c9f6973ba854f35a2d5e80fe68272143e",
        "8f2f748b0656257153bcf0941df8d6060acc5ca6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 02 11:38:43 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 02 11:38:43 2012 -0800"
      },
      "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/tip\n\nPulling latest branches from Ingo:\n\n* \u0027core-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  memblock: Fix size aligning of memblock_alloc_base_nid()\n\n* \u0027perf-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  perf probe: Ensure offset provided is not greater than function length without DWARF info too\n  perf tools: Ensure comm string is properly terminated\n  perf probe: Ensure offset provided is not greater than function length\n  perf evlist: Return first evsel for non-sample event on old kernel\n  perf/hwbp: Fix a possible memory leak\n\n* \u0027sched-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  CPU hotplug, cpusets, suspend: Don\u0027t touch cpusets during suspend/resume\n"
    },
    {
      "commit": "2e5b5b3a1b7768c89fbfeca18e75f8ee377e924c",
      "tree": "0d6d589e42b7e88464d5edcfa818b3a7e27a93e8",
      "parents": [
        "367456c756a6b84f493ca9cc5b17b1f5d38ef466"
      ],
      "author": {
        "name": "Hiroshi Shimamoto",
        "email": "h-shimamoto@ct.jp.nec.com",
        "time": "Thu Feb 23 17:41:27 2012 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 02 12:23:49 2012 +0100"
      },
      "message": "sched: Clean up parameter passing of proc_sched_autogroup_set_nice()\n\nPass nice as a value to proc_sched_autogroup_set_nice().\n\nNo side effect is expected, and the variable err will be overwritten with\nthe return value.\n\nSigned-off-by: Hiroshi Shimamoto \u003ch-shimamoto@ct.jp.nec.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/4F45FBB7.5090607@ct.jp.nec.com\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "62d3c5439c534b0e6c653fc63e6d8c67be3a57b1",
      "tree": "d335d0e449ef2d61d52921e3f210cdd403bb025a",
      "parents": [
        "cecd353a02fb1405c8a72a324b26b5acf97e7411"
      ],
      "author": {
        "name": "Alan Stern",
        "email": "stern@rowland.harvard.edu",
        "time": "Fri Mar 02 10:51:00 2012 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@kernel.dk",
        "time": "Fri Mar 02 10:51:00 2012 +0100"
      },
      "message": "Block: use a freezable workqueue for disk-event polling\n\nThis patch (as1519) fixes a bug in the block layer\u0027s disk-events\npolling.  The polling is done by a work routine queued on the\nsystem_nrt_wq workqueue.  Since that workqueue isn\u0027t freezable, the\npolling continues even in the middle of a system sleep transition.\n\nObviously, polling a suspended drive for media changes and such isn\u0027t\na good thing to do; in the case of USB mass-storage devices it can\nlead to real problems requiring device resets and even re-enumeration.\n\nThe patch fixes things by creating a new system-wide, non-reentrant,\nfreezable workqueue and using it for disk-events polling.\n\nSigned-off-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nCC: \u003cstable@kernel.org\u003e\nAcked-by: Tejun Heo \u003ctj@kernel.org\u003e\nAcked-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Jens Axboe \u003caxboe@kernel.dk\u003e\n"
    },
    {
      "commit": "367456c756a6b84f493ca9cc5b17b1f5d38ef466",
      "tree": "0e95a2fa5cb25ea14e2841d84d4d2410ff383e33",
      "parents": [
        "ddcdf6e7d9919d139031fa2a6addd9544a9a833e"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Mon Feb 20 21:49:09 2012 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 01 13:08:37 2012 +0100"
      },
      "message": "sched: Ditch per cgroup task lists for load-balancing\n\nPer cgroup load-balance has numerous problems, chief amongst them that\nthere is no real sane order in them. So stop pretending it makes sense\nand enqueue all tasks on a single list.\n\nThis also allows us to more easily fix the fwd progress issue\nuncovered by the lock-break stuff. Rotate the list on failure to\nmigreate and limit the total iterations to nr_running (which with\nreleasing the lock isn\u0027t strictly accurate but close enough).\n\nAlso add a filter that skips very light tasks on the first attempt\naround the list, this attempts to avoid shooting whole cgroups around\nwithout affecting over balance.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: pjt@google.com\nLink: http://lkml.kernel.org/n/tip-tx8yqydc7eimgq7i4rkc3a4g@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ddcdf6e7d9919d139031fa2a6addd9544a9a833e",
      "tree": "5c6883bdc1128a7c89b6d7e3ac13aa1a54f5c3c0",
      "parents": [
        "8e45cb545d98bc58e75b7de89ec8d3e5c8459ee6"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Feb 22 19:27:40 2012 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 01 10:51:23 2012 +0100"
      },
      "message": "sched: Rename load-balancing fields\n\n s/env-\u003ethis_/env-\u003edst_/g\n s/env-\u003ebusiest_/env-\u003esrc_/g\n s/pull_task/move_task/g\n\nMakes everything clearer.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: pjt@google.com\nLink: http://lkml.kernel.org/n/tip-0yvgms8t8x962drpvl0fu0kk@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "8e45cb545d98bc58e75b7de89ec8d3e5c8459ee6",
      "tree": "b855602a267eb38bc5d511050fb40477e5a607f1",
      "parents": [
        "3c7d51843b03a6839e9ec7cda724e54d2319a63a"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Feb 22 12:47:19 2012 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 01 10:51:22 2012 +0100"
      },
      "message": "sched: Move load-balancing arguments into helper struct\n\nPassing large sets of similar arguments all around the load-balancer\ngets tiresom when you want to modify something. Stick them all in a\nhelper structure and pass the structure around.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: pjt@google.com\nLink: http://lkml.kernel.org/n/tip-5slqz0vhsdzewrfk9eza1aon@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "3c7d51843b03a6839e9ec7cda724e54d2319a63a",
      "tree": "df8ac53451a7e519ddb0d349b24e6ba17ea18afb",
      "parents": [
        "1c4dd99bed5f6f70932bf8dacdd54d04a2619778"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sun Jul 17 20:46:52 2011 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 01 10:46:54 2012 +0100"
      },
      "message": "sched/rt: Do not submit new work when PI-blocked\n\nWhen we are PI-blocked then we want to get things done ASAP.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/n/tip-vw8et3445km5b8mpihf4trae@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "1c4dd99bed5f6f70932bf8dacdd54d04a2619778",
      "tree": "24b6db83e0507598e255de9e5b410a8300ab7572",
      "parents": [
        "63b2001169e75cd71e917ec953fdab572e3f944a"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Jun 06 20:07:38 2011 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 01 10:28:05 2012 +0100"
      },
      "message": "sched/rt: Prevent idle task boosting\n\nIdle task boosting is a nono in general. There is one\nexception, when PREEMPT_RT and NOHZ is active:\n\nThe idle task calls get_next_timer_interrupt() and holds\nthe timer wheel base-\u003elock on the CPU and another CPU wants\nto access the timer (probably to cancel it). We can safely\nignore the boosting request, as the idle CPU runs this code\nwith interrupts disabled and will complete the lock\nprotected section without being interrupted. So there is no\nreal need to boost.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/n/tip-755rvsosz7sdzot12a3gbha6@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "63b2001169e75cd71e917ec953fdab572e3f944a",
      "tree": "3338725751540571a7d490b252f1b450554a6847",
      "parents": [
        "ba74c1448f127649046615ec017bded7b2a76f29"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Dec 01 00:04:00 2011 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 01 10:28:04 2012 +0100"
      },
      "message": "sched/wait: Add __wake_up_all_locked() API\n\nFor code which protects the waitqueue itself with another lock it\nmakes no sense to acquire the waitqueue lock for wakeup all. Provide\n__wake_up_all_locked().\n\nThis is an optimization on the vanilla kernel (to be used by the\nPCI code) and an important semantic distinction on -rt.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/n/tip-ux6m4b8jonb9inx8xafh77ds@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ba74c1448f127649046615ec017bded7b2a76f29",
      "tree": "33eceaf0c4b35aca095e3e1a678bdbab23006650",
      "parents": [
        "bd2f55361f18347e890d52ff9cfd8895455ec11b"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Mar 21 13:32:17 2011 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 01 10:28:04 2012 +0100"
      },
      "message": "sched/rt: Document scheduler related skip-resched-check sites\n\nCreate a distinction between scheduler related preempt_enable_no_resched()\ncalls and the nearly one hundred other places in the kernel that do not\nwant to reschedule, for one reason or another.\n\nThis distinction matters for -rt, where the scheduler and the non-scheduler\npreempt models (and checks) are different. For upstream it\u0027s purely\ndocumentational.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nLink: http://lkml.kernel.org/n/tip-gs88fvx2mdv5psnzxnv575ke@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "bd2f55361f18347e890d52ff9cfd8895455ec11b",
      "tree": "5725e83f96934da2c2d741255db929df34f153eb",
      "parents": [
        "c5491ea779793f977d282754db478157cc409d82"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Mar 21 12:33:18 2011 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 01 10:28:03 2012 +0100"
      },
      "message": "sched/rt: Use schedule_preempt_disabled()\n\nCoccinelle based conversion.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/n/tip-24swm5zut3h9c4a6s46x8rws@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c5491ea779793f977d282754db478157cc409d82",
      "tree": "c110f80101e9e513f5a6f1d2ba81b2934c2408f6",
      "parents": [
        "7abc63b1bd412f7655b62ef3e35c3c11c5134636"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Mar 21 12:09:35 2011 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 01 10:28:03 2012 +0100"
      },
      "message": "sched/rt: Add schedule_preempt_disabled()\n\nAdd helper to get rid of the ever repeating:\n\n    preempt_enable_no_resched();\n    schedule();\n    preempt_disable();\n\npatterns.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/n/tip-wxx7btox7coby6ifv5vzhzgp@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "7abc63b1bd412f7655b62ef3e35c3c11c5134636",
      "tree": "c2a18d2b57d71d124ddb280d396df94b7110448f",
      "parents": [
        "42c62a589f1ccbf38a02cb732231f9c2fccc5ab0"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "peterz@infradead.org",
        "time": "Tue Oct 18 22:03:48 2011 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 01 10:28:02 2012 +0100"
      },
      "message": "sched/rt: Do not throttle when PI boosting\n\nWhen a runqueue has rt_runtime_us \u003d 0 then the only way it can\naccumulate rt_time is via PI boosting. That causes the runqueue\nto be throttled and replenishing does not change anything due to\nrt_runtime_us \u003d 0. So avoid that situation by clearing rt_time and\nskip the throttling alltogether.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\n[ Changelog ]\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nLink: http://lkml.kernel.org/n/tip-7x70cypsotjb4jvcor3edctk@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "42c62a589f1ccbf38a02cb732231f9c2fccc5ab0",
      "tree": "80ba018cd3b581668f9c8dc75d52f9c2a9ee9f54",
      "parents": [
        "7e4d960993331e92567f0180e45322a93e6780ba"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "peterz@infradead.org",
        "time": "Tue Oct 18 22:03:48 2011 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 01 10:28:01 2012 +0100"
      },
      "message": "sched/rt: Keep period timer ticking when rt throttling is active\n\nWhen a runqueue is throttled we cannot disable the period timer\nbecause that timer is the only way to undo the throttling.\n\nWe got stale throttling entries when a rq was throttled and then the\nglobal sysctl was disabled, which stopped the timer.\n\nSigned-off-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\n[ Added changelog ]\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nLink: http://lkml.kernel.org/n/tip-nuj34q52p6ro7szapuz84i0v@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "7e4d960993331e92567f0180e45322a93e6780ba",
      "tree": "4d7444035303fc0b545e88afbd894176344fb2a3",
      "parents": [
        "de5bdff7a72acc281219be2b8edeeca1fd81c542",
        "164974a8f2a482f1abcb027c6d1a89dd79b14297"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 01 10:26:41 2012 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 01 10:26:43 2012 +0100"
      },
      "message": "Merge branch \u0027linus\u0027 into sched/core\n\nMerge reason: we\u0027ll queue up dependent patches.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "8eedce996556d7d06522cd3a0e6069141c8dffe0",
      "tree": "1b24c85bd91fed430b3fbdec195fc1d35751e28f",
      "parents": [
        "a706d4fc9e56d8e46393533e0cdca2d35fa5c7e5"
      ],
      "author": {
        "name": "Jason Baron",
        "email": "jbaron@redhat.com",
        "time": "Tue Feb 28 13:49:01 2012 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Feb 28 20:01:08 2012 +0100"
      },
      "message": "static keys: Inline the static_key_enabled() function\n\nIn the jump label enabled case, calling static_key_enabled()\nresults in a function call. The function returns the results of\na compare, so it really doesn\u0027t need the overhead of a full\nfunction call. Let\u0027s make it \u0027static inline\u0027 for both the jump\nlabel enabled and disabled cases.\n\nSigned-off-by: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: a.p.zijlstra@chello.nl\nCc: rostedt@goodmis.org\nCc: mathieu.desnoyers@polymtl.ca\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nLink: http://lkml.kernel.org/r/201202281849.q1SIn1p2023270@int-mx10.intmail.prod.int.phx2.redhat.com\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "a706d4fc9e56d8e46393533e0cdca2d35fa5c7e5",
      "tree": "9fcffea752514702a78a8f6177d995964761559d",
      "parents": [
        "83b8450317a1441aef5d110cbc4102d53df9ec02",
        "c5905afb0ee6550b42c49213da1c22d67316c194"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Feb 28 19:59:45 2012 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Feb 28 19:59:47 2012 +0100"
      },
      "message": "Merge branch \u0027perf/jump-labels\u0027 into perf/core\n\nMerge reason: After much naming discussion, there seems to be consensus\n              now - queue it up for v3.4.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "bdd4431c8d071491a68a65d9457996f222b5ecd3",
      "tree": "9de69701cdba1dd28bcb804476bff07806f6d7a3",
      "parents": [
        "586c6e7013c8cbb8c91aaa6568ec349b1dc2c691",
        "1cc85961e214773cb7d7f2ccbe3bc644dd466df0"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Feb 28 10:16:01 2012 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Feb 28 10:16:10 2012 +0100"
      },
      "message": "Merge branch \u0027rcu/next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu into core/rcu\n\nThe major features of this series are:\n\n - making RCU more aggressive about entering dyntick-idle mode in order to\n   improve energy efficiency\n\n - converting a few more call_rcu()s to kfree_rcu()s\n\n - applying a number of rcutree fixes and cleanups to rcutiny\n\n - removing CONFIG_SMP #ifdefs from treercu\n\n - allowing RCU CPU stall times to be set via sysfs\n\n - adding CPU-stall capability to rcutorture\n\n - adding more RCU-abuse diagnostics\n\n - updating documentation\n\n - fixing yet more issues located by the still-ongoing top-to-bottom\n   inspection of RCU, this time with a special focus on the\n   CPU-hotplug code path.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "30ce2f7eef095d1b8d070740f1948629814fe3c7",
      "tree": "8fc423281dc55f09463e20c279f5b4200ad9e383",
      "parents": [
        "5ffca28a4ac7abb8a254fafe6bd03b2f83667df7"
      ],
      "author": {
        "name": "Namhyung Kim",
        "email": "namhyung.kim@lge.com",
        "time": "Tue Feb 28 10:19:38 2012 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Feb 28 09:52:54 2012 +0100"
      },
      "message": "perf/hwbp: Fix a possible memory leak\n\nIf kzalloc() for TYPE_DATA failed on a given cpu, previous chunk\nof TYPE_INST will be leaked. Fix it.\n\nThanks to Peter Zijlstra for suggesting this better solution. It\nshould work as long as the initial value of the region is all\n0\u0027s and that\u0027s the case of static (per-cpu) memory allocation.\n\nSigned-off-by: Namhyung Kim \u003cnamhyung.kim@lge.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@ghostprotocols.net\u003e\nLink: http://lkml.kernel.org/r/1330391978-28070-1-git-send-email-namhyung.kim@lge.com\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "70ca00db106297af0dbb88df9cc837d98cdc0c15",
      "tree": "919f8157fa71b8f922f8692fdcd7a997077ac264",
      "parents": [
        "faf3502a3fed9951ea9f5a696c0bd2c1d056d7b4",
        "8c79a045fd590a26e81e75f5d8d4ec5c7d23e565"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Feb 27 07:55:39 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Feb 27 07:55:39 2012 -0800"
      },
      "message": "Merge branch \u0027sched-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\n* \u0027sched-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  sched/events: Revert trace_sched_stat_sleeptime()\n"
    },
    {
      "commit": "faf3502a3fed9951ea9f5a696c0bd2c1d056d7b4",
      "tree": "05bc5d6ea9601d0b4f491b328eba5ccf1186a463",
      "parents": [
        "048cd4e51d24ebf7f3552226d03c769d6ad91658",
        "b4bc724e82e80478cba5fe9825b62e71ddf78757"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Feb 27 07:54:57 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Feb 27 07:54:57 2012 -0800"
      },
      "message": "Merge branch \u0027irq-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\n* \u0027irq-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  genirq: Handle pending irqs in irq_startup()\n  genirq: Unmask oneshot irqs when thread was not woken\n"
    },
    {
      "commit": "8f2f748b0656257153bcf0941df8d6060acc5ca6",
      "tree": "960e37a40212b88dd25be216addf7381c87c84fe",
      "parents": [
        "8c79a045fd590a26e81e75f5d8d4ec5c7d23e565"
      ],
      "author": {
        "name": "Srivatsa S. Bhat",
        "email": "srivatsa.bhat@linux.vnet.ibm.com",
        "time": "Thu Feb 23 15:27:15 2012 +0530"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Feb 27 11:38:13 2012 +0100"
      },
      "message": "CPU hotplug, cpusets, suspend: Don\u0027t touch cpusets during suspend/resume\n\nCurrently, during CPU hotplug, the cpuset callbacks modify the cpusets\nto reflect the state of the system, and this handling is asymmetric.\nThat is, upon CPU offline, that CPU is removed from all cpusets. However\nwhen it comes back online, it is put back only to the root cpuset.\n\nThis gives rise to a significant problem during suspend/resume. During\nsuspend, we offline all non-boot cpus and during resume we online them back.\nWhich means, after a resume, all cpusets (except the root cpuset) will be\nrestricted to just one single CPU (the boot cpu). But the whole point of\nsuspend/resume is to restore the system to a state which is as close as\npossible to how it was before suspend.\n\nSo to fix this, don\u0027t touch cpusets during suspend/resume. That is, modify\nthe cpuset-related CPU hotplug callback to just ignore CPU hotplug when it\nis initiated as part of the suspend/resume sequence.\n\nReported-by: Prashanth Nageshappa \u003cprashanth@linux.vnet.ibm.com\u003e\nSigned-off-by: Srivatsa S. Bhat \u003csrivatsa.bhat@linux.vnet.ibm.com\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: stable@vger.kernel.org\nLink: http://lkml.kernel.org/r/4F460D7B.1020703@linux.vnet.ibm.com\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "d80e731ecab420ddcb79ee9d0ac427acbc187b4b",
      "tree": "e96a660b75b5bee8ae2c315878ec917b9c0da446",
      "parents": [
        "855a85f704026d5fe7de94fb1b765fe03404507f"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Fri Feb 24 20:07:11 2012 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Feb 24 11:42:50 2012 -0800"
      },
      "message": "epoll: introduce POLLFREE to flush -\u003esignalfd_wqh before kfree()\n\nThis patch is intentionally incomplete to simplify the review.\nIt ignores ep_unregister_pollwait() which plays with the same wqh.\nSee the next change.\n\nepoll assumes that the EPOLL_CTL_ADD\u0027ed file controls everything\nf_op-\u003epoll() needs. In particular it assumes that the wait queue\ncan\u0027t go away until eventpoll_release(). This is not true in case\nof signalfd, the task which does EPOLL_CTL_ADD uses its -\u003esighand\nwhich is not connected to the file.\n\nThis patch adds the special event, POLLFREE, currently only for\nepoll. It expects that init_poll_funcptr()\u0027ed hook should do the\nnecessary cleanup. Perhaps it should be defined as EPOLLFREE in\neventpoll.\n\n__cleanup_sighand() is changed to do wake_up_poll(POLLFREE) if\n-\u003esignalfd_wqh is not empty, we add the new signalfd_cleanup()\nhelper.\n\nep_poll_callback(POLLFREE) simply does list_del_init(task_list).\nThis make this poll entry inconsistent, but we don\u0027t care. If you\nshare epoll fd which contains our sigfd with another process you\nshould blame yourself. signalfd is \"really special\". I simply do\nnot know how we can define the \"right\" semantics if it used with\nepoll.\n\nThe main problem is, epoll calls signalfd_poll() once to establish\nthe connection with the wait queue, after that signalfd_poll(NULL)\nreturns the different/inconsistent results depending on who does\nEPOLL_CTL_MOD/signalfd_read/etc. IOW: apart from sigmask, signalfd\nhas nothing to do with the file, it works with the current thread.\n\nIn short: this patch is the hack which tries to fix the symptoms.\nIt also assumes that nobody can take tasklist_lock under epoll\nlocks, this seems to be true.\n\nNote:\n\n\t- we do not have wake_up_all_poll() but wake_up_poll()\n\t  is fine, poll/epoll doesn\u0027t use WQ_FLAG_EXCLUSIVE.\n\n\t- signalfd_cleanup() uses POLLHUP along with POLLFREE,\n\t  we need a couple of simple changes in eventpoll.c to\n\t  make sure it can\u0027t be \"lost\".\n\nReported-by: Maxime Bizon \u003cmbizon@freebox.fr\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "abd2363f6a5f1030b935e0bdc15cf917313b3b10",
      "tree": "1f4546497af8162a60573203c5b017e2f7fed1f5",
      "parents": [
        "b4e518547da042fdc65bd4bdafd046fed13337d5"
      ],
      "author": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Fri Feb 24 08:07:06 2012 -0700"
      },
      "committer": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Fri Feb 24 09:47:23 2012 -0700"
      },
      "message": "irq_domain/mips: Allow irq_domain on MIPS\n\nThis patch makes IRQ_DOMAIN usable on MIPS.  It uses an ugly workaround\nto preserve current behaviour so that MIPS has time to add irq_domain\nregistration to the irq controller drivers.  The workaround will be\nremoved in Linux v3.6\n\nSigned-off-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nCc: Rob Herring \u003crob.herring@calxeda.com\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: linux-mips@linux-mips.org\n"
    },
    {
      "commit": "c5905afb0ee6550b42c49213da1c22d67316c194",
      "tree": "253fdb322e6e5b257ffda3b9b66bce90a473a6f7",
      "parents": [
        "1cfa60dc7d7c7cc774a44eee47ff135a644a1f31"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Feb 24 08:31:31 2012 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Feb 24 10:05:59 2012 +0100"
      },
      "message": "static keys: Introduce \u0027struct static_key\u0027, static_key_true()/false() and static_key_slow_[inc|dec]()\n\nSo here\u0027s a boot tested patch on top of Jason\u0027s series that does\nall the cleanups I talked about and turns jump labels into a\nmore intuitive to use facility. It should also address the\nvarious misconceptions and confusions that surround jump labels.\n\nTypical usage scenarios:\n\n        #include \u003clinux/static_key.h\u003e\n\n        struct static_key key \u003d STATIC_KEY_INIT_TRUE;\n\n        if (static_key_false(\u0026key))\n                do unlikely code\n        else\n                do likely code\n\nOr:\n\n        if (static_key_true(\u0026key))\n                do likely code\n        else\n                do unlikely code\n\nThe static key is modified via:\n\n        static_key_slow_inc(\u0026key);\n        ...\n        static_key_slow_dec(\u0026key);\n\nThe \u0027slow\u0027 prefix makes it abundantly clear that this is an\nexpensive operation.\n\nI\u0027ve updated all in-kernel code to use this everywhere. Note\nthat I (intentionally) have not pushed through the rename\nblindly through to the lowest levels: the actual jump-label\npatching arch facility should be named like that, so we want to\ndecouple jump labels from the static-key facility a bit.\n\nOn non-jump-label enabled architectures static keys default to\nlikely()/unlikely() branches.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nAcked-by: Jason Baron \u003cjbaron@redhat.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: a.p.zijlstra@chello.nl\nCc: mathieu.desnoyers@efficios.com\nCc: davem@davemloft.net\nCc: ddaney.cavm@gmail.com\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nLink: http://lkml.kernel.org/r/20120222085809.GA26397@elte.hu\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "de5bdff7a72acc281219be2b8edeeca1fd81c542",
      "tree": "6a528beb1852e2fd7d444b47e8b4cc6e6be31108",
      "parents": [
        "62f6536a630affe3176deb48554d27ee58b65077"
      ],
      "author": {
        "name": "Hiroshi Shimamoto",
        "email": "h-shimamoto@ct.jp.nec.com",
        "time": "Thu Feb 16 14:52:21 2012 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 22 12:28:29 2012 +0100"
      },
      "message": "sched: Make initial SCHED_RR timeslace DEF_TIMESLICE\n\nCurrent the initial SCHED_RR timeslice of init_task is HZ, which means\n1s, and is not same as the default SCHED_RR timeslice DEF_TIMESLICE.\n\nChange that initial timeslice to the DEF_TIMESLICE.\n\nSigned-off-by: Hiroshi Shimamoto \u003ch-shimamoto@ct.jp.nec.com\u003e\n[ s/DEF_TIMESLICE/RR_TIMESLICE/g ]\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/4F3C9995.3010800@ct.jp.nec.com\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    }
  ],
  "next": "62f6536a630affe3176deb48554d27ee58b65077"
}
