)]}'
{
  "log": [
    {
      "commit": "ece8e0b2f9c980e5511fe8db2d68c6f1859b9d83",
      "tree": "70f1e3363080884965686576d079d24da8863a58",
      "parents": [
        "67cb104b4c30bd52292b6a7f526349aab2dd5cbd",
        "a0327ff0eda915be623658babacef706099c11a8"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Feb 19 22:10:26 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Feb 19 22:10:26 2013 -0800"
      },
      "message": "Merge branch \u0027for-3.9-async\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq\n\nPull async changes from Tejun Heo:\n \"These are followups for the earlier deadlock issue involving async\n  ending up waiting for itself through block requesting module[1].  The\n  following changes are made by these commits.\n\n   - Instead of requesting default elevator on each request_queue init,\n     block now requests it once early during boot.\n\n   - Kmod triggers warning if invoked from an async worker.\n\n   - Async synchronization implementation has been reimplemented.  It\u0027s\n     a lot simpler now.\"\n\n* \u0027for-3.9-async\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq:\n  async: initialise list heads to fix crash\n  async: replace list of active domains with global list of pending items\n  async: keep pending tasks on async_domain and remove async_pending\n  async: use ULLONG_MAX for infinity cookie value\n  async: bring sanity to the use of words domain and running\n  async, kmod: warn on synchronous request_module() from async workers\n  block: don\u0027t request module during elevator init\n  init, block: try to load default elevator module early during boot\n"
    },
    {
      "commit": "bdb0ae6a767ef2622eb282e06fc225e855341653",
      "tree": "34441e77a137fa349c48472bce2e12efceb18b21",
      "parents": [
        "0fe94b9e56da7ebffad4422415bdc2854934a389",
        "e0094244e41c4d0c7ad69920681972fc45d8ce34"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 31 17:08:43 2013 +1100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 31 17:08:43 2013 +1100"
      },
      "message": "Merge branch \u0027x86-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull x86 fixes from Peter Anvin:\n \"This is a collection of miscellaneous fixes, the most important one is\n  the fix for the Samsung laptop bricking issue (auto-blacklisting the\n  samsung-laptop driver); the efi_enabled() changes you see below are\n  prerequisites for that fix.\n\n  The other issues fixed are booting on OLPC XO-1.5, an UV fix, NMI\n  debugging, and requiring CAP_SYS_RAWIO for MSR references, just as\n  with I/O port references.\"\n\n* \u0027x86-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  samsung-laptop: Disable on EFI hardware\n  efi: Make \u0027efi_enabled\u0027 a function to query EFI facilities\n  smp: Fix SMP function call empty cpu mask race\n  x86/msr: Add capabilities check\n  x86/dma-debug: Bump PREALLOC_DMA_DEBUG_ENTRIES\n  x86/olpc: Fix olpc-xo1-sci.c build errors\n  arch/x86/platform/uv: Fix incorrect tlb flush all issue\n  x86-64: Fix unwind annotations in recent NMI changes\n  x86-32: Start out cr0 clean, disable paging before modifying cr3/4\n"
    },
    {
      "commit": "83e68189745ad931c2afd45d8ee3303929233e7f",
      "tree": "35673a4eebff4c71bda4b1023ccc7cbea36f84b2",
      "parents": [
        "f44310b98ddb7f0d06550d73ed67df5865e3eda5"
      ],
      "author": {
        "name": "Matt Fleming",
        "email": "matt.fleming@intel.com",
        "time": "Wed Nov 14 09:42:35 2012 +0000"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Wed Jan 30 11:51:59 2013 -0800"
      },
      "message": "efi: Make \u0027efi_enabled\u0027 a function to query EFI facilities\n\nOriginally \u0027efi_enabled\u0027 indicated whether a kernel was booted from\nEFI firmware. Over time its semantics have changed, and it now\nindicates whether or not we are booted on an EFI machine with\nbit-native firmware, e.g. 64-bit kernel with 64-bit firmware.\n\nThe immediate motivation for this patch is the bug report at,\n\n    https://bugs.launchpad.net/ubuntu-cdimage/+bug/1040557\n\nwhich details how running a platform driver on an EFI machine that is\ndesigned to run under BIOS can cause the machine to become\nbricked. Also, the following report,\n\n    https://bugzilla.kernel.org/show_bug.cgi?id\u003d47121\n\ndetails how running said driver can also cause Machine Check\nExceptions. Drivers need a new means of detecting whether they\u0027re\nrunning on an EFI machine, as sadly the expression,\n\n    if (!efi_enabled)\n\nhasn\u0027t been a sufficient condition for quite some time.\n\nUsers actually want to query \u0027efi_enabled\u0027 for different reasons -\nwhat they really want access to is the list of available EFI\nfacilities.\n\nFor instance, the x86 reboot code needs to know whether it can invoke\nthe ResetSystem() function provided by the EFI runtime services, while\nthe ACPI OSL code wants to know whether the EFI config tables were\nmapped successfully. There are also checks in some of the platform\ndriver code to simply see if they\u0027re running on an EFI machine (which\nwould make it a bad idea to do BIOS-y things).\n\nThis patch is a prereq for the samsung-laptop fix patch.\n\nCc: David Airlie \u003cairlied@linux.ie\u003e\nCc: Corentin Chary \u003ccorentincj@iksaif.net\u003e\nCc: Matthew Garrett \u003cmjg59@srcf.ucam.org\u003e\nCc: Dave Jiang \u003cdave.jiang@intel.com\u003e\nCc: Olof Johansson \u003colof@lixom.net\u003e\nCc: Peter Jones \u003cpjones@redhat.com\u003e\nCc: Colin Ian King \u003ccolin.king@canonical.com\u003e\nCc: Steve Langasek \u003csteve.langasek@canonical.com\u003e\nCc: Tony Luck \u003ctony.luck@intel.com\u003e\nCc: Konrad Rzeszutek Wilk \u003ckonrad@kernel.org\u003e\nCc: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nCc: \u003cstable@vger.kernel.org\u003e\nSigned-off-by: Matt Fleming \u003cmatt.fleming@intel.com\u003e\nSigned-off-by: H. Peter Anvin \u003chpa@linux.intel.com\u003e\n"
    },
    {
      "commit": "c14afb82ffff5903a701a9fb737ac20f36d1f755",
      "tree": "304dcc7b1d7b9a5f564f7e978228e61ef41fbef2",
      "parents": [
        "0fdff3ec6d87856cdcc99e69cf42143fdd6c56b4",
        "1d8549085377674224bf30a368284c391a3ce40e"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Jan 23 09:31:01 2013 -0800"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Jan 23 09:31:01 2013 -0800"
      },
      "message": "Merge branch \u0027master\u0027 into for-3.9-async\n\nTo receive f56c3196f251012de9b3ebaff55732a9074fdaae (\"async: fix\n__lowest_in_progress()\").\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "bb813f4c933ae9f887a014483690d5f8b8ec05e1",
      "tree": "04107b0ae2d1881960dea63b623915db159ecacc",
      "parents": [
        "84b233adcca3cacd5cfa8013a5feda7a3db4a9af"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Fri Jan 18 14:05:56 2013 -0800"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Fri Jan 18 14:05:56 2013 -0800"
      },
      "message": "init, block: try to load default elevator module early during boot\n\nThis patch adds default module loading and uses it to load the default\nblock elevator.  During boot, it\u0027s called right after initramfs or\ninitrd is made available and right before control is passed to\nuserland.  This ensures that as long as the modules are available in\nthe usual places in initramfs, initrd or the root filesystem, the\ndefault modules are loaded as soon as possible.\n\nThis will replace the on-demand elevator module loading from elevator\ninit path.\n\nv2: Fixed build breakage when !CONFIG_BLOCK.  Reported by kbuild test\n    robot.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Jens Axboe \u003caxboe@kernel.dk\u003e\nCc: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Alex Riesen \u003craa.lkml@gmail.com\u003e\nCc: Fengguang We \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "f80b0c904da93b9ad7db2fd9823dd701932df779",
      "tree": "a226468f666012471d9a43a8f48c9588a3fd43b3",
      "parents": [
        "a49f0d1ea3ec94fc7cf33a7c36a16343b74bd565"
      ],
      "author": {
        "name": "Vineet Gupta",
        "email": "Vineet.Gupta1@synopsys.com",
        "time": "Fri Dec 21 12:25:44 2012 +0530"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 26 01:14:12 2012 -0500"
      },
      "message": "Ensure that kernel_init_freeable() is not inlined into non __init code\n\nCommit d6b2123802d \"make sure that we always have a return path from\nkernel_execve()\" reshuffled kernel_init()/init_post() to ensure that\nkernel_execve() has a caller to return to.\n\nIt removed __init annotation for kernel_init() and introduced/calls a\nnew routine kernel_init_freeable(). Latter however is inlined by any\nreasonable compiler (ARC gcc 4.4 in this case), causing slight code\nbloat.\n\nThis patch forces kernel_init_freeable() as noinline reducing the .text\n\nbloat-o-meter vmlinux vmlinux_new\nadd/remove: 1/0 grow/shrink: 0/1 up/down: 374/-334 (40)\nfunction                        old     new   delta\nkernel_init_freeable              -     374    +374 (.init.text)\nkernel_init                     628     294    -334 (.text)\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "54d46ea993744c5408e39ce0cb4851e13cbea716",
      "tree": "8e38fa92cc2ae72e0353c44e1e68be9bf5a7a058",
      "parents": [
        "f59dc2bb5a50b26ea751f9eac1c81e4cc7de5257",
        "50ececcfa7d1acee085b2c518cad495062db6379"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 20 18:05:28 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 20 18:05:28 2012 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/signal\n\nPull signal handling cleanups from Al Viro:\n \"sigaltstack infrastructure + conversion for x86, alpha and um,\n  COMPAT_SYSCALL_DEFINE infrastructure.\n\n  Note that there are several conflicts between \"unify\n  SS_ONSTACK/SS_DISABLE definitions\" and UAPI patches in mainline;\n  resolution is trivial - just remove definitions of SS_ONSTACK and\n  SS_DISABLED from arch/*/uapi/asm/signal.h; they are all identical and\n  include/uapi/linux/signal.h contains the unified variant.\"\n\nFixed up conflicts as per Al.\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/signal:\n  alpha: switch to generic sigaltstack\n  new helpers: __save_altstack/__compat_save_altstack, switch x86 and um to those\n  generic compat_sys_sigaltstack()\n  introduce generic sys_sigaltstack(), switch x86 and um to it\n  new helper: compat_user_stack_pointer()\n  new helper: restore_altstack()\n  unify SS_ONSTACK/SS_DISABLE definitions\n  new helper: current_user_stack_pointer()\n  missing user_stack_pointer() instances\n  Bury the conditionals from kernel_thread/kernel_execve series\n  COMPAT_SYSCALL_DEFINE: infrastructure\n"
    },
    {
      "commit": "ae903caae267154de7cf8576b130ff474630596b",
      "tree": "a39d238d7fd1742f7f20cacbd24a4d1b4957176e",
      "parents": [
        "468366138850f20543f1d4878028900672b23dae"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Dec 14 12:44:11 2012 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 19 18:07:38 2012 -0500"
      },
      "message": "Bury the conditionals from kernel_thread/kernel_execve series\n\nAll architectures have\n\tCONFIG_GENERIC_KERNEL_THREAD\n\tCONFIG_GENERIC_KERNEL_EXECVE\n\t__ARCH_WANT_SYS_EXECVE\nNone of them have __ARCH_WANT_KERNEL_EXECVE and there are only two callers\nof kernel_execve() (which is a trivial wrapper for do_execve() now) left.\nKill the conditionals and make both callers use do_execve().\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "6a2b60b17b3e48a418695a94bd2420f6ab32e519",
      "tree": "54b7792fa68b8890f710fa6398b6ba8626a039a8",
      "parents": [
        "9228ff90387e276ad67b10c0eb525c9d6a57d5e9",
        "98f842e675f96ffac96e6c50315790912b2812be"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 17 15:44:47 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 17 15:44:47 2012 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace\n\nPull user namespace changes from Eric Biederman:\n \"While small this set of changes is very significant with respect to\n  containers in general and user namespaces in particular.  The user\n  space interface is now complete.\n\n  This set of changes adds support for unprivileged users to create user\n  namespaces and as a user namespace root to create other namespaces.\n  The tyranny of supporting suid root preventing unprivileged users from\n  using cool new kernel features is broken.\n\n  This set of changes completes the work on setns, adding support for\n  the pid, user, mount namespaces.\n\n  This set of changes includes a bunch of basic pid namespace\n  cleanups/simplifications.  Of particular significance is the rework of\n  the pid namespace cleanup so it no longer requires sending out\n  tendrils into all kinds of unexpected cleanup paths for operation.  At\n  least one case of broken error handling is fixed by this cleanup.\n\n  The files under /proc/\u003cpid\u003e/ns/ have been converted from regular files\n  to magic symlinks which prevents incorrect caching by the VFS,\n  ensuring the files always refer to the namespace the process is\n  currently using and ensuring that the ptrace_mayaccess permission\n  checks are always applied.\n\n  The files under /proc/\u003cpid\u003e/ns/ have been given stable inode numbers\n  so it is now possible to see if different processes share the same\n  namespaces.\n\n  Through the David Miller\u0027s net tree are changes to relax many of the\n  permission checks in the networking stack to allowing the user\n  namespace root to usefully use the networking stack.  Similar changes\n  for the mount namespace and the pid namespace are coming through my\n  tree.\n\n  Two small changes to add user namespace support were commited here adn\n  in David Miller\u0027s -net tree so that I could complete the work on the\n  /proc/\u003cpid\u003e/ns/ files in this tree.\n\n  Work remains to make it safe to build user namespaces and 9p, afs,\n  ceph, cifs, coda, gfs2, ncpfs, nfs, nfsd, ocfs2, and xfs so the\n  Kconfig guard remains in place preventing that user namespaces from\n  being built when any of those filesystems are enabled.\n\n  Future design work remains to allow root users outside of the initial\n  user namespace to mount more than just /proc and /sys.\"\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace: (38 commits)\n  proc: Usable inode numbers for the namespace file descriptors.\n  proc: Fix the namespace inode permission checks.\n  proc: Generalize proc inode allocation\n  userns: Allow unprivilged mounts of proc and sysfs\n  userns: For /proc/self/{uid,gid}_map derive the lower userns from the struct file\n  procfs: Print task uids and gids in the userns that opened the proc file\n  userns: Implement unshare of the user namespace\n  userns: Implent proc namespace operations\n  userns: Kill task_user_ns\n  userns: Make create_new_namespaces take a user_ns parameter\n  userns: Allow unprivileged use of setns.\n  userns: Allow unprivileged users to create new namespaces\n  userns: Allow setting a userns mapping to your current uid.\n  userns: Allow chown and setgid preservation\n  userns: Allow unprivileged users to create user namespaces.\n  userns: Ignore suid and sgid on binaries if the uid or gid can not be mapped\n  userns: fix return value on mntns_install() failure\n  vfs: Allow unprivileged manipulation of the mount namespace.\n  vfs: Only support slave subtrees across different user namespaces\n  vfs: Add a user namespace reference from struct mnt_namespace\n  ...\n"
    },
    {
      "commit": "11520e5e7c1855fc3bf202bb3be35a39d9efa034",
      "tree": "734ea170f825000dceef3f724dff474b46fce11d",
      "parents": [
        "5bd665f28db2b04a8d6fe277342479906fc60b62"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 15 15:15:24 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 15 15:20:41 2012 -0800"
      },
      "message": "Revert \"x86-64/efi: Use EFI to deal with platform wall clock (again)\"\n\nThis reverts commit bd52276fa1d4 (\"x86-64/efi: Use EFI to deal with\nplatform wall clock (again)\"), and the two supporting commits:\n\n  da5a108d05b4: \"x86/kernel: remove tboot 1:1 page table creation code\"\n\n  185034e72d59: \"x86, efi: 1:1 pagetable mapping for virtual EFI calls\")\n\nas they all depend semantically on commit 53b87cf088e2 (\"x86, mm:\nInclude the entire kernel memory map in trampoline_pgd\") that got\nreverted earlier due to the problems it caused.\n\nThis was pointed out by Yinghai Lu, and verified by me on my Macbook Air\nthat uses EFI.\n\nPointed-out-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d42b3a2906a10b732ea7d7f849d49be79d242ef0",
      "tree": "1f4f2387bf53f8015aa87eb9c05ba8316cb5ed50",
      "parents": [
        "18dd0bf22b6f0c1bd5e4e813a42245ed86ec57b6",
        "e83af1f18c78c7b6aa720beecc927ecc8afd3647"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Dec 14 10:08:40 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Dec 14 10:08:40 2012 -0800"
      },
      "message": "Merge branch \u0027core-efi-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull x86 EFI update from Peter Anvin:\n \"EFI tree, from Matt Fleming.  Most of the patches are the new efivarfs\n  filesystem by Matt Garrett \u0026 co.  The balance are support for EFI\n  wallclock in the absence of a hardware-specific driver, and various\n  fixes and cleanups.\"\n\n* \u0027core-efi-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (24 commits)\n  efivarfs: Make efivarfs_fill_super() static\n  x86, efi: Check table header length in efi_bgrt_init()\n  efivarfs: Use query_variable_info() to limit kmalloc()\n  efivarfs: Fix return value of efivarfs_file_write()\n  efivarfs: Return a consistent error when efivarfs_get_inode() fails\n  efivarfs: Make \u0027datasize\u0027 unsigned long\n  efivarfs: Add unique magic number\n  efivarfs: Replace magic number with sizeof(attributes)\n  efivarfs: Return an error if we fail to read a variable\n  efi: Clarify GUID length calculations\n  efivarfs: Implement exclusive access for {get,set}_variable\n  efivarfs: efivarfs_fill_super() ensure we clean up correctly on error\n  efivarfs: efivarfs_fill_super() ensure we free our temporary name\n  efivarfs: efivarfs_fill_super() fix inode reference counts\n  efivarfs: efivarfs_create() ensure we drop our reference on inode on error\n  efivarfs: efivarfs_file_read ensure we free data in error paths\n  x86-64/efi: Use EFI to deal with platform wall clock (again)\n  x86/kernel: remove tboot 1:1 page table creation code\n  x86, efi: 1:1 pagetable mapping for virtual EFI calls\n  x86, mm: Include the entire kernel memory map in trampoline_pgd\n  ...\n"
    },
    {
      "commit": "3c466d46a9f38de141d8a492d8b1b1d0fa504759",
      "tree": "b19760f8629bd0461f98e024bb451cc421807e89",
      "parents": [
        "aee4faa499dc58fdb126885f68d447f2eba79b43"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Wed Dec 12 13:51:40 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 12 17:38:33 2012 -0800"
      },
      "message": "init: use N_MEMORY instead N_HIGH_MEMORY\n\nN_HIGH_MEMORY stands for the nodes that has normal or high memory.\nN_MEMORY stands for the nodes that has any memory.\n\nThe code here need to handle with the nodes which have memory, we should\nuse N_MEMORY instead.\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nSigned-off-by: Wen Congyang \u003cwency@cn.fujitsu.com\u003e\nCc: Christoph Lameter \u003ccl@linux.com\u003e\nCc: Hillf Danton \u003cdhillf@gmail.com\u003e\nCc: Lin Feng \u003clinfeng@cn.fujitsu.com\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1c4042c29bd2e85aac4110552ca8ade763762e84",
      "tree": "90b34aeae51c9afa088eac37be4e8a14a038e6be",
      "parents": [
        "57e8391d327609cbf12d843259c968b9e5c1838f"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Mon Jul 12 17:10:36 2010 -0700"
      },
      "committer": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Mon Nov 19 05:59:15 2012 -0800"
      },
      "message": "pidns: Consolidate initialzation of special init task state\n\nInstead of setting child_reaper and SIGNAL_UNKILLABLE one way\nfor the system init process, and another way for pid namespace\ninit processes test pid-\u003enr \u003d\u003d 1 and use the same code for both.\n\nFor the global init this results in SIGNAL_UNKILLABLE being set\nmuch earlier in the initialization process.\n\nThis is a small cleanup and it paves the way for allowing unshare and\nenter of the pid namespace as that path like our global init also will\nnot set CLONE_NEWPID.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\n"
    },
    {
      "commit": "eded09ccf58ab00474ccde547dd525c75dbc28fd",
      "tree": "3a4f1ce5c0679cc2573aeaa80a088f3074734cf4",
      "parents": [
        "5f0231d97b2d361292b090b81479a68123010376"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Fri Nov 02 13:20:42 2012 +0000"
      },
      "committer": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Fri Nov 02 13:20:42 2012 +0000"
      },
      "message": "FRV: gcc-4.1.2 also inlines weak functions\n\ngcc-4.1.2 inlines weak functions, which causes FRV to fail when the dummy\nthread_info_cache_init() gets inlined into start_kernel().\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\n"
    },
    {
      "commit": "bd52276fa1d420c3a504b76ffaaa1642cc79d4c4",
      "tree": "8efb267177d802dda32695c1ef4f6f2013cf61e5",
      "parents": [
        "da5a108d05b4f350be33e62d2db125673823e7ff"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "JBeulich@suse.com",
        "time": "Fri May 25 16:20:31 2012 +0100"
      },
      "committer": {
        "name": "Matt Fleming",
        "email": "matt.fleming@intel.com",
        "time": "Tue Oct 30 10:39:20 2012 +0000"
      },
      "message": "x86-64/efi: Use EFI to deal with platform wall clock (again)\n\nOther than ix86, x86-64 on EFI so far didn\u0027t set the\n{g,s}et_wallclock accessors to the EFI routines, thus\nincorrectly using raw RTC accesses instead.\n\nSimply removing the #ifdef around the respective code isn\u0027t\nenough, however: While so far early get-time calls were done in\nphysical mode, this doesn\u0027t work properly for x86-64, as virtual\naddresses would still need to be set up for all runtime regions\n(which wasn\u0027t the case on the system I have access to), so\ninstead the patch moves the call to efi_enter_virtual_mode()\nahead (which in turn allows to drop all code related to calling\nefi-get-time in physical mode).\n\nAdditionally the earlier calling of efi_set_executable()\nrequires the CPA code to cope, i.e. during early boot it must be\navoided to call cpa_flush_array(), as the first thing this\nfunction does is a BUG_ON(irqs_disabled()).\n\nAlso make the two EFI functions in question here static -\nthey\u0027re not being referenced elsewhere.\n\nHistory:\n\n    This commit was originally merged as bacef661acdb (\"x86-64/efi:\n    Use EFI to deal with platform wall clock\") but it resulted in some\n    ASUS machines no longer booting due to a firmware bug, and so was\n    reverted in f026cfa82f62. A pre-emptive fix for the buggy ASUS\n    firmware was merged in 03a1c254975e (\"x86, efi: 1:1 pagetable\n    mapping for virtual EFI calls\") so now this patch can be\n    reapplied.\n\nSigned-off-by: Jan Beulich \u003cjbeulich@suse.com\u003e\nTested-by: Matt Fleming \u003cmatt.fleming@intel.com\u003e\nAcked-by: Matthew Garrett \u003cmjg@redhat.com\u003e\nCc: Ingo Molnar \u003cmingo@kernel.org\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: H. Peter Anvin \u003chpa@zytor.com\u003e\nSigned-off-by: Matt Fleming \u003cmatt.fleming@intel.com\u003e [added commit history]\n"
    },
    {
      "commit": "4e21fc138bfd7fe625ff5dc81541399aaf9d429b",
      "tree": "43bedf14d2eee7711b8241dcfd6bd7b8737d9bd5",
      "parents": [
        "8418263e3547ed3816475e4c55a77004f0426ee6",
        "5522be6a4624a5f505555569e4d9cee946630686"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Oct 13 10:05:52 2012 +0900"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Oct 13 10:05:52 2012 +0900"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/signal\n\nPull third pile of kernel_execve() patches from Al Viro:\n \"The last bits of infrastructure for kernel_thread() et.al., with\n  alpha/arm/x86 use of those.  Plus sanitizing the asm glue and\n  do_notify_resume() on alpha, fixing the \"disabled irq while running\n  task_work stuff\" breakage there.\n\n  At that point the rest of kernel_thread/kernel_execve/sys_execve work\n  can be done independently for different architectures.  The only\n  pending bits that do depend on having all architectures converted are\n  restrictred to fs/* and kernel/* - that\u0027ll obviously have to wait for\n  the next cycle.\n\n  I thought we\u0027d have to wait for all of them done before we start\n  eliminating the longjump-style insanity in kernel_execve(), but it\n  turned out there\u0027s a very simple way to do that without flagday-style\n  changes.\"\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/signal:\n  alpha: switch to saner kernel_execve() semantics\n  arm: switch to saner kernel_execve() semantics\n  x86, um: convert to saner kernel_execve() semantics\n  infrastructure for saner ret_from_kernel_thread semantics\n  make sure that kernel_thread() callbacks call do_exit() themselves\n  make sure that we always have a return path from kernel_execve()\n  ppc: eeh_event should just use kthread_run()\n  don\u0027t bother with kernel_thread/kernel_execve for launching linuxrc\n  alpha: get rid of switch_stack argument of do_work_pending()\n  alpha: don\u0027t bother passing switch_stack separately from regs\n  alpha: take SIGPENDING/NOTIFY_RESUME loop into signal.c\n  alpha: simplify TIF_NEED_RESCHED handling\n"
    },
    {
      "commit": "a74fb73c12398b250fdc5e333a11e15a9e3a84fc",
      "tree": "2bec2f6e20320f5a4bc01d1e19d7190842ef1c37",
      "parents": [
        "fb45550d76bb584857cf0ea3be79fa78207a3cff"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Oct 10 21:28:25 2012 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Oct 12 13:35:07 2012 -0400"
      },
      "message": "infrastructure for saner ret_from_kernel_thread semantics\n\n* allow kernel_execve() leave the actual return to userland to\ncaller (selected by CONFIG_GENERIC_KERNEL_EXECVE).  Callers\nupdated accordingly.\n* architecture that does select GENERIC_KERNEL_EXECVE in its\nKconfig should have its ret_from_kernel_thread() do this:\n\tcall schedule_tail\n\tcall the callback left for it by copy_thread(); if it ever\nreturns, that\u0027s because it has just done successful kernel_execve()\n\tjump to return from syscall\nIOW, its only difference from ret_from_fork() is that it does call the\ncallback.\n* such an architecture should also get rid of ret_from_kernel_execve()\nand __ARCH_WANT_KERNEL_EXECVE\n\nThis is the last part of infrastructure patches in that area - from\nthat point on work on different architectures can live independently.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "d6b2123802d2b7eee8c62cd0ebd73e8636cbb068",
      "tree": "70b01994296337051b8432b6d2bf46ff15e4e2c6",
      "parents": [
        "ecf89e581acce83e8cd2a5530858be22c64441f7"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Oct 10 19:57:26 2012 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Oct 11 21:42:35 2012 -0400"
      },
      "message": "make sure that we always have a return path from kernel_execve()\n\nThe only place where kernel_execve() is called without a way to\nreturn to the caller of kernel_thread() callback is kernel_post().\nReorganize kernel_init()/kernel_post() - instead of the former\ncalling the latter in the end (and getting freed by it), have the\nlatter *begin* with calling the former (and turn the latter into\nkernel_thread() callback, of course).\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "147e615f83c2c36caf89e7a3bf78090ade6f266c",
      "tree": "0cd64fd67f4b55bbe364217911a8100827c8b04f",
      "parents": [
        "85d3a316c714197f94e75c1e5b2d37607d66e5de"
      ],
      "author": {
        "name": "Michel Lespinasse",
        "email": "walken@google.com",
        "time": "Mon Oct 08 16:31:30 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 09 16:22:40 2012 +0900"
      },
      "message": "prio_tree: remove\n\nAfter both prio_tree users have been converted to use red-black trees,\nthere is no need to keep around the prio tree library anymore.\n\nSigned-off-by: Michel Lespinasse \u003cwalken@google.com\u003e\nCc: Rik van Riel \u003criel@redhat.com\u003e\nCc: Hillf Danton \u003cdhillf@gmail.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Catalin Marinas \u003ccatalin.marinas@arm.com\u003e\nCc: Andrea Arcangeli \u003caarcange@redhat.com\u003e\nCc: David Woodhouse \u003cdwmw2@infradead.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2223af389032425e3d1a70f9cb3a63feaa654ced",
      "tree": "6874c07f26b3cdc5b10e06c34e7d0f6a9f5494aa",
      "parents": [
        "7bc90e01c3f66c137e7e761f574bbf883087d590"
      ],
      "author": {
        "name": "Josh Triplett",
        "email": "josh@joshtriplett.org",
        "time": "Fri Sep 28 17:57:05 2012 -0700"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Sat Sep 29 12:21:03 2012 -0700"
      },
      "message": "efi: Fix the ACPI BGRT driver for images located in EFI boot services memory\n\nThe ACPI BGRT driver accesses the BIOS logo image when it initializes.\nHowever, ACPI 5.0 (which introduces the BGRT) recommends putting the\nlogo image in EFI boot services memory, so that the OS can reclaim that\nmemory.  Production systems follow this recommendation, breaking the\nACPI BGRT driver.\n\nMove the bulk of the BGRT code to run during a new EFI late\ninitialization phase, which occurs after switching EFI to virtual mode,\nand after initializing ACPI, but before freeing boot services memory.\nCopy the BIOS logo image to kernel memory at that point, and make it\naccessible to the BGRT driver.  Rework the existing ACPI BGRT driver to\nact as a simple wrapper exposing that image (and the properties from the\nBGRT) via sysfs.\n\nSigned-off-by: Josh Triplett \u003cjosh@joshtriplett.org\u003e\nLink: http://lkml.kernel.org/r/93ce9f823f1c1f3bb88bdd662cce08eee7a17f5d.1348876882.git.josh@joshtriplett.org\nSigned-off-by: H. Peter Anvin \u003chpa@linux.intel.com\u003e\n"
    },
    {
      "commit": "785107923a83d8456bbd8564e288a24d84109a46",
      "tree": "cda886bdf9d5f33a524b740e7807d17e079cb6b7",
      "parents": [
        "984ff8a4d2251fbd09b1e8515133bdfe9ef4bcd6"
      ],
      "author": {
        "name": "Josh Triplett",
        "email": "josh@joshtriplett.org",
        "time": "Fri Sep 28 17:55:44 2012 -0700"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Sat Sep 29 12:21:01 2012 -0700"
      },
      "message": "efi: Defer freeing boot services memory until after ACPI init\n\nSome new ACPI 5.0 tables reference resources stored in boot services\nmemory, so keep that memory around until we have ACPI and can extract\ndata from it.\n\nSigned-off-by: Josh Triplett \u003cjosh@joshtriplett.org\u003e\nLink: http://lkml.kernel.org/r/baaa6d44bdc4eb0c58e5d1b4ccd2c729f854ac55.1348876882.git.josh@joshtriplett.org\nSigned-off-by: H. Peter Anvin \u003chpa@linux.intel.com\u003e\n"
    },
    {
      "commit": "f026cfa82f628db24b8cea41b9d6202af104cecb",
      "tree": "1a5e36878ad1134587220e9a3d229c5977271947",
      "parents": [
        "f1c6300183dbf5b9da25988e13f6f25a9e27151b"
      ],
      "author": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Tue Aug 14 09:53:38 2012 -0700"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Tue Aug 14 09:58:25 2012 -0700"
      },
      "message": "Revert \"x86-64/efi: Use EFI to deal with platform wall clock\"\n\nThis reverts commit bacef661acdb634170a8faddbc1cf28e8f8b9eee.\n\nThis commit has been found to cause serious regressions on a number of\nASUS machines at the least.  We probably need to provide a 1:1 map in\naddition to the EFI virtual memory map in order for this to work.\n\nSigned-off-by: H. Peter Anvin \u003chpa@zytor.com\u003e\nReported-and-bisected-by: Jérôme Carretero \u003ccJ-ko@zougloub.eu\u003e\nCc: Jan Beulich \u003cjbeulich@suse.com\u003e\nCc: Matt Fleming \u003cmatt.fleming@intel.com\u003e\nCc: Matthew Garrett \u003cmjg@redhat.com\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/20120805172903.5f8bb24c@zougloub.eu\n"
    },
    {
      "commit": "9adb62a5df9c0fbef7b4665919329f73a34651ed",
      "tree": "8372c9c1202adac889714ea99319346279107f33",
      "parents": [
        "da92c47d069890106484cb6605df701a54d24499"
      ],
      "author": {
        "name": "Jiang Liu",
        "email": "jiang.liu@huawei.com",
        "time": "Tue Jul 31 16:43:28 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 31 18:42:44 2012 -0700"
      },
      "message": "mm/hotplug: correctly setup fallback zonelists when creating new pgdat\n\nWhen hotadd_new_pgdat() is called to create new pgdat for a new node, a\nfallback zonelist should be created for the new node.  There\u0027s code to try\nto achieve that in hotadd_new_pgdat() as below:\n\n\t/*\n\t * The node we allocated has no zone fallback lists. For avoiding\n\t * to access not-initialized zonelist, build here.\n\t */\n\tmutex_lock(\u0026zonelists_mutex);\n\tbuild_all_zonelists(pgdat, NULL);\n\tmutex_unlock(\u0026zonelists_mutex);\n\nBut it doesn\u0027t work as expected.  When hotadd_new_pgdat() is called, the\nnew node is still in offline state because node_set_online(nid) hasn\u0027t\nbeen called yet.  And build_all_zonelists() only builds zonelists for\nonline nodes as:\n\n        for_each_online_node(nid) {\n                pg_data_t *pgdat \u003d NODE_DATA(nid);\n\n                build_zonelists(pgdat);\n                build_zonelist_cache(pgdat);\n        }\n\nThough we hope to create zonelist for the new pgdat, but it doesn\u0027t.  So\nadd a new parameter \"pgdat\" the build_all_zonelists() to build pgdat for\nthe new pgdat too.\n\nSigned-off-by: Jiang Liu \u003cliuj97@gmail.com\u003e\nSigned-off-by: Xishi Qiu \u003cqiuxishi@huawei.com\u003e\nCc: Mel Gorman \u003cmgorman@suse.de\u003e\nCc: Michal Hocko \u003cmhocko@suse.cz\u003e\nCc: Minchan Kim \u003cminchan@kernel.org\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Yinghai Lu \u003cyinghai@kernel.org\u003e\nCc: Tony Luck \u003ctony.luck@intel.com\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: Keping Chen \u003cchenkeping@huawei.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "43a1141b9f4fd9453b43ba5e8f136e7d47220dde",
      "tree": "0833be3af2ccbed3562d8bff41a1392fcb63d19d",
      "parents": [
        "25918f9811eae1d657db2bccdfcb077038d9454c",
        "231daf0751ccaf21373f591c524a3f557a15d03f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 27 08:34:16 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 27 08:34:16 2012 -0700"
      },
      "message": "Merge tag \u0027cpumask-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus\n\nPull cpumask changes from Rusty Russell:\n \"Trivial comment changes to cpumask code.  I guess it\u0027s getting boring.\"\n\nBoring is good.\n\n* tag \u0027cpumask-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus:\n  cpumask: cpulist_parse() comments correction\n  init: add comments to keep initcall-names in sync with initcall levels\n  cpumask: add a few comments of cpumask functions\n"
    },
    {
      "commit": "96263d2863ab5dfe101bf4dec74e3508cc5d003d",
      "tree": "6cc641485b9cfabc322f560d68ce65017c97243b",
      "parents": [
        "c777ad69185de908a0d571abbaec117392b3ad1b"
      ],
      "author": {
        "name": "Jim Cromie",
        "email": "jim.cromie@gmail.com",
        "time": "Thu Jun 14 16:00:59 2012 -0600"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Fri Jul 27 09:29:42 2012 +0930"
      },
      "message": "init: add comments to keep initcall-names in sync with initcall levels\n\nmain.c has initcall_level_names[] for parse_args to print in debug messages,\nadd comments to keep them in sync with initcalls defined in init.h.\n\nAlso add \"loadable\" into comment re not using *_initcall macros in\nmodules, to disambiguate from kernel/params.c and other builtins.\n\nSigned-off-by: Jim Cromie \u003cjim.cromie@gmail.com\u003e\nAcked-by: Borislav Petkov \u003cborislav.petkov@amd.com\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "0a2fe19ccc4bc552a8083a595a3aa737b8bea727",
      "tree": "3bed37182f95fa3ac1673530457e994a89bd7e26",
      "parents": [
        "c1b669b72a05aeae0882742dd40f30d51732ed15",
        "9ca8f72a9297f2052d806bd1111e176533aa69bd"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 26 13:13:25 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 26 13:13:25 2012 -0700"
      },
      "message": "Merge branch \u0027x86-efi-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPul x86/efi changes from Ingo Molnar:\n \"This tree adds an EFI bootloader handover protocol, which, once\n  supported on the bootloader side, will make bootup faster and might\n  result in simpler bootloaders.\n\n  The other change activates the EFI wall clock time accessors on x86-64\n  as well, instead of the legacy RTC readout.\"\n\n* \u0027x86-efi-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  x86, efi: Handover Protocol\n  x86-64/efi: Use EFI to deal with platform wall clock\n"
    },
    {
      "commit": "4a9d4b024a3102fc083c925c242d98ac27b1c5f6",
      "tree": "1a4e9d1e86a2c1b70f8352c13da8a7eee97bc5f1",
      "parents": [
        "a2d4c71d1559426155e5da8db3265bfa0d8d398d"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Jun 24 09:56:45 2012 +0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Jul 22 23:57:58 2012 +0400"
      },
      "message": "switch fput to task_work_add\n\n... and schedule_work() for interrupt/kernel_thread callers\n(and yes, now it *is* OK to call from interrupt).\n\nWe are guaranteed that __fput() will be done before we return\nto userland (or exit).  Note that for fput() from a kernel\nthread we get an async behaviour; it\u0027s almost always OK, but\nsometimes you might need to have __fput() completed before\nyou do anything else.  There are two mechanisms for that -\na general barrier (flush_delayed_fput()) and explicit\n__fput_sync().  Both should be used with care (as was the\ncase for fput() from kernel threads all along).  See comments\nin fs/file_table.c for details.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "19efb72fdc3c3bbfb929d91e34312b0494f14409",
      "tree": "dd8d8514c08edefd1002dca36a91334d5c661da1",
      "parents": [
        "ae82fdb1406ad41d68f07027fe31f2d35ba22a90"
      ],
      "author": {
        "name": "Borislav Petkov",
        "email": "borislav.petkov@amd.com",
        "time": "Fri Jun 01 18:56:00 2012 +0200"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Fri Jun 08 14:58:14 2012 +0930"
      },
      "message": "init: Drop initcall level output\n\n9fb48c744ba6a (\"params: add 3rd arg to option handler callback\nsignature\") added similar lines to dmesg:\n\ninitlevel:0\u003dearly, 4 registered initcalls\ninitlevel:1\u003dcore, 31 registered initcalls\ninitlevel:2\u003dpostcore, 11 registered initcalls\ninitlevel:3\u003darch, 7 registered initcalls\ninitlevel:4\u003dsubsys, 40 registered initcalls\ninitlevel:5\u003dfs, 30 registered initcalls\ninitlevel:6\u003ddevice, 250 registered initcalls\ninitlevel:7\u003dlate, 35 registered initcalls\n\nbut they don\u0027t contain any info for the general user staring at dmesg.\nI\u0027m very doubtful the count of initcalls registered per level helps\nanyone so drop that output completely.\n\nCc: Jim Cromie \u003cjim.cromie@gmail.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nSigned-off-by: Borislav Petkov \u003cborislav.petkov@amd.com\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "ae82fdb1406ad41d68f07027fe31f2d35ba22a90",
      "tree": "dced5ed8a4afeeab7e3c3610d0272f2f18106f33",
      "parents": [
        "f8f5701bdaf9134b1f90e5044a82c66324d2073f"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Fri Jun 08 14:58:13 2012 +0930"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Fri Jun 08 14:58:13 2012 +0930"
      },
      "message": "module_param: stop double-calling parameters.\n\nCommit 026cee0086fe1df4cf74691cf273062cc769617d \"params:\n\u003clevel\u003e_initcall-like kernel parameters\" set old-style module\nparameters to level 0.  And we call those level 0 calls where we used\nto, early in start_kernel().\n\nWe also loop through the initcall levels and call the levelled\nmodule_params before the corresponding initcall.  Unfortunately level\n0 is early_init(), so we call the standard module_param calls twice.\n\n(Turns out most things don\u0027t care, but at least ubi.mtd does).\n\nChange the level to -1 for standard module_param calls.\n\nReported-by: Benoît Thébaudeau \u003cbenoit.thebaudeau@advansee.com\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: stable@kernel.org\n"
    },
    {
      "commit": "bacef661acdb634170a8faddbc1cf28e8f8b9eee",
      "tree": "76479c7d6f7b6aed38000ec60e5d739e2359a7f9",
      "parents": [
        "eea5b5510fc5545d15b69da8e485a7424ae388cf"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "JBeulich@suse.com",
        "time": "Fri May 25 16:20:31 2012 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Wed Jun 06 11:48:05 2012 +0200"
      },
      "message": "x86-64/efi: Use EFI to deal with platform wall clock\n\nOther than ix86, x86-64 on EFI so far didn\u0027t set the\n{g,s}et_wallclock accessors to the EFI routines, thus\nincorrectly using raw RTC accesses instead.\n\nSimply removing the #ifdef around the respective code isn\u0027t\nenough, however: While so far early get-time calls were done in\nphysical mode, this doesn\u0027t work properly for x86-64, as virtual\naddresses would still need to be set up for all runtime regions\n(which wasn\u0027t the case on the system I have access to), so\ninstead the patch moves the call to efi_enter_virtual_mode()\nahead (which in turn allows to drop all code related to calling\nefi-get-time in physical mode).\n\nAdditionally the earlier calling of efi_set_executable()\nrequires the CPA code to cope, i.e. during early boot it must be\navoided to call cpa_flush_array(), as the first thing this\nfunction does is a BUG_ON(irqs_disabled()).\n\nAlso make the two EFI functions in question here static -\nthey\u0027re not being referenced elsewhere.\n\nSigned-off-by: Jan Beulich \u003cjbeulich@suse.com\u003e\nTested-by: Matt Fleming \u003cmatt.fleming@intel.com\u003e\nAcked-by: Matthew Garrett \u003cmjg@redhat.com\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/4FBFBF5F020000780008637F@nat28.tlf.novell.com\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "5d4e2d08e7fdf7339f84a1c670d296a77e02f881",
      "tree": "1c419660defa56191091dfdf50fdb57a72009173",
      "parents": [
        "fb2123fad3b499f0898835b19dbb93b18d27ee98",
        "94ca629e40eb7e997be21d8065c25e4f3797b03f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 22 16:02:13 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 22 16:02:13 2012 -0700"
      },
      "message": "Merge tag \u0027driver-core-3.5-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core\n\nPull driver core updates from Greg Kroah-Hartman:\n \"Here\u0027s the driver core, and other driver subsystems, pull request for\n  the 3.5-rc1 merge window.\n\n  Outside of a few minor driver core changes, we ended up with the\n  following different subsystem and core changes as well, due to\n  interdependancies on the driver core:\n   - hyperv driver updates\n   - drivers/memory being created and some drivers moved into it\n   - extcon driver subsystem created out of the old Android staging\n     switch driver code\n   - dynamic debug updates\n   - printk rework, and /dev/kmsg changes\n\n  All of this has been tested in the linux-next releases for a few weeks\n  with no reported problems.\n\n  Signed-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\"\n\nFix up conflicts in drivers/extcon/extcon-max8997.c where git noticed\nthat a patch to the deleted drivers/misc/max8997-muic.c driver needs to\nbe applied to this one.\n\n* tag \u0027driver-core-3.5-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core: (90 commits)\n  uio_pdrv_genirq: get irq through platform resource if not set otherwise\n  memory: tegra{20,30}-mc: Remove empty *_remove()\n  printk() - isolate KERN_CONT users from ordinary complete lines\n  sysfs: get rid of some lockdep false positives\n  Drivers: hv: util: Properly handle version negotiations.\n  Drivers: hv: Get rid of an unnecessary check in vmbus_prep_negotiate_resp()\n  memory: tegra{20,30}-mc: Use dev_err_ratelimited()\n  driver core: Add dev_*_ratelimited() family\n  Driver Core: don\u0027t oops with unregistered driver in driver_find_device()\n  printk() - restore prefix/timestamp printing for multi-newline strings\n  printk: add stub for prepend_timestamp()\n  ARM: tegra30: Make MC optional in Kconfig\n  ARM: tegra20: Make MC optional in Kconfig\n  ARM: tegra30: MC: Remove unnecessary BUG*()\n  ARM: tegra20: MC: Remove unnecessary BUG*()\n  printk: correctly align __log_buf\n  ARM: tegra30: Add Tegra Memory Controller(MC) driver\n  ARM: tegra20: Add Tegra Memory Controller(MC) driver\n  printk() - restore timestamp printing at console output\n  printk() - do not merge continuation lines of different threads\n  ...\n"
    },
    {
      "commit": "31a67102f4762df5544bc2dfb34a931233d2a5b2",
      "tree": "5ab348c520d60e331fb9e469cd592ee411f3850f",
      "parents": [
        "e47b65b032f2997aa0a7392ecdf656c86d4d7561"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon May 21 12:52:42 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon May 21 12:52:42 2012 -0700"
      },
      "message": "Fix blocking allocations called very early during bootup\n\nDuring early boot, when the scheduler hasn\u0027t really been fully set up,\nwe really can\u0027t do blocking allocations because with certain (dubious)\nconfigurations the \"might_resched()\" calls can actually result in\nscheduling events.\n\nWe could just make such users always use GFP_ATOMIC, but quite often the\ncode that does the allocation isn\u0027t really aware of the fact that the\nscheduler isn\u0027t up yet, and forcing that kind of random knowledge on the\ninitialization code is just annoying and not good for anybody.\n\nAnd we actually have a the \u0027gfp_allowed_mask\u0027 exactly for this reason:\nit\u0027s just that the kernel init sequence happens to set it to allow\nblocking allocations much too early.\n\nSo move the \u0027gfp_allowed_mask\u0027 initialization from \u0027start_kernel()\u0027\n(which is some of the earliest init code, and runs with preemption\ndisabled for good reasons) into \u0027kernel_init()\u0027.  kernel_init() is run\nin the newly created thread that will become the \u0027init\u0027 process, as\nopposed to the early startup code that runs within the context of what\nwill be the first idle thread.\n\nSo by the time we reach \u0027kernel_init()\u0027, we know that the scheduler must\nbe at least limping along, because we\u0027ve already scheduled from the idle\nthread into the init thread.\n\nReported-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: stable@vger.kernel.org\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "eb1574270a6de8fb8d31ffc3b021e30df0afcda3",
      "tree": "d154ba369f222f5108ed1a2462d815d7faadc2e5",
      "parents": [
        "aac10aaa8cc65a6fef6f5bc7d0b96035b0225a61",
        "69964ea4c7b68c9399f7977aa5b9aa6539a6a98a"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Wed May 02 14:33:37 2012 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Wed May 02 14:33:37 2012 -0700"
      },
      "message": "Merge 3.4-rc5 into driver-core-next\n\nThis was done to resolve a merge issue with the init/main.c file.\n\nReported-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "9fb48c744ba6a4bf58b666f4e6fdac3008ea1bd4",
      "tree": "f145e07824a3a9bae9f8da3e5c39ea5073bd872e",
      "parents": [
        "3faa286055c02291dc9b6d838601dcb105a64a14"
      ],
      "author": {
        "name": "Jim Cromie",
        "email": "jim.cromie@gmail.com",
        "time": "Fri Apr 27 14:30:34 2012 -0600"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Mon Apr 30 14:05:27 2012 -0400"
      },
      "message": "params: add 3rd arg to option handler callback signature\n\nAdd a 3rd arg, named \"doing\", to unknown-options callbacks invoked\nfrom parse_args(). The arg is passed as:\n\n  \"Booting kernel\" from start_kernel(),\n  initcall_level_names[i] from do_initcall_level(),\n  mod-\u003ename from load_module(), via parse_args(), parse_one()\n\nparse_args() already has the \"name\" parameter, which is renamed to\n\"doing\" to better reflect current uses 1,2 above.  parse_args() passes\nit to an altered parse_one(), which now passes it down into the\nunknown option handler callbacks.\n\nThe mod-\u003ename will be needed to handle dyndbg for loadable modules,\nsince params passed by modprobe are not qualified (they do not have a\n\"$modname.\" prefix), and by the time the unknown-param callback is\ncalled, the module name is not otherwise available.\n\nMinor tweaks:\n\nAdd param-name to parse_one\u0027s pr_debug(), current message doesnt\nidentify the param being handled, add it.\n\nAdd a pr_info to print current level and level_name of the initcall,\nand number of registered initcalls at that level.  This adds 7 lines\nto dmesg output, like:\n\n   initlevel:6\u003ddevice, 172 registered initcalls\n\nDrop \"parameters\" from initcall_level_names[], its unhelpful in the\npr_info() added above.  This array is passed into parse_args() by\ndo_initcall_level().\n\nCC: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Jim Cromie \u003cjim.cromie@gmail.com\u003e\nAcked-by: Jason Baron \u003cjbaron@redhat.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "a99cd1125189aaf31a7ee505d6208143482119eb",
      "tree": "a950082dce0d04b0448210f590d5bbb2c357cf55",
      "parents": [
        "66f75a5d028beaf67c931435fdc3e7823125730c"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Fri Apr 06 12:53:50 2012 -0400"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Wed Apr 25 11:47:29 2012 -0400"
      },
      "message": "init: fix bug where environment vars can\u0027t be passed via boot args\n\nCommit 026cee0086f had the side-effect of dropping the \u0027\u003d\u0027 from\nthe unknown boot arguments that are passed to init as environment\nvariables.  This is because parse_args() puts a NUL in the string\nwhere the \u0027\u003d\u0027 was when it passes the \"param\" and \"val\" pointers\nto the parsing subfunctions.  Previously, unknown_bootoption() was\nthe last parse_args() subfunction to run, and it carefully put back\nthe \u0027\u003d\u0027 character.  Now the ignore_unknown_bootoption() is the last\none to run, and it wasn\u0027t doing the necessary repair, so the\nenvp params ended up with the embedded NUL and were no longer\nseen as valid environment variables by init.\n\nTested-by: Woody Suwalski \u003cterraluna977@gmail.com\u003e\nAcked-by: Pawel Moll \u003cpawel.moll@arm.com\u003e\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\n"
    },
    {
      "commit": "0195c00244dc2e9f522475868fa278c473ba7339",
      "tree": "f97ca98ae64ede2c33ad3de05ed7bbfa4f4495ed",
      "parents": [
        "f21ce8f8447c8be8847dadcfdbcc76b0d7365fa5",
        "141124c02059eee9dbc5c86ea797b1ca888e77f7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 28 15:58:21 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 28 15:58:21 2012 -0700"
      },
      "message": "Merge tag \u0027split-asm_system_h-for-linus-20120328\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-asm_system\n\nPull \"Disintegrate and delete asm/system.h\" from David Howells:\n \"Here are a bunch of patches to disintegrate asm/system.h into a set of\n  separate bits to relieve the problem of circular inclusion\n  dependencies.\n\n  I\u0027ve built all the working defconfigs from all the arches that I can\n  and made sure that they don\u0027t break.\n\n  The reason for these patches is that I recently encountered a circular\n  dependency problem that came about when I produced some patches to\n  optimise get_order() by rewriting it to use ilog2().\n\n  This uses bitops - and on the SH arch asm/bitops.h drags in\n  asm-generic/get_order.h by a circuituous route involving asm/system.h.\n\n  The main difficulty seems to be asm/system.h.  It holds a number of\n  low level bits with no/few dependencies that are commonly used (eg.\n  memory barriers) and a number of bits with more dependencies that\n  aren\u0027t used in many places (eg.  switch_to()).\n\n  These patches break asm/system.h up into the following core pieces:\n\n    (1) asm/barrier.h\n\n        Move memory barriers here.  This already done for MIPS and Alpha.\n\n    (2) asm/switch_to.h\n\n        Move switch_to() and related stuff here.\n\n    (3) asm/exec.h\n\n        Move arch_align_stack() here.  Other process execution related bits\n        could perhaps go here from asm/processor.h.\n\n    (4) asm/cmpxchg.h\n\n        Move xchg() and cmpxchg() here as they\u0027re full word atomic ops and\n        frequently used by atomic_xchg() and atomic_cmpxchg().\n\n    (5) asm/bug.h\n\n        Move die() and related bits.\n\n    (6) asm/auxvec.h\n\n        Move AT_VECTOR_SIZE_ARCH here.\n\n  Other arch headers are created as needed on a per-arch basis.\"\n\nFixed up some conflicts from other header file cleanups and moving code\naround that has happened in the meantime, so David\u0027s testing is somewhat\nweakened by that.  We\u0027ll find out anything that got broken and fix it..\n\n* tag \u0027split-asm_system_h-for-linus-20120328\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-asm_system: (38 commits)\n  Delete all instances of asm/system.h\n  Remove all #inclusions of asm/system.h\n  Add #includes needed to permit the removal of asm/system.h\n  Move all declarations of free_initmem() to linux/mm.h\n  Disintegrate asm/system.h for OpenRISC\n  Split arch_align_stack() out from asm-generic/system.h\n  Split the switch_to() wrapper out of asm-generic/system.h\n  Move the asm-generic/system.h xchg() implementation to asm-generic/cmpxchg.h\n  Create asm-generic/barrier.h\n  Make asm-generic/cmpxchg.h #include asm-generic/cmpxchg-local.h\n  Disintegrate asm/system.h for Xtensa\n  Disintegrate asm/system.h for Unicore32 [based on ver #3, changed by gxt]\n  Disintegrate asm/system.h for Tile\n  Disintegrate asm/system.h for Sparc\n  Disintegrate asm/system.h for SH\n  Disintegrate asm/system.h for Score\n  Disintegrate asm/system.h for S390\n  Disintegrate asm/system.h for PowerPC\n  Disintegrate asm/system.h for PA-RISC\n  Disintegrate asm/system.h for MN10300\n  ...\n"
    },
    {
      "commit": "49a7f04a4b9d45cd794741ce3d5d66524b37bdd0",
      "tree": "74f7df3f508691bd73597119a537f810cf43d2ef",
      "parents": [
        "705f4502bb9592ad0e8fb1cd2ba5ae4ce955ff8b"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Wed Mar 28 18:30:03 2012 +0100"
      },
      "committer": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Wed Mar 28 18:30:03 2012 +0100"
      },
      "message": "Move all declarations of free_initmem() to linux/mm.h\n\nMove all declarations of free_initmem() to linux/mm.h so that there\u0027s only one\nand it\u0027s used by everything.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\ncc: linux-c6x-dev@linux-c6x.org\ncc: microblaze-uclinux@itee.uq.edu.au\ncc: linux-sh@vger.kernel.org\ncc: sparclinux@vger.kernel.org\ncc: x86@kernel.org\ncc: linux-mm@kvack.org\n"
    },
    {
      "commit": "026cee0086fe1df4cf74691cf273062cc769617d",
      "tree": "22735ecd2132de4570fbad81e5716f7fee3448d5",
      "parents": [
        "8b8252813dee8e8cd453bb219731c36b268c69a7"
      ],
      "author": {
        "name": "Pawel Moll",
        "email": "pawel.moll@arm.com",
        "time": "Mon Mar 26 12:50:51 2012 +1030"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Mon Mar 26 12:50:51 2012 +1030"
      },
      "message": "params: \u003clevel\u003e_initcall-like kernel parameters\n\nThis patch adds a set of macros that can be used to declare\nkernel parameters to be parsed _before_ initcalls at a chosen\nlevel are executed.  We rename the now-unused \"flags\" field of\nstruct kernel_param as the level.  It\u0027s signed, for when we\nuse this for early params as well, in future.\n\nLinker macro collating init calls had to be modified in order\nto add additional symbols between levels that are later used\nby the init code to split the calls into blocks.\n\nSigned-off-by: Pawel Moll \u003cpawel.moll@arm.com\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\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": "7fa87ce726fa3a2ddd55dc994697dc0e281f9125",
      "tree": "93ec3467d37822bbfa903ba8bcb9b095b378e28c",
      "parents": [
        "cd635af7f56f40f8c2b25ea8468939a79e4b3b2b"
      ],
      "author": {
        "name": "Jim Cromie",
        "email": "jim.cromie@gmail.com",
        "time": "Wed Mar 14 19:12:22 2012 -0600"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Thu Mar 15 15:54:58 2012 +0100"
      },
      "message": "init: fix wording error in mm_init comment\n\ns/countinuous/contiguous/, reword sentence.\n\nSigned-off-by: Jim Cromie \u003cjim.cromie@gmail.com\u003e\nAcked-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\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": "2329abfa344a9a824bc4c71f2415528777265510",
      "tree": "7779fadc6ceba76071e3f5db0ec6a1dee41a0dfd",
      "parents": [
        "6d6a55ec0877393f467067d44b9a2a8c2e4a82d2"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Fri Jan 13 09:32:18 2012 +1030"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Fri Jan 13 09:32:18 2012 +1030"
      },
      "message": "module_param: make bool parameters really bool (core code)\n\nmodule_param(bool) used to counter-intuitively take an int.  In\nfddd5201 (mid-2009) we allowed bool or int/unsigned int using a messy\ntrick.\n\nIt\u0027s time to remove the int/unsigned int option.  For this version\nit\u0027ll simply give a warning, but it\u0027ll break next kernel version.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "d0b9706c20ebb4ba181dc26e52ac9a6861abf425",
      "tree": "436e89246fd5ebcf737cae27e135a1995155329b",
      "parents": [
        "02d929502ce7b57f4835d8bb7c828d36e6d9e8ce",
        "54eed6cb16ec315565aaaf8e34252ca253a68b7b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jan 11 19:12:10 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jan 11 19:12:10 2012 -0800"
      },
      "message": "Merge branch \u0027x86-mm-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\n* \u0027x86-mm-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  x86/numa: Add constraints check for nid parameters\n  mm, x86: Remove debug_pagealloc_enabled\n  x86/mm: Initialize high mem before free_all_bootmem()\n  arch/x86/kernel/e820.c: quiet sparse noise about plain integer as NULL pointer\n  arch/x86/kernel/e820.c: Eliminate bubble sort from sanitize_e820_map()\n  x86: Fix mmap random address range\n  x86, mm: Unify zone_sizes_init()\n  x86, mm: Prepare zone_sizes_init() for unification\n  x86, mm: Use max_low_pfn for ZONE_NORMAL on 64-bit\n  x86, mm: Wrap ZONE_DMA32 with CONFIG_ZONE_DMA32\n  x86, mm: Use max_pfn instead of highend_pfn\n  x86, mm: Move zone init from paging_init() on 64-bit\n  x86, mm: Use MAX_DMA_PFN for ZONE_DMA on 32-bit\n"
    },
    {
      "commit": "54c29c635ae91f5d75ced7bffeaa77ba37ca02bb",
      "tree": "cddf131b5e70809ec5c282f619de0635e45c1cfa",
      "parents": [
        "855c743a27bb58a9a521bdc485ef5acfdb69badc"
      ],
      "author": {
        "name": "Stanislaw Gruszka",
        "email": "sgruszka@redhat.com",
        "time": "Tue Nov 29 17:05:11 2011 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Dec 06 09:24:07 2011 +0100"
      },
      "message": "mm, x86: Remove debug_pagealloc_enabled\n\nWhen (no)bootmem finish operation, it pass pages to buddy\nallocator. Since debug_pagealloc_enabled is not set, we will do\nnot protect pages, what is not what we want with\nCONFIG_DEBUG_PAGEALLOC\u003dy.\n\nTo fix remove debug_pagealloc_enabled. That variable was\nintroduced by commit 12d6f21e \"x86: do not PSE on\nCONFIG_DEBUG_PAGEALLOC\u003dy\" to get more CPA (change page\nattribude) code testing. But currently we have CONFIG_CPA_DEBUG,\nwhich test CPA.\n\nSigned-off-by: Stanislaw Gruszka \u003csgruszka@redhat.com\u003e\nAcked-by: Mel Gorman \u003cmgorman@suse.de\u003e\nCc: linux-mm@kvack.org\nLink: http://lkml.kernel.org/r/1322582711-14571-1-git-send-email-sgruszka@redhat.com\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "73839c5b2eacc15cb0aa79c69b285fc659fa8851",
      "tree": "460e38f3b8036b33a3bed5e4322ea1bb5ef4e3c8",
      "parents": [
        "d3d03d4fc5b1bec3a579112de170a9676e9d97cb"
      ],
      "author": {
        "name": "Ming Lei",
        "email": "tom.leiming@gmail.com",
        "time": "Thu Nov 17 13:34:31 2011 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Dec 06 08:16:53 2011 +0100"
      },
      "message": "init/main.c: Execute lockdep_init() as early as possible\n\nThis patch fixes a lockdep warning on ARM platforms:\n\n  [    0.000000] WARNING: lockdep init error! Arch code didn\u0027t call lockdep_init() early enough?\n  [    0.000000] Call stack leading to lockdep invocation was:\n  [    0.000000]  [\u003cc00164bc\u003e] save_stack_trace_tsk+0x0/0x90\n  [    0.000000]  [\u003cffffffff\u003e] 0xffffffff\n\nThe warning is caused by printk inside smp_setup_processor_id().\n\nIt is safe to do this because lockdep_init() doesn\u0027t depend on\nsmp_setup_processor_id(), so improve things that printk can be\ncalled as early as possible without lockdep complaint.\n\nSigned-off-by: Ming Lei \u003ctom.leiming@gmail.com\u003e\nReviewed-by: Yong Zhang \u003cyong.zhang0@gmail.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nLink: http://lkml.kernel.org/r/1321508072-23853-1-git-send-email-tom.leiming@gmail.com\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b32fc0a0629bf5894b35f33554c118aacfd0d1e2",
      "tree": "5d6aaa9a35b7fa63681adab91da3b3dec5276f84",
      "parents": [
        "403299a8515c56db58454c57712f4dc96d6c1fde",
        "97ce2c88f9ad42e3c60a9beb9fca87abf3639faa"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Nov 06 20:20:46 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Nov 06 20:20:46 2011 -0800"
      },
      "message": "Merge branch \u0027upstream/jump-label-noearly\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jeremy/xen\n\n* \u0027upstream/jump-label-noearly\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jeremy/xen:\n  jump-label: initialize jump-label subsystem much earlier\n  x86/jump_label: add arch_jump_label_transform_static()\n  s390/jump-label: add arch_jump_label_transform_static()\n  jump_label: add arch_jump_label_transform_static() to optimise non-live code updates\n  sparc/jump_label: drop arch_jump_label_text_poke_early()\n  x86/jump_label: drop arch_jump_label_text_poke_early()\n  jump_label: if a key has already been initialized, don\u0027t nop it out\n  stop_machine: make stop_machine safe and efficient to call early\n  jump_label: use proper atomic_t initializer\n\nConflicts:\n - arch/x86/kernel/jump_label.c\n\tAdded __init_or_module to arch_jump_label_text_poke_early vs\n\tremoval of that function entirely\n - kernel/stop_machine.c\n\tsame patch (\"stop_machine: make stop_machine safe and efficient\n\tto call early\") merged twice, with whitespace fix in one version\n"
    },
    {
      "commit": "b1e4d20cbf2ef8e27515da032b95fdcbb5b06bf1",
      "tree": "f080e839635fa36f55d22d147baa12ae64d4c181",
      "parents": [
        "37252db6aa576c34fd794a5a54fb32d7a8b3a07a"
      ],
      "author": {
        "name": "Michal Schmidt",
        "email": "mschmidt@redhat.com",
        "time": "Mon Oct 10 00:03:37 2011 +0200"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Wed Oct 26 13:10:39 2011 +1030"
      },
      "message": "params: make dashes and underscores in parameter names truly equal\n\nThe user may use \"foo-bar\" for a kernel parameter defined as \"foo_bar\".\nMake sure it works the other way around too.\n\nApply the equality of dashes and underscores on early_params and __setup\nparams as well.\n\nThe example given in Documentation/kernel-parameters.txt indicates that\nthis is the intended behaviour.\n\nWith the patch the kernel accepts \"log-buf-len\u003d1M\" as expected.\nhttps://bugzilla.redhat.com/show_bug.cgi?id\u003d744545\n\nSigned-off-by: Michal Schmidt \u003cmschmidt@redhat.com\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e (neatened implementations)\n"
    },
    {
      "commit": "97ce2c88f9ad42e3c60a9beb9fca87abf3639faa",
      "tree": "c25d41a8754b6e11dbf54ba69ebbee11fdffd07e",
      "parents": [
        "e71a5be15e47a73a2964712967fe93ee8ccf551b"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy.fitzhardinge@citrix.com",
        "time": "Wed Oct 12 16:17:54 2011 -0700"
      },
      "committer": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy.fitzhardinge@citrix.com",
        "time": "Tue Oct 25 11:55:15 2011 -0700"
      },
      "message": "jump-label: initialize jump-label subsystem much earlier\n\nInitialize jump_labels much, much earlier, so they\u0027re available for use\nduring system setup.\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\n"
    },
    {
      "commit": "b0f84374b6ab0dc9c47975df0b02d46165d558d4",
      "tree": "57e9d9bee80c89c92265df75aa579222b994b38f",
      "parents": [
        "d5767c53535ac79758084773418e0ad186aba4a2"
      ],
      "author": {
        "name": "wangyanqing",
        "email": "udknight@gmail.com",
        "time": "Thu Sep 29 15:09:40 2011 +0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Sep 29 19:21:01 2011 -0700"
      },
      "message": "bootup: move \u0027usermodehelper_enable()\u0027 a little earlier\n\nCommit d5767c53535a (\"bootup: move \u0027usermodehelper_enable()\u0027 to the end\nof do_basic_setup()\") moved \u0027usermodehelper_enable()\u0027 to end of\ndo_basic_setup() to after the initcalls.  But then I get failed to let\nuvesafb work on my computer, and lose the splash boot.\n\nSo maybe we could start usermodehelper_enable a little early to make\nsome task work that need eary init with the help of user mode.\n\n[ I would *really* prefer that initcalls not call into user space - even\n  the real \u0027init\u0027 hasn\u0027t been execve\u0027d yet, after all! But for uvesafb\n  it really does look like we don\u0027t have much choice.\n\n  I considered doing this when we mount the root filesystem, but\n  depending on config options that is in multiple places.  We could do\n  the usermode helper enable as a rootfs_initcall()..\n\n  So I\u0027m just using wang yanqing\u0027s trivial patch.  It\u0027s not wonderful,\n  but it\u0027s simple and should work.  We should revisit this some day,\n  though.      - Linus ]\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d5767c53535ac79758084773418e0ad186aba4a2",
      "tree": "75ae8b298213a276ee2d37deaee6d316efc9200c",
      "parents": [
        "2ef7b45a5925c54d948f858e42babb0533b9a3c5"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 28 10:23:44 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 28 10:23:44 2011 -0700"
      },
      "message": "bootup: move \u0027usermodehelper_enable()\u0027 to the end of do_basic_setup()\n\nDoing it just before starting to call into cpu_idle() made a sick kind\nof sense only because the original bug we fixed (see commit\n288d5abec831: \"Boot up with usermodehelper disabled\") was about problems\nwith some scheduler data structures not being initialized, and they had\nbetter be initialized at that point.\n\nBut it really didn\u0027t make any other conceptual sense, and doing it after\nthe initial \"schedule()\" call for the idle thread actually opened up a\nrace: what if the main initialization thread did everything without\nneeding to sleep, and got all the way into user land too? Without\nactually having scheduled back to the idle thread?\n\nNow, in normal circumstances that doesn\u0027t ever happen, but it looks like\nRichard Cochran triggered exactly that on his ARM IXP4xx machines:\n\n  \"I have some ARM IXP4xx based machines that use the two on chip MAC\n   ports (aka NPEs).  The NPE needs a firmware in order to function.\n   Ever since the following commit [that 288d5abec831 one], it is no\n   longer possible to bring up the interfaces during the init scripts.\"\n\nwith a call trace showing an ioctl coming from user space. Richard says:\n\n  \"The init is busybox, and the startup script does mount, syslogd, and\n   then ifup, so that all can go by quickly.\"\n\nThe fix is to move the usermodehelper_enable() into the main \u0027init\u0027\nthread, and just put it after we\u0027ve done all our initcalls.  By then,\neverything really should be up, but we\u0027ve obviously not actually started\nthe user-mode portion of init yet.\n\nReported-and-tested-by: Richard Cochran \u003crichardcochran@gmail.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "808bf29b9195c52239b9aaeda7c6082a0ddf07c6",
      "tree": "eabb672d84cf00b13225b44fdf2482b6900b5a14",
      "parents": [
        "32ef43848f283e0ef945d3c67e851c143fea3970"
      ],
      "author": {
        "name": "Alexander Sverdlin",
        "email": "alexander.sverdlin@sysgo.com",
        "time": "Wed Sep 21 09:51:40 2011 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 21 13:18:52 2011 -0700"
      },
      "message": "init: carefully handle loglevel option on kernel cmdline.\n\nWhen a malformed loglevel value (for example \"${abc}\") is passed on the\nkernel cmdline, the loglevel itself is being set to 0.\n\nThat then suppresses all following messages, including all the errors\nand crashes caused by other malformed cmdline options.  This could make\ndebugging process quite tricky.\n\nThis patch leaves the previous value of loglevel if the new value is\nincorrect and reports an error code in this case.\n\nSigned-off-by: Alexander Sverdlin \u003calexander.sverdlin@sysgo.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "288d5abec8314ae50fe6692f324b0444acae8486",
      "tree": "58a6903344b8d9b2252144356a132a05a8359876",
      "parents": [
        "33f35f2a4ee3abfc0f87990058aa1b6b5092f725"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 03 22:03:29 2011 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 03 22:03:29 2011 -1000"
      },
      "message": "Boot up with usermodehelper disabled\n\nThe core device layer sends tons of uevent notifications for each device\nit finds, and if the kernel has been built with a non-empty\nCONFIG_UEVENT_HELPER_PATH that will make us try to execute the usermode\nhelper binary for all these events very early in the boot.\n\nNot only won\u0027t the root filesystem even be mounted at that point, we\nliterally won\u0027t have necessarily even initialized all the process\nhandling data structures at that point, which causes no end of silly\nproblems even when the usermode helper doesn\u0027t actually succeed in\nexecuting.\n\nSo just use our existing infrastructure to disable the usermodehelpers\nto make the kernel start out with them disabled.  We enable them when\nwe\u0027ve at least initialized stuff a bit.\n\nProblems related to an uninitialized\n\n\tinit_ipc_ns.ids[IPC_SHM_IDS].rw_mutex\n\nreported by various people.\n\nReported-by: Manuel Lauss \u003cmanuel.lauss@googlemail.com\u003e\nReported-by: Richard Weinberger \u003crichard@nod.at\u003e\nReported-by: Marc Zyngier \u003cmaz@misterjones.org\u003e\nAcked-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Vasiliy Kulikov \u003csegoon@openwall.com\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "41ffe5d5ceef7f7ff2ff18e320d88ca6d629efaf",
      "tree": "66ce800fb7911ed037aa574f46729646ce485d0b",
      "parents": [
        "285b2c4fdd69ea73b4762785d8c6be83b6c074a6"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hughd@google.com",
        "time": "Wed Aug 03 16:21:21 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 03 14:25:23 2011 -1000"
      },
      "message": "tmpfs: miscellaneous trivial cleanups\n\nWhile it\u0027s at its least, make a number of boring nitpicky cleanups to\nshmem.c, mostly for consistency of variable naming.  Things like \"swap\"\ninstead of \"entry\", \"pgoff_t index\" instead of \"unsigned long idx\".\n\nAnd since everything else here is prefixed \"shmem_\", better change\ninit_tmpfs() to shmem_init().\n\nSigned-off-by: Hugh Dickins \u003chughd@google.com\u003e\nAcked-by: Rik van Riel \u003criel@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": "d8ad7d1123a960cc9f276bd499f9325c6f5e1bd1",
      "tree": "0260df1b5b5b1601f56229c7dde54594d2dfebcb",
      "parents": [
        "eb96c925152fc289311e5d7e956b919e9b60ab53"
      ],
      "author": {
        "name": "Takao Indoh",
        "email": "indou.takao@jp.fujitsu.com",
        "time": "Tue Mar 29 12:35:04 2011 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 17 10:17:12 2011 +0200"
      },
      "message": "generic-ipi: Fix kexec boot crash by initializing call_single_queue before enabling interrupts\n\nThere is a problem that kdump(2nd kernel) sometimes hangs up due\nto a pending IPI from 1st kernel. Kernel panic occurs because IPI\ncomes before call_single_queue is initialized.\n\nTo fix the crash, rename init_call_single_data() to call_function_init()\nand call it in start_kernel() so that call_single_queue can be\ninitialized before enabling interrupts.\n\nThe details of the crash are:\n\n (1) 2nd kernel boots up\n\n (2) A pending IPI from 1st kernel comes when irqs are first enabled\n     in start_kernel().\n\n (3) Kernel tries to handle the interrupt, but call_single_queue\n     is not initialized yet at this point. As a result, in the\n     generic_smp_call_function_single_interrupt(), NULL pointer\n     dereference occurs when list_replace_init() tries to access\n     \u0026q-\u003elist.next.\n\nTherefore this patch changes the name of init_call_single_data()\nto call_function_init() and calls it before local_irq_enable()\nin start_kernel().\n\nSigned-off-by: Takao Indoh \u003cindou.takao@jp.fujitsu.com\u003e\nReviewed-by: WANG Cong \u003cxiyou.wangcong@gmail.com\u003e\nAcked-by: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nAcked-by: Vivek Goyal \u003cvgoyal@redhat.com\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Milton Miller \u003cmiltonm@bga.com\u003e\nCc: Jens Axboe \u003caxboe@kernel.dk\u003e\nCc: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nCc: kexec@lists.infradead.org\nLink: http://lkml.kernel.org/r/D6CBEE2F420741indou.takao@jp.fujitsu.com\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6345d24daf0c1fffe6642081d783cdf653ebaa5c",
      "tree": "415a253621279111bd481d48cbb86174c70b952a",
      "parents": [
        "cab0d85c8dfcad4d799f9c294571440c6f1db091"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun May 29 11:32:28 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun May 29 11:32:28 2011 -0700"
      },
      "message": "mm: Fix boot crash in mm_alloc()\n\nThomas Gleixner reports that we now have a boot crash triggered by\nCONFIG_CPUMASK_OFFSTACK\u003dy:\n\n    BUG: unable to handle kernel NULL pointer dereference at   (null)\n    IP: [\u003cc11ae035\u003e] find_next_bit+0x55/0xb0\n    Call Trace:\n     [\u003cc11addda\u003e] cpumask_any_but+0x2a/0x70\n     [\u003cc102396b\u003e] flush_tlb_mm+0x2b/0x80\n     [\u003cc1022705\u003e] pud_populate+0x35/0x50\n     [\u003cc10227ba\u003e] pgd_alloc+0x9a/0xf0\n     [\u003cc103a3fc\u003e] mm_init+0xec/0x120\n     [\u003cc103a7a3\u003e] mm_alloc+0x53/0xd0\n\nwhich was introduced by commit de03c72cfce5 (\"mm: convert\nmm-\u003ecpu_vm_cpumask into cpumask_var_t\"), and is due to wrong ordering of\nmm_init() vs mm_init_cpumask\n\nThomas wrote a patch to just fix the ordering of initialization, but I\nhate the new double allocation in the fork path, so I ended up instead\ndoing some more radical surgery to clean it all up.\n\nReported-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nReported-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "162a7e7500f9664636e649ba59defe541b7c2c60",
      "tree": "f44d4e480975d7f2c4bd4fd8625dbdb81eb04ade",
      "parents": [
        "95dde501907b06e7203c74f8435acfdab9eb2659"
      ],
      "author": {
        "name": "Mike Travis",
        "email": "travis@sgi.com",
        "time": "Tue May 24 17:13:20 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 25 08:39:48 2011 -0700"
      },
      "message": "printk: allocate kernel log buffer earlier\n\nOn larger systems, because of the numerous ACPI, Bootmem and EFI messages,\nthe static log buffer overflows before the larger one specified by the\nlog_buf_len param is allocated.  Minimize the overflow by allocating the\nnew log buffer as soon as possible.\n\nOn kernels without memblock, a later call to setup_log_buf from\nkernel/init.c is the fallback.\n\n[akpm@linux-foundation.org: coding-style fixes]\n[akpm@linux-foundation.org: fix CONFIG_PRINTK\u003dn build]\nSigned-off-by: Mike Travis \u003ctravis@sgi.com\u003e\nCc: Yinghai Lu \u003cyhlu.kernel@gmail.com\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nCc: Jack Steiner \u003csteiner@sgi.com\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "de03c72cfce5b263a674d04348b58475ec50163c",
      "tree": "e2b035234440bcd1aa88078c3f9c8457d461ef9c",
      "parents": [
        "692e0b35427a088bf75d9363788c61c7edbe93a5"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Tue May 24 17:12:15 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 25 08:39:21 2011 -0700"
      },
      "message": "mm: convert mm-\u003ecpu_vm_cpumask into cpumask_var_t\n\ncpumask_t is very big struct and cpu_vm_mask is placed wrong position.\nIt might lead to reduce cache hit ratio.\n\nThis patch has two change.\n1) Move the place of cpumask into last of mm_struct. Because usually cpumask\n   is accessed only front bits when the system has cpu-hotplug capability\n2) Convert cpu_vm_mask into cpumask_var_t. It may help to reduce memory\n   footprint if cpumask_size() will use nr_cpumask_bits properly in future.\n\nIn addition, this patch change the name of cpu_vm_mask with cpu_vm_mask_var.\nIt may help to detect out of tree cpu_vm_mask users.\n\nThis patch has no functional change.\n\n[akpm@linux-foundation.org: build fix]\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: Koichi Yasutake \u003cyasutake.koichi@jp.panasonic.com\u003e\nCc: Hugh Dickins \u003chughd@google.com\u003e\nCc: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9b090f2da85bd0df5e1a1ecfe4120b7b50358f48",
      "tree": "cbf13036b3ade83d5f13b8ff03be47ef312171c9",
      "parents": [
        "79e0d9bd262bdd36009e8092e57e34dc5e22a1c7"
      ],
      "author": {
        "name": "Catalin Marinas",
        "email": "catalin.marinas@arm.com",
        "time": "Thu May 19 16:25:30 2011 +0100"
      },
      "committer": {
        "name": "Catalin Marinas",
        "email": "catalin.marinas@arm.com",
        "time": "Thu May 19 17:36:37 2011 +0100"
      },
      "message": "kmemleak: Initialise kmemleak after debug_objects_mem_init()\n\nKmemleak frees objects via RCU and when CONFIG_DEBUG_OBJECTS_RCU_HEAD\nis enabled, the RCU callback triggers a call to free_object() in\nlib/debugobjects.c. Since kmemleak is initialised before debug objects\ninitialisation, it may result in a kernel panic during booting. This\npatch moves the kmemleak_init() call after debug_objects_mem_init().\n\nReported-by: Marcin Slusarz \u003cmarcin.slusarz@gmail.com\u003e\nTested-by: Tejun Heo \u003ctj@kernel.org\u003e\nSigned-off-by: Catalin Marinas \u003ccatalin.marinas@arm.com\u003e\nCc: \u003cstable@kernel.org\u003e\n"
    },
    {
      "commit": "45a68628d37222e655219febce9e91b6484789b2",
      "tree": "6acb5c45e8b11022358a1c28691c9b2c75a7df91",
      "parents": [
        "bfdc0b497faa82a0ba2f9dddcf109231dd519fcc"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Wed Mar 23 16:43:12 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 23 19:46:57 2011 -0700"
      },
      "message": "pid: remove the child_reaper special case in init/main.c\n\nThis patchset is a cleanup and a preparation to unshare the pid namespace.\nThese prerequisites prepare for Eric\u0027s patchset to give a file descriptor\nto a namespace and join an existing namespace.\n\nThis patch:\n\nIt turns out that the existing assignment in copy_process of the\nchild_reaper can handle the initial assignment of child_reaper we just\nneed to generalize the test in kernel/fork.c\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Daniel Lezcano \u003cdaniel.lezcano@free.fr\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nAcked-by: Serge E. Hallyn \u003cserge@hallyn.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "34db18a054c600b6f81787165669dc572fe4de25",
      "tree": "6a8a0abf4f64ccad677ea2468c3e8465ac4e0c29",
      "parents": [
        "fa9ee9c4b9885dfdf8eccac19b8b4fc8a7c53288"
      ],
      "author": {
        "name": "Amerigo Wang",
        "email": "amwang@redhat.com",
        "time": "Tue Mar 22 16:34:06 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 22 17:44:11 2011 -0700"
      },
      "message": "smp: move smp setup functions to kernel/smp.c\n\nMove setup_nr_cpu_ids(), smp_init() and some other SMP boot parameter\nsetup functions from init/main.c to kenrel/smp.c, saves some #ifdef\nCONFIG_SMP.\n\nSigned-off-by: WANG Cong \u003camwang@redhat.com\u003e\nCc: Rakib Mullick \u003crakib.mullick@gmail.com\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Arnd Bergmann \u003carnd@arndb.de\u003e\nCc: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2ce802f62ba32a7d95748ac92bf351f76affb6ff",
      "tree": "54dd0d6063ca61619e6b8ca84dd95b8e5a3c1402",
      "parents": [
        "12fcdba1b7ae8b25696433f420b775aeb556d89b"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Thu Jan 20 12:06:35 2011 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jan 20 13:32:33 2011 +0100"
      },
      "message": "lockdep: Move early boot local IRQ enable/disable status to init/main.c\n\nDuring early boot, local IRQ is disabled until IRQ subsystem is\nproperly initialized.  During this time, no one should enable\nlocal IRQ and some operations which usually are not allowed with\nIRQ disabled, e.g. operations which might sleep or require\ncommunications with other processors, are allowed.\n\nlockdep tracked this with early_boot_irqs_off/on() callbacks.\nAs other subsystems need this information too, move it to\ninit/main.c and make it generally available.  While at it,\ntoggle the boolean to early_boot_irqs_disabled instead of\nenabled so that it can be initialized with %false and %true\nindicates the exceptional condition.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-by: Pekka Enberg \u003cpenberg@kernel.org\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nLKML-Reference: \u003c20110120110635.GB6036@htj.dyndns.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "23d69b09b78c4876e134f104a3814c30747c53f1",
      "tree": "40744de4f4126c21027ce537264524095e0e7979",
      "parents": [
        "e744070fd4ff9d3114277e52d77afa21579adce2",
        "569ff2de2e1c8ac67c8df3a7367d46d0d9460a35"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 07 16:58:04 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 07 16:58:04 2011 -0800"
      },
      "message": "Merge branch \u0027for-2.6.38\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq\n\n* \u0027for-2.6.38\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq: (33 commits)\n  usb: don\u0027t use flush_scheduled_work()\n  speedtch: don\u0027t abuse struct delayed_work\n  media/video: don\u0027t use flush_scheduled_work()\n  media/video: explicitly flush request_module work\n  ioc4: use static work_struct for ioc4_load_modules()\n  init: don\u0027t call flush_scheduled_work() from do_initcalls()\n  s390: don\u0027t use flush_scheduled_work()\n  rtc: don\u0027t use flush_scheduled_work()\n  mmc: update workqueue usages\n  mfd: update workqueue usages\n  dvb: don\u0027t use flush_scheduled_work()\n  leds-wm8350: don\u0027t use flush_scheduled_work()\n  mISDN: don\u0027t use flush_scheduled_work()\n  macintosh/ams: don\u0027t use flush_scheduled_work()\n  vmwgfx: don\u0027t use flush_scheduled_work()\n  tpm: don\u0027t use flush_scheduled_work()\n  sonypi: don\u0027t use flush_scheduled_work()\n  hvsi: don\u0027t use flush_scheduled_work()\n  xen: don\u0027t use flush_scheduled_work()\n  gdrom: don\u0027t use flush_scheduled_work()\n  ...\n\nFixed up trivial conflict in drivers/media/video/bt8xx/bttv-input.c\nas per Tejun.\n"
    },
    {
      "commit": "ee4569a3a75e1a5ed53b0c4ff4d9fc456aa98ef1",
      "tree": "97f92d5cea13cdd1f2419d3b7cedfd384a4df6b5",
      "parents": [
        "6dca467a76bb0ed71d65143b235e0ef80e44436f"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Fri Dec 24 16:14:20 2010 +0100"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Fri Dec 24 16:14:20 2010 +0100"
      },
      "message": "init: don\u0027t call flush_scheduled_work() from do_initcalls()\n\nThe call to flush_scheduled_work() in do_initcalls() is there to make\nsure all works queued to system_wq by initcalls finish before the init\nsections are dropped.\n\nHowever, the call doesn\u0027t make much sense at this point - there\nalready are multiple different workqueues and different subsystems are\nfree to create and use their own.  Ordering requirements are and\nshould be expressed explicitly.\n\nDrop the call to prepare for the deprecation and removal of\nflush_scheduled_work().\n\nAndrew suggested adding sanity check where the workqueue code checks\nwhether any pending or running work has the work function in the init\ntext section.  However, checking this for running works requires the\nworker to keep track of the current function being executed, and\nchecking only the pending works will miss most cases.  As a violation\nwill almost always be caught by the usual page fault mechanism, I\ndon\u0027t think it would be worthwhile to make the workqueue code track\nextra state just for this.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9f58a205c62d0dad1df38d076324a89b1a0f1d65",
      "tree": "57c7538b7d648d8d7bf4b4c395a61d778c86f73f",
      "parents": [
        "24a24bb6ff3dc3a09bb131241be920ecc3f0e519"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Nov 17 23:17:35 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Dec 16 11:36:43 2010 +0100"
      },
      "message": "init: Initialized IDR earlier\n\nperf_event_init() wants to start using IDR trees, its needs in turn\nare satisfied by mm_init().\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c20101117222056.206992649@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "24a24bb6ff3dc3a09bb131241be920ecc3f0e519",
      "tree": "181eca7d23ba93af11304683a309e18b697a15b0",
      "parents": [
        "4407204c5c9037763aadce39b025529dfbfcac9e"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Nov 17 23:17:33 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Dec 16 11:36:42 2010 +0100"
      },
      "message": "perf: Move perf_event_init() into main.c\n\nCurrently we call perf_event_init() from sched_init(). In order to\nmake it more obvious move it to the cannnonical location.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c20101117222056.093629821@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "004417a6d468e24399e383645c068b498eed84ad",
      "tree": "ce3f4ea25186080faec7a7be6648b177e526c436",
      "parents": [
        "5ef428c4b5950dddce7311e84321abb3aff7ebb0"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Thu Nov 25 18:38:29 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Nov 26 15:14:56 2010 +0100"
      },
      "message": "perf, arch: Cleanup perf-pmu init vs lockup-detector\n\nThe perf hardware pmu got initialized at various points in the boot,\nsome before early_initcall() some after (notably arch_initcall).\n\nThe problem is that the NMI lockup detector is ran from early_initcall()\nand expects the hardware pmu to be present.\n\nSanitize this by moving all architecture hardware pmu implementations to\ninitialize at early_initcall() and move the lockup detector to an explicit\ninitcall right after that.\n\nCc: paulus \u003cpaulus@samba.org\u003e\nCc: davem \u003cdavem@davemloft.net\u003e\nCc: Michael Cree \u003cmcree@orcon.net.nz\u003e\nCc: Deng-Cheng Zhu \u003cdengcheng.zhu@gmail.com\u003e\nAcked-by: Paul Mundt \u003clethal@linux-sh.org\u003e\nAcked-by: Will Deacon \u003cwill.deacon@arm.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c1290707759.2145.119.camel@laptop\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "451a3c24b0135bce54542009b5fde43846c7cf67",
      "tree": "f0fbbcc155aef2a1ffcb8aa593fe7a966d0e6900",
      "parents": [
        "55f6561c6941713ab5ae9180525b026dd40b7d14"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Wed Nov 17 16:26:55 2010 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Nov 17 08:59:32 2010 -0800"
      },
      "message": "BKL: remove extraneous #include \u003csmp_lock.h\u003e\n\nThe big kernel lock has been removed from all these files at some point,\nleaving only the #include.\n\nRemove this too as a cleanup.\n\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5704e44d283e907623e3775c1262f206a2c48cf3",
      "tree": "0a981b24173e90854e7b7d812b35859e1e5f0174",
      "parents": [
        "91151240ed8e97cc4457dae4094153c2744f1eb8",
        "6de5bd128d381ad88ac6d419a5e597048eb468cf"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 22 10:43:11 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 22 10:43:11 2010 -0700"
      },
      "message": "Merge branch \u0027config\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/bkl\n\n* \u0027config\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/bkl:\n  BKL: introduce CONFIG_BKL.\n  dabusb: remove the BKL\n  sunrpc: remove the big kernel lock\n  init/main.c: remove BKL notations\n  blktrace: remove the big kernel lock\n  rtmutex-tester: make it build without BKL\n  dvb-core: kill the big kernel lock\n  dvb/bt8xx: kill the big kernel lock\n  tlclk: remove big kernel lock\n  fix rawctl compat ioctls breakage on amd64 and itanic\n  uml: kill big kernel lock\n  parisc: remove big kernel lock\n  cris: autoconvert trivial BKL users\n  alpha: kill big kernel lock\n  isapnp: BKL removal\n  s390/block: kill the big kernel lock\n  hpet: kill BKL, add compat_ioctl\n"
    },
    {
      "commit": "1fa4f3b57cf0c525027ea61011312de139b04f9b",
      "tree": "2568eb32058e39870a2b739809dadd5c82e95422",
      "parents": [
        "01b284f9b6d51cc3f3bcf3b49f16d2601d3ca22d"
      ],
      "author": {
        "name": "Namhyung Kim",
        "email": "namhyung@gmail.com",
        "time": "Mon Sep 27 16:06:54 2010 +0900"
      },
      "committer": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Tue Oct 19 11:29:58 2010 +0200"
      },
      "message": "init/main.c: remove BKL notations\n\nAccording to commit 5e3d20a68f63fc5a310687d81956c3b96e488b84\n(init: Remove the BKL from startup code) these sparse notations\nshould be removed also.\n\nSigned-off-by: Namhyung Kim \u003cnamhyung@gmail.com\u003e\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\n"
    },
    {
      "commit": "154cd387cdf0e5566ce523cbddf92dd2a062dfd6",
      "tree": "8ab329f26992c570b65fe62843275eb71c8bf505",
      "parents": [
        "3795de236d67a05994a1a12759db9d4dd9ffc42c"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Sep 22 15:58:45 2010 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Oct 12 16:39:06 2010 +0200"
      },
      "message": "genirq: Remove early_init_irq_lock_class()\n\nearly_init_irq_lock_class() is called way before anything touches the\nirq descriptors. In case of SPARSE_IRQ\u003dy this is a NOP operation\nbecause the radix tree is empty at this point. For the SPARSE_IRQ\u003dn\ncase it\u0027s sufficient to set the lock class in early_init_irq(). \n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nReviewed-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "d7627467b7a8dd6944885290a03a07ceb28c10eb",
      "tree": "a18c83468418e878cfb2d44e4310d81b8db84ad7",
      "parents": [
        "da5cabf80e2433131bf0ed8993abc0f7ea618c73"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Tue Aug 17 23:52:56 2010 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 17 18:07:43 2010 -0700"
      },
      "message": "Make do_execve() take a const filename pointer\n\nMake do_execve() take a const filename pointer so that kernel_execve() compiles\ncorrectly on ARM:\n\narch/arm/kernel/sys_arm.c:88: warning: passing argument 1 of \u0027do_execve\u0027 discards qualifiers from pointer target type\n\nThis also requires the argv and envp arguments to be consted twice, once for\nthe pointer array and once for the strings the array points to.  This is\nbecause do_execve() passes a pointer to the filename (now const) to\ncopy_strings_kernel().  A simpler alternative would be to cast the filename\npointer in do_execve() when it\u0027s passed to copy_strings_kernel().\n\ndo_execve() may not change any of the strings it is passed as part of the argv\nor envp lists as they are some of them in .rodata, so marking these strings as\nconst should be fine.\n\nFurther kernel_execve() and sys_execve() need to be changed to match.\n\nThis has been test built on x86_64, frv, arm and mips.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nTested-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\nAcked-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "914dcaa84c53f2c3efa6016efcae13fd92a8a17c",
      "tree": "6bbcf8953012000cb0a22b47ff616ff2dbe481f2",
      "parents": [
        "a1054322afc8120ea5a50bc84e5beeda54571862"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Wed Aug 11 23:04:18 2010 -0600"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Wed Aug 11 23:04:19 2010 +0930"
      },
      "message": "param: make param sections const.\n\nSince this section can be read-only (they\u0027re in .rodata), they should\nalways have been const.  Minor flow-through various functions.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nTested-by: Phil Carmody \u003cext-phil.2.carmody@nokia.com\u003e\n"
    },
    {
      "commit": "e446127134de06c4aceaa511f411d06eac91634b",
      "tree": "7e685b71d8ed98cf712e1a88111c4613bc6f1847",
      "parents": [
        "22c5c03b42c082ab57b5d24824769ada0d90f8dc"
      ],
      "author": {
        "name": "Kevin Winchester",
        "email": "kjwinchester@gmail.com",
        "time": "Mon Aug 09 17:20:32 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:06 2010 -0700"
      },
      "message": "init/main.c: mark do_one_initcall* as __init_or_module\n\nAndrew Morton suggested that the do_one_initcall and do_one_initcall_debug\nfunctions can be marked __init_or_module such that they can be discarded\nfor the CONFIG_MODULES\u003dN case.\n\nSigned-off-by: Kevin Winchester \u003ckjwinchester@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "22c5c03b42c082ab57b5d24824769ada0d90f8dc",
      "tree": "f3bb670ed467b05cba425e21625213de00dd9f0d",
      "parents": [
        "459b37d423104f00e87d1934821bc8739979d0e4"
      ],
      "author": {
        "name": "Kevin Winchester",
        "email": "kjwinchester@gmail.com",
        "time": "Mon Aug 09 17:20:32 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:06 2010 -0700"
      },
      "message": "init/main.c: fix warning: \u0027calltime.tv64\u0027 may be used uninitialized\n\nUsing:\n\n\tgcc (GCC) 4.5.0 20100610 (prerelease)\n\nThe following warning appears:\n\n\tinit/main.c: In function `do_one_initcall\u0027:\n\tinit/main.c:730:10: warning: `calltime.tv64\u0027 may be used uninitialized in this function\n\nThis warning is actually correct, as the global initcall_debug could\narguably be changed by the initcall.\n\nCorrect this warning by extracting a new function, do_one_initcall_debug,\nthat performs the initcall for the debug case.\n\nSigned-off-by: Kevin Winchester \u003ckjwinchester@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "78417334b5cb6e1f915b8fdcc4fce3f1a1b4420c",
      "tree": "8e3fce9f27fd058904c0a3247a5c5ebb8df9fbe8",
      "parents": [
        "cd816a0d84377c4e87f55cbe934a23417f9f5743",
        "5f202bd5ca64132cdd7f186656bc0221f257733d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Aug 07 17:06:54 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Aug 07 17:06:54 2010 -0700"
      },
      "message": "Merge branch \u0027bkl/core\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/frederic/random-tracing\n\n* \u0027bkl/core\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/frederic/random-tracing:\n  do_coredump: Do not take BKL\n  init: Remove the BKL from startup code\n"
    },
    {
      "commit": "3b7433b8a8a83c87972065b1852b7dcae691e464",
      "tree": "93fa2c003f8baef5ab0733b53bac77961ed5240c",
      "parents": [
        "4a386c3e177ca2fbc70c9283d0b46537844763a0",
        "6ee0578b4daaea01c96b172c6aacca43fd9807a6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Aug 07 12:42:58 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Aug 07 12:42:58 2010 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq: (55 commits)\n  workqueue: mark init_workqueues() as early_initcall()\n  workqueue: explain for_each_*cwq_cpu() iterators\n  fscache: fix build on !CONFIG_SYSCTL\n  slow-work: kill it\n  gfs2: use workqueue instead of slow-work\n  drm: use workqueue instead of slow-work\n  cifs: use workqueue instead of slow-work\n  fscache: drop references to slow-work\n  fscache: convert operation to use workqueue instead of slow-work\n  fscache: convert object to use workqueue instead of slow-work\n  workqueue: fix how cpu number is stored in work-\u003edata\n  workqueue: fix mayday_mask handling on UP\n  workqueue: fix build problem on !CONFIG_SMP\n  workqueue: fix locking in retry path of maybe_create_worker()\n  async: use workqueue for worker pool\n  workqueue: remove WQ_SINGLE_CPU and use WQ_UNBOUND instead\n  workqueue: implement unbound workqueue\n  workqueue: prepare for WQ_UNBOUND implementation\n  libata: take advantage of cmwq and remove concurrency limitations\n  workqueue: fix worker management invocation without pending works\n  ...\n\nFixed up conflicts in fs/cifs/* as per Tejun. Other trivial conflicts in\ninclude/linux/workqueue.h, kernel/trace/Kconfig and kernel/workqueue.c\n"
    },
    {
      "commit": "4aed2fd8e3181fea7c09ba79cf64e7e3f4413bf9",
      "tree": "1f69733e5daab4915a76a41de0e4d1dc61e12cfb",
      "parents": [
        "3a3527b6461b1298cc53ce72f336346739297ac8",
        "fc9ea5a1e53ee54f681e226d735008e2a6f8f470"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 06 09:30:52 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 06 09:30:52 2010 -0700"
      },
      "message": "Merge branch \u0027perf-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027perf-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (162 commits)\n  tracing/kprobes: unregister_trace_probe needs to be called under mutex\n  perf: expose event__process function\n  perf events: Fix mmap offset determination\n  perf, powerpc: fsl_emb: Restore setting perf_sample_data.period\n  perf, powerpc: Convert the FSL driver to use local64_t\n  perf tools: Don\u0027t keep unreferenced maps when unmaps are detected\n  perf session: Invalidate last_match when removing threads from rb_tree\n  perf session: Free the ref_reloc_sym memory at the right place\n  x86,mmiotrace: Add support for tracing STOS instruction\n  perf, sched migration: Librarize task states and event headers helpers\n  perf, sched migration: Librarize the GUI class\n  perf, sched migration: Make the GUI class client agnostic\n  perf, sched migration: Make it vertically scrollable\n  perf, sched migration: Parameterize cpu height and spacing\n  perf, sched migration: Fix key bindings\n  perf, sched migration: Ignore unhandled task states\n  perf, sched migration: Handle ignored migrate out events\n  perf: New migration tool overview\n  tracing: Drop cpparg() macro\n  perf: Use tracepoint_synchronize_unregister() to flush any pending tracepoint call\n  ...\n\nFix up trivial conflicts in Makefile and drivers/cpufreq/cpufreq.c\n"
    },
    {
      "commit": "ffd386a9a8273dcfa61705d0b349eebc7525ef87",
      "tree": "3a555f07c0df5b21eb2ee49fe57f71a76d0342f7",
      "parents": [
        "03da30986793385af57eeca3296253c887b742e6",
        "099a19d91ca429944743d51bef8fee240e94d8e3"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 04 15:17:52 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 04 15:17:52 2010 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu:\n  percpu: allow limited allocation before slab is online\n  percpu: make @dyn_size always mean min dyn_size in first chunk init functions\n"
    },
    {
      "commit": "6ee0578b4daaea01c96b172c6aacca43fd9807a6",
      "tree": "bb82bb4e2a95704477da6c527b23af59c8c2a041",
      "parents": [
        "098849516dd522a343e659740c8f1394a5b7fa69"
      ],
      "author": {
        "name": "Suresh Siddha",
        "email": "suresh.b.siddha@intel.com",
        "time": "Fri Jul 30 14:57:37 2010 -0700"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Sun Aug 01 13:05:29 2010 +0200"
      },
      "message": "workqueue: mark init_workqueues() as early_initcall()\n\nMark init_workqueues() as early_initcall() and thus it will be initialized\nbefore smp bringup. init_workqueues() registers for the hotcpu notifier\nand thus it should cope with the processors that are brought online after\nthe workqueues are initialized.\n\nx86 smp bringup code uses workqueues and uses a workaround for the\ncold boot process (as the workqueues are initialized post smp_init()).\nMarking init_workqueues() as early_initcall() will pave the way for\ncleaning up this code.\n\nSigned-off-by: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5e3d20a68f63fc5a310687d81956c3b96e488b84",
      "tree": "576da563442772fe7a492589c1e08c422ff02b1c",
      "parents": [
        "815c4163b6c8ebf8152f42b0a5fd015cfdcedc78"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Sun Jul 04 00:02:26 2010 +0200"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Fri Jul 09 15:40:32 2010 +0200"
      },
      "message": "init: Remove the BKL from startup code\n\nI have shown by code review that no driver takes\nthe BKL at init time any more, so whatever the\ninit code was locking against is no longer there\nand it is now safe to remove the BKL there.\n\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "08f8ba07998ab1b9efcdd3f28dadf6866a605ddb",
      "tree": "8e09855446f7b0312bb729d4b539090756e57927",
      "parents": [
        "0879b100f3c187257729f36cba33d96ec2875766",
        "815c4163b6c8ebf8152f42b0a5fd015cfdcedc78"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 05 08:30:55 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 05 08:30:58 2010 +0200"
      },
      "message": "Merge commit \u0027v2.6.35-rc4\u0027 into perf/core\n\nMerge reason: Pick up the latest perf fixes\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "123f94f22e3d283dfe68742b269c245b0501ad82",
      "tree": "1d40043b0909f309cf77204ea87be9e61f143e79",
      "parents": [
        "4b78c119f0ba715b4e29b190bf4d7bce810ea0d6",
        "8c215bd3890c347dfb6a2db4779755f8b9c298a9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 02 09:52:58 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 02 09:52:58 2010 -0700"
      },
      "message": "Merge branch \u0027sched-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027sched-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  sched: Cure nr_iowait_cpu() users\n  init: Fix comment\n  init, sched: Fix race between init and kthreadd\n"
    },
    {
      "commit": "9715856922bf8475f5428c29b6f4a9eebc97d391",
      "tree": "1c729197f0530998b1ad33046b95afbd0de751e6",
      "parents": [
        "b433c3d4549ae74935b585115f076c6fb7bc48fe"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "peterz@infradead.org",
        "time": "Wed Jun 30 10:37:11 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jun 30 10:42:44 2010 +0200"
      },
      "message": "init: Fix comment\n\nApparently \"pid-1\" confuses people...\n\nRequested-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: torvalds@linux-foundation.org\nCc: randy.dunlap@oracle.com\nCc: Ilya Loginov \u003cisloginov@gmail.com\u003e\nLKML-Reference: \u003c1277887031.1868.82.camel@laptop\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "f384c954c9fe3d3c6fce5ae66b67f2ddd947d098",
      "tree": "a38541b8083a2304435e9a153d408bd7cd44116e",
      "parents": [
        "9a15a07fe2175dc25cd928a354b3839f562ac8cc",
        "5904b3b81d25166e5e39b9727645bb47937618e3"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Jun 28 22:33:13 2010 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Jun 28 22:33:24 2010 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into perf/core\n\nReason: Further changes conflict with upstream fixes\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "b433c3d4549ae74935b585115f076c6fb7bc48fe",
      "tree": "fa69951fe2dcdfed7482976d6d6fc0a0bd5d1d5d",
      "parents": [
        "0d98bb2656e9bd2dfda2d089db1fe1dbdab41504"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "peterz@infradead.org",
        "time": "Mon Jun 28 16:51:01 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jun 28 18:21:30 2010 +0200"
      },
      "message": "init, sched: Fix race between init and kthreadd\n\nIlya reported that on a very slow machine he could reliably\nreproduce a race between forking init and kthreadd. We first\nfork init so that it  obtains pid-1, however since the scheduler\nis already fully running at this point it can preempt and run\nthe init thread before we spawn and set kthreadd_task.\n\nThe init thread can then attempt spawning kthreads without\nkthreadd being present which results in an OOPS.\n\nReported-by: Ilya Loginov \u003cisloginov@gmail.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nLKML-Reference: \u003c1277736661.3561.110.camel@laptop\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "099a19d91ca429944743d51bef8fee240e94d8e3",
      "tree": "55bdc0f25ecbf38240782fb1d9a80d33c0100eb6",
      "parents": [
        "4ba6ce250e406b20bcd6f0f3aed6b3d80965e6c2"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Sun Jun 27 18:50:00 2010 +0200"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Sun Jun 27 18:50:00 2010 +0200"
      },
      "message": "percpu: allow limited allocation before slab is online\n\nThis patch updates percpu allocator such that it can serve limited\namount of allocation before slab comes online.  This is primarily to\nallow slab to depend on working percpu allocator.\n\nTwo parameters, PERCPU_DYNAMIC_EARLY_SIZE and SLOTS, determine how\nmuch memory space and allocation map slots are reserved.  If this\nreserved area is exhausted, WARN_ON_ONCE() will trigger and allocation\nwill fail till slab comes online.\n\nThe following changes are made to implement early alloc.\n\n* pcpu_mem_alloc() now checks slab_is_available()\n\n* Chunks are allocated using pcpu_mem_alloc()\n\n* Init paths make sure ai-\u003edyn_size is at least as large as\n  PERCPU_DYNAMIC_EARLY_SIZE.\n\n* Initial alloc maps are allocated in __initdata and copied to\n  kmalloc\u0027d areas once slab is online.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Christoph Lameter \u003ccl@linux-foundation.org\u003e\n"
    },
    {
      "commit": "75cbfb97a156dd3dabdc81295fb8144576332366",
      "tree": "e0eac949aec0e97f739109a354428ce6f41db707",
      "parents": [
        "3975d16760d4be7402d1067c548c30c427971331"
      ],
      "author": {
        "name": "Thomas Renninger",
        "email": "trenn@suse.de",
        "time": "Wed May 26 17:03:33 2010 +0200"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Jun 09 18:04:12 2010 -0400"
      },
      "message": "ACPI: Do not try to set up acpi processor stuff on cores exceeding maxcpus\u003d\n\nPatch is against latest Linus master branch and is expected to be\nsafe bug fix.\n\nYou get:\nACPI: HARDWARE addr space,NOT supported yet\nfor each ACPI defined CPU which status is active, but exceeds\nmaxcpus\u003d count.\n\nAs these \"not booted\" CPUs do not run an idle routine\nand echo X \u003e/proc/acpi/processor/*/throttling did not work\nI couldn\u0027t find a way to really access not onlined/booted\nmachines. Still this should get fixed and\n/proc/acpi/processor/X dirs of cores exceeding maxcpus\nshould not show up.\n\nI wonder whether this could get cleaned up by truncating possible cpu mask\nand nr_cpu_ids to setup_max_cpus early some day\n(and not exporting setup_max_cpus anymore then).\nBut this needs touching of a lot other places...\n\nSigned-off-by: Thomas Renninger \u003ctrenn@suse.de\u003e\nCC: travis@sgi.com\nCC: linux-acpi@vger.kernel.org\nCC: lenb@kernel.org\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "039ca4e74a1cf60bd7487324a564ecf5c981f254",
      "tree": "61c6fa8409961d2e22ef9d04ac54442734ebd41a",
      "parents": [
        "30dbb20e68e6f7df974b77d2350ebad5eb6f6c9e"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Wed May 26 17:22:17 2010 +0800"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Wed Jun 09 17:31:22 2010 +0200"
      },
      "message": "tracing: Remove kmemtrace ftrace plugin\n\nWe have been resisting new ftrace plugins and removing existing\nones, and kmemtrace has been superseded by kmem trace events\nand perf-kmem, so we remove it.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nAcked-by: Eduard - Gabriel Munteanu \u003ceduard.munteanu@linux360.ro\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\n[ remove kmemtrace from the makefile, handle slob too ]\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "30dbb20e68e6f7df974b77d2350ebad5eb6f6c9e",
      "tree": "b28f8232756e0de57ded858d6584724317b405ef",
      "parents": [
        "b0f82b81fe6bbcf78d478071f33e44554726bc81"
      ],
      "author": {
        "name": "Américo Wang",
        "email": "xiyou.wangcong@gmail.com",
        "time": "Wed May 26 18:57:53 2010 +0800"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue Jun 08 23:31:28 2010 +0200"
      },
      "message": "tracing: Remove boot tracer\n\nThe boot tracer is useless. It simply logs the initcalls\nbut in fact these initcalls are also logged through printk\nwhile using the initcall_debug kernel parameter.\n\nNobody seem to be using it so far. Then just remove it.\n\nSigned-off-by: WANG Cong \u003cxiyou.wangcong@gmail.com\u003e\nCc: Chase Douglas \u003cchase.douglas@canonical.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c20100526105753.GA5677@cr0.nay.redhat.com\u003e\n[ remove the hooks in main.c, and the headers ]\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "1f522509c77a5dea8dc384b735314f03908a6415",
      "tree": "4b848527b90877a8a64c46e8e2d76723405c319d",
      "parents": [
        "319774e25fa4b7641bdc3b0a464dd84e62103347"
      ],
      "author": {
        "name": "Haicheng Li",
        "email": "haicheng.li@linux.intel.com",
        "time": "Mon May 24 14:32:51 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 25 08:07:01 2010 -0700"
      },
      "message": "mem-hotplug: avoid multiple zones sharing same boot strapping boot_pageset\n\nFor each new populated zone of hotadded node, need to update its pagesets\nwith dynamically allocated per_cpu_pageset struct for all possible CPUs:\n\n    1) Detach zone-\u003epageset from the shared boot_pageset\n       at end of __build_all_zonelists().\n\n    2) Use mutex to protect zone-\u003epageset when it\u0027s still\n       shared in onlined_pages()\n\nOtherwises, multiple zones of different nodes would share same boot strapping\nboot_pageset for same CPU, which will finally cause below kernel panic:\n\n  ------------[ cut here ]------------\n  kernel BUG at mm/page_alloc.c:1239!\n  invalid opcode: 0000 [#1] SMP\n  ...\n  Call Trace:\n   [\u003cffffffff811300c1\u003e] __alloc_pages_nodemask+0x131/0x7b0\n   [\u003cffffffff81162e67\u003e] alloc_pages_current+0x87/0xd0\n   [\u003cffffffff81128407\u003e] __page_cache_alloc+0x67/0x70\n   [\u003cffffffff811325f0\u003e] __do_page_cache_readahead+0x120/0x260\n   [\u003cffffffff81132751\u003e] ra_submit+0x21/0x30\n   [\u003cffffffff811329c6\u003e] ondemand_readahead+0x166/0x2c0\n   [\u003cffffffff81132ba0\u003e] page_cache_async_readahead+0x80/0xa0\n   [\u003cffffffff8112a0e4\u003e] generic_file_aio_read+0x364/0x670\n   [\u003cffffffff81266cfa\u003e] nfs_file_read+0xca/0x130\n   [\u003cffffffff8117b20a\u003e] do_sync_read+0xfa/0x140\n   [\u003cffffffff8117bf75\u003e] vfs_read+0xb5/0x1a0\n   [\u003cffffffff8117c151\u003e] sys_read+0x51/0x80\n   [\u003cffffffff8103c032\u003e] system_call_fastpath+0x16/0x1b\n  RIP  [\u003cffffffff8112ff13\u003e] get_page_from_freelist+0x883/0x900\n   RSP \u003cffff88000d1e78a8\u003e\n  ---[ end trace 4bda28328b9990db ]\n\n[akpm@linux-foundation.org: merge fix]\nSigned-off-by: Haicheng Li \u003chaicheng.li@linux.intel.com\u003e\nSigned-off-by: Wu Fengguang \u003cfengguang.wu@intel.com\u003e\nReviewed-by: Andi Kleen \u003candi.kleen@intel.com\u003e\nReviewed-by: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: Mel Gorman \u003cmel@csn.ul.ie\u003e\nCc: 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": "0b4b3827db386ec6034a5aba1261025b039440c2",
      "tree": "a3469de6930fe3e850c8e4c49c26a2a3b53612dd",
      "parents": [
        "29c843912a0baa7fa63033fe28e1ca7e796686a5"
      ],
      "author": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Thu May 20 21:04:29 2010 -0500"
      },
      "committer": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Thu May 20 21:04:29 2010 -0500"
      },
      "message": "x86, kgdb, init: Add early and late debug states\n\nThe kernel debugger can operate well before mm_init(), but the x86\nhardware breakpoint code which uses the perf api requires that the\nkernel allocators are initialized.\n\nThis means the kernel debug core needs to provide an optional arch\nspecific call back to allow the initialization functions to run after\nthe kernel has been further initialized.\n\nThe kdb shell already had a similar restriction with an early\ninitialization and late initialization.  The kdb_init() was moved into\nthe debug core\u0027s version of the late init which is called\ndbg_late_init();\n\nCC: kgdb-bugreport@lists.sourceforge.net\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\n"
    },
    {
      "commit": "67fc4e0cb931d6b4ccf21248e4199b154478ecea",
      "tree": "4cf49d00bc9ac03c3c77d91fadd13fcabc75e0c9",
      "parents": [
        "5d5314d6795f3c1c0f415348ff8c51f7de042b77"
      ],
      "author": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Thu May 20 21:04:21 2010 -0500"
      },
      "committer": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Thu May 20 21:04:21 2010 -0500"
      },
      "message": "kdb: core for kgdb back end (2 of 2)\n\nThis patch contains the hooks and instrumentation into kernel which\nlive outside the kernel/debug directory, which the kdb core\nwill call to run commands like lsmod, dmesg, bt etc...\n\nCC: linux-arch@vger.kernel.org\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\nSigned-off-by: Martin Hicks \u003cmort@sgi.com\u003e\n"
    },
    {
      "commit": "5a0e3ad6af8660be21ca98a971cd00f331318c05",
      "tree": "5bfb7be11a03176a87296a43ac6647975c00a1d1",
      "parents": [
        "ed391f4ebf8f701d3566423ce8f17e614cde9806"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Mar 24 17:04:11 2010 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Mar 30 22:02:32 2010 +0900"
      },
      "message": "include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h\n\npercpu.h is included by sched.h and module.h and thus ends up being\nincluded when building most .c files.  percpu.h includes slab.h which\nin turn includes gfp.h making everything defined by the two files\nuniversally available and complicating inclusion dependencies.\n\npercpu.h -\u003e slab.h dependency is about to be removed.  Prepare for\nthis change by updating users of gfp and slab facilities include those\nheaders directly instead of assuming availability.  As this conversion\nneeds to touch large number of source files, the following script is\nused as the basis of conversion.\n\n  http://userweb.kernel.org/~tj/misc/slabh-sweep.py\n\nThe script does the followings.\n\n* Scan files for gfp and slab usages and update includes such that\n  only the necessary includes are there.  ie. if only gfp is used,\n  gfp.h, if slab is used, slab.h.\n\n* When the script inserts a new include, it looks at the include\n  blocks and try to put the new include such that its order conforms\n  to its surrounding.  It\u0027s put in the include block which contains\n  core kernel includes, in the same order that the rest are ordered -\n  alphabetical, Christmas tree, rev-Xmas-tree or at the end if there\n  doesn\u0027t seem to be any matching order.\n\n* If the script can\u0027t find a place to put a new include (mostly\n  because the file doesn\u0027t have fitting include block), it prints out\n  an error message indicating which .h file needs to be added to the\n  file.\n\nThe conversion was done in the following steps.\n\n1. The initial automatic conversion of all .c files updated slightly\n   over 4000 files, deleting around 700 includes and adding ~480 gfp.h\n   and ~3000 slab.h inclusions.  The script emitted errors for ~400\n   files.\n\n2. Each error was manually checked.  Some didn\u0027t need the inclusion,\n   some needed manual addition while adding it to implementation .h or\n   embedding .c file was more appropriate for others.  This step added\n   inclusions to around 150 files.\n\n3. The script was run again and the output was compared to the edits\n   from #2 to make sure no file was left behind.\n\n4. Several build tests were done and a couple of problems were fixed.\n   e.g. lib/decompress_*.c used malloc/free() wrappers around slab\n   APIs requiring slab.h to be added manually.\n\n5. The script was run on all .h files but without automatically\n   editing them as sprinkling gfp.h and slab.h inclusions around .h\n   files could easily lead to inclusion dependency hell.  Most gfp.h\n   inclusion directives were ignored as stuff from gfp.h was usually\n   wildly available and often used in preprocessor macros.  Each\n   slab.h inclusion directive was examined and added manually as\n   necessary.\n\n6. percpu.h was updated not to include slab.h.\n\n7. Build test were done on the following configurations and failures\n   were fixed.  CONFIG_GCOV_KERNEL was turned off for all tests (as my\n   distributed build env didn\u0027t work with gcov compiles) and a few\n   more options had to be turned off depending on archs to make things\n   build (like ipr on powerpc/64 which failed due to missing writeq).\n\n   * x86 and x86_64 UP and SMP allmodconfig and a custom test config.\n   * powerpc and powerpc64 SMP allmodconfig\n   * sparc and sparc64 SMP allmodconfig\n   * ia64 SMP allmodconfig\n   * s390 SMP allmodconfig\n   * alpha SMP allmodconfig\n   * um on x86_64 SMP allmodconfig\n\n8. percpu.h modifications were reverted so that it could be applied as\n   a separate patch and serve as bisection point.\n\nGiven the fact that I had only a couple of failures from tests on step\n6, I\u0027m fairly confident about the coverage of this conversion patch.\nIf there is a breakage, it\u0027s likely to be something in one of the arch\nheaders which should be easily discoverable easily on most builds of\nthe specific arch.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nGuess-its-ok-by: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: Lee Schermerhorn \u003cLee.Schermerhorn@hp.com\u003e\n"
    },
    {
      "commit": "5ab116c9349ef52d6fbd2e2917a53f13194b048e",
      "tree": "636a6cf02d5ca47c6da5d4935b07ddf08666a09c",
      "parents": [
        "5574169613b40b85d6f4c67208fa4846b897a0a1"
      ],
      "author": {
        "name": "Miao Xie",
        "email": "miaox@cn.fujitsu.com",
        "time": "Tue Mar 23 13:35:34 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 24 16:31:21 2010 -0700"
      },
      "message": "cpuset: fix the problem that cpuset_mem_spread_node() returns an offline node\n\ncpuset_mem_spread_node() returns an offline node, and causes an oops.\n\nThis patch fixes it by initializing task-\u003emems_allowed to\nnode_states[N_HIGH_MEMORY], and updating task-\u003emems_allowed when doing\nmemory hotplug.\n\nSigned-off-by: Miao Xie \u003cmiaox@cn.fujitsu.com\u003e\nAcked-by: David Rientjes \u003crientjes@google.com\u003e\nReported-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nTested-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Paul Menage \u003cmenage@google.com\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7463e633c5f94792dcff1afefb0d2961318a9d09",
      "tree": "db2ee59033f50dfe2b3ebe48c08cefef86720bc8",
      "parents": [
        "cfd8d6c0ed89ba387609419e3d8d4c6b92a5d446"
      ],
      "author": {
        "name": "H Hartley Sweeten",
        "email": "hartleys@visionengravers.com",
        "time": "Fri Mar 05 13:42:46 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Mar 06 11:26:32 2010 -0800"
      },
      "message": "init/main.c: make setup_max_cpus static for !SMP\n\nThe only in tree external users of the symbol setup_max_cpus are in\narch/x86/.  The files ./kernel/alternative.c, ./kernel/visws_quirks.c, and\n./mm/kmemcheck/kmemcheck.c are all guarded by CONFIG_SMP being defined.\nFor this case the symbol is an unsigned int and declared as an extern in\ninclude/linux/smp.h.\n\nWhen CONFIG_SMP is not defined the symbol setup_max_cpus is\na constant value that is only used in init/main.c.  Make the symbol\nstatic for this case.\n\nSigned-off-by: H Hartley Sweeten \u003chsweeten@visionengravers.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9a85b8d6049cbb0e7961df2069322fbc4192026a",
      "tree": "e9e397a35ea33f198da51027db028bf91a090b4d",
      "parents": [
        "87d5e0236d9d688fb575e9e12232764ac617617c"
      ],
      "author": {
        "name": "Andreas Mohr",
        "email": "andi@lisas.de",
        "time": "Fri Mar 05 13:42:39 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Mar 06 11:26:29 2010 -0800"
      },
      "message": "init/main.c: improve usability in case of init binary failure\n\n- new Documentation/init.txt file describing various forms of failure\n  trying to load the init binary after kernel bootup\n\n- extend the init/main.c init failure message to direct to\n  Documentation/init.txt\n\nSigned-off-by: Andreas Mohr \u003candi@lisas.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "452aa6999e6703ffbddd7f6ea124d3968915f3e3",
      "tree": "48e375fdb60920675f68b444b462903ad8bb6940",
      "parents": [
        "ad2bd7e0e9647cd48593a6b3a2be07dc2c2d28ed"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Mar 05 13:42:13 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Mar 06 11:26:26 2010 -0800"
      },
      "message": "mm/pm: force GFP_NOIO during suspend/hibernation and resume\n\nThere are quite a few GFP_KERNEL memory allocations made during\nsuspend/hibernation and resume that may cause the system to hang, because\nthe I/O operations they depend on cannot be completed due to the\nunderlying devices being suspended.\n\nAvoid this problem by clearing the __GFP_IO and __GFP_FS bits in\ngfp_allowed_mask before suspend/hibernation and restoring the original\nvalues of these bits in gfp_allowed_mask durig the subsequent resume.\n\n[akpm@linux-foundation.org: fix CONFIG_PM\u003dn linkage]\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nReported-by: Maxim Levitsky \u003cmaximlevitsky@gmail.com\u003e\nCc: Sebastian Ott \u003csebott@linux.vnet.ibm.com\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@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": "0f2cc4ecd81dc1917a041dc93db0ada28f8356fa",
      "tree": "f128b50f48f50f0cda6d2b20b53e9ad6e2dfded3",
      "parents": [
        "1fae4cfb97302289bb5df6a8195eb28385d0b002",
        "9643f5d94aadd47a5fa9754fb60f2c957de05903"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 04 08:15:33 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 04 08:15:33 2010 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6: (52 commits)\n  init: Open /dev/console from rootfs\n  mqueue: fix typo \"failues\" -\u003e \"failures\"\n  mqueue: only set error codes if they are really necessary\n  mqueue: simplify do_open() error handling\n  mqueue: apply mathematics distributivity on mq_bytes calculation\n  mqueue: remove unneeded info-\u003emessages initialization\n  mqueue: fix mq_open() file descriptor leak on user-space processes\n  fix race in d_splice_alias()\n  set S_DEAD on unlink() and non-directory rename() victims\n  vfs: add NOFOLLOW flag to umount(2)\n  get rid of -\u003emnt_parent in tomoyo/realpath\n  hppfs can use existing proc_mnt, no need for do_kern_mount() in there\n  Mirror MS_KERNMOUNT in -\u003emnt_flags\n  get rid of useless vfsmount_lock use in put_mnt_ns()\n  Take vfsmount_lock to fs/internal.h\n  get rid of insanity with namespace roots in tomoyo\n  take check for new events in namespace (guts of mounts_poll()) to namespace.c\n  Don\u0027t mess with generic_permission() under -\u003ed_lock in hpfs\n  sanitize const/signedness for udf\n  nilfs: sanitize const/signedness in dealing with -\u003ed_name.name\n  ...\n\nFix up fairly trivial (famous last words...) conflicts in\ndrivers/infiniband/core/uverbs_main.c and security/tomoyo/realpath.c\n"
    },
    {
      "commit": "2bd3a997befc226ab4b504f05c5cbba305f3e0e6",
      "tree": "b510653236a8db16d6eaaf5b8b8c47000ee1b754",
      "parents": [
        "2329e392accdb1b277927e8d9cbf568ba3f3856d"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Tue Mar 02 23:53:19 2010 -0800"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Mar 03 14:56:07 2010 -0500"
      },
      "message": "init: Open /dev/console from rootfs\n\nTo avoid potential problems with an empty /dev open /dev/console\nfrom rootfs instead of waiting to mount our root filesystem and\nmounting it there.   This effectively guarantees that there will\nbe a device node, and it won\u0027t be on a filesystem that we will\never unmount, so there are no issues with leaving /dev/console\nopen and pinning the filesystem.\n\nThis is actually more effective than automatically mounting\ndevtmpfs on /dev because it removes removes the occasionally\nproblematic assumption that /dev/console exists from the boot\ncode.\n\nWith this patch I was able to throw busybox on my /boot partition\n(which has no /dev directory) and boot into userspace without\nproblems.\n\nThe only possible negative consequence I can think of is that\nsomeone out there deliberately used did not use a character device\nthat is major 5 minor 2 for /dev/console.  Does anyone know of a\nsituation in which that could make sense?\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "fb7b096d949fa852442ed9d8f982bce526ccfe7e",
      "tree": "883e7e43331d9962bcc6050a3bf88615a8c61063",
      "parents": [
        "a626b46e17d0762d664ce471d40bc506b6e721ab",
        "fad539956c9e69749a03f7817d22d1bab87657bf"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 03 08:15:37 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 03 08:15:37 2010 -0800"
      },
      "message": "Merge branch \u0027x86-apic-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027x86-apic-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (25 commits)\n  x86: Fix out of order of gsi\n  x86: apic: Fix mismerge, add arch_probe_nr_irqs() again\n  x86, irq: Keep chip_data in create_irq_nr and destroy_irq\n  xen: Remove unnecessary arch specific xen irq functions.\n  smp: Use nr_cpus\u003d to set nr_cpu_ids early\n  x86, irq: Remove arch_probe_nr_irqs\n  sparseirq: Use radix_tree instead of ptrs array\n  sparseirq: Change irq_desc_ptrs to static\n  init: Move radix_tree_init() early\n  irq: Remove unnecessary bootmem code\n  x86: Add iMac9,1 to pci_reboot_dmi_table\n  x86: Convert i8259_lock to raw_spinlock\n  x86: Convert nmi_lock to raw_spinlock\n  x86: Convert ioapic_lock and vector_lock to raw_spinlock\n  x86: Avoid race condition in pci_enable_msix()\n  x86: Fix SCI on IOAPIC !\u003d 0\n  x86, ia32_aout: do not kill argument mapping\n  x86, irq: Move __setup_vector_irq() before the first irq enable in cpu online path\n  x86, irq: Update the vector domain for legacy irqs handled by io-apic\n  x86, irq: Don\u0027t block IRQ0_VECTOR..IRQ15_VECTOR\u0027s on all cpu\u0027s\n  ...\n"
    }
  ],
  "next": "d11c563dd20ff35da5652c3e1c989d9e10e1d6d0"
}
