)]}'
{
  "log": [
    {
      "commit": "efee984c27b67e3ebef40410f35671997441b57c",
      "tree": "53457dba2338f853d34e1754e7f7f960e4a29482",
      "parents": [
        "17440f171e28e86cc21a4c8fd1fa3c561503f80e"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Apr 28 02:04:15 2012 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Jun 01 12:58:52 2012 -0400"
      },
      "message": "new helper: signal_delivered()\n\nDoes block_sigmask() + tracehook_signal_handler();  called when\nsigframe has been successfully built.  All architectures converted\nto it; block_sigmask() itself is gone now (merged into this one).\n\nI\u0027m still not too happy with the signature, but that\u0027s a separate\nstory (IMO we need a structure that would contain signal number +\nsiginfo + k_sigaction, so that get_signal_to_deliver() would fill one,\nsignal_delivered(), handle_signal() and probably setup...frame() -\ntake one).\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "77097ae503b170120ab66dd1d547f8577193f91f",
      "tree": "bee5b2e8d91b9ec8ab74c58cbec1796c7bacc2e5",
      "parents": [
        "edd63a2763bdae0daa4f0a4d4c5d61d1154352a5"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Apr 27 13:58:59 2012 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Jun 01 12:58:51 2012 -0400"
      },
      "message": "most of set_current_blocked() callers want SIGKILL/SIGSTOP removed from set\n\nOnly 3 out of 63 do not.  Renamed the current variant to __set_current_blocked(),\nadded set_current_blocked() that will exclude unblockable signals, switched\nopen-coded instances to it.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "a610d6e672d6d3723e8da257ad4a8a288a8f2f89",
      "tree": "2fac6ce7f72756771f4f87583205cc402589dcad",
      "parents": [
        "5754f412a3f107cbcd93ee125bef296f2a07539b"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon May 21 23:42:15 2012 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Jun 01 12:58:49 2012 -0400"
      },
      "message": "pull clearing RESTORE_SIGMASK into block_sigmask()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "b7f9a11a6cf1ea9ee6be3eb2b90d91327a09ad14",
      "tree": "7d5a5f469aea8ac2b3e1ab41e05a6abafcb2b694",
      "parents": [
        "51a7b448d4134e3e8eec633435e3e8faee14a828"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed May 02 09:59:21 2012 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Jun 01 12:58:48 2012 -0400"
      },
      "message": "new helper: sigmask_to_save()\n\nreplace boilerplate \"should we use -\u003esaved_sigmask or -\u003eblocked?\"\nwith calls of obvious inlined helper...\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "51a7b448d4134e3e8eec633435e3e8faee14a828",
      "tree": "8fc58560ffee1c944ec5e198029d5c2e6f7c0bd3",
      "parents": [
        "4ebefe3ec729003443daf153ed6fad1739271283"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon May 21 23:33:55 2012 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Jun 01 12:58:47 2012 -0400"
      },
      "message": "new helper: restore_saved_sigmask()\n\nfirst fruits of ..._restore_sigmask() helpers: now we can take\nboilerplate \"signal didn\u0027t have a handler, clear RESTORE_SIGMASK\nand restore the blocked mask from -\u003esaved_mask\" into a common\nhelper.  Open-coded instances switched...\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "fb21affa49204acd409328415b49bfe90136653c",
      "tree": "3535dbe0c0aad049a38cadfcffe78409397a1b32",
      "parents": [
        "a00b6151a2ae4c52576c35d3998e144a993d50b8",
        "f23ca335462e3c84f13270b9e65f83936068ec2c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 31 18:47:30 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 31 18:47:30 2012 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/signal\n\nPull second pile of signal handling patches from Al Viro:\n \"This one is just task_work_add() series + remaining prereqs for it.\n\n  There probably will be another pull request from that tree this\n  cycle - at least for helpers, to get them out of the way for per-arch\n  fixes remaining in the tree.\"\n\nFix trivial conflict in kernel/irq/manage.c: the merge of Andrew\u0027s pile\nhad brought in commit 97fd75b7b8e0 (\"kernel/irq/manage.c: use the\npr_foo() infrastructure to prefix printks\") which changed one of the\npr_err() calls that this merge moves around.\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/signal:\n  keys: kill task_struct-\u003ereplacement_session_keyring\n  keys: kill the dummy key_replace_session_keyring()\n  keys: change keyctl_session_to_parent() to use task_work_add()\n  genirq: reimplement exit_irq_thread() hook via task_work_add()\n  task_work_add: generic process-context callbacks\n  avr32: missed _TIF_NOTIFY_RESUME on one of do_notify_resume callers\n  parisc: need to check NOTIFY_RESUME when exiting from syscall\n  move key_repace_session_keyring() into tracehook_notify_resume()\n  TIF_NOTIFY_RESUME is defined on all targets now\n"
    },
    {
      "commit": "2c922c51e6924298f8271d75732964f1ffdecaf2",
      "tree": "7ce86f8702cdf9ad93ad37064654fa21a43f411b",
      "parents": [
        "137d1a26c842a384c98dd2a6a605014fddf5c777"
      ],
      "author": {
        "name": "Anton Vorontsov",
        "email": "anton.vorontsov@linaro.org",
        "time": "Thu May 31 16:26:26 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 31 17:49:30 2012 -0700"
      },
      "message": "um: properly check all process\u0027 threads for a live mm\n\nkill_off_processes() might miss a valid process, this is because checking\nfor process-\u003emm is not enough.  Process\u0027 main thread may exit or detach\nits mm via use_mm(), but other threads may still have a valid mm.\n\nTo catch this we use find_lock_task_mm(), which walks up all threads and\nreturns an appropriate task (with task lock held).\n\nSuggested-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nSigned-off-by: Anton Vorontsov \u003canton.vorontsov@linaro.org\u003e\nCc: Richard Weinberger \u003crichard@nod.at\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "137d1a26c842a384c98dd2a6a605014fddf5c777",
      "tree": "615db05121d00f246e1aa5b461f173c54c5391dd",
      "parents": [
        "9bd0a077122a6b15069aab7a59c8f50f736fa1dd"
      ],
      "author": {
        "name": "Anton Vorontsov",
        "email": "anton.vorontsov@linaro.org",
        "time": "Thu May 31 16:26:25 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 31 17:49:30 2012 -0700"
      },
      "message": "um: fix possible race on task-\u003emm\n\nChecking for task-\u003emm is dangerous as -\u003emm might disappear (exit_mm()\nassigns NULL under task_lock(), so tasklist lock is not enough).\n\nWe can\u0027t use get_task_mm()/mmput() pair as mmput() might sleep, so let\u0027s\ntake the task lock while we care about its mm.\n\nNote that we should also use find_lock_task_mm() to check all process\u0027\nthreads for a valid mm, but for uml we\u0027ll do it in a separate patch.\n\nSigned-off-by: Anton Vorontsov \u003canton.vorontsov@linaro.org\u003e\nCc: Richard Weinberger \u003crichard@nod.at\u003e\nCc: Oleg Nesterov \u003coleg@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": "9bd0a077122a6b15069aab7a59c8f50f736fa1dd",
      "tree": "f76eefc0b3bdb46a01e394cecbf9ac42935bc4cc",
      "parents": [
        "af1be5a578a1ccc9961c55290f8c509a00a69036"
      ],
      "author": {
        "name": "Anton Vorontsov",
        "email": "anton.vorontsov@linaro.org",
        "time": "Thu May 31 16:26:25 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 31 17:49:30 2012 -0700"
      },
      "message": "um: should hold tasklist_lock while traversing processes\n\nTraversing the tasks requires holding tasklist_lock, otherwise it is\nunsafe.\n\np.s.  However, I\u0027m not sure that calling os_kill_ptraced_process() in the\natomic context is correct.  It seem to work, but please take a closer\nlook.\n\nSigned-off-by: Anton Vorontsov \u003canton.vorontsov@linaro.org\u003e\nCc: Richard Weinberger \u003crichard@nod.at\u003e\nCc: Oleg Nesterov \u003coleg@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": "1cefe28f95da307287a05a6a0c10213f01055e2a",
      "tree": "6810a5c8f413f67d359da6243ee75c60c704d16c",
      "parents": [
        "4f1c28d241d0882f25112d494885cd6084db225b"
      ],
      "author": {
        "name": "Kautuk Consul",
        "email": "consul.kautuk@gmail.com",
        "time": "Thu May 31 16:26:03 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 31 17:49:26 2012 -0700"
      },
      "message": "um/kernel/trap.c: port OOM changes to handle_page_fault()\n\nCommit d065bd810b6d (\"mm: retry page fault when blocking on disk\ntransfer\") and commit 37b23e0525d3 (\"x86,mm: make pagefault killable\")\nintroduced changes into the x86 pagefault handler for making the page\nfault handler retryable as well as killable.\n\nThese changes reduce the mmap_sem hold time, which is crucial during OOM\nkiller invocation.\n\nPort these changes to um.\n\nSigned-off-by: Kautuk Consul \u003cconsul.kautuk@gmail.com\u003e\nCc: Jeff Dike \u003cjdike@addtoit.com\u003e\nCc: Richard Weinberger \u003crichard@nod.at\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1347a2cebcb4cd6ca94eda0ebc8c5c6825bc4544",
      "tree": "495eb1b7071a0890c1fa58c12139ebd6305e0e82",
      "parents": [
        "90324cc1b11a211e37eabd8cb863e1a1561d6b1d",
        "f7fc237e330deaaea4ba6726b603d4058d1e6b38"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon May 28 10:32:28 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon May 28 10:32:28 2012 -0700"
      },
      "message": "Merge branch \u0027kbuild\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild\n\nPull kbuild updates from Michal Marek.\n\nFixed up nontrivial merge conflict in Makefile as per Stephen Rothwell\nand linux-next (and trivial arch/sparc/Makefile changes due to removed\nsparc32 logic).\n\n* \u0027kbuild\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild:\n  mips: Fix KBUILD_CPPFLAGS definition\n  kbuild: fix ia64 link\n  kbuild: document KBUILD_LDS, KBUILD_VMLINUX_{INIT,MAIN} and LDFLAGS_vmlinux\n  kbuild: link of vmlinux moved to a script\n  kbuild: refactor final link of sparc32\n  kbuild: drop unused KBUILD_VMLINUX_OBJS from top-level Makefile\n  kbuild: Makefile: remove unnecessary check for m68knommu ARCH\n"
    },
    {
      "commit": "07acfc2a9349a8ce45b236c2624dad452001966b",
      "tree": "c40f3eaac18a8320e65af220979223b5cd632b1b",
      "parents": [
        "b5f4035adfffbcc6b478de5b8c44b618b3124aff",
        "322728e55aa7834e2fab2786b76df183c4843a12"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 24 16:17:30 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 24 16:17:30 2012 -0700"
      },
      "message": "Merge branch \u0027next\u0027 of git://git.kernel.org/pub/scm/virt/kvm/kvm\n\nPull KVM changes from Avi Kivity:\n \"Changes include additional instruction emulation, page-crossing MMIO,\n  faster dirty logging, preventing the watchdog from killing a stopped\n  guest, module autoload, a new MSI ABI, and some minor optimizations\n  and fixes.  Outside x86 we have a small s390 and a very large ppc\n  update.\n\n  Regarding the new (for kvm) rebaseless workflow, some of the patches\n  that were merged before we switch trees had to be rebased, while\n  others are true pulls.  In either case the signoffs should be correct\n  now.\"\n\nFix up trivial conflicts in Documentation/feature-removal-schedule.txt\narch/powerpc/kvm/book3s_segment.S and arch/x86/include/asm/kvm_para.h.\n\nI suspect the kvm_para.h resolution ends up doing the \"do I have cpuid\"\ncheck effectively twice (it was done differently in two different\ncommits), but better safe than sorry ;)\n\n* \u0027next\u0027 of git://git.kernel.org/pub/scm/virt/kvm/kvm: (125 commits)\n  KVM: make asm-generic/kvm_para.h have an ifdef __KERNEL__ block\n  KVM: s390: onereg for timer related registers\n  KVM: s390: epoch difference and TOD programmable field\n  KVM: s390: KVM_GET/SET_ONEREG for s390\n  KVM: s390: add capability indicating COW support\n  KVM: Fix mmu_reload() clash with nested vmx event injection\n  KVM: MMU: Don\u0027t use RCU for lockless shadow walking\n  KVM: VMX: Optimize %ds, %es reload\n  KVM: VMX: Fix %ds/%es clobber\n  KVM: x86 emulator: convert bsf/bsr instructions to emulate_2op_SrcV_nobyte()\n  KVM: VMX: unlike vmcs on fail path\n  KVM: PPC: Emulator: clean up SPR reads and writes\n  KVM: PPC: Emulator: clean up instruction parsing\n  kvm/powerpc: Add new ioctl to retreive server MMU infos\n  kvm/book3s: Make kernel emulated H_PUT_TCE available for \"PR\" KVM\n  KVM: PPC: bookehv: Fix r8/r13 storing in level exception handler\n  KVM: PPC: Book3S: Enable IRQs during exit handling\n  KVM: PPC: Fix PR KVM on POWER7 bare metal\n  KVM: PPC: Fix stbux emulation\n  KVM: PPC: bookehv: Use lwz/stw instead of PPC_LL/PPC_STL for 32-bit fields\n  ...\n"
    },
    {
      "commit": "c7523a7c88db637d66841018532cb4b3ab6ab0a8",
      "tree": "cec08263a493831d43e17d4daa633e2a6b09480e",
      "parents": [
        "2f78d8e249973f1eeb88315e6444e616c60177ae",
        "b80fe1015be4e3c926d8eb4cc6a340fdd22a43e1"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 24 13:29:46 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 24 13:29:46 2012 -0700"
      },
      "message": "Merge branch \u0027timers-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull timer updates from Thomas Gleixner.\n\nVarious trivial conflict fixups in arch Kconfig due to addition of\nunrelated entries nearby.  And one slightly more subtle one for sparc32\n(new user of GENERIC_CLOCKEVENTS), fixed up as per Thomas.\n\n* \u0027timers-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (31 commits)\n  timekeeping: Fix a few minor newline issues.\n  time: remove obsolete declaration\n  ntp: Fix a stale comment and a few stray newlines.\n  ntp: Correct TAI offset during leap second\n  timers: Fixup the Kconfig consolidation fallout\n  x86: Use generic time config\n  unicore32: Use generic time config\n  um: Use generic time config\n  tile: Use generic time config\n  sparc: Use: generic time config\n  sh: Use generic time config\n  score: Use generic time config\n  s390: Use generic time config\n  openrisc: Use generic time config\n  powerpc: Use generic time config\n  mn10300: Use generic time config\n  mips: Use generic time config\n  microblaze: Use generic time config\n  m68k: Use generic time config\n  m32r: Use generic time config\n  ...\n"
    },
    {
      "commit": "a42c6ded827dbd396d2efde7530620be029a72d1",
      "tree": "ea3129404f32515a04497990a050b2cf73aa1d5d",
      "parents": [
        "1227dd773d8d4e3983b4b751f9ffa0f41402fb7c"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed May 23 14:44:37 2012 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed May 23 22:09:20 2012 -0400"
      },
      "message": "move key_repace_session_keyring() into tracehook_notify_resume()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "f9369910a6225b8d4892c3f20ae740a711cd5ace",
      "tree": "8650ff79d7607bceb35509c028400ecf1c317de0",
      "parents": [
        "05f144a0d5c2207a0349348127f996e104ad7404",
        "415d04d08fec74b226c92c1fb54ad117c9c6bac4"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 23 18:11:45 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 23 18:11:45 2012 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/signal\n\nPull first series of signal handling cleanups from Al Viro:\n \"This is just the first part of the queue (about a half of it);\n  assorted fixes all over the place in signal handling.\n\n  This one ends with all sigsuspend() implementations switched to\n  generic one (-\u003esaved_sigmask-based).\n\n  With this, a bunch of assorted old buglets are fixed and most of the\n  missing bits of NOTIFY_RESUME hookup are in place.  Two more fixes sit\n  in arm and um trees respectively, and there\u0027s a couple of broken ones\n  that need obvious fixes - parisc and avr32 check TIF_NOTIFY_RESUME\n  only on one of two codepaths; fixes for that will happen in the next\n  series\"\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/signal: (55 commits)\n  unicore32: if there\u0027s no handler we need to restore sigmask, syscall or no syscall\n  xtensa: add handling of TIF_NOTIFY_RESUME\n  microblaze: drop \u0027oldset\u0027 argument of do_notify_resume()\n  microblaze: handle TIF_NOTIFY_RESUME\n  score: add handling of NOTIFY_RESUME to do_notify_resume()\n  m68k: add TIF_NOTIFY_RESUME and handle it.\n  sparc: kill ancient comment in sparc_sigaction()\n  h8300: missing checks of __get_user()/__put_user() return values\n  frv: missing checks of __get_user()/__put_user() return values\n  cris: missing checks of __get_user()/__put_user() return values\n  powerpc: missing checks of __get_user()/__put_user() return values\n  sh: missing checks of __get_user()/__put_user() return values\n  sparc: missing checks of __get_user()/__put_user() return values\n  avr32: struct old_sigaction is never used\n  m32r: struct old_sigaction is never used\n  xtensa: xtensa_sigaction doesn\u0027t exist\n  alpha: tidy signal delivery up\n  score: don\u0027t open-code force_sigsegv()\n  cris: don\u0027t open-code force_sigsegv()\n  blackfin: don\u0027t open-code force_sigsegv()\n  ...\n"
    },
    {
      "commit": "ec0d7f18ab7b5097d7c0c8f3d909ca1031b9d5cd",
      "tree": "7d62c924592145f819ecaa5d60460a05a10dfdbd",
      "parents": [
        "269af9a1a08d368b46d72e74126564d04c354f7e",
        "1dcc8d7ba235a316a056f993e88f0d18b92c60d9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 23 10:59:07 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 23 10:59:07 2012 -0700"
      },
      "message": "Merge branch \u0027x86-fpu-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull fpu state cleanups from Ingo Molnar:\n \"This tree streamlines further aspects of FPU handling by eliminating\n  the prepare_to_copy() complication and moving that logic to\n  arch_dup_task_struct().\n\n  It also fixes the FPU dumps in threaded core dumps, removes and old\n  (and now invalid) assumption plus micro-optimizes the exit path by\n  avoiding an FPU save for dead tasks.\"\n\nFixed up trivial add-add conflict in arch/sh/kernel/process.c that came\nin because we now do the FPU handling in arch_dup_task_struct() rather\nthan the legacy (and now gone) prepare_to_copy().\n\n* \u0027x86-fpu-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  x86, fpu: drop the fpu state during thread exit\n  x86, xsave: remove thread_has_fpu() bug check in __sanitize_i387_state()\n  coredump: ensure the fpu state is flushed for proper multi-threaded core dump\n  fork: move the real prepare_to_copy() users to arch_dup_task_struct()\n"
    },
    {
      "commit": "3a8580f82024e30b31c662aa49346adf7a3bcdb5",
      "tree": "7769a01f152b4081f4e4225e499082fd5c67b184",
      "parents": [
        "1d767cae4dbd4116fc3b2cc3251a20760f98339f",
        "2ccf62b36097aa88e0ea152d6ef0c0ca2d3884e6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 23 09:01:41 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 23 09:01:41 2012 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rw/uml\n\nPull UML updates from Richard Weinberger:\n \"Most changes are bug fixes and cleanups\"\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rw/uml:\n  um: missing checks of __put_user()/__get_user() return values\n  um: stub_rt_sigsuspend isn\u0027t needed these days anymore\n  um/x86: merge (and trim) 32- and 64-bit variants of ptrace.h\n  irq: Remove irq_chip-\u003erelease()\n  um: Remove CONFIG_IRQ_RELEASE_METHOD\n  um: Remove usage of irq_chip-\u003erelease()\n  um: Implement um_free_irq()\n  um: Fix __swp_type()\n  um: Implement a custom pte_same() function\n  um: Add BUG() to do_ops()\u0027s error path\n  um: Remove unused variables\n  um: bury unused _TIF_RESTORE_SIGMASK\n  um: wrong sigmask saved in case of multiple sigframes\n  um: add TIF_NOTIFY_RESUME\n  um: -\u003erestart_block.fn needs to be reset on sigreturn\n"
    },
    {
      "commit": "68f3f16d9ad0f1e28ab3fd0001ab5798c41f15a3",
      "tree": "fd023109413f5eb28b364663fdf4bf2eabca47d4",
      "parents": [
        "bf67f3a5c456a18f2e8d062f7e88506ef2cd9837"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon May 21 21:42:32 2012 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon May 21 23:52:30 2012 -0400"
      },
      "message": "new helper: sigsuspend()\n\nguts of saved_sigmask-based sigsuspend/rt_sigsuspend.  Takes\nkernel sigset_t *.\n\nOpen-coded instances replaced with calling it.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "bf67f3a5c456a18f2e8d062f7e88506ef2cd9837",
      "tree": "2a2324b2572162059307db82f9238eeb25673a77",
      "parents": [
        "226da0dbc84ed97f448523e2a4cb91c27fa68ed9",
        "203dacbdca977bedaba61ad2fca75d934060a5d5"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon May 21 19:43:57 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon May 21 19:43:57 2012 -0700"
      },
      "message": "Merge branch \u0027smp-hotplug-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull smp hotplug cleanups from Thomas Gleixner:\n \"This series is merily a cleanup of code copied around in arch/* and\n  not changing any of the real cpu hotplug horrors yet.  I wish I\u0027d had\n  something more substantial for 3.5, but I underestimated the lurking\n  horror...\"\n\nFix up trivial conflicts in arch/{arm,sparc,x86}/Kconfig and\narch/sparc/include/asm/thread_info_32.h\n\n* \u0027smp-hotplug-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (79 commits)\n  um: Remove leftover declaration of alloc_task_struct_node()\n  task_allocator: Use config switches instead of magic defines\n  sparc: Use common threadinfo allocator\n  score: Use common threadinfo allocator\n  sh-use-common-threadinfo-allocator\n  mn10300: Use common threadinfo allocator\n  powerpc: Use common threadinfo allocator\n  mips: Use common threadinfo allocator\n  hexagon: Use common threadinfo allocator\n  m32r: Use common threadinfo allocator\n  frv: Use common threadinfo allocator\n  cris: Use common threadinfo allocator\n  x86: Use common threadinfo allocator\n  c6x: Use common threadinfo allocator\n  fork: Provide kmemcache based thread_info allocator\n  tile: Use common threadinfo allocator\n  fork: Provide weak arch_release_[task_struct|thread_info] functions\n  fork: Move thread info gfp flags to header\n  fork: Remove the weak insanity\n  sh: Remove cpu_idle_wait()\n  ...\n"
    },
    {
      "commit": "764e0da14fd7ac2d259d98d34ece0a87d32306c9",
      "tree": "3d1c3065ca2f140f065c15c0b9645703241c68e7",
      "parents": [
        "bdebaf80a02b854381fe212e0dac13c8c8edac57"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon May 21 23:16:18 2012 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon May 21 23:43:46 2012 +0200"
      },
      "message": "timers: Fixup the Kconfig consolidation fallout\n\nSigh, I missed to check which architecture Kconfig files actually\ninclude the core Kconfig file. There are a few which did not. So we\nbroke them.\n\nInstead of adding the includes to those, we are better off to move the\ninclude to init/Kconfig like we did already with irqs and others.\n\nThis does not change anything for the architectures using the old\nstyle periodic timer mode. It just solves the build wreckage there.\n\nFor those architectures which use the clock events infrastructure it\nmoves the include of the core Kconfig file to \"General setup\" which is\na way more logical place than having it at random locations specified\nby the architecture specific Kconfigs.\n\nReported-by: Ingo Molnar \u003cmingo@kernel.org\u003e\nCc: Anna-Maria Gleixner \u003canna-maria@glx-um.de\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "2ccf62b36097aa88e0ea152d6ef0c0ca2d3884e6",
      "tree": "bc93e28e0e72fa0cc8c20f64f9e1f3657ad5e479",
      "parents": [
        "875682648b89a3ebc06176d60dc280f810647839",
        "ffc51be82b17e1c515fdb2dd5b92605798216b30"
      ],
      "author": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Mon May 21 23:25:37 2012 +0200"
      },
      "committer": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Mon May 21 23:25:37 2012 +0200"
      },
      "message": "Merge branch \u0027for-um\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/signal into for-3.5\n"
    },
    {
      "commit": "243412be9cecfc7fddebb912a277b76119fd4ecd",
      "tree": "b74b7d87db67aed2a22acb7571a4349d3507f9b3",
      "parents": [
        "c6802f4370510fa8674674f11c5578ee057d1d63"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun May 20 00:05:58 2012 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon May 21 16:28:34 2012 -0400"
      },
      "message": "um/x86: merge (and trim) 32- and 64-bit variants of ptrace.h\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "985a94a96d294fe6d2c72d013de09b81b637ed58",
      "tree": "f93f1d3e69654a69dc74ad49f602ebdeefcff22d",
      "parents": [
        "8e514b2a811c25434ac5fec13c09c1b82cafb0c9"
      ],
      "author": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Tue Apr 17 22:37:15 2012 +0200"
      },
      "committer": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Mon May 21 21:09:37 2012 +0200"
      },
      "message": "um: Remove CONFIG_IRQ_RELEASE_METHOD\n\nUML does no longer need CONFIG_IRQ_RELEASE_METHOD.\n\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\nReviewed-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "8e514b2a811c25434ac5fec13c09c1b82cafb0c9",
      "tree": "6ff5fc4977d49f5abe133c672815710e7e5ae512",
      "parents": [
        "fa7a0449e0ea6588f64c06a045ea8728280f3457"
      ],
      "author": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Tue Apr 17 22:37:14 2012 +0200"
      },
      "committer": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Mon May 21 21:09:36 2012 +0200"
      },
      "message": "um: Remove usage of irq_chip-\u003erelease()\n\nUML does no longer need irq_chip-\u003erelease().\n\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\nReviewed-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "fa7a0449e0ea6588f64c06a045ea8728280f3457",
      "tree": "3a309dc94896e03d55707f07813bc1b325a4ee75",
      "parents": [
        "2b76ebaa728f8a3967c52aa189261c72fe56a6f1"
      ],
      "author": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Tue Apr 17 22:37:13 2012 +0200"
      },
      "committer": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Mon May 21 21:09:36 2012 +0200"
      },
      "message": "um: Implement um_free_irq()\n\nInstead of using chip-\u003erelease() we can achieve the same\nusing a simple wrapper for free_irq().\nWe have already um_request_irq(), so um_free_irq() is the perfect\ncounterpart.\n\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\nReviewed-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "2b76ebaa728f8a3967c52aa189261c72fe56a6f1",
      "tree": "ed106b9b9f1f0650792b602f9f47571406ee6ebd",
      "parents": [
        "f15b9000eb1d09bbaa4b0a6b2089d7e1f64e84b3"
      ],
      "author": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Sat Apr 14 17:46:01 2012 +0200"
      },
      "committer": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Mon May 21 21:09:35 2012 +0200"
      },
      "message": "um: Fix __swp_type()\n\nThe current __swp_type() function uses a too small bitshift.\nUsing more than one swap files causes bad pages because\nthe type bits clash with other page flags.\n\nCC: stable@kernel.org\nAnalyzed-by: Hugh Dickins \u003chughd@google.com\u003e\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\n"
    },
    {
      "commit": "f15b9000eb1d09bbaa4b0a6b2089d7e1f64e84b3",
      "tree": "328e59eb0b946a2f79b5d9e926fbc26821077502",
      "parents": [
        "62179d47c2b1495bedc942b424e933a4b0f2ed51"
      ],
      "author": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Sat Apr 14 17:29:30 2012 +0200"
      },
      "committer": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Mon May 21 21:09:34 2012 +0200"
      },
      "message": "um: Implement a custom pte_same() function\n\nUML uses the _PAGE_NEWPAGE flag to mark pages which are not jet\ninstalled on the host side using mmap().\npte_same() has to ignore this flag, otherwise unuse_pte_range()\nis unable to unuse the page because two identical\npage tables entries with different _PAGE_NEWPAGE flags would not\nmatch and swapoff() would never return.\n\nCC: stable@kernel.org\nAnalyzed-by: Hugh Dickins \u003chughd@google.com\u003e\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\n"
    },
    {
      "commit": "62179d47c2b1495bedc942b424e933a4b0f2ed51",
      "tree": "30ffb5b949b4728b29a4b95e0d31d007f066b402",
      "parents": [
        "54ce9256ad705ae8b628edfadce161aa7099922d"
      ],
      "author": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Fri Apr 13 15:54:01 2012 +0200"
      },
      "committer": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Mon May 21 21:09:33 2012 +0200"
      },
      "message": "um: Add BUG() to do_ops()\u0027s error path\n\nIn case we encounter a bad operation in do_ops() something is really\nbroken and it\u0027s better to BUG().\n\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\n"
    },
    {
      "commit": "54ce9256ad705ae8b628edfadce161aa7099922d",
      "tree": "1bd2e4d49d9b2db9ce2862a3318210dedba69997",
      "parents": [
        "9daeaa370526df1c19eba4780247bb7155541e38"
      ],
      "author": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Fri Apr 13 15:37:57 2012 +0200"
      },
      "committer": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Mon May 21 21:09:32 2012 +0200"
      },
      "message": "um: Remove unused variables\n\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\n"
    },
    {
      "commit": "c6802f4370510fa8674674f11c5578ee057d1d63",
      "tree": "d354edeb3e6e14efa046e8ed759cd817f0a8f318",
      "parents": [
        "5a30a798fb501429522a30b6027a603244d659b2"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon May 21 14:22:25 2012 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon May 21 14:22:25 2012 -0400"
      },
      "message": "um: bury unused _TIF_RESTORE_SIGMASK\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "5a30a798fb501429522a30b6027a603244d659b2",
      "tree": "17a0e45af5c3b32f0a7005a094ad613b20ec6d61",
      "parents": [
        "d50349b0c397407458ea8c57aee765d158e6f9ee"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Apr 26 23:25:06 2012 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon May 21 14:20:27 2012 -0400"
      },
      "message": "um: wrong sigmask saved in case of multiple sigframes\n\nwe can\u0027t just find oldmask once; if there are multiple signals\nand we loop building sigframes for those, -\u003esaved_mask will be\ndefinitely wrong for all but the first one.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "d50349b0c397407458ea8c57aee765d158e6f9ee",
      "tree": "4ba282ac4385194f8812ceae81237e6dd28274a9",
      "parents": [
        "3b7d15bde54be81e3edd773724d85d20ae42a4da"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Apr 24 02:37:07 2012 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon May 21 14:19:53 2012 -0400"
      },
      "message": "um: add TIF_NOTIFY_RESUME\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "3b7d15bde54be81e3edd773724d85d20ae42a4da",
      "tree": "1c4f848ead2edae056c4a9c3e2d119ac1b50ac96",
      "parents": [
        "76e10d158efb6d4516018846f60c2ab5501900bc"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Apr 22 03:27:28 2012 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon May 21 14:19:31 2012 -0400"
      },
      "message": "um: -\u003erestart_block.fn needs to be reset on sigreturn\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "875c9d09b5a6400d6882b0e6e828862a73ce739d",
      "tree": "20292e431afd0e671f6f5a8bf6ce3f672ce633ba",
      "parents": [
        "4ec008d630d9d96579b5911c140bb8de2aa68f0e"
      ],
      "author": {
        "name": "Anna-Maria Gleixner",
        "email": "anna-maria@glx-um.de",
        "time": "Fri May 18 16:45:55 2012 +0000"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon May 21 11:01:44 2012 +0200"
      },
      "message": "um: Use generic time config\n\nSigned-off-by: Anna-Maria Gleixner \u003canna-maria@glx-um.de\u003e\nAcked-by: Richard Weinberger \u003crichard@nod.at\u003e\nLink: http://lkml.kernel.org/r/20120518163107.251597655@glx-um.de\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "55ccf3fe3f9a3441731aa79cf42a628fc4ecace9",
      "tree": "fc1baa880f32e9da083998bda8aefc335846fd52",
      "parents": [
        "36be50515fe2aef61533b516fa2576a2c7fe7664"
      ],
      "author": {
        "name": "Suresh Siddha",
        "email": "suresh.b.siddha@intel.com",
        "time": "Wed May 16 15:03:51 2012 -0700"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Wed May 16 15:16:26 2012 -0700"
      },
      "message": "fork: move the real prepare_to_copy() users to arch_dup_task_struct()\n\nHistorical prepare_to_copy() is mostly a no-op, duplicated for majority of\nthe architectures and the rest following the x86 model of flushing the extended\nregister state like fpu there.\n\nRemove it and use the arch_dup_task_struct() instead.\n\nSuggested-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nSuggested-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nSigned-off-by: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nLink: http://lkml.kernel.org/r/1336692811-30576-1-git-send-email-suresh.b.siddha@intel.com\nAcked-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: Koichi Yasutake \u003cyasutake.koichi@jp.panasonic.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: Chris Zankel \u003cchris@zankel.net\u003e\nCc: Richard Henderson \u003crth@twiddle.net\u003e\nCc: Russell King \u003clinux@arm.linux.org.uk\u003e\nCc: Haavard Skinnemoen \u003chskinnemoen@gmail.com\u003e\nCc: Mike Frysinger \u003cvapier@gentoo.org\u003e\nCc: Mark Salter \u003cmsalter@redhat.com\u003e\nCc: Aurelien Jacquiot \u003ca-jacquiot@ti.com\u003e\nCc: Mikael Starvik \u003cstarvik@axis.com\u003e\nCc: Yoshinori Sato \u003cysato@users.sourceforge.jp\u003e\nCc: Richard Kuo \u003crkuo@codeaurora.org\u003e\nCc: Tony Luck \u003ctony.luck@intel.com\u003e\nCc: Michal Simek \u003cmonstr@monstr.eu\u003e\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nCc: Jonas Bonn \u003cjonas@southpole.se\u003e\nCc: James E.J. Bottomley \u003cjejb@parisc-linux.org\u003e\nCc: Helge Deller \u003cdeller@gmx.de\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Chen Liqin \u003cliqin.chen@sunplusct.com\u003e\nCc: Lennox Wu \u003clennox.wu@gmail.com\u003e\nCc: David S. Miller \u003cdavem@davemloft.net\u003e\nCc: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\nCc: Jeff Dike \u003cjdike@addtoit.com\u003e\nCc: Richard Weinberger \u003crichard@nod.at\u003e\nCc: Guan Xuetao \u003cgxt@mprc.pku.edu.cn\u003e\nSigned-off-by: H. Peter Anvin \u003chpa@linux.intel.com\u003e\n"
    },
    {
      "commit": "203dacbdca977bedaba61ad2fca75d934060a5d5",
      "tree": "0717ba0ac288452afad0a1a4611a8bd25d6a8417",
      "parents": [
        "f5e10287367dcffb5504d19c83e85ca041ca2596"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue May 08 15:34:41 2012 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue May 08 15:35:08 2012 +0200"
      },
      "message": "um: Remove leftover declaration of alloc_task_struct_node()\n\nReported-by: Ingo Molnar \u003cmingo@kernel.org\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "1f2bfbd00e466ff3489b2ca5cc75b1cccd14c123",
      "tree": "6c630d3ee90a34d17f85d5c07dde67d4c27883a8",
      "parents": [
        "95698570510b7be9ab1542a4a908242c05a9b0ed"
      ],
      "author": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Sat May 05 10:18:41 2012 +0200"
      },
      "committer": {
        "name": "Michal Marek",
        "email": "mmarek@suse.cz",
        "time": "Sat May 05 21:19:33 2012 +0200"
      },
      "message": "kbuild: link of vmlinux moved to a script\n\nMove the final link of vmlinux to a script to improve\nreadability and maintainability of the code.\n\nThe Makefile fragments used to link vmlinux has over the\nyears seen far too many changes and the logic had become\nhard to follow.\n\nAs the process by nature is serialized there was\nnothing gained including this in the Makefile.\n\n\"um\" has special link requirments - and the\nonly way to handle this was to hard-code the linking\nof \"um\" in the script.\nThis was better than trying to modularize it only for the\nbenefit of \"um\" anyway.\n\nThe shell script has been improved after input from:\nArnaud Lacombe \u003clacombar@gmail.com\u003e\nNick Bowler \u003cnbowler@elliptictech.com\u003e\n\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\nCc: Arnaud Lacombe \u003clacombar@gmail.com\u003e\nCc: Nick Bowler \u003cnbowler@elliptictech.com\u003e\nCc: Richard Weinberger \u003crichard@nod.at\u003e\nSigned-off-by: Michal Marek \u003cmmarek@suse.cz\u003e\n"
    },
    {
      "commit": "a6359d1eec43d1fd6ffbac958149844873e0084f",
      "tree": "cbb9681ac4f34c6653064ecbd1bdda8f910d40a2",
      "parents": [
        "e4d59621923ba6c42f30a9d74c7c78d101c2f7aa"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu May 03 09:03:02 2012 +0000"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat May 05 13:00:46 2012 +0200"
      },
      "message": "init_task: Replace CONFIG_HAVE_GENERIC_INIT_TASK\n\nNow that all archs except ia64 are converted, replace the config and\nlet the ia64 select CONFIG_ARCH_INIT_TASK\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nLink: http://lkml.kernel.org/r/20120503085035.867948914@linutronix.de\n\n"
    },
    {
      "commit": "5b408241e99bd3f670122d4e6142b69cc6c24098",
      "tree": "220f16a8127dd613b61dba8a88e7d7cbe4180e9c",
      "parents": [
        "d0b691dffaee89a4c9e1890694d0c77201d7a9b1"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu May 03 09:03:00 2012 +0000"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat May 05 13:00:26 2012 +0200"
      },
      "message": "um: Use generic init_task\n\nSame code. Use the generic version.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Richard Weinberger \u003crichard@nod.at\u003e\nLink: http://lkml.kernel.org/r/20120503085035.592937512@linutronix.de\n\n"
    },
    {
      "commit": "616c310e83b872024271c915c1b9ab505b9efad9",
      "tree": "1339bc7b3bef920b4641a5af2f182e9dfa2a6632",
      "parents": [
        "66f75a5d028beaf67c931435fdc3e7823125730c"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paul.mckenney@linaro.org",
        "time": "Tue Mar 27 16:02:08 2012 -0700"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Wed May 02 14:43:23 2012 -0700"
      },
      "message": "rcu: Move PREEMPT_RCU preemption to switch_to() invocation\n\nCurrently, PREEMPT_RCU readers are enqueued upon entry to the scheduler.\nThis is inefficient because enqueuing is required only if there is a\ncontext switch, and entry to the scheduler does not guarantee a context\nswitch.\n\nThe commit therefore moves the enqueuing to immediately precede the\ncall to switch_to() from the scheduler.\n\nSigned-off-by: Paul E. McKenney \u003cpaul.mckenney@linaro.org\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nTested-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8239c25f47d2b318156993b15f33900a86ea5e17",
      "tree": "a15aa61b05684c0a375fea53da130d7e0462c66c",
      "parents": [
        "bda3bdc9afce46302810e12ca1790ce08b9c40ce"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Apr 20 13:05:42 2012 +0000"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Apr 26 12:06:09 2012 +0200"
      },
      "message": "smp: Add task_struct argument to __cpu_up()\n\nPreparatory patch to make the idle thread allocation for secondary\ncpus generic.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nCc: Srivatsa S. Bhat \u003csrivatsa.bhat@linux.vnet.ibm.com\u003e\nCc: Matt Turner \u003cmattst88@gmail.com\u003e\nCc: Russell King \u003clinux@arm.linux.org.uk\u003e\nCc: Mike Frysinger \u003cvapier@gentoo.org\u003e\nCc: Jesper Nilsson \u003cjesper.nilsson@axis.com\u003e\nCc: Richard Kuo \u003crkuo@codeaurora.org\u003e\nCc: Tony Luck \u003ctony.luck@intel.com\u003e\nCc: Hirokazu Takata \u003ctakata@linux-m32r.org\u003e\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: James E.J. Bottomley \u003cjejb@parisc-linux.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: David S. Miller \u003cdavem@davemloft.net\u003e\nCc: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\nCc: Richard Weinberger \u003crichard@nod.at\u003e\nCc: x86@kernel.org\nLink: http://lkml.kernel.org/r/20120420124556.964170564@linutronix.de\n\n"
    },
    {
      "commit": "eac0556750e727ff39144a9a9e59d5ccf1fc0e2a",
      "tree": "f5ccff7795b2ad5e47f17fb475599c526f533e79",
      "parents": [
        "f71fa31f9f7ac33cba12b8897983f950ad2c7a5b",
        "19853301ef3289bda2d5264c1093e74efddaeab9"
      ],
      "author": {
        "name": "Marcelo Tosatti",
        "email": "mtosatti@redhat.com",
        "time": "Thu Apr 19 17:06:26 2012 -0300"
      },
      "committer": {
        "name": "Marcelo Tosatti",
        "email": "mtosatti@redhat.com",
        "time": "Thu Apr 19 17:06:26 2012 -0300"
      },
      "message": "Merge branch \u0027linus\u0027 into queue\n\nMerge reason: development work has dependency on kvm patches merged\nupstream.\n\nConflicts:\n\tDocumentation/feature-removal-schedule.txt\n\nSigned-off-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\n"
    },
    {
      "commit": "657b12d3a1508a3f06f7afe21d5dda7252279520",
      "tree": "0f73b718bb8f009bfc605301550ae68d68561ae3",
      "parents": [
        "76b278edd99fb55525fcf2706095e388bd3d122c"
      ],
      "author": {
        "name": "Boaz Harrosh",
        "email": "bharrosh@panasas.com",
        "time": "Mon Mar 26 19:18:22 2012 -0700"
      },
      "committer": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Tue Apr 10 00:13:45 2012 +0200"
      },
      "message": "um: uml_setup_stubs\u0027: warning: unused variable \u0027pages\u0027\n\nFix the following gcc complain\narch/um/kernel/skas/mmu.c: In function \u0027uml_setup_stubs\u0027:\narch/um/kernel/skas/mmu.c:106:16: warning: unused variable \u0027pages\u0027 [-Wunused-variable]\n\nSigned-Signed-off-by: Boaz Harrosh \u003cbharrosh@panasas.com\u003e\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\n"
    },
    {
      "commit": "76b278edd99fb55525fcf2706095e388bd3d122c",
      "tree": "6384a25403926b498c710c75202591ca1dec7d88",
      "parents": [
        "a3a85a763c399c0bf483a30d82d2d613e6f94cd3"
      ],
      "author": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Thu Mar 29 19:10:42 2012 +0200"
      },
      "committer": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Tue Apr 10 00:13:45 2012 +0200"
      },
      "message": "um: Use asm-generic/switch_to.h\n\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\n"
    },
    {
      "commit": "a3a85a763c399c0bf483a30d82d2d613e6f94cd3",
      "tree": "9239b9bd86541e212f0d3f9bae0d50f104fab3d4",
      "parents": [
        "d824d06328904f610b47652dcd488392f2fc62b6"
      ],
      "author": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Thu Mar 29 18:47:46 2012 +0200"
      },
      "committer": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Tue Apr 10 00:13:45 2012 +0200"
      },
      "message": "um: Disintegrate asm/system.h\n\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\nReported-by: Toralf Förster \u003ctoralf.foerster@gmx.de\u003e\nCC: dhowells@redhat.com\n"
    },
    {
      "commit": "d824d06328904f610b47652dcd488392f2fc62b6",
      "tree": "62f6571303ff4830784e0f43bf04ce94e2c334cd",
      "parents": [
        "f21a7c195cb20cf613147839c4a2bc1fca8c7bd8"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Apr 05 23:35:03 2012 -0400"
      },
      "committer": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Tue Apr 10 00:13:45 2012 +0200"
      },
      "message": "um: switch cow_user.h to htobe{32,64}/betoh{32,64}\n\n... rather than open-coding the 64bit versions.  endian.h has those guys.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\n"
    },
    {
      "commit": "3cb42092ff02edec34bf936b7400b1f1efc8ca43",
      "tree": "d3ed575e3d3d4a5e7481e6ac2b8f345d30399dd0",
      "parents": [
        "0034102808e0dbbf3a2394b82b1bb40b5778de9e"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Apr 09 13:59:00 2012 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Apr 09 13:59:00 2012 -0400"
      },
      "message": "um: fix linker script generation\n\nwhile we can\u0027t just use -U$(SUBARCH), we still need to kill idiotic define\n(implicit -Di386\u003d1), both for SUBARCH\u003di386 and SUBARCH\u003dx86/CONFIG_64BIT\u003dn\nbuilds.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "3b5d56b9317fa7b5407dff1aa7b115bf6cdbd494",
      "tree": "d733bab15dcf193c3364d14fc2d973aa20a28fe3",
      "parents": [
        "eae3ee7d8a7c59cf63441dedf28674889f5fc477"
      ],
      "author": {
        "name": "Eric B Munson",
        "email": "emunson@mgebm.net",
        "time": "Sat Mar 10 14:37:26 2012 -0500"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Apr 08 12:48:59 2012 +0300"
      },
      "message": "kvmclock: Add functions to check if the host has stopped the vm\n\nWhen a host stops or suspends a VM it will set a flag to show this.  The\nwatchdog will use these functions to determine if a softlockup is real, or the\nresult of a suspended VM.\n\nSigned-off-by: Eric B Munson \u003cemunson@mgebm.net\u003e\nasm-generic changes Acked-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nSigned-off-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n\n"
    },
    {
      "commit": "0b5f9c005def154f9c21f9be0223b65b50d54368",
      "tree": "bbee9b3e549acc5886d1022c2aad46d5abfdd22e",
      "parents": [
        "b5174fa3a7f4f8f150bfa3b917c92608953dfa0f"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu Mar 29 15:38:30 2012 +1030"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu Mar 29 15:38:30 2012 +1030"
      },
      "message": "remove references to cpu_*_map in arch/\n\nThis has been obsolescent for a while; time for the final push.\n\nIn adjacent context, replaced old cpus_* with cpumask_*.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e (arch/sparc)\nAcked-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e (arch/tile)\nCc: user-mode-linux-devel@lists.sourceforge.net\nCc: Russell King \u003clinux@arm.linux.org.uk\u003e\nCc: linux-arm-kernel@lists.infradead.org\nCc: Richard Kuo \u003crkuo@codeaurora.org\u003e\nCc: linux-hexagon@vger.kernel.org\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nCc: linux-mips@linux-mips.org\nCc: Kyle McMartin \u003ckyle@mcmartin.ca\u003e\nCc: Helge Deller \u003cdeller@gmx.de\u003e\nCc: sparclinux@vger.kernel.org\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": "9ffc93f203c18a70623f21950f1dd473c9ec48cd",
      "tree": "1eb3536ae183b0bfbf7f5152a6fe4f430ae881c2",
      "parents": [
        "96f951edb1f1bdbbc99b0cd458f9808bb83d58ae"
      ],
      "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": "Remove all #inclusions of asm/system.h\n\nRemove all #inclusions of asm/system.h preparatory to splitting and killing\nit.  Performed with the following command:\n\nperl -p -i -e \u0027s!^#\\s*include\\s*\u003casm/system[.]h\u003e.*\\n!!\u0027 `grep -Irl \u0027^#\\s*include\\s*\u003casm/system[.]h\u003e\u0027 *`\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\n"
    },
    {
      "commit": "fa453a625de5b8ee9ada0a5b329df3f88751c615",
      "tree": "7a9e04d4a44bb929e96bd9bebb7b97cb733d1ecb",
      "parents": [
        "30eebb54b13ef198a3f1a143ee9dd68f295c60de",
        "3463ff4439661d8107ac024329b5fe01d6e5117b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 27 18:29:53 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 27 18:29:53 2012 -0700"
      },
      "message": "Merge branch \u0027for-linus-3.4-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rw/uml\n\nPull UML changes from Richard Weinberger:\n \"Mostly bug fixes and cleanups\"\n\n* \u0027for-linus-3.4-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rw/uml: (35 commits)\n  um: Update defconfig\n  um: Switch to large mcmodel on x86_64\n  MTD: Relax dependencies\n  um: Wire CONFIG_GENERIC_IO up\n  um: Serve io_remap_pfn_range()\n  Introduce CONFIG_GENERIC_IO\n  um: allow SUBARCH\u003dx86\n  um: most of the SUBARCH uses can be killed\n  um: deadlock in line_write_interrupt()\n  um: don\u0027t bother trying to rebuild CHECKFLAGS for USER_OBJS\n  um: use the right ifdef around exports in user_syms.c\n  um: a bunch of headers can be killed by using generic-y\n  um: ptrace-generic.h doesn\u0027t need user.h\n  um: kill HOST_TASK_PID\n  um: remove pointless include of asm/fixmap.h from asm/pgtable.h\n  um: asm-offsets.h might as well come from underlying arch...\n  um: merge processor_{32,64}.h a bit...\n  um: switch close_chan() to struct line\n  um: race fix: initialize delayed_work *before* registering IRQ\n  um: line-\u003ehave_irq is never checked...\n  ...\n"
    },
    {
      "commit": "3463ff4439661d8107ac024329b5fe01d6e5117b",
      "tree": "ca972021f7797a80d7fafd7b059e14f1d71dcbc4",
      "parents": [
        "12783aa077f81e0dcf1b2f97ed24440048e9f09d"
      ],
      "author": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Sun Mar 25 00:23:57 2012 +0100"
      },
      "committer": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Sun Mar 25 00:46:51 2012 +0100"
      },
      "message": "um: Update defconfig\n\nEnable ext4, cgroups and devtmpfs.\n\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\n"
    },
    {
      "commit": "12783aa077f81e0dcf1b2f97ed24440048e9f09d",
      "tree": "648810a36028675185f024ff791b7c9f7b95d815",
      "parents": [
        "9310da0bbb826f8b6ed49a5f93092f8452820da0"
      ],
      "author": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Tue Jan 24 20:09:12 2012 +0100"
      },
      "committer": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Sun Mar 25 00:29:57 2012 +0100"
      },
      "message": "um: Switch to large mcmodel on x86_64\n\nx86_64 UML is unable to load modules if more than 504MiB\nof memory are used.\nThis happens because on x86_64 the UML process has a quite high\nstart address (typically around 0x6000000).\nIf UML\u0027s memory is larger than 504MiB VMALLOC_START happens to be after\n0x8000000. This is no problem unless one loads a module which was built\nwith R_X86_64_32S relocations.\nSymbols with a location \u003e 0x8000000 cannot be used with R_X86_64_32S\n\nTo deal with this x86_64 UML has to be compiled with -mcmodel\u003dlarge\nsuch that no R_X86_64_32S relocations are used.\n\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\nReported-by: 전하늘 \u003callskyee@gmail.com\u003e\n"
    },
    {
      "commit": "194a64c8cfc19d522cf94110791f27841c5997e6",
      "tree": "854f5106f59da3bf5c29ca94135744ba16c5c6d6",
      "parents": [
        "4d94d6d030adfdea4837694d293ec6918d133ab2"
      ],
      "author": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Tue Feb 07 01:22:49 2012 +0100"
      },
      "committer": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Sun Mar 25 00:29:56 2012 +0100"
      },
      "message": "um: Wire CONFIG_GENERIC_IO up\n\nUML has no io memory but implements everything defined in\ngeneric-asm/io.h.\n\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\n"
    },
    {
      "commit": "4d94d6d030adfdea4837694d293ec6918d133ab2",
      "tree": "d84f1defd9d53885e866cdbdddbe37f7bfdfa8bb",
      "parents": [
        "087fafd15204fb7a5df44b635ed3d3f4348f2d5e"
      ],
      "author": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Tue Feb 07 01:22:47 2012 +0100"
      },
      "committer": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Sun Mar 25 00:29:56 2012 +0100"
      },
      "message": "um: Serve io_remap_pfn_range()\n\nAt some places io_remap_pfn_range() is needed.\nUML has to serve it like all other archs do.\n\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\n"
    },
    {
      "commit": "dc5be20a6454312d395dbf07eb2218090a03ae24",
      "tree": "4569a1f70e868604f4d92af11dba4009ceb64934",
      "parents": [
        "199eebbae45791af0f37184dd495f16a6cf5c34a"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Feb 11 05:39:56 2012 -0500"
      },
      "committer": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Sun Mar 25 00:29:56 2012 +0100"
      },
      "message": "um: most of the SUBARCH uses can be killed\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n[richard@nod.at: Re-export SUBARCH in arch/um/Makefile]\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\n"
    },
    {
      "commit": "199eebbae45791af0f37184dd495f16a6cf5c34a",
      "tree": "473834d6b21fa9e54d5deb158b54f78a984f7bc4",
      "parents": [
        "64405360cee33a058d7e07713af23aca43b96d41"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Feb 11 03:05:32 2012 -0500"
      },
      "committer": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Sun Mar 25 00:29:56 2012 +0100"
      },
      "message": "um: deadlock in line_write_interrupt()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\n"
    },
    {
      "commit": "64405360cee33a058d7e07713af23aca43b96d41",
      "tree": "e334e14f8a93b8998f6c4e5cffae5fdbc4a35b7c",
      "parents": [
        "c6b17bbd39bdb0f110c09675280630fa1a7d25a0"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Feb 11 03:01:34 2012 -0500"
      },
      "committer": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Sun Mar 25 00:29:56 2012 +0100"
      },
      "message": "um: don\u0027t bother trying to rebuild CHECKFLAGS for USER_OBJS\n\n... just strip NOSTDINC_FLAGS out of it for those\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\n"
    },
    {
      "commit": "c6b17bbd39bdb0f110c09675280630fa1a7d25a0",
      "tree": "246633774e5093ce9e875f346434000441e73720",
      "parents": [
        "d3985d9ac6eeaf447a40d18b78a7e5443f95d790"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Feb 10 19:02:28 2012 -0500"
      },
      "committer": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Sun Mar 25 00:29:55 2012 +0100"
      },
      "message": "um: use the right ifdef around exports in user_syms.c\n\n... the same one that controls whether elf_aux.o is included into the\nbuild, bringing the vsyscall_e... into it.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\n"
    },
    {
      "commit": "d3985d9ac6eeaf447a40d18b78a7e5443f95d790",
      "tree": "556fa5d09f618bb2d8753b7b91223e1dfd26022e",
      "parents": [
        "69a3b4b28e29142f55de4d0661c3426ba9f1b6d3"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jan 30 16:32:09 2012 -0500"
      },
      "committer": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Sun Mar 25 00:29:55 2012 +0100"
      },
      "message": "um: a bunch of headers can be killed by using generic-y\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\n"
    },
    {
      "commit": "69a3b4b28e29142f55de4d0661c3426ba9f1b6d3",
      "tree": "8222557ea91cf6ac172aa8f47764ff62b21be504",
      "parents": [
        "c2220b2a124d2fe7b0074b23680177c8e905a76c"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jan 30 16:31:53 2012 -0500"
      },
      "committer": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Sun Mar 25 00:29:55 2012 +0100"
      },
      "message": "um: ptrace-generic.h doesn\u0027t need user.h\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\n"
    },
    {
      "commit": "c2220b2a124d2fe7b0074b23680177c8e905a76c",
      "tree": "f88ed3858ce65669134888f64193ab139a8a95dc",
      "parents": [
        "28a12cb598e55ca9e1c577899d6624e6a83cdc56"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jan 30 16:30:48 2012 -0500"
      },
      "committer": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Sun Mar 25 00:29:55 2012 +0100"
      },
      "message": "um: kill HOST_TASK_PID\n\njust provide get_current_pid() to the userland side of things\ninstead of get_current() + manual poking in its results\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\n"
    },
    {
      "commit": "28a12cb598e55ca9e1c577899d6624e6a83cdc56",
      "tree": "916ca6c4e4942c9cf450cddf87b6438cb570bee4",
      "parents": [
        "2ffd2e27022209db2c6ffa85e1d4e49b3ad3dd66"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Nov 20 21:05:24 2011 -0500"
      },
      "committer": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Sun Mar 25 00:29:55 2012 +0100"
      },
      "message": "um: remove pointless include of asm/fixmap.h from asm/pgtable.h\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\n"
    },
    {
      "commit": "2ffd2e27022209db2c6ffa85e1d4e49b3ad3dd66",
      "tree": "584a7fcb0f088140664e56394d4c1ac30bc1782b",
      "parents": [
        "c56334dbf7e8772ed84390bc4664427f0a7f3b25"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Nov 20 17:25:25 2011 -0500"
      },
      "committer": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Sun Mar 25 00:29:55 2012 +0100"
      },
      "message": "um: asm-offsets.h might as well come from underlying arch...\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\n"
    },
    {
      "commit": "10c890c0a303070652f5374ea31a0b29350d14d9",
      "tree": "34077d8fb7d8d81d761f2c28021310ce821f4ceb",
      "parents": [
        "0fcd719934cd3521ae4a977f454e75e2be60b7ff"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Sep 10 08:39:18 2011 -0400"
      },
      "committer": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Sun Mar 25 00:29:54 2012 +0100"
      },
      "message": "um: switch close_chan() to struct line\n\n... and switch chan_interrupt() to directly calling close_one_chan(),\nso we can lose delay_free_irq argument of close_chan() as well.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\n"
    },
    {
      "commit": "0fcd719934cd3521ae4a977f454e75e2be60b7ff",
      "tree": "f6679910030fa0361ab52603987b72bc5e7ef314",
      "parents": [
        "5eaa3411a80fe50b3a0333389e0e259c580869e9"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Sep 10 08:17:04 2011 -0400"
      },
      "committer": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Sun Mar 25 00:29:54 2012 +0100"
      },
      "message": "um: race fix: initialize delayed_work *before* registering IRQ\n\n... since chan_interrupt() might schedule it if there\u0027s too much\nincoming data.  Kill task argument of chan_interrupt(), while\nwe are at it - it\u0027s always \u0026line-\u003etask.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\n"
    },
    {
      "commit": "5eaa3411a80fe50b3a0333389e0e259c580869e9",
      "tree": "40d0e9edcdd544002e35534cf0ce34da900bda2c",
      "parents": [
        "1f42369cfc2ea9dcd2b443f80060048e4683d7ad"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Sep 09 20:20:52 2011 -0400"
      },
      "committer": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Sun Mar 25 00:29:54 2012 +0100"
      },
      "message": "um: line-\u003ehave_irq is never checked...\n\nlooks like a half-arsed duplicate of line-\u003eenabled\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\n"
    },
    {
      "commit": "1f42369cfc2ea9dcd2b443f80060048e4683d7ad",
      "tree": "69c0655621dae1b6bc7c297f3d5fe20a7022235f",
      "parents": [
        "bed5e39c56f3fe792e336cfa2670001d78f1d44c"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Sep 09 20:18:09 2011 -0400"
      },
      "committer": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Sun Mar 25 00:29:54 2012 +0100"
      },
      "message": "um: chan_init_pri is dead now\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\n"
    },
    {
      "commit": "bed5e39c56f3fe792e336cfa2670001d78f1d44c",
      "tree": "3b1276d6c18de5a547657d7d86f3aa2f55fa2d1d",
      "parents": [
        "ee4850702bd6980c7baeb6a45142d55744a109a2"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Sep 08 10:49:34 2011 -0400"
      },
      "committer": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Sun Mar 25 00:29:54 2012 +0100"
      },
      "message": "um: switch users of -\u003echan_list to -\u003echan_{in,out} (easy cases)\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\n"
    },
    {
      "commit": "ee4850702bd6980c7baeb6a45142d55744a109a2",
      "tree": "a0db87b08c0e2790a069f7e2891f798259d0c47e",
      "parents": [
        "c8e2876fc8adaf9539f051fcda5d551308e8a0f8"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Sep 08 07:07:26 2011 -0400"
      },
      "committer": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Sun Mar 25 00:29:54 2012 +0100"
      },
      "message": "um: sorting out the chan mess, part 1\n\nput references to in and out chans associated with line into\nexplicit struct chan * fields in it.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\n"
    },
    {
      "commit": "c8e2876fc8adaf9539f051fcda5d551308e8a0f8",
      "tree": "29c8a0cc31d00dcd185003405e92e66790d2d243",
      "parents": [
        "04292b2cf8f02a33cfc1054c0c51aa8c77731813"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Sep 09 20:08:48 2011 -0400"
      },
      "committer": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Sun Mar 25 00:29:54 2012 +0100"
      },
      "message": "um: finally kill -\u003einit_str leaks\n\nnow we can do that...\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\n"
    },
    {
      "commit": "04292b2cf8f02a33cfc1054c0c51aa8c77731813",
      "tree": "ff04fb51c5de7bd646d09d29d9d0ed012ca5a0df",
      "parents": [
        "cfe6b7c79daa0efa27f474f1fe2a88fd7af5cc47"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Sep 09 20:07:05 2011 -0400"
      },
      "committer": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Sun Mar 25 00:29:53 2012 +0100"
      },
      "message": "um: get rid of lines_init()\n\nmove config-independent parts of initialization into\nregister_lines(), call setup_one_line() after it instead\nof abusing -\u003einit_str.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\n"
    },
    {
      "commit": "cfe6b7c79daa0efa27f474f1fe2a88fd7af5cc47",
      "tree": "5030f25d83451e3b3e579bac4b9a2e561990048d",
      "parents": [
        "31efcebb7d7196adcee73027f513d7c0bf572b47"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Sep 09 19:45:42 2011 -0400"
      },
      "committer": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Sun Mar 25 00:29:53 2012 +0100"
      },
      "message": "um: switch line.c tty drivers to dynamic device creation\n\nCurrent code doesn\u0027t update the symlinks in /sys/dev/char when we add/remove\ntty lines.  Fixing that allows to stop messing with -\u003evalid before the driver\nregistration, which is a Good Thing(tm) - we shouldn\u0027t have it set before we\nreally have the things set up and ready for line_open().\n\nWe need tty_driver available to call tty_{un,}register_device(), so we just\nstash a reference to it into struct line_driver.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\n"
    },
    {
      "commit": "31efcebb7d7196adcee73027f513d7c0bf572b47",
      "tree": "c3064342091568bd66f1f5cd85b3c1972ed697da",
      "parents": [
        "d8c215adbf3901aa7d00a0f17f08d77be689f838"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Sep 09 19:14:02 2011 -0400"
      },
      "committer": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Sun Mar 25 00:29:53 2012 +0100"
      },
      "message": "um: fix races between line_open() and line_config()\n\nPull parse_chan_pair() call into setup_one_line(), under the mutex.\nWe really don\u0027t want open() to succeed before parse_chan_pair() had\nbeen done (or after it has failed, BTW).  We also want \"remove con\u003cn\u003e\"\nto free irqs, etc., same as \"config con\u003cn\u003e\u003dnone\".\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\n"
    },
    {
      "commit": "d8c215adbf3901aa7d00a0f17f08d77be689f838",
      "tree": "88f7f49abb5944725f3b60d8f28a41580e7f915f",
      "parents": [
        "43574c1afea4f798592c03cf4d4ecea4fd0a8416"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Sep 09 17:36:37 2011 -0400"
      },
      "committer": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Sun Mar 25 00:29:53 2012 +0100"
      },
      "message": "um: convert count_lock to mutex, fix a race in line_open()\n\nIf two processes are opening the same line, the second to get\ninto line_open() will decide that it doesn\u0027t need to do anything\n(correctly) or wait for anything.  The latter, unfortunately,\nis incorrect - the first opener might not be through yet.  We\nneed to have exclusion covering the entire line_init(), including\nthe blocking parts.  Moreover, the next patch will need to\nwiden the exclusion on mconsole side of things, also including\nthe blocking bits, so let\u0027s just convert that sucker to mutex...\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\n"
    },
    {
      "commit": "43574c1afea4f798592c03cf4d4ecea4fd0a8416",
      "tree": "0681a51541bd247fd7ea5a363182397383239a39",
      "parents": [
        "fe9a6b002988372406baf5aeefc046677782365e"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Sep 09 17:25:00 2011 -0400"
      },
      "committer": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Sun Mar 25 00:29:53 2012 +0100"
      },
      "message": "um: get rid of the init_prio mess\n\nmake line_setup() act on a separate array of conf strings + default conf,\nhave lines array initialized explicitly by that data, bury LINE_INIT()\nmacro from hell.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\n"
    },
    {
      "commit": "fe9a6b002988372406baf5aeefc046677782365e",
      "tree": "cf8cdd1fbef2bc70c0931da5b0e3e8070a7f78c7",
      "parents": [
        "da645f3be912a377ada97268e36360b0a4389ab0"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Sep 08 20:44:06 2011 -0400"
      },
      "committer": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Sun Mar 25 00:29:53 2012 +0100"
      },
      "message": "um: switch line_config() to setup_one_line()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\n"
    },
    {
      "commit": "da645f3be912a377ada97268e36360b0a4389ab0",
      "tree": "e6d47406e497eb38a08e2d504cbb390a11b5bdbd",
      "parents": [
        "8998af2b4f7a4dd500198f9a7bd4dc8411568b7d"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Sep 08 20:34:52 2011 -0400"
      },
      "committer": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Sun Mar 25 00:29:53 2012 +0100"
      },
      "message": "um: switch line_remove() to setup_one_line()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\n"
    },
    {
      "commit": "8998af2b4f7a4dd500198f9a7bd4dc8411568b7d",
      "tree": "25a111a55b92be0b69a594ec70619066992d64a0",
      "parents": [
        "8ea3c06a2e4d9c6e63461dd56ea74a0a84275e14"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Aug 18 21:40:03 2011 -0400"
      },
      "committer": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Sun Mar 25 00:29:53 2012 +0100"
      },
      "message": "um: auxvec.h is never used\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\n"
    },
    {
      "commit": "8ea3c06a2e4d9c6e63461dd56ea74a0a84275e14",
      "tree": "b5f8e57151edcad5db5e81a7fcd0dcc6fed6d512",
      "parents": [
        "3ee6bd8e8dc0c58b9ba5bab7ef8a7a131da346eb"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Aug 18 18:04:41 2011 -0400"
      },
      "committer": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Sun Mar 25 00:29:52 2012 +0100"
      },
      "message": "um: clean up the includes in ubd\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\n"
    },
    {
      "commit": "c0b79a90b1556a7e51d7a49a655eb60306f6258d",
      "tree": "e6f8427119e3e4c4aada70cfb04c6c430dcc7f84",
      "parents": [
        "c16fa4f2ad19908a47c63d8fa436a1178438c7e7"
      ],
      "author": {
        "name": "Yong Zhang",
        "email": "yong.zhang0@gmail.com",
        "time": "Thu Sep 22 16:58:46 2011 +0800"
      },
      "committer": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Sun Mar 25 00:29:52 2012 +0100"
      },
      "message": "um: irq: Remove IRQF_DISABLED\n\nSince commit [e58aa3d2: genirq: Run irq handlers with interrupts disabled],\nWe run all interrupt handlers with interrupts disabled\nand we even check and yell when an interrupt handler\nreturns with interrupts enabled (see commit [b738a50a:\ngenirq: Warn when handler enables interrupts]).\n\nSo now this flag is a NOOP and can be removed.\n\nSigned-off-by: Yong Zhang \u003cyong.zhang0@gmail.com\u003e\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\n"
    },
    {
      "commit": "d982d5955e9033015a2cc119aa7c0a878e275964",
      "tree": "19ce3a7db9d68886c73124831eb9937ad7a019b7",
      "parents": [
        "f6adb9a6aec0ec9540e15f354e5cdec88b2aea33"
      ],
      "author": {
        "name": "Matt Fleming",
        "email": "matt.fleming@intel.com",
        "time": "Fri Mar 23 15:01:50 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 23 16:58:31 2012 -0700"
      },
      "message": "um: use set_current_blocked() and block_sigmask()\n\nAs described in commit e6fa16ab9c1e (\"signal: sigprocmask() should do\nretarget_shared_pending()\") the modification of current-\u003eblocked is\nincorrect as we need to check whether the signal we\u0027re about to block is\npending in the shared queue.\n\nAlso, use the new helper function introduced in commit 5e6292c0f28f\n(\"signal: add block_sigmask() for adding sigmask to current-\u003eblocked\")\nwhich centralises the code for updating current-\u003eblocked after\nsuccessfully delivering a signal and reduces the amount of duplicate\ncode across architectures.  In the past some architectures got this code\nwrong, so using this helper function should stop that from happening\nagain.\n\nAcked-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Richard Weinberger \u003crichard@nod.at\u003e\nSigned-off-by: Matt Fleming \u003cmatt.fleming@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f6adb9a6aec0ec9540e15f354e5cdec88b2aea33",
      "tree": "e0294accaec6c3ba56c19872d4c8ec38b158de8d",
      "parents": [
        "6629326b89b6e69cc44276e1649a31158bb2c819"
      ],
      "author": {
        "name": "Matt Fleming",
        "email": "matt.fleming@intel.com",
        "time": "Fri Mar 23 15:01:49 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 23 16:58:31 2012 -0700"
      },
      "message": "um: don\u0027t restore current-\u003eblocked on error\n\nIf we fail to setup the signal stack frame then we don\u0027t need to restore\ncurrent-\u003eblocked because it is not modified by setup_signal_stack_*.\n\nAcked-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nAcked-by: Richard Weinberger \u003crichard@nod.at\u003e\nTested-by: Richard Weinberger \u003crichard@nod.at\u003e\nSigned-off-by: Matt Fleming \u003cmatt.fleming@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e2a0883e4071237d09b604a342c28b96b44a04b3",
      "tree": "aa56f4d376b5eb1c32358c19c2669c2a94e0e1fd",
      "parents": [
        "3a990a52f9f25f45469e272017a31e7a3fda60ed",
        "07c0c5d8b8c122b2f2df9ee574ac3083daefc981"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 21 13:36:41 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 21 13:36:41 2012 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs\n\nPull vfs pile 1 from Al Viro:\n \"This is _not_ all; in particular, Miklos\u0027 and Jan\u0027s stuff is not there\n  yet.\"\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs: (64 commits)\n  ext4: initialization of ext4_li_mtx needs to be done earlier\n  debugfs-related mode_t whack-a-mole\n  hfsplus: add an ioctl to bless files\n  hfsplus: change finder_info to u32\n  hfsplus: initialise userflags\n  qnx4: new helper - try_extent()\n  qnx4: get rid of qnx4_bread/qnx4_getblk\n  take removal of PF_FORKNOEXEC to flush_old_exec()\n  trim includes in inode.c\n  um: uml_dup_mmap() relies on -\u003emmap_sem being held, but activate_mm() doesn\u0027t hold it\n  um: embed -\u003estub_pages[] into mmu_context\n  gadgetfs: list_for_each_safe() misuse\n  ocfs2: fix leaks on failure exits in module_init\n  ecryptfs: make register_filesystem() the last potential failure exit\n  ntfs: forgets to unregister sysctls on register_filesystem() failure\n  logfs: missing cleanup on register_filesystem() failure\n  jfs: mising cleanup on register_filesystem() failure\n  make configfs_pin_fs() return root dentry on success\n  configfs: configfs_create_dir() has parent dentry in dentry-\u003ed_parent\n  configfs: sanitize configfs_create()\n  ...\n"
    },
    {
      "commit": "9f3938346a5c1fa504647670edb5fea5756cfb00",
      "tree": "7cf6d24d6b076c8db8571494984924cac03703a2",
      "parents": [
        "69a7aebcf019ab3ff5764525ad6858fbe23bb86d",
        "317b6e128247f75976b0fc2b9fd8d2c20ef13b3a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 21 09:40:26 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 21 09:40:26 2012 -0700"
      },
      "message": "Merge branch \u0027kmap_atomic\u0027 of git://github.com/congwang/linux\n\nPull kmap_atomic cleanup from Cong Wang.\n\nIt\u0027s been in -next for a long time, and it gets rid of the (no longer\nused) second argument to k[un]map_atomic().\n\nFix up a few trivial conflicts in various drivers, and do an \"evil\nmerge\" to catch some new uses that have come in since Cong\u0027s tree.\n\n* \u0027kmap_atomic\u0027 of git://github.com/congwang/linux: (59 commits)\n  feature-removal-schedule.txt: schedule the deprecated form of kmap_atomic() for removal\n  highmem: kill all __kmap_atomic() [swarren@nvidia.com: highmem: Fix ARM build break due to __kmap_atomic rename]\n  drbd: remove the second argument of k[un]map_atomic()\n  zcache: remove the second argument of k[un]map_atomic()\n  gma500: remove the second argument of k[un]map_atomic()\n  dm: remove the second argument of k[un]map_atomic()\n  tomoyo: remove the second argument of k[un]map_atomic()\n  sunrpc: remove the second argument of k[un]map_atomic()\n  rds: remove the second argument of k[un]map_atomic()\n  net: remove the second argument of k[un]map_atomic()\n  mm: remove the second argument of k[un]map_atomic()\n  lib: remove the second argument of k[un]map_atomic()\n  power: remove the second argument of k[un]map_atomic()\n  kdb: remove the second argument of k[un]map_atomic()\n  udf: remove the second argument of k[un]map_atomic()\n  ubifs: remove the second argument of k[un]map_atomic()\n  squashfs: remove the second argument of k[un]map_atomic()\n  reiserfs: remove the second argument of k[un]map_atomic()\n  ocfs2: remove the second argument of k[un]map_atomic()\n  ntfs: remove the second argument of k[un]map_atomic()\n  ...\n"
    },
    {
      "commit": "ac2aca2817ca10ad30f86d0d3caa41ea8cc4f0f0",
      "tree": "d48719c7b748d4bd99aa176fda481b25dbecd1c3",
      "parents": [
        "ea6fb41752dda2e450bd8a318c7400f8cfa9111e"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Feb 23 01:37:19 2012 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Mar 20 21:29:50 2012 -0400"
      },
      "message": "um: uml_dup_mmap() relies on -\u003emmap_sem being held, but activate_mm() doesn\u0027t hold it\n\n... while calling uml_dup_mmap()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "ea6fb41752dda2e450bd8a318c7400f8cfa9111e",
      "tree": "68b741ba0024029578f35cde5f4a8f7ad4ed6688",
      "parents": [
        "104bb37d3e0eb576b6aa61b9ed909e118e026bd2"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Feb 23 01:33:19 2012 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Mar 20 21:29:50 2012 -0400"
      },
      "message": "um: embed -\u003estub_pages[] into mmu_context\n\nseriously, kmalloc() for two-element array of pointers?\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "91f2359396d87f24ea43d91ff77dec54847ad69a",
      "tree": "75422aa4bd39927e4b448407fc3ccd83fb4f5e96",
      "parents": [
        "bc3e11be88010e09692ed1d214407d56caa90075"
      ],
      "author": {
        "name": "Cong Wang",
        "email": "amwang@redhat.com",
        "time": "Fri Nov 25 23:14:17 2011 +0800"
      },
      "committer": {
        "name": "Cong Wang",
        "email": "xiyou.wangcong@gmail.com",
        "time": "Tue Mar 20 21:48:15 2012 +0800"
      },
      "message": "um: remove the second argument of k[un]map_atomic()\n\nSigned-off-by: Cong Wang \u003camwang@redhat.com\u003e\n"
    },
    {
      "commit": "95f2054f167f7da72b0771984dbb2bec612740d0",
      "tree": "20480035754898da3f36f4a5cd0c74dd3c5fc609",
      "parents": [
        "6a214fd4142d585ef2226e8ef6bc29a15403506f"
      ],
      "author": {
        "name": "Danny Kukawka",
        "email": "danny.kukawka@bisect.de",
        "time": "Fri Feb 17 16:05:03 2012 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Feb 17 16:05:03 2012 -0500"
      },
      "message": "UML net: set addr_assign_type if random_ether_addr() used\n\nSet addr_assign_type correctly to NET_ADDR_RANDOM in case\na random MAC address was generated and assigned to the netdevice.\n\nReturn state from setup_etheraddr() about returning a random\nMAC address or not and check this state in eth_configure().\n\nSigned-off-by: Danny Kukawka \u003cdanny.kukawka@bisect.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f429ee3b808118591d1f3cdf3c0d0793911a5677",
      "tree": "96d848f5f677d96758ecd2aee5eb6931b75bf218",
      "parents": [
        "22b4eb5e3174efb49791c62823d0cccc35394c36",
        "c158a35c8a681cf68d36f22f058f9f5466386c71"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 17 16:06:51 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 17 16:41:31 2012 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/audit\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/audit: (29 commits)\n  audit: no leading space in audit_log_d_path prefix\n  audit: treat s_id as an untrusted string\n  audit: fix signedness bug in audit_log_execve_info()\n  audit: comparison on interprocess fields\n  audit: implement all object interfield comparisons\n  audit: allow interfield comparison between gid and ogid\n  audit: complex interfield comparison helper\n  audit: allow interfield comparison in audit rules\n  Kernel: Audit Support For The ARM Platform\n  audit: do not call audit_getname on error\n  audit: only allow tasks to set their loginuid if it is -1\n  audit: remove task argument to audit_set_loginuid\n  audit: allow audit matching on inode gid\n  audit: allow matching on obj_uid\n  audit: remove audit_finish_fork as it can\u0027t be called\n  audit: reject entry,always rules\n  audit: inline audit_free to simplify the look of generic code\n  audit: drop audit_set_macxattr as it doesn\u0027t do anything\n  audit: inline checks for not needing to collect aux records\n  audit: drop some potentially inadvisable likely notations\n  ...\n\nUse evil merge to fix up grammar mistakes in Kconfig file.\n\nBad speling and horrible grammar (and copious swearing) is to be\nexpected, but let\u0027s keep it to commit messages and comments, rather than\nexpose it to users in config help texts or printouts.\n"
    },
    {
      "commit": "b05d8447e7821695bc2fa3359431f7a664232743",
      "tree": "da90e558279c6407aa2e08d36bea5d9a21cd959c",
      "parents": [
        "f031cd25568a390dc2c9c3a4015054183753449a"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Tue Jan 03 14:23:06 2012 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jan 17 16:16:56 2012 -0500"
      },
      "message": "audit: inline audit_syscall_entry to reduce burden on archs\n\nEvery arch calls:\n\nif (unlikely(current-\u003eaudit_context))\n\taudit_syscall_entry()\n\nwhich requires knowledge about audit (the existance of audit_context) in\nthe arch code.  Just do it all in static inline in audit.h so that arch\u0027s\ncan remain blissfully ignorant.\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\n"
    },
    {
      "commit": "d7e7528bcd456f5c36ad4a202ccfb43c5aa98bc4",
      "tree": "ef49503b1dc52c52102e728dbd979c9309d5756b",
      "parents": [
        "85e7bac33b8d5edafc4e219c7dfdb3d48e0b4e31"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Tue Jan 03 14:23:06 2012 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jan 17 16:16:56 2012 -0500"
      },
      "message": "Audit: push audit success and retcode into arch ptrace.h\n\nThe audit system previously expected arches calling to audit_syscall_exit to\nsupply as arguments if the syscall was a success and what the return code was.\nAudit also provides a helper AUDITSC_RESULT which was supposed to simplify things\nby converting from negative retcodes to an audit internal magic value stating\nsuccess or failure.  This helper was wrong and could indicate that a valid\npointer returned to userspace was a failed syscall.  The fix is to fix the\nlayering foolishness.  We now pass audit_syscall_exit a struct pt_reg and it\nin turns calls back into arch code to collect the return value and to\ndetermine if the syscall was a success or failure.  We also define a generic\nis_syscall_success() macro which determines success/failure based on if the\nvalue is \u003c -MAX_ERRNO.  This works for arches like x86 which do not use a\nseparate mechanism to indicate syscall failure.\n\nWe make both the is_syscall_success() and regs_return_value() static inlines\ninstead of macros.  The reason is because the audit function must take a void*\nfor the regs.  (uml calls theirs struct uml_pt_regs instead of just struct\npt_regs so audit_syscall_exit can\u0027t take a struct pt_regs).  Since the audit\nfunction takes a void* we need to use static inlines to cast it back to the\narch correct structure to dereference it.\n\nThe other major change is that on some arches, like ia64, MIPS and ppc, we\nchange regs_return_value() to give us the negative value on syscall failure.\nTHE only other user of this macro, kretprobe_example.c, won\u0027t notice and it\nmakes the value signed consistently for the audit functions across all archs.\n\nIn arch/sh/kernel/ptrace_64.c I see that we were using regs[9] in the old\naudit code as the return value.  But the ptrace_64.h code defined the macro\nregs_return_value() as regs[3].  I have no idea which one is correct, but this\npatch now uses the regs_return_value() function, so it now uses regs[3].\n\nFor powerpc we previously used regs-\u003eresult but now use the\nregs_return_value() function which uses regs-\u003egprs[3].  regs-\u003egprs[3] is\nalways positive so the regs_return_value(), much like ia64 makes it negative\nbefore calling the audit code when appropriate.\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\nAcked-by: H. Peter Anvin \u003chpa@zytor.com\u003e [for x86 portion]\nAcked-by: Tony Luck \u003ctony.luck@intel.com\u003e [for ia64]\nAcked-by: Richard Weinberger \u003crichard@nod.at\u003e [for uml]\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e [for sparc]\nAcked-by: Ralf Baechle \u003cralf@linux-mips.org\u003e [for mips]\nAcked-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e [for ppc]\n"
    },
    {
      "commit": "5674124f9f16f196533abb383193bd232c9afc2f",
      "tree": "275af51d6f7749dc72e1530fcace7c770cdbdd46",
      "parents": [
        "5d48421be3c8a9f753d61b826ecb3ad287d867c0",
        "72142fd4109105c6bd21658966ca5e93c1684081"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 16 18:19:19 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 16 18:19:19 2012 -0800"
      },
      "message": "Merge branch \u0027x86-syscall-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\n* \u0027x86-syscall-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  x86: Move \u003casm/asm-offsets.h\u003e from trace_syscalls.c to asm/syscall.h\n  x86, um: Fix typo in 32-bit system call modifications\n  um: Use $(srctree) not $(KBUILD_SRC)\n  x86, um: Mark system call tables readonly\n  x86, um: Use the same style generated syscall tables as native\n  um: Generate headers before generating user-offsets.s\n  um: Run host archheaders, allow use of host generated headers\n  kbuild, headers.sh: Don\u0027t make archheaders explicitly\n  x86, syscall: Allow syscall offset to be symbolic\n  x86, syscall: Re-fix typo in comment\n  x86: Simplify syscallhdr.sh\n  x86: Generate system call tables and unistd_*.h from tables\n  checksyscalls: Use arch/x86/syscalls/syscall_32.tbl as source\n  x86: Machine-readable syscall tables and scripts to process them\n  trace: Include \u003casm/asm-offsets.h\u003e in trace_syscalls.c\n  x86-64, ia32: Move compat_ni_syscall into C and its own file\n  x86-64, syscall: Adjust comment spacing and remove typo\n  kbuild: Add support for an \"archheaders\" target\n  kbuild: Add support for installing generated asm headers\n"
    },
    {
      "commit": "9f13a1fd452f11c18004ba2422a6384b424ec8a9",
      "tree": "6aa799a5e095f8cfa03c7386e6d0a20ebda595e4",
      "parents": [
        "024f78462c3da710642a54939888a92e28704653"
      ],
      "author": {
        "name": "Ben Hutchings",
        "email": "ben@decadent.org.uk",
        "time": "Tue Jan 10 03:04:32 2012 +0000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jan 11 15:50:11 2012 -0800"
      },
      "message": "cpu: Register a generic CPU device on architectures that currently do not\n\nfrv, h8300, m68k, microblaze, openrisc, score, um and xtensa currently\ndo not register a CPU device.  Add the config option GENERIC_CPU_DEVICES\nwhich causes a generic CPU device to be registered for each present CPU,\nand make all these architectures select it.\n\nRichard Weinberger \u003crichard@nod.at\u003e covered UML and suggested using\nper_cpu.\n\nSigned-off-by: Ben Hutchings \u003cben@decadent.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "eb59c505f8a5906ad2e053d14fab50eb8574fd6f",
      "tree": "c6e875adc12b481b916e847e8f80b8881a0fb02c",
      "parents": [
        "1619ed8f60959829d070d8f39cd2f8ca0e7135ce",
        "c233523b3d392e530033a7587d7970dc62a02361"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jan 08 13:10:57 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jan 08 13:10:57 2012 -0800"
      },
      "message": "Merge branch \u0027pm-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm\n\n* \u0027pm-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (76 commits)\n  PM / Hibernate: Implement compat_ioctl for /dev/snapshot\n  PM / Freezer: fix return value of freezable_schedule_timeout_killable()\n  PM / shmobile: Allow the A4R domain to be turned off at run time\n  PM / input / touchscreen: Make st1232 use device PM QoS constraints\n  PM / QoS: Introduce dev_pm_qos_add_ancestor_request()\n  PM / shmobile: Remove the stay_on flag from SH7372\u0027s PM domains\n  PM / shmobile: Don\u0027t include SH7372\u0027s INTCS in syscore suspend/resume\n  PM / shmobile: Add support for the sh7372 A4S power domain / sleep mode\n  PM: Drop generic_subsys_pm_ops\n  PM / Sleep: Remove forward-only callbacks from AMBA bus type\n  PM / Sleep: Remove forward-only callbacks from platform bus type\n  PM: Run the driver callback directly if the subsystem one is not there\n  PM / Sleep: Make pm_op() and pm_noirq_op() return callback pointers\n  PM/Devfreq: Add Exynos4-bus device DVFS driver for Exynos4210/4212/4412.\n  PM / Sleep: Merge internal functions in generic_ops.c\n  PM / Sleep: Simplify generic system suspend callbacks\n  PM / Hibernate: Remove deprecated hibernation snapshot ioctls\n  PM / Sleep: Fix freezer failures due to racy usermodehelper_is_disabled()\n  ARM: S3C64XX: Implement basic power domain support\n  PM / shmobile: Use common always on power domain governor\n  ...\n\nFix up trivial conflict in fs/xfs/xfs_buf.c due to removal of unused\nXBT_FORCE_SLEEP bit\n"
    },
    {
      "commit": "376613e81ddc68f545fd5c87ffc3ad222b7abe5f",
      "tree": "e1cb1cd43d05f57e4584dd5f9ce3eb965d0ddff1",
      "parents": [
        "0db49b72bce26341274b74fd968501489a361ae3",
        "0518469d0a32be1e6dd8850ff274d52d72cdb52d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 06 13:57:44 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 06 13:57:44 2012 -0800"
      },
      "message": "Merge branch \u0027timers-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\n* \u0027timers-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  x86, tsc: Skip TSC synchronization checks for tsc\u003dreliable\n  clocksource: Convert tcb_clksrc to use clocksource_register_hz/khz\n  clocksource: cris: Convert to clocksource_register_khz\n  clocksource: xtensa: Convert to clocksource_register_hz/khz\n  clocksource: um: Convert to clocksource_register_hz/khz\n  clocksource: parisc: Convert to clocksource_register_hz/khz\n  clocksource: m86k: Convert to clocksource_register_hz/khz\n  time: x86: Replace LATCH with PIT_LATCH in i8253 clocksource driver\n  time: x86: Remove CLOCK_TICK_RATE from acpi_pm clocksource driver\n  time: x86: Remove CLOCK_TICK_RATE from mach_timer.h\n  time: x86: Remove CLOCK_TICK_RATE from tsc code\n  time: Fix spelling mistakes in new comments\n  time: fix bogus comment in timekeeping_get_ns_raw\n"
    },
    {
      "commit": "1268fbc746ea1cd279886a740dcbad4ba5232225",
      "tree": "dc0ff36b4114992a3f67479e25132f5e99f36b9e",
      "parents": [
        "b58bdccaa8d908e0f71dae396468a0d3f7bb3125"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Thu Nov 17 18:48:14 2011 +0100"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Sun Dec 11 10:31:57 2011 -0800"
      },
      "message": "nohz: Remove tick_nohz_idle_enter_norcu() / tick_nohz_idle_exit_norcu()\n\nThose two APIs were provided to optimize the calls of\ntick_nohz_idle_enter() and rcu_idle_enter() into a single\nirq disabled section. This way no interrupt happening in-between would\nneedlessly process any RCU job.\n\nNow we are talking about an optimization for which benefits\nhave yet to be measured. Let\u0027s start simple and completely decouple\nidle rcu and dyntick idle logics to simplify.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nReviewed-by: Josh Triplett \u003cjosh@joshtriplett.org\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "2bbb6817c0ac1b5f2a68d720f364f98eeb1ac4fd",
      "tree": "05bb5ba54671a8eaeca4fe4406a75e820317e473",
      "parents": [
        "280f06774afedf849f0b34248ed6aff57d0f6908"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sat Oct 08 16:01:00 2011 +0200"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Sun Dec 11 10:31:36 2011 -0800"
      },
      "message": "nohz: Allow rcu extended quiescent state handling seperately from tick stop\n\nIt is assumed that rcu won\u0027t be used once we switch to tickless\nmode and until we restart the tick. However this is not always\ntrue, as in x86-64 where we dereference the idle notifiers after\nthe tick is stopped.\n\nTo prepare for fixing this, add two new APIs:\ntick_nohz_idle_enter_norcu() and tick_nohz_idle_exit_norcu().\n\nIf no use of RCU is made in the idle loop between\ntick_nohz_enter_idle() and tick_nohz_exit_idle() calls, the arch\nmust instead call the new *_norcu() version such that the arch doesn\u0027t\nneed to call rcu_idle_enter() and rcu_idle_exit().\n\nOtherwise the arch must call tick_nohz_enter_idle() and\ntick_nohz_exit_idle() and also call explicitly:\n\n- rcu_idle_enter() after its last use of RCU before the CPU is put\nto sleep.\n- rcu_idle_exit() before the first use of RCU after the CPU is woken\nup.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Mike Frysinger \u003cvapier@gentoo.org\u003e\nCc: Guan Xuetao \u003cgxt@mprc.pku.edu.cn\u003e\nCc: David Miller \u003cdavem@davemloft.net\u003e\nCc: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\nCc: Hans-Christian Egtvedt \u003chans-christian.egtvedt@atmel.com\u003e\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nCc: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: H. Peter Anvin \u003chpa@zytor.com\u003e\nCc: Russell King \u003clinux@arm.linux.org.uk\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "280f06774afedf849f0b34248ed6aff57d0f6908",
      "tree": "62ef683226d0569c0e6c3ba34ab2e6d85b2e047f",
      "parents": [
        "867f236bd12f5091df6dc7cc75f94d7fd982d78a"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Fri Oct 07 18:22:06 2011 +0200"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Sun Dec 11 10:31:35 2011 -0800"
      },
      "message": "nohz: Separate out irq exit and idle loop dyntick logic\n\nThe tick_nohz_stop_sched_tick() function, which tries to delay\nthe next timer tick as long as possible, can be called from two\nplaces:\n\n- From the idle loop to start the dytick idle mode\n- From interrupt exit if we have interrupted the dyntick\nidle mode, so that we reprogram the next tick event in\ncase the irq changed some internal state that requires this\naction.\n\nThere are only few minor differences between both that\nare handled by that function, driven by the ts-\u003einidle\ncpu variable and the inidle parameter. The whole guarantees\nthat we only update the dyntick mode on irq exit if we actually\ninterrupted the dyntick idle mode, and that we enter in RCU extended\nquiescent state from idle loop entry only.\n\nSplit this function into:\n\n- tick_nohz_idle_enter(), which sets ts-\u003einidle to 1, enters\ndynticks idle mode unconditionally if it can, and enters into RCU\nextended quiescent state.\n\n- tick_nohz_irq_exit() which only updates the dynticks idle mode\nwhen ts-\u003einidle is set (ie: if tick_nohz_idle_enter() has been called).\n\nTo maintain symmetry, tick_nohz_restart_sched_tick() has been renamed\ninto tick_nohz_idle_exit().\n\nThis simplifies the code and micro-optimize the irq exit path (no need\nfor local_irq_save there). This also prepares for the split between\ndynticks and rcu extended quiescent state logics. We\u0027ll need this split to\nfurther fix illegal uses of RCU in extended quiescent states in the idle\nloop.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Mike Frysinger \u003cvapier@gentoo.org\u003e\nCc: Guan Xuetao \u003cgxt@mprc.pku.edu.cn\u003e\nCc: David Miller \u003cdavem@davemloft.net\u003e\nCc: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\nCc: Hans-Christian Egtvedt \u003chans-christian.egtvedt@atmel.com\u003e\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nCc: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: H. Peter Anvin \u003chpa@zytor.com\u003e\nCc: Russell King \u003clinux@arm.linux.org.uk\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nReviewed-by: Josh Triplett \u003cjosh@joshtriplett.org\u003e\n"
    }
  ],
  "next": "79320bcbf0d860a7cb32d6d6d464d776b9dd76ce"
}
