)]}'
{
  "log": [
    {
      "commit": "d484864dd96e1830e7689510597707c1df8cd681",
      "tree": "51551708ba3f26d05575fa91daaf0c0d970a77c3",
      "parents": [
        "be87cfb47c5c740f7b17929bcd7c480b228513e0",
        "0f51596bd39a5c928307ffcffc9ba07f90f42a8b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 25 09:18:59 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 25 09:18:59 2012 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.linaro.org/people/mszyprowski/linux-dma-mapping\n\nPull CMA and ARM DMA-mapping updates from Marek Szyprowski:\n \"These patches contain two major updates for DMA mapping subsystem\n  (mainly for ARM architecture).  First one is Contiguous Memory\n  Allocator (CMA) which makes it possible for device drivers to allocate\n  big contiguous chunks of memory after the system has booted.\n\n  The main difference from the similar frameworks is the fact that CMA\n  allows to transparently reuse the memory region reserved for the big\n  chunk allocation as a system memory, so no memory is wasted when no\n  big chunk is allocated.  Once the alloc request is issued, the\n  framework migrates system pages to create space for the required big\n  chunk of physically contiguous memory.\n\n  For more information one can refer to nice LWN articles:\n\n   - \u0027A reworked contiguous memory allocator\u0027:\n\t\thttp://lwn.net/Articles/447405/\n\n   - \u0027CMA and ARM\u0027:\n\t\thttp://lwn.net/Articles/450286/\n\n   - \u0027A deep dive into CMA\u0027:\n\t\thttp://lwn.net/Articles/486301/\n\n   - and the following thread with the patches and links to all previous\n     versions:\n\t\thttps://lkml.org/lkml/2012/4/3/204\n\n  The main client for this new framework is ARM DMA-mapping subsystem.\n\n  The second part provides a complete redesign in ARM DMA-mapping\n  subsystem.  The core implementation has been changed to use common\n  struct dma_map_ops based infrastructure with the recent updates for\n  new dma attributes merged in v3.4-rc2.  This allows to use more than\n  one implementation of dma-mapping calls and change/select them on the\n  struct device basis.  The first client of this new infractructure is\n  dmabounce implementation which has been completely cut out of the\n  core, common code.\n\n  The last patch of this redesign update introduces a new, experimental\n  implementation of dma-mapping calls on top of generic IOMMU framework.\n  This lets ARM sub-platform to transparently use IOMMU for DMA-mapping\n  calls if one provides required IOMMU hardware.\n\n  For more information please refer to the following thread:\n\t\thttp://www.spinics.net/lists/arm-kernel/msg175729.html\n\n  The last patch merges changes from both updates and provides a\n  resolution for the conflicts which cannot be avoided when patches have\n  been applied on the same files (mainly arch/arm/mm/dma-mapping.c).\"\n\nAcked by Andrew Morton \u003cakpm@linux-foundation.org\u003e:\n \"Yup, this one please.  It\u0027s had much work, plenty of review and I\n  think even Russell is happy with it.\"\n\n* \u0027for-linus\u0027 of git://git.linaro.org/people/mszyprowski/linux-dma-mapping: (28 commits)\n  ARM: dma-mapping: use PMD size for section unmap\n  cma: fix migration mode\n  ARM: integrate CMA with DMA-mapping subsystem\n  X86: integrate CMA with DMA-mapping subsystem\n  drivers: add Contiguous Memory Allocator\n  mm: trigger page reclaim in alloc_contig_range() to stabilise watermarks\n  mm: extract reclaim code from __alloc_pages_direct_reclaim()\n  mm: Serialize access to min_free_kbytes\n  mm: page_isolation: MIGRATE_CMA isolation functions added\n  mm: mmzone: MIGRATE_CMA migration type added\n  mm: page_alloc: change fallbacks array handling\n  mm: page_alloc: introduce alloc_contig_range()\n  mm: compaction: export some of the functions\n  mm: compaction: introduce isolate_freepages_range()\n  mm: compaction: introduce map_pages()\n  mm: compaction: introduce isolate_migratepages_range()\n  mm: page_alloc: remove trailing whitespace\n  ARM: dma-mapping: add support for IOMMU mapper\n  ARM: dma-mapping: use alloc, mmap, free from dma_ops\n  ARM: dma-mapping: remove redundant code and do the cleanup\n  ...\n\nConflicts:\n\tarch/x86/include/asm/dma-mapping.h\n"
    },
    {
      "commit": "654443e20dfc0617231f28a07c96a979ee1a0239",
      "tree": "a0dc3f093eb13892539082e663607c34b4fc2d07",
      "parents": [
        "2c01e7bc46f10e9190818437e564f7e0db875ae9",
        "9cba26e66d09bf394ae5a739627a1dc8b7cae6f4"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 24 11:39:34 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 24 11:39:34 2012 -0700"
      },
      "message": "Merge branch \u0027perf-uprobes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull user-space probe instrumentation from Ingo Molnar:\n \"The uprobes code originates from SystemTap and has been used for years\n  in Fedora and RHEL kernels.  This version is much rewritten, reviews\n  from PeterZ, Oleg and myself shaped the end result.\n\n  This tree includes uprobes support in \u0027perf probe\u0027 - but SystemTap\n  (and other tools) can take advantage of user probe points as well.\n\n  Sample usage of uprobes via perf, for example to profile malloc()\n  calls without modifying user-space binaries.\n\n  First boot a new kernel with CONFIG_UPROBE_EVENT\u003dy enabled.\n\n  If you don\u0027t know which function you want to probe you can pick one\n  from \u0027perf top\u0027 or can get a list all functions that can be probed\n  within libc (binaries can be specified as well):\n\n\t$ perf probe -F -x /lib/libc.so.6\n\n  To probe libc\u0027s malloc():\n\n\t$ perf probe -x /lib64/libc.so.6 malloc\n\tAdded new event:\n\tprobe_libc:malloc    (on 0x7eac0)\n\n  You can now use it in all perf tools, such as:\n\n\tperf record -e probe_libc:malloc -aR sleep 1\n\n  Make use of it to create a call graph (as the flat profile is going to\n  look very boring):\n\n\t$ perf record -e probe_libc:malloc -gR make\n\t[ perf record: Woken up 173 times to write data ]\n\t[ perf record: Captured and wrote 44.190 MB perf.data (~1930712\n\n\t$ perf report | less\n\n\t  32.03%            git  libc-2.15.so   [.] malloc\n\t                    |\n\t                    --- malloc\n\n\t  29.49%            cc1  libc-2.15.so   [.] malloc\n\t                    |\n\t                    --- malloc\n\t                       |\n\t                       |--0.95%-- 0x208eb1000000000\n\t                       |\n\t                       |--0.63%-- htab_traverse_noresize\n\n\t  11.04%             as  libc-2.15.so   [.] malloc\n\t                     |\n\t                     --- malloc\n\t                        |\n\n\t   7.15%             ld  libc-2.15.so   [.] malloc\n\t                     |\n\t                     --- malloc\n\t                        |\n\n\t   5.07%             sh  libc-2.15.so   [.] malloc\n\t                     |\n\t                     --- malloc\n\t                        |\n\t   4.99%  python-config  libc-2.15.so   [.] malloc\n\t          |\n\t          --- malloc\n\t             |\n\t   4.54%           make  libc-2.15.so   [.] malloc\n\t                   |\n\t                   --- malloc\n\t                      |\n\t                      |--7.34%-- glob\n\t                      |          |\n\t                      |          |--93.18%-- 0x41588f\n\t                      |          |\n\t                      |           --6.82%-- glob\n\t                      |                     0x41588f\n\n\t   ...\n\n  Or:\n\n\t$ perf report -g flat | less\n\n\t# Overhead        Command  Shared Object      Symbol\n\t# ........  .............  .............  ..........\n\t#\n\t  32.03%            git  libc-2.15.so   [.] malloc\n\t          27.19%\n\t              malloc\n\n\t  29.49%            cc1  libc-2.15.so   [.] malloc\n\t          24.77%\n\t              malloc\n\n\t  11.04%             as  libc-2.15.so   [.] malloc\n\t          11.02%\n\t              malloc\n\n\t   7.15%             ld  libc-2.15.so   [.] malloc\n\t           6.57%\n\t              malloc\n\n\t ...\n\n  The core uprobes design is fairly straightforward: uprobes probe\n  points register themselves at (inode:offset) addresses of\n  libraries/binaries, after which all existing (or new) vmas that map\n  that address will have a software breakpoint injected at that address.\n  vmas are COW-ed to preserve original content.  The probe points are\n  kept in an rbtree.\n\n  If user-space executes the probed inode:offset instruction address\n  then an event is generated which can be recovered from the regular\n  perf event channels and mmap-ed ring-buffer.\n\n  Multiple probes at the same address are supported, they create a\n  dynamic callback list of event consumers.\n\n  The basic model is further complicated by the XOL speedup: the\n  original instruction that is probed is copied (in an architecture\n  specific fashion) and executed out of line when the probe triggers.\n  The XOL area is a single vma per process, with a fixed number of\n  entries (which limits probe execution parallelism).\n\n  The API: uprobes are installed/removed via\n  /sys/kernel/debug/tracing/uprobe_events, the API is integrated to\n  align with the kprobes interface as much as possible, but is separate\n  to it.\n\n  Injecting a probe point is privileged operation, which can be relaxed\n  by setting perf_paranoid to -1.\n\n  You can use multiple probes as well and mix them with kprobes and\n  regular PMU events or tracepoints, when instrumenting a task.\"\n\nFix up trivial conflicts in mm/memory.c due to previous cleanup of\nunmap_single_vma().\n\n* \u0027perf-uprobes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (21 commits)\n  perf probe: Detect probe target when m/x options are absent\n  perf probe: Provide perf interface for uprobes\n  tracing: Fix kconfig warning due to a typo\n  tracing: Provide trace events interface for uprobes\n  tracing: Extract out common code for kprobes/uprobes trace events\n  tracing: Modify is_delete, is_return from int to bool\n  uprobes/core: Decrement uprobe count before the pages are unmapped\n  uprobes/core: Make background page replacement logic account for rss_stat counters\n  uprobes/core: Optimize probe hits with the help of a counter\n  uprobes/core: Allocate XOL slots for uprobes use\n  uprobes/core: Handle breakpoint and singlestep exceptions\n  uprobes/core: Rename bkpt to swbp\n  uprobes/core: Make order of function parameters consistent across functions\n  uprobes/core: Make macro names consistent\n  uprobes: Update copyright notices\n  uprobes/core: Move insn to arch specific structure\n  uprobes/core: Remove uprobe_opcode_sz\n  uprobes/core: Make instruction tables volatile\n  uprobes: Move to kernel/events/\n  uprobes/core: Clean up, refactor and improve the code\n  ...\n"
    },
    {
      "commit": "cb60e3e65c1b96a4d6444a7a13dc7dd48bc15a2b",
      "tree": "4322be35db678f6299348a76ad60a2023954af7d",
      "parents": [
        "99262a3dafa3290866512ddfb32609198f8973e9",
        "ff2bb047c4bce9742e94911eeb44b4d6ff4734ab"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon May 21 20:27:36 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon May 21 20:27:36 2012 -0700"
      },
      "message": "Merge branch \u0027next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security\n\nPull security subsystem updates from James Morris:\n \"New notable features:\n   - The seccomp work from Will Drewry\n   - PR_{GET,SET}_NO_NEW_PRIVS from Andy Lutomirski\n   - Longer security labels for Smack from Casey Schaufler\n   - Additional ptrace restriction modes for Yama by Kees Cook\"\n\nFix up trivial context conflicts in arch/x86/Kconfig and include/linux/filter.h\n\n* \u0027next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security: (65 commits)\n  apparmor: fix long path failure due to disconnected path\n  apparmor: fix profile lookup for unconfined\n  ima: fix filename hint to reflect script interpreter name\n  KEYS: Don\u0027t check for NULL key pointer in key_validate()\n  Smack: allow for significantly longer Smack labels v4\n  gfp flags for security_inode_alloc()?\n  Smack: recursive tramsmute\n  Yama: replace capable() with ns_capable()\n  TOMOYO: Accept manager programs which do not start with / .\n  KEYS: Add invalidation support\n  KEYS: Do LRU discard in full keyrings\n  KEYS: Permit in-place link replacement in keyring list\n  KEYS: Perform RCU synchronisation on keys prior to key destruction\n  KEYS: Announce key type (un)registration\n  KEYS: Reorganise keys Makefile\n  KEYS: Move the key config into security/keys/Kconfig\n  KEYS: Use the compat keyctl() syscall wrapper on Sparc64 for Sparc32 compat\n  Yama: remove an unused variable\n  samples/seccomp: fix dependencies on arch macros\n  Yama: add additional ptrace scopes\n  ...\n"
    },
    {
      "commit": "c64be2bb1c6eb43c838b2c6d57b074078be208dd",
      "tree": "d0720eda4a440ff91f3296b0f90cc53ac514d4b9",
      "parents": [
        "49f223a9cd96c7293d7258ff88c2bdf83065f69c"
      ],
      "author": {
        "name": "Marek Szyprowski",
        "email": "m.szyprowski@samsung.com",
        "time": "Thu Dec 29 13:09:51 2011 +0100"
      },
      "committer": {
        "name": "Marek Szyprowski",
        "email": "m.szyprowski@samsung.com",
        "time": "Mon May 21 15:09:37 2012 +0200"
      },
      "message": "drivers: add Contiguous Memory Allocator\n\nThe Contiguous Memory Allocator is a set of helper functions for DMA\nmapping framework that improves allocations of contiguous memory chunks.\n\nCMA grabs memory on system boot, marks it with MIGRATE_CMA migrate type\nand gives back to the system. Kernel is allowed to allocate only movable\npages within CMA\u0027s managed memory so that it can be used for example for\npage cache when DMA mapping do not use it. On\ndma_alloc_from_contiguous() request such pages are migrated out of CMA\narea to free required contiguous block and fulfill the request. This\nallows to allocate large contiguous chunks of memory at any time\nassuming that there is enough free memory available in the system.\n\nThis code is heavily based on earlier works by Michal Nazarewicz.\n\nSigned-off-by: Marek Szyprowski \u003cm.szyprowski@samsung.com\u003e\nSigned-off-by: Kyungmin Park \u003ckyungmin.park@samsung.com\u003e\nSigned-off-by: Michal Nazarewicz \u003cmina86@mina86.com\u003e\nAcked-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nTested-by: Rob Clark \u003crob.clark@linaro.org\u003e\nTested-by: Ohad Ben-Cohen \u003cohad@wizery.com\u003e\nTested-by: Benjamin Gaignard \u003cbenjamin.gaignard@linaro.org\u003e\nTested-by: Robert Nelson \u003crobertcnelson@gmail.com\u003e\nTested-by: Barry Song \u003cBaohua.Song@csr.com\u003e\n"
    },
    {
      "commit": "ec83db0f78cd44c3b586ec1c3a348d1a8a389797",
      "tree": "37d9a919b440b5e9d49ead8d2e180a8ea36ce417",
      "parents": [
        "f3f096cfedf8113380c56fc855275cc75cd8cf55"
      ],
      "author": {
        "name": "Srikar Dronamraju",
        "email": "srikar@linux.vnet.ibm.com",
        "time": "Tue May 08 16:41:26 2012 +0530"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Tue May 08 14:17:25 2012 +0200"
      },
      "message": "tracing: Fix kconfig warning due to a typo\n\nCommit f3f096cfe (\"tracing: Provide trace events interface for\nuprobes\") throws a warning about unmet dependencies.\n\nThe exact warning message is:\n\twarning: (UPROBE_EVENT) selects UPROBES which has unmet direct dependencies (UPROBE_EVENTS \u0026\u0026 PERF_EVENTS)\n\nThis is due to a typo in arch/Kconfig file. Fix similar typos in\nthe uprobetracer documentation.\n\nAlso add sample format of a uprobe event in the uprobetracer\ndocumentation as suggested by Masami Hiramatsu.\n\nReported-by: Stephen Boyd \u003csboyd@codeaurora.org\u003e\nReported-by: Ingo Molnar \u003cmingo@kernel.org\u003e\nSigned-off-by: Srikar Dronamraju \u003csrikar@linux.vnet.ibm.com\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@infradead.org\u003e\nCc: Masami Hiramatsu \u003cmasami.hiramatsu.pt@hitachi.com\u003e\nCc: Anton Arapov \u003canton@redhat.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nLink: http://lkml.kernel.org/r/20120508111126.21004.38285.sendpatchset@srdronam.in.ibm.com\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "f5e10287367dcffb5504d19c83e85ca041ca2596",
      "tree": "caa6684a16ed32809b328f858711758dc7b0c9bb",
      "parents": [
        "66bb4cda55477efeb1be5c2cbd3785a69b088a8a"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat May 05 15:05:48 2012 +0000"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue May 08 14:08:46 2012 +0200"
      },
      "message": "task_allocator: Use config switches instead of magic defines\n\nReplace __HAVE_ARCH_TASK_ALLOCATOR and __HAVE_ARCH_THREAD_ALLOCATOR\nwith proper config switches.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Sam Ravnborg \u003csam@ravnborg.org\u003e\nCc: Tony Luck \u003ctony.luck@intel.com\u003e\nLink: http://lkml.kernel.org/r/20120505150142.371309416@linutronix.de\n"
    },
    {
      "commit": "f3f096cfedf8113380c56fc855275cc75cd8cf55",
      "tree": "b8d0553afc8cebf6dd320d094206e93df5d95794",
      "parents": [
        "8ab83f56475ec9151645a888dfe1941f4a92091d"
      ],
      "author": {
        "name": "Srikar Dronamraju",
        "email": "srikar@linux.vnet.ibm.com",
        "time": "Wed Apr 11 16:00:43 2012 +0530"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Mon May 07 14:30:17 2012 +0200"
      },
      "message": "tracing: Provide trace events interface for uprobes\n\nImplements trace_event support for uprobes. In its current form\nit can be used to put probes at a specified offset in a file and\ndump the required registers when the code flow reaches the\nprobed address.\n\nThe following example shows how to dump the instruction pointer\nand %ax a register at the probed text address.  Here we are\ntrying to probe zfree in /bin/zsh:\n\n # cd /sys/kernel/debug/tracing/\n # cat /proc/`pgrep  zsh`/maps | grep /bin/zsh | grep r-xp\n 00400000-0048a000 r-xp 00000000 08:03 130904 /bin/zsh\n # objdump -T /bin/zsh | grep -w zfree\n 0000000000446420 g    DF .text  0000000000000012  Base\n zfree # echo \u0027p /bin/zsh:0x46420 %ip %ax\u0027 \u003e uprobe_events\n # cat uprobe_events\n p:uprobes/p_zsh_0x46420 /bin/zsh:0x0000000000046420\n # echo 1 \u003e events/uprobes/enable\n # sleep 20\n # echo 0 \u003e events/uprobes/enable\n # cat trace\n # tracer: nop\n #\n #           TASK-PID    CPU#    TIMESTAMP  FUNCTION\n #              | |       |          |         |\n              zsh-24842 [006] 258544.995456: p_zsh_0x46420: (0x446420) arg1\u003d446421 arg2\u003d79\n              zsh-24842 [007] 258545.000270: p_zsh_0x46420: (0x446420) arg1\u003d446421 arg2\u003d79\n              zsh-24842 [002] 258545.043929: p_zsh_0x46420: (0x446420) arg1\u003d446421 arg2\u003d79\n              zsh-24842 [004] 258547.046129: p_zsh_0x46420: (0x446420) arg1\u003d446421 arg2\u003d79\n\nSigned-off-by: Srikar Dronamraju \u003csrikar@linux.vnet.ibm.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nAcked-by: Masami Hiramatsu \u003cmasami.hiramatsu.pt@hitachi.com\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nCc: Jim Keniston \u003cjkenisto@linux.vnet.ibm.com\u003e\nCc: Linux-mm \u003clinux-mm@kvack.org\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Andi Kleen \u003candi@firstfloor.org\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@infradead.org\u003e\nCc: Anton Arapov \u003canton@redhat.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nLink: http://lkml.kernel.org/r/20120411103043.GB29437@linux.vnet.ibm.com\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\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": "a4a2eb490e38aaff61eafcb8cde6725ad1be22ab",
      "tree": "cc626df26302e96f3fc7247f3fe895d2eddb69f6",
      "parents": [
        "c6ae063aaf3786b9db7f19a90bf4ed8aaebb7f90"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu May 03 09:02:48 2012 +0000"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat May 05 13:00:21 2012 +0200"
      },
      "message": "init_task: Create generic init_task instance\n\nAll archs define init_task in the same way (except ia64, but there is\nno particular reason why ia64 cannot use the common version). Create a\ngeneric instance so all archs can be converted over.\n\nThe config switch is temporary and will be removed when all archs are\nconverted over.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Chen Liqin \u003cliqin.chen@sunplusct.com\u003e\nCc: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\nCc: Chris Zankel \u003cchris@zankel.net\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: David S. Miller \u003cdavem@davemloft.net\u003e\nCc: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nCc: Guan Xuetao \u003cgxt@mprc.pku.edu.cn\u003e\nCc: Haavard Skinnemoen \u003chskinnemoen@gmail.com\u003e\nCc: Hirokazu Takata \u003ctakata@linux-m32r.org\u003e\nCc: James E.J. Bottomley \u003cjejb@parisc-linux.org\u003e\nCc: Jesper Nilsson \u003cjesper.nilsson@axis.com\u003e\nCc: Jonas Bonn \u003cjonas@southpole.se\u003e\nCc: Mark Salter \u003cmsalter@redhat.com\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Matt Turner \u003cmattst88@gmail.com\u003e\nCc: Michal Simek \u003cmonstr@monstr.eu\u003e\nCc: Mike Frysinger \u003cvapier@gentoo.org\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nCc: Richard Kuo \u003crkuo@codeaurora.org\u003e\nCc: Richard Weinberger \u003crichard@nod.at\u003e\nCc: Russell King \u003clinux@arm.linux.org.uk\u003e\nCc: Yoshinori Sato \u003cysato@users.sourceforge.jp\u003e\nLink: http://lkml.kernel.org/r/20120503085034.092585287@linutronix.de\n"
    },
    {
      "commit": "29d5e0476e1c4a513859e7858845ad172f560389",
      "tree": "b353eee6e4cdf57207e6eba5d80564a4e8811cc9",
      "parents": [
        "38498a67aa2cf8c80754b8d304bfacc10bc582b5"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Apr 20 13:05:45 2012 +0000"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Apr 26 12:06:09 2012 +0200"
      },
      "message": "smp: Provide generic idle thread allocation\n\nAll SMP architectures have magic to fork the idle task and to store it\nfor reusage when cpu hotplug is enabled. Provide a generic\ninfrastructure for it.\n\nCreate/reinit the idle thread for the cpu which is brought up in the\ngeneric code and hand the thread pointer to the architecture code via\n__cpu_up().\n\nNote, that fork_idle() is called via a workqueue, because this\nguarantees that the idle thread does not get a reference to a user\nspace VM. This can happen when the boot process did not bring up all\npossible cpus and a later cpu_up() is initiated via the sysfs\ninterface. In that case fork_idle() would be called in the context of\nthe user space task and take a reference on the user space VM.\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\nAcked-by: Venkatesh Pallipadi \u003cvenki@google.com\u003e\nLink: http://lkml.kernel.org/r/20120420124557.102478630@linutronix.de\n"
    },
    {
      "commit": "6ac1ef482d7ae0c690f1640bf6eb818ff9a2d91e",
      "tree": "021cc9f6b477146fcebe6f3be4752abfa2ba18a9",
      "parents": [
        "682968e0c425c60f0dde37977e5beb2b12ddc4cc",
        "a385ec4f11bdcf81af094c03e2444ee9b7fad2e5"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Sat Apr 14 13:18:27 2012 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Sat Apr 14 13:19:04 2012 +0200"
      },
      "message": "Merge branch \u0027perf/core\u0027 into perf/uprobes\n\nMerge in latest upstream (and the latest perf development tree),\nto prepare for tooling changes, and also to pick up v3.4 MM\nchanges that the uprobes code needs to take care of.\n\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "fb0fadf9b213f55ca9368f3edafe51101d5d2deb",
      "tree": "e3e999f0b44a7b4a08b208ae222f509917fc675b",
      "parents": [
        "bb6ea4301a1109afdacaee576fedbfcd7152fc86"
      ],
      "author": {
        "name": "Will Drewry",
        "email": "wad@chromium.org",
        "time": "Thu Apr 12 16:48:02 2012 -0500"
      },
      "committer": {
        "name": "James Morris",
        "email": "james.l.morris@oracle.com",
        "time": "Sat Apr 14 11:13:21 2012 +1000"
      },
      "message": "ptrace,seccomp: Add PTRACE_SECCOMP support\n\nThis change adds support for a new ptrace option, PTRACE_O_TRACESECCOMP,\nand a new return value for seccomp BPF programs, SECCOMP_RET_TRACE.\n\nWhen a tracer specifies the PTRACE_O_TRACESECCOMP ptrace option, the\ntracer will be notified, via PTRACE_EVENT_SECCOMP, for any syscall that\nresults in a BPF program returning SECCOMP_RET_TRACE.  The 16-bit\nSECCOMP_RET_DATA mask of the BPF program return value will be passed as\nthe ptrace_message and may be retrieved using PTRACE_GETEVENTMSG.\n\nIf the subordinate process is not using seccomp filter, then no\nsystem call notifications will occur even if the option is specified.\n\nIf there is no tracer with PTRACE_O_TRACESECCOMP when SECCOMP_RET_TRACE\nis returned, the system call will not be executed and an -ENOSYS errno\nwill be returned to userspace.\n\nThis change adds a dependency on the system call slow path.  Any future\nefforts to use the system call fast path for seccomp filter will need to\naddress this restriction.\n\nSigned-off-by: Will Drewry \u003cwad@chromium.org\u003e\nAcked-by: Eric Paris \u003ceparis@redhat.com\u003e\n\nv18: - rebase\n     - comment fatal_signal check\n     - acked-by\n     - drop secure_computing_int comment\nv17: - ...\nv16: - update PT_TRACE_MASK to 0xbf4 so that STOP isn\u0027t clear on SETOPTIONS call (indan@nul.nu)\n       [note PT_TRACE_MASK disappears in linux-next]\nv15: - add audit support for non-zero return codes\n     - clean up style (indan@nul.nu)\nv14: - rebase/nochanges\nv13: - rebase on to 88ebdda6159ffc15699f204c33feb3e431bf9bdc\n       (Brings back a change to ptrace.c and the masks.)\nv12: - rebase to linux-next\n     - use ptrace_event and update arch/Kconfig to mention slow-path dependency\n     - drop all tracehook changes and inclusion (oleg@redhat.com)\nv11: - invert the logic to just make it a PTRACE_SYSCALL accelerator\n       (indan@nul.nu)\nv10: - moved to PTRACE_O_SECCOMP / PT_TRACE_SECCOMP\nv9:  - n/a\nv8:  - guarded PTRACE_SECCOMP use with an ifdef\nv7:  - introduced\nSigned-off-by: James Morris \u003cjames.l.morris@oracle.com\u003e\n"
    },
    {
      "commit": "bb6ea4301a1109afdacaee576fedbfcd7152fc86",
      "tree": "5412219057d8e0ec2a30d0a1ad4f6b7dd398c754",
      "parents": [
        "a0727e8ce513fe6890416da960181ceb10fbfae6"
      ],
      "author": {
        "name": "Will Drewry",
        "email": "wad@chromium.org",
        "time": "Thu Apr 12 16:48:01 2012 -0500"
      },
      "committer": {
        "name": "James Morris",
        "email": "james.l.morris@oracle.com",
        "time": "Sat Apr 14 11:13:21 2012 +1000"
      },
      "message": "seccomp: Add SECCOMP_RET_TRAP\n\nAdds a new return value to seccomp filters that triggers a SIGSYS to be\ndelivered with the new SYS_SECCOMP si_code.\n\nThis allows in-process system call emulation, including just specifying\nan errno or cleanly dumping core, rather than just dying.\n\nSuggested-by: Markus Gutschke \u003cmarkus@chromium.org\u003e\nSuggested-by: Julien Tinnes \u003cjln@chromium.org\u003e\nSigned-off-by: Will Drewry \u003cwad@chromium.org\u003e\nAcked-by: Eric Paris \u003ceparis@redhat.com\u003e\n\nv18: - acked-by, rebase\n     - don\u0027t mention secure_computing_int() anymore\nv15: - use audit_seccomp/skip\n     - pad out error spacing; clean up switch (indan@nul.nu)\nv14: - n/a\nv13: - rebase on to 88ebdda6159ffc15699f204c33feb3e431bf9bdc\nv12: - rebase on to linux-next\nv11: - clarify the comment (indan@nul.nu)\n     - s/sigtrap/sigsys\nv10: - use SIGSYS, syscall_get_arch, updates arch/Kconfig\n       note suggested-by (though original suggestion had other behaviors)\nv9:  - changes to SIGILL\nv8:  - clean up based on changes to dependent patches\nv7:  - introduction\nSigned-off-by: James Morris \u003cjames.l.morris@oracle.com\u003e\n"
    },
    {
      "commit": "acf3b2c71ed20c53dc69826683417703c2a88059",
      "tree": "99ced75da46a0ab7953f0c173dd885c09f570fc0",
      "parents": [
        "3dc1c1b2d2ed7507ce8a379814ad75745ff97ebe"
      ],
      "author": {
        "name": "Will Drewry",
        "email": "wad@chromium.org",
        "time": "Thu Apr 12 16:47:59 2012 -0500"
      },
      "committer": {
        "name": "James Morris",
        "email": "james.l.morris@oracle.com",
        "time": "Sat Apr 14 11:13:21 2012 +1000"
      },
      "message": "seccomp: add SECCOMP_RET_ERRNO\n\nThis change adds the SECCOMP_RET_ERRNO as a valid return value from a\nseccomp filter.  Additionally, it makes the first use of the lower\n16-bits for storing a filter-supplied errno.  16-bits is more than\nenough for the errno-base.h calls.\n\nReturning errors instead of immediately terminating processes that\nviolate seccomp policy allow for broader use of this functionality\nfor kernel attack surface reduction.  For example, a linux container\ncould maintain a whitelist of pre-existing system calls but drop\nall new ones with errnos.  This would keep a logically static attack\nsurface while providing errnos that may allow for graceful failure\nwithout the downside of do_exit() on a bad call.\n\nThis change also changes the signature of __secure_computing.  It\nappears the only direct caller is the arm entry code and it clobbers\nany possible return value (register) immediately.\n\nSigned-off-by: Will Drewry \u003cwad@chromium.org\u003e\nAcked-by: Serge Hallyn \u003cserge.hallyn@canonical.com\u003e\nReviewed-by: Kees Cook \u003ckeescook@chromium.org\u003e\nAcked-by: Eric Paris \u003ceparis@redhat.com\u003e\n\nv18: - fix up comments and rebase\n     - fix bad var name which was fixed in later revs\n     - remove _int() and just change the __secure_computing signature\nv16-v17: ...\nv15: - use audit_seccomp and add a skip label. (eparis@redhat.com)\n     - clean up and pad out return codes (indan@nul.nu)\nv14: - no change/rebase\nv13: - rebase on to 88ebdda6159ffc15699f204c33feb3e431bf9bdc\nv12: - move to WARN_ON if filter is NULL\n       (oleg@redhat.com, luto@mit.edu, keescook@chromium.org)\n     - return immediately for filter\u003d\u003dNULL (keescook@chromium.org)\n     - change evaluation to only compare the ACTION so that layered\n       errnos don\u0027t result in the lowest one being returned.\n       (keeschook@chromium.org)\nv11: - check for NULL filter (keescook@chromium.org)\nv10: - change loaders to fn\n v9: - n/a\n v8: - update Kconfig to note new need for syscall_set_return_value.\n     - reordered such that TRAP behavior follows on later.\n     - made the for loop a little less indent-y\n v7: - introduced\nSigned-off-by: James Morris \u003cjames.l.morris@oracle.com\u003e\n"
    },
    {
      "commit": "e2cfabdfd075648216f99c2c03821cf3f47c1727",
      "tree": "d207e062d5b0bbd421aace9f7dfdc144aab4ed18",
      "parents": [
        "b7456536cf9466b402b540c5588d79a4177c723a"
      ],
      "author": {
        "name": "Will Drewry",
        "email": "wad@chromium.org",
        "time": "Thu Apr 12 16:47:57 2012 -0500"
      },
      "committer": {
        "name": "James Morris",
        "email": "james.l.morris@oracle.com",
        "time": "Sat Apr 14 11:13:20 2012 +1000"
      },
      "message": "seccomp: add system call filtering using BPF\n\n[This patch depends on luto@mit.edu\u0027s no_new_privs patch:\n   https://lkml.org/lkml/2012/1/30/264\n The whole series including Andrew\u0027s patches can be found here:\n   https://github.com/redpig/linux/tree/seccomp\n Complete diff here:\n   https://github.com/redpig/linux/compare/1dc65fed...seccomp\n]\n\nThis patch adds support for seccomp mode 2.  Mode 2 introduces the\nability for unprivileged processes to install system call filtering\npolicy expressed in terms of a Berkeley Packet Filter (BPF) program.\nThis program will be evaluated in the kernel for each system call\nthe task makes and computes a result based on data in the format\nof struct seccomp_data.\n\nA filter program may be installed by calling:\n  struct sock_fprog fprog \u003d { ... };\n  ...\n  prctl(PR_SET_SECCOMP, SECCOMP_MODE_FILTER, \u0026fprog);\n\nThe return value of the filter program determines if the system call is\nallowed to proceed or denied.  If the first filter program installed\nallows prctl(2) calls, then the above call may be made repeatedly\nby a task to further reduce its access to the kernel.  All attached\nprograms must be evaluated before a system call will be allowed to\nproceed.\n\nFilter programs will be inherited across fork/clone and execve.\nHowever, if the task attaching the filter is unprivileged\n(!CAP_SYS_ADMIN) the no_new_privs bit will be set on the task.  This\nensures that unprivileged tasks cannot attach filters that affect\nprivileged tasks (e.g., setuid binary).\n\nThere are a number of benefits to this approach. A few of which are\nas follows:\n- BPF has been exposed to userland for a long time\n- BPF optimization (and JIT\u0027ing) are well understood\n- Userland already knows its ABI: system call numbers and desired\n  arguments\n- No time-of-check-time-of-use vulnerable data accesses are possible.\n- system call arguments are loaded on access only to minimize copying\n  required for system call policy decisions.\n\nMode 2 support is restricted to architectures that enable\nHAVE_ARCH_SECCOMP_FILTER.  In this patch, the primary dependency is on\nsyscall_get_arguments().  The full desired scope of this feature will\nadd a few minor additional requirements expressed later in this series.\nBased on discussion, SECCOMP_RET_ERRNO and SECCOMP_RET_TRACE seem to be\nthe desired additional functionality.\n\nNo architectures are enabled in this patch.\n\nSigned-off-by: Will Drewry \u003cwad@chromium.org\u003e\nAcked-by: Serge Hallyn \u003cserge.hallyn@canonical.com\u003e\nReviewed-by: Indan Zupancic \u003cindan@nul.nu\u003e\nAcked-by: Eric Paris \u003ceparis@redhat.com\u003e\nReviewed-by: Kees Cook \u003ckeescook@chromium.org\u003e\n\nv18: - rebase to v3.4-rc2\n     - s/chk/check/ (akpm@linux-foundation.org,jmorris@namei.org)\n     - allocate with GFP_KERNEL|__GFP_NOWARN (indan@nul.nu)\n     - add a comment for get_u32 regarding endianness (akpm@)\n     - fix other typos, style mistakes (akpm@)\n     - added acked-by\nv17: - properly guard seccomp filter needed headers (leann@ubuntu.com)\n     - tighten return mask to 0x7fff0000\nv16: - no change\nv15: - add a 4 instr penalty when counting a path to account for seccomp_filter\n       size (indan@nul.nu)\n     - drop the max insns to 256KB (indan@nul.nu)\n     - return ENOMEM if the max insns limit has been hit (indan@nul.nu)\n     - move IP checks after args (indan@nul.nu)\n     - drop !user_filter check (indan@nul.nu)\n     - only allow explicit bpf codes (indan@nul.nu)\n     - exit_code -\u003e exit_sig\nv14: - put/get_seccomp_filter takes struct task_struct\n       (indan@nul.nu,keescook@chromium.org)\n     - adds seccomp_chk_filter and drops general bpf_run/chk_filter user\n     - add seccomp_bpf_load for use by net/core/filter.c\n     - lower max per-process/per-hierarchy: 1MB\n     - moved nnp/capability check prior to allocation\n       (all of the above: indan@nul.nu)\nv13: - rebase on to 88ebdda6159ffc15699f204c33feb3e431bf9bdc\nv12: - added a maximum instruction count per path (indan@nul.nu,oleg@redhat.com)\n     - removed copy_seccomp (keescook@chromium.org,indan@nul.nu)\n     - reworded the prctl_set_seccomp comment (indan@nul.nu)\nv11: - reorder struct seccomp_data to allow future args expansion (hpa@zytor.com)\n     - style clean up, @compat dropped, compat_sock_fprog32 (indan@nul.nu)\n     - do_exit(SIGSYS) (keescook@chromium.org, luto@mit.edu)\n     - pare down Kconfig doc reference.\n     - extra comment clean up\nv10: - seccomp_data has changed again to be more aesthetically pleasing\n       (hpa@zytor.com)\n     - calling convention is noted in a new u32 field using syscall_get_arch.\n       This allows for cross-calling convention tasks to use seccomp filters.\n       (hpa@zytor.com)\n     - lots of clean up (thanks, Indan!)\n v9: - n/a\n v8: - use bpf_chk_filter, bpf_run_filter. update load_fns\n     - Lots of fixes courtesy of indan@nul.nu:\n     -- fix up load behavior, compat fixups, and merge alloc code,\n     -- renamed pc and dropped __packed, use bool compat.\n     -- Added a hidden CONFIG_SECCOMP_FILTER to synthesize non-arch\n        dependencies\n v7:  (massive overhaul thanks to Indan, others)\n     - added CONFIG_HAVE_ARCH_SECCOMP_FILTER\n     - merged into seccomp.c\n     - minimal seccomp_filter.h\n     - no config option (part of seccomp)\n     - no new prctl\n     - doesn\u0027t break seccomp on systems without asm/syscall.h\n       (works but arg access always fails)\n     - dropped seccomp_init_task, extra free functions, ...\n     - dropped the no-asm/syscall.h code paths\n     - merges with network sk_run_filter and sk_chk_filter\n v6: - fix memory leak on attach compat check failure\n     - require no_new_privs || CAP_SYS_ADMIN prior to filter\n       installation. (luto@mit.edu)\n     - s/seccomp_struct_/seccomp_/ for macros/functions (amwang@redhat.com)\n     - cleaned up Kconfig (amwang@redhat.com)\n     - on block, note if the call was compat (so the # means something)\n v5: - uses syscall_get_arguments\n       (indan@nul.nu,oleg@redhat.com, mcgrathr@chromium.org)\n      - uses union-based arg storage with hi/lo struct to\n        handle endianness.  Compromises between the two alternate\n        proposals to minimize extra arg shuffling and account for\n        endianness assuming userspace uses offsetof().\n        (mcgrathr@chromium.org, indan@nul.nu)\n      - update Kconfig description\n      - add include/seccomp_filter.h and add its installation\n      - (naive) on-demand syscall argument loading\n      - drop seccomp_t (eparis@redhat.com)\n v4:  - adjusted prctl to make room for PR_[SG]ET_NO_NEW_PRIVS\n      - now uses current-\u003eno_new_privs\n        (luto@mit.edu,torvalds@linux-foundation.com)\n      - assign names to seccomp modes (rdunlap@xenotime.net)\n      - fix style issues (rdunlap@xenotime.net)\n      - reworded Kconfig entry (rdunlap@xenotime.net)\n v3:  - macros to inline (oleg@redhat.com)\n      - init_task behavior fixed (oleg@redhat.com)\n      - drop creator entry and extra NULL check (oleg@redhat.com)\n      - alloc returns -EINVAL on bad sizing (serge.hallyn@canonical.com)\n      - adds tentative use of \"always_unprivileged\" as per\n        torvalds@linux-foundation.org and luto@mit.edu\n v2:  - (patch 2 only)\nSigned-off-by: James Morris \u003cjames.l.morris@oracle.com\u003e\n"
    },
    {
      "commit": "50483c3268918ee51a56d1baa39b9149d2d0d521",
      "tree": "2fb9c927c319628ebddfd118c10df3e626bdd1c4",
      "parents": [
        "7fda0412c5f7afdd1a5ff518f98dee5157266d8a",
        "1631fcea8399da5e80a80084b3b8c5bfd99d21e7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 29 14:49:45 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 29 14:49:45 2012 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile\n\nPull arch/tile (really asm-generic) update from Chris Metcalf:\n \"These are a couple of asm-generic changes that apply to tile.\"\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile:\n  compat: use sys_sendfile64() implementation for sendfile syscall\n  [PATCH v3] ipc: provide generic compat versions of IPC syscalls\n"
    },
    {
      "commit": "d314d74c695f967e10598467a326f41c78ed1e20",
      "tree": "71fabe9cf1f2b99f16f7f9cc3f809955038a2d0c",
      "parents": [
        "b502bd1152472dc1b98c60434f23c23b280c7b94"
      ],
      "author": {
        "name": "Cong Wang",
        "email": "xiyou.wangcong@gmail.com",
        "time": "Fri Mar 23 15:01:51 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 23 16:58:31 2012 -0700"
      },
      "message": "nmi watchdog: do not use cpp symbol in Kconfig\n\nARCH_HAS_NMI_WATCHDOG is a macro defined by arch, but config\nHARDLOCKUP_DETECTOR depends on it.  This is wrong, ARCH_HAS_NMI_WATCHDOG\nhas to be a Kconfig config, and arch\u0027s need it should select it\nexplicitly.\n\nSigned-off-by: WANG Cong \u003cxiyou.wangcong@gmail.com\u003e\nAcked-by: Don Zickus \u003cdzickus@redhat.com\u003e\nAcked-by: Mike Frysinger \u003cvapier@gentoo.org\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: David Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "48b25c43e6eebb6c0edf72935e8720385beca76b",
      "tree": "d1c774a79ef5a8373b093479c3dabe9bf16aec07",
      "parents": [
        "fde7d9049e55ab85a390be7f415d74c9f62dd0f9"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Thu Mar 15 13:13:38 2012 -0400"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Thu Mar 15 13:13:38 2012 -0400"
      },
      "message": "[PATCH v3] ipc: provide generic compat versions of IPC syscalls\n\nWhen using the \"compat\" APIs, architectures will generally want to\nbe able to make direct syscalls to msgsnd(), shmctl(), etc., and\nin the kernel we would want them to be handled directly by\ncompat_sys_xxx() functions, as is true for other compat syscalls.\n\nHowever, for historical reasons, several of the existing compat IPC\nsyscalls do not do this.  semctl() expects a pointer to the fourth\nargument, instead of the fourth argument itself.  msgsnd(), msgrcv()\nand shmat() expect arguments in different order.\n\nThis change adds an ARCH_WANT_OLD_COMPAT_IPC config option that can be\nset to preserve this behavior for ports that use it (x86, sparc, powerpc,\ns390, and mips).  No actual semantics are changed for those architectures,\nand there is only a minimal amount of code refactoring in ipc/compat.c.\n\nNewer architectures like tile (and perhaps future architectures such\nas arm64 and unicore64) should not select this option, and thus can\navoid having any IPC-specific code at all in their architecture-specific\ncompat layer.  In the same vein, if this option is not selected, IPC_64\nmode is assumed, since that\u0027s what the \u003casm-generic\u003e headers expect.\n\nThe workaround code in \"tile\" for msgsnd() and msgrcv() is removed\nwith this change; it also fixes the bug that shmat() and semctl() were\nnot being properly handled.\n\nReviewed-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\n"
    },
    {
      "commit": "c5905afb0ee6550b42c49213da1c22d67316c194",
      "tree": "253fdb322e6e5b257ffda3b9b66bce90a473a6f7",
      "parents": [
        "1cfa60dc7d7c7cc774a44eee47ff135a644a1f31"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Feb 24 08:31:31 2012 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Feb 24 10:05:59 2012 +0100"
      },
      "message": "static keys: Introduce \u0027struct static_key\u0027, static_key_true()/false() and static_key_slow_[inc|dec]()\n\nSo here\u0027s a boot tested patch on top of Jason\u0027s series that does\nall the cleanups I talked about and turns jump labels into a\nmore intuitive to use facility. It should also address the\nvarious misconceptions and confusions that surround jump labels.\n\nTypical usage scenarios:\n\n        #include \u003clinux/static_key.h\u003e\n\n        struct static_key key \u003d STATIC_KEY_INIT_TRUE;\n\n        if (static_key_false(\u0026key))\n                do unlikely code\n        else\n                do likely code\n\nOr:\n\n        if (static_key_true(\u0026key))\n                do likely code\n        else\n                do unlikely code\n\nThe static key is modified via:\n\n        static_key_slow_inc(\u0026key);\n        ...\n        static_key_slow_dec(\u0026key);\n\nThe \u0027slow\u0027 prefix makes it abundantly clear that this is an\nexpensive operation.\n\nI\u0027ve updated all in-kernel code to use this everywhere. Note\nthat I (intentionally) have not pushed through the rename\nblindly through to the lowest levels: the actual jump-label\npatching arch facility should be named like that, so we want to\ndecouple jump labels from the static-key facility a bit.\n\nOn non-jump-label enabled architectures static keys default to\nlikely()/unlikely() branches.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nAcked-by: Jason Baron \u003cjbaron@redhat.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: a.p.zijlstra@chello.nl\nCc: mathieu.desnoyers@efficios.com\nCc: davem@davemloft.net\nCc: ddaney.cavm@gmail.com\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nLink: http://lkml.kernel.org/r/20120222085809.GA26397@elte.hu\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "a5f4374a9610fd7286c2164d4e680436727eff71",
      "tree": "8ccabfd8afe9f58a847ab80b8a6a10eee08009a8",
      "parents": [
        "7b2d81d48a2d8e37efb6ce7b4d5ef58822b30d89"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 22 11:01:49 2012 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 22 11:08:00 2012 +0100"
      },
      "message": "uprobes: Move to kernel/events/\n\nConsolidate the uprobes code under kernel/events/, where the various\ncore kernel event handling routines live.\n\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Srikar Dronamraju \u003csrikar@linux.vnet.ibm.com\u003e\nCc: Jim Keniston \u003cjkenisto@us.ibm.com\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Masami Hiramatsu \u003cmasami.hiramatsu.pt@hitachi.com\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@infradead.org\u003e\nCc: Anton Arapov \u003canton@redhat.com\u003e\nCc: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nLink: http://lkml.kernel.org/n/tip-biuyhhwohxgbp2vzbap5yr8o@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "7b2d81d48a2d8e37efb6ce7b4d5ef58822b30d89",
      "tree": "23987f194dcd91b0ba6d27f7f6e08c178797488e",
      "parents": [
        "2b144498350860b6ee9dc57ff27a93ad488de5dc"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Feb 17 09:27:41 2012 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Feb 17 10:18:07 2012 +0100"
      },
      "message": "uprobes/core: Clean up, refactor and improve the code\n\nMake the uprobes code readable to me:\n\n - improve the Kconfig text so that a mere mortal gets some idea\n   what CONFIG_UPROBES\u003dy is really about\n\n - do trivial renames to standardize around the uprobes_*() namespace\n\n - clean up and simplify various code flow details\n\n - separate basic blocks of functionality\n\n - line break artifact and white space related removal\n\n - use standard local varible definition blocks\n\n - use vertical spacing to make things more readable\n\n - remove unnecessary volatile\n\n - restructure comment blocks to make them more uniform and\n   more readable in general\n\nCc: Srikar Dronamraju \u003csrikar@linux.vnet.ibm.com\u003e\nCc: Jim Keniston \u003cjkenisto@us.ibm.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Masami Hiramatsu \u003cmasami.hiramatsu.pt@hitachi.com\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@infradead.org\u003e\nCc: Anton Arapov \u003canton@redhat.com\u003e\nCc: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nLink: http://lkml.kernel.org/n/tip-ewbwhb8o6navvllsauu7k07p@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "2b144498350860b6ee9dc57ff27a93ad488de5dc",
      "tree": "029863b057f7a3f6b8da1c081e3fd4d6c0342149",
      "parents": [
        "d1e169da9e20efc0762da6ec160dd7740d0103f5"
      ],
      "author": {
        "name": "Srikar Dronamraju",
        "email": "srikar@linux.vnet.ibm.com",
        "time": "Thu Feb 09 14:56:42 2012 +0530"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Feb 17 10:00:01 2012 +0100"
      },
      "message": "uprobes, mm, x86: Add the ability to install and remove uprobes breakpoints\n\nAdd uprobes support to the core kernel, with x86 support.\n\nThis commit adds the kernel facilities, the actual uprobes\nuser-space ABI and perf probe support comes in later commits.\n\nGeneral design:\n\nUprobes are maintained in an rb-tree indexed by inode and offset\n(the offset here is from the start of the mapping). For a unique\n(inode, offset) tuple, there can be at most one uprobe in the\nrb-tree.\n\nSince the (inode, offset) tuple identifies a unique uprobe, more\nthan one user may be interested in the same uprobe. This provides\nthe ability to connect multiple \u0027consumers\u0027 to the same uprobe.\n\nEach consumer defines a handler and a filter (optional). The\n\u0027handler\u0027 is run every time the uprobe is hit, if it matches the\n\u0027filter\u0027 criteria.\n\nThe first consumer of a uprobe causes the breakpoint to be\ninserted at the specified address and subsequent consumers are\nappended to this list.  On subsequent probes, the consumer gets\nappended to the existing list of consumers. The breakpoint is\nremoved when the last consumer unregisters. For all other\nunregisterations, the consumer is removed from the list of\nconsumers.\n\nGiven a inode, we get a list of the mms that have mapped the\ninode. Do the actual registration if mm maps the page where a\nprobe needs to be inserted/removed.\n\nWe use a temporary list to walk through the vmas that map the\ninode.\n\n- The number of maps that map the inode, is not known before we\n  walk the rmap and keeps changing.\n- extending vm_area_struct wasn\u0027t recommended, it\u0027s a\n  size-critical data structure.\n- There can be more than one maps of the inode in the same mm.\n\nWe add callbacks to the mmap methods to keep an eye on text vmas\nthat are of interest to uprobes.  When a vma of interest is mapped,\nwe insert the breakpoint at the right address.\n\nUprobe works by replacing the instruction at the address defined\nby (inode, offset) with the arch specific breakpoint\ninstruction. We save a copy of the original instruction at the\nuprobed address.\n\nThis is needed for:\n\n a. executing the instruction out-of-line (xol).\n b. instruction analysis for any subsequent fixups.\n c. restoring the instruction back when the uprobe is unregistered.\n\nWe insert or delete a breakpoint instruction, and this\nbreakpoint instruction is assumed to be the smallest instruction\navailable on the platform. For fixed size instruction platforms\nthis is trivially true, for variable size instruction platforms\nthe breakpoint instruction is typically the smallest (often a\nsingle byte).\n\nWriting the instruction is done by COWing the page and changing\nthe instruction during the copy, this even though most platforms\nallow atomic writes of the breakpoint instruction. This also\nmirrors the behaviour of a ptrace() memory write to a PRIVATE\nfile map.\n\nThe core worker is derived from KSM\u0027s replace_page() logic.\n\nIn essence, similar to KSM:\n\n a. allocate a new page and copy over contents of the page that\n    has the uprobed vaddr\n b. modify the copy and insert the breakpoint at the required\n    address\n c. switch the original page with the copy containing the\n    breakpoint\n d. flush page tables.\n\nreplace_page() is being replicated here because of some minor\nchanges in the type of pages and also because Hugh Dickins had\nplans to improve replace_page() for KSM specific work.\n\nInstruction analysis on x86 is based on instruction decoder and\ndetermines if an instruction can be probed and determines the\nnecessary fixups after singlestep.  Instruction analysis is done\nat probe insertion time so that we avoid having to repeat the\nsame analysis every time a probe is hit.\n\nA lot of code here is due to the improvement/suggestions/inputs\nfrom Peter Zijlstra.\n\nChangelog:\n\n(v10):\n - Add code to clear REX.B prefix as suggested by Denys Vlasenko\n   and Masami Hiramatsu.\n\n(v9):\n - Use insn_offset_modrm as suggested by Masami Hiramatsu.\n\n(v7):\n\n Handle comments from Peter Zijlstra:\n\n - Dont take reference to inode. (expect inode to uprobe_register to be sane).\n - Use PTR_ERR to set the return value.\n - No need to take reference to inode.\n - use PTR_ERR to return error value.\n - register and uprobe_unregister share code.\n\n(v5):\n\n - Modified del_consumer as per comments from Peter.\n - Drop reference to inode before dropping reference to uprobe.\n - Use i_size_read(inode) instead of inode-\u003ei_size.\n - Ensure uprobe-\u003econsumers is NULL, before __uprobe_unregister() is called.\n - Includes errno.h as recommended by Stephen Rothwell to fix a build issue\n   on sparc defconfig\n - Remove restrictions while unregistering.\n - Earlier code leaked inode references under some conditions while\n   registering/unregistering.\n - Continue the vma-rmap walk even if the intermediate vma doesnt\n   meet the requirements.\n - Validate the vma found by find_vma before inserting/removing the\n   breakpoint\n - Call del_consumer under mutex_lock.\n - Use hash locks.\n - Handle mremap.\n - Introduce find_least_offset_node() instead of close match logic in\n   find_uprobe\n - Uprobes no more depends on MM_OWNER; No reference to task_structs\n   while inserting/removing a probe.\n - Uses read_mapping_page instead of grab_cache_page so that the pages\n   have valid content.\n - pass NULL to get_user_pages for the task parameter.\n - call SetPageUptodate on the new page allocated in write_opcode.\n - fix leaking a reference to the new page under certain conditions.\n - Include Instruction Decoder if Uprobes gets defined.\n - Remove const attributes for instruction prefix arrays.\n - Uses mm_context to know if the application is 32 bit.\n\nSigned-off-by: Srikar Dronamraju \u003csrikar@linux.vnet.ibm.com\u003e\nAlso-written-by: Jim Keniston \u003cjkenisto@us.ibm.com\u003e\nReviewed-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Andi Kleen \u003candi@firstfloor.org\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Roland McGrath \u003croland@hack.frob.com\u003e\nCc: Masami Hiramatsu \u003cmasami.hiramatsu.pt@hitachi.com\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@infradead.org\u003e\nCc: Anton Arapov \u003canton@redhat.com\u003e\nCc: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nCc: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nCc: Denys Vlasenko \u003cvda.linux@googlemail.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Linux-mm \u003clinux-mm@kvack.org\u003e\nLink: http://lkml.kernel.org/r/20120209092642.GE16600@linux.vnet.ibm.com\n[ Made various small edits to the commit log ]\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "2565409fc0303f3ab8d66b8326702a687962a29b",
      "tree": "b57f238d77ee87a991371a7021462b8c71351659",
      "parents": [
        "4156153c4daddf12dd386016f96a947a01e93bf4"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Thu Jan 12 17:17:33 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 12 20:13:03 2012 -0800"
      },
      "message": "mm,x86,um: move CMPXCHG_DOUBLE config option\n\nMove CMPXCHG_DOUBLE and rename it to HAVE_CMPXCHG_DOUBLE so architectures\ncan simply select the option if it is supported.\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nAcked-by: Christoph Lameter \u003ccl@linux.com\u003e\nCc: Pekka Enberg \u003cpenberg@kernel.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4156153c4daddf12dd386016f96a947a01e93bf4",
      "tree": "6a8653a47bcda09b97870e5c79919790638afe0c",
      "parents": [
        "43570fd2f47ba518145e9289f54cde3dba4c8b25"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Thu Jan 12 17:17:30 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 12 20:13:03 2012 -0800"
      },
      "message": "mm,x86,um: move CMPXCHG_LOCAL config option\n\nMove CMPXCHG_LOCAL and rename it to HAVE_CMPXCHG_LOCAL so architectures\ncan simply select the option if it is supported.\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nAcked-by: Christoph Lameter \u003ccl@linux.com\u003e\nCc: Pekka Enberg \u003cpenberg@kernel.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "43570fd2f47ba518145e9289f54cde3dba4c8b25",
      "tree": "67aa61c8b972f4b3af66cd89082222e77e06a4cb",
      "parents": [
        "0d259cf8190b9c446eefd5225ffcc3941e76a432"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Thu Jan 12 17:17:27 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 12 20:13:03 2012 -0800"
      },
      "message": "mm,slub,x86: decouple size of struct page from CONFIG_CMPXCHG_LOCAL\n\nWhile implementing cmpxchg_double() on s390 I realized that we don\u0027t set\nCONFIG_CMPXCHG_LOCAL despite the fact that we have support for it.\n\nHowever setting that option will increase the size of struct page by\neight bytes on 64 bit, which we certainly do not want.  Also, it doesn\u0027t\nmake sense that a present cpu feature should increase the size of struct\npage.\n\nBesides that it looks like the dependency to CMPXCHG_LOCAL is wrong and\nthat it should depend on CMPXCHG_DOUBLE instead.\n\nThis patch:\n\nIf an architecture supports CMPXCHG_LOCAL this shouldn\u0027t result\nautomatically in larger struct pages if the SLUB allocator is used.\nInstead introduce a new config option \"HAVE_ALIGNED_STRUCT_PAGE\" which\ncan be selected if a double word aligned struct page is required.  Also\nupdate x86 Kconfig so that it should work as before.\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nAcked-by: Christoph Lameter \u003ccl@linux.com\u003e\nCc: Pekka Enberg \u003cpenberg@kernel.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "dcfce4a095932e6e95d83ad982be3609947963bc",
      "tree": "2808b7cbdb57deab25cc1cd847fd0f9ffa058f92",
      "parents": [
        "75c43a20b220f885c39ffa7cdbbb1191e257a9a9"
      ],
      "author": {
        "name": "Robert Richter",
        "email": "robert.richter@amd.com",
        "time": "Tue Oct 11 17:11:08 2011 +0200"
      },
      "committer": {
        "name": "Robert Richter",
        "email": "robert.richter@amd.com",
        "time": "Fri Nov 04 16:27:18 2011 +0100"
      },
      "message": "oprofile, x86: Reimplement nmi timer mode using perf event\n\nThe legacy x86 nmi watchdog code was removed with the implementation\nof the perf based nmi watchdog. This broke Oprofile\u0027s nmi timer\nmode. To run nmi timer mode we relied on a continuous ticking nmi\nsource which the nmi watchdog provided. The nmi tick was no longer\navailable and current watchdog can not be used anymore since it runs\nwith very long periods in the range of seconds. This patch\nreimplements the nmi timer mode using a perf counter nmi source.\n\nV2:\n* removing pr_info()\n* fix undefined reference to `__udivdi3\u0027 for 32 bit build\n* fix section mismatch of .cpuinit.data:nmi_timer_cpu_nb\n* removed nmi timer setup in arch/x86\n* implemented function stubs for op_nmi_init/exit()\n* made code more readable in oprofile_init()\n\nV3:\n* fix architectural initialization in oprofile_init()\n* fix CONFIG_OPROFILE_NMI_TIMER dependencies\n\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Robert Richter \u003crobert.richter@amd.com\u003e\n"
    },
    {
      "commit": "df013ffb8119c89f062ab05b7f544704315db47b",
      "tree": "db87f30545d2fd6cf9b0a547f09d924df3be90dd",
      "parents": [
        "9fb0bfe1408d5506b7b83d13d1eed573fd71d67d"
      ],
      "author": {
        "name": "Huang Ying",
        "email": "ying.huang@intel.com",
        "time": "Wed Jul 13 13:14:22 2011 +0800"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Aug 03 11:12:37 2011 -0400"
      },
      "message": "Add Kconfig option ARCH_HAVE_NMI_SAFE_CMPXCHG\n\ncmpxchg() is widely used by lockless code, including NMI-safe lockless\ncode.  But on some architectures, the cmpxchg() implementation is not\nNMI-safe, on these architectures the lockless code may need a\nspin_trylock_irqsave() based implementation.\n\nThis patch adds a Kconfig option: ARCH_HAVE_NMI_SAFE_CMPXCHG, so that\nNMI-safe lockless code can depend on it or provide different\nimplementation according to it.\n\nOn many architectures, cmpxchg is only NMI-safe for several specific\noperand sizes. So, ARCH_HAVE_NMI_SAFE_CMPXCHG define in this patch\nonly guarantees cmpxchg is NMI-safe for sizeof(unsigned long).\n\nSigned-off-by: Huang Ying \u003cying.huang@intel.com\u003e\nAcked-by: Mike Frysinger \u003cvapier@gentoo.org\u003e\nAcked-by: Paul Mundt \u003clethal@linux-sh.org\u003e\nAcked-by: Hans-Christian Egtvedt \u003chans-christian.egtvedt@atmel.com\u003e\nAcked-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nAcked-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\nAcked-by: Richard Henderson \u003crth@twiddle.net\u003e\nCC: Mikael Starvik \u003cstarvik@axis.com\u003e\nAcked-by: David Howells \u003cdhowells@redhat.com\u003e\nCC: Yoshinori Sato \u003cysato@users.sourceforge.jp\u003e\nCC: Tony Luck \u003ctony.luck@intel.com\u003e\nCC: Hirokazu Takata \u003ctakata@linux-m32r.org\u003e\nCC: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nCC: Michal Simek \u003cmonstr@monstr.eu\u003e\nAcked-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\nCC: Kyle McMartin \u003ckyle@mcmartin.ca\u003e\nCC: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCC: Chen Liqin \u003cliqin.chen@sunplusct.com\u003e\nCC: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCC: Ingo Molnar \u003cmingo@redhat.com\u003e\nCC: Chris Zankel \u003cchris@zankel.net\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "267239116987d64850ad2037d8e0f3071dc3b5ce",
      "tree": "142595897f7fc7bb673b791891dcc2fab31f6e91",
      "parents": [
        "1c395176962176660bb108f90e97e1686cfe0d85"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue May 24 17:12:00 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 25 08:39:16 2011 -0700"
      },
      "message": "mm, powerpc: move the RCU page-table freeing into generic code\n\nIn case other architectures require RCU freed page-tables to implement\ngup_fast() and software filled hashes and similar things, provide the\nmeans to do so by moving the logic into generic code.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nRequested-by: David Miller \u003cdavem@davemloft.net\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: Jeff Dike \u003cjdike@addtoit.com\u003e\nCc: Richard Weinberger \u003crichard@nod.at\u003e\nCc: Tony Luck \u003ctony.luck@intel.com\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Hugh Dickins \u003chughd@google.com\u003e\nCc: Mel Gorman \u003cmel@csn.ul.ie\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Nick Piggin \u003cnpiggin@kernel.dk\u003e\nCc: Namhyung Kim \u003cnamhyung@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "687566990640e476aeeed844947f2ecadc4717d3",
      "tree": "bd17bc01ab6f1f6dff61920d2abd6a887f01ec94",
      "parents": [
        "6eab04a87677a37cf15b52e2b4b4fd57917102ad"
      ],
      "author": {
        "name": "Justin P. Mattock",
        "email": "justinmattock@gmail.com",
        "time": "Tue Mar 29 09:36:51 2011 -0700"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Sun Apr 10 17:01:05 2011 +0200"
      },
      "message": "arch:Kconfig.locks Remove unused config option.\n\nSigned-off-by: Justin P. Mattock \u003cjustinmattock@gmail.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nAcked-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "335d7afbfb71faac833734a94240c1e07cf0ead8",
      "tree": "483a24c6005af6eb25a256d92a697411d94a7458",
      "parents": [
        "22a867d81707b0a2720bb5f65255265b95d30526"
      ],
      "author": {
        "name": "Gerald Schaefer",
        "email": "gerald.schaefer@de.ibm.com",
        "time": "Mon Nov 22 15:47:36 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Nov 26 15:05:34 2010 +0100"
      },
      "message": "mutexes, sched: Introduce arch_mutex_cpu_relax()\n\nThe spinning mutex implementation uses cpu_relax() in busy loops as a\ncompiler barrier. Depending on the architecture, cpu_relax() may do more\nthan needed in this specific mutex spin loops. On System z we also give\nup the time slice of the virtual cpu in cpu_relax(), which prevents\neffective spinning on the mutex.\n\nThis patch replaces cpu_relax() in the spinning mutex code with\narch_mutex_cpu_relax(), which can be defined by each architecture that\nselects HAVE_ARCH_MUTEX_CPU_RELAX. The default is still cpu_relax(), so\nthis patch should not affect other architectures than System z for now.\n\nSigned-off-by: Gerald Schaefer \u003cgerald.schaefer@de.ibm.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c1290437256.7455.4.camel@thinkpad\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "45f81b1c96d9793e47ce925d257ea693ce0b193e",
      "tree": "2260824b11e36d3f392d1795611795541dfc89d0",
      "parents": [
        "2d1d7126bbde53989f1d7de174816c123bb7ecb0"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Oct 29 12:33:43 2010 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Fri Oct 29 14:45:29 2010 -0400"
      },
      "message": "jump label: Add work around to i386 gcc asm goto bug\n\nOn i386 (not x86_64) early implementations of gcc would have a bug\nwith asm goto causing it to produce code like the following:\n\n(This was noticed by Peter Zijlstra)\n\n   56 pushl 0\n   67 nopl         jmp 0x6f\n      popl\n      jmp 0x8c\n\n   6f              mov\n                   test\n                   je 0x8c\n\n   8c mov\n      call *(%esp)\n\nThe jump added in the asm goto skipped over the popl that matched\nthe pushl 0, which lead up to a quick crash of the system when\nthe jump was enabled. The nopl is defined in the asm goto () statement\nand when tracepoints are enabled, the nop changes to a jump to the label\nthat was specified by the asm goto. asm goto is suppose to tell gcc that\nthe code in the asm might jump to an external label. Here gcc obviously\nfails to make that work.\n\nThe bug report for gcc is here:\n\n  http://gcc.gnu.org/bugzilla/show_bug.cgi?id\u003d46226\n\nThe bug only appears on x86 when not compiled with\n-maccumulate-outgoing-args. This option is always set on x86_64 and it\nis also the work around for a function graph tracer i386 bug.\n(See commit: 746357d6a526d6da9d89a2ec645b28406e959c2e)\nThis explains why the bug only showed up on i386 when function graph\ntracer was not enabled.\n\nThis patch now adds a CONFIG_JUMP_LABEL option that is default\noff instead of using jump labels by default. When jump labels are\nenabled, the -maccumulate-outgoing-args will be used (causing a\nslightly larger kernel image on i386). This option will exist\nuntil we have a way to detect if the gcc compiler in use is safe\nto use on all configurations without the work around.\n\nNote, there exists such a test, but for now we will keep the enabling\nof jump label as a manual option.\n\nArchs that know the compiler is safe with asm goto, may choose to\nselect JUMP_LABEL and enable it by default.\n\nReported-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCause-discovered-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: H. Peter Anvin \u003chpa@zytor.com\u003e\nCc: David Daney \u003cddaney@caviumnetworks.com\u003e\nCc: Mathieu Desnoyers \u003cmathieu.desnoyers@efficios.com\u003e\nCc: Masami Hiramatsu \u003cmasami.hiramatsu.pt@hitachi.com\u003e\nCc: David Miller \u003cdavem@davemloft.net\u003e\nCc: Richard Henderson \u003crth@redhat.com\u003e\nLKML-Reference: \u003c1288028746.3673.11.camel@laptop\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "a5a2bad55de89a0adf7d6f783cb87ab7eb1a894f",
      "tree": "452cb8addc26f5c79fdd4e2fea92c78dc17fc8e8",
      "parents": [
        "d0303d71c2fb9bcb90a8d48e6462c78c86f70ce6",
        "46eb3b64dddd20f44e76b08676fa642dd374bf1d"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Sep 24 09:12:05 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Sep 24 09:12:05 2010 +0200"
      },
      "message": "Merge branch \u0027tip/perf/core\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into perf/core\n"
    },
    {
      "commit": "bf5438fca2950b03c21ad868090cc1a8fcd49536",
      "tree": "9fc5693763263704de8d8ba1c37a84172dbe5eb7",
      "parents": [
        "fa6f2cc77081792e4edca9168420a3422299ef15"
      ],
      "author": {
        "name": "Jason Baron",
        "email": "jbaron@redhat.com",
        "time": "Fri Sep 17 11:09:00 2010 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Sep 22 16:29:41 2010 -0400"
      },
      "message": "jump label: Base patch for jump label\n\nbase patch to implement \u0027jump labeling\u0027. Based on a new \u0027asm goto\u0027 inline\nassembly gcc mechanism, we can now branch to labels from an \u0027asm goto\u0027\nstatment. This allows us to create a \u0027no-op\u0027 fastpath, which can subsequently\nbe patched with a jump to the slowpath code. This is useful for code which\nmight be rarely used, but which we\u0027d like to be able to call, if needed.\nTracepoints are the current usecase that these are being implemented for.\n\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Jason Baron \u003cjbaron@redhat.com\u003e\nLKML-Reference: \u003cee8b3595967989fdaf84e698dc7447d315ce972a.1284733808.git.jbaron@redhat.com\u003e\n\n[ cleaned up some formating ]\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "05ed160e89baf7f5fb3432d527fec467d2493626",
      "tree": "603ca42cf85433e8f87c061140dfcfe1732a5520",
      "parents": [
        "49553c2ef88749dd502687f4eb9c258bb10a4f44"
      ],
      "author": {
        "name": "Masami Hiramatsu",
        "email": "masami.hiramatsu.pt@hitachi.com",
        "time": "Mon Sep 13 19:25:41 2010 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Sep 13 20:41:31 2010 +0200"
      },
      "message": "kprobes: Fix Kconfig dependency\n\nFix Kconfig dependency among Kprobes, optprobe and kallsyms.\n\nKprobes uses kallsyms_lookup for finding target function and\nchecking instruction boundary, thus CONFIG_KPROBES should select\nCONFIG_KALLSYMS.\n\nOptprobe is an optional feature which is supported on x86 arch,\nand it also uses kallsyms_lookup for checking instructions in\nthe target function. Since KALLSYMS_ALL just adds symbols of\nkernel variables, it doesn\u0027t need to select KALLSYMS_ALL.\n\nSigned-off-by: Masami Hiramatsu \u003cmasami.hiramatsu.pt@hitachi.com\u003e\nAcked-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e,\nCc: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nCc: Felipe Contreras \u003cfelipe.contreras@gmail.com\u003e\nCc: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nCc: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nCc: Anil S Keshavamurthy \u003canil.s.keshavamurthy@intel.com\u003e\nCc: David S. Miller \u003cdavem@davemloft.net\u003e\nCc: akpm \u003cakpm@linux-foundation.org\u003e\nLKML-Reference: \u003c20100913102541.20260.85700.stgit@ltc236.sdl.hitachi.co.jp\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "61be7fdec2f51b99570cd5dcc30c7848c8e56513",
      "tree": "4a73ee635bc3e35dc54f75caddd26ffb6238bb5c",
      "parents": [
        "12a81c8df13c60904febcafcf6b90ca1acb67122",
        "eb703f98191a505f78d0066712ad67d5dedc4c90"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Aug 05 08:45:05 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Aug 05 08:45:05 2010 +0200"
      },
      "message": "Merge branch \u0027perf/nmi\u0027 into perf/core\n\nConflicts:\n\tkernel/Makefile\n\nMerge reason: Add the now complete topic, fix the conflict.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "23637d477c1f53acbb176a02c241d60a25888fae",
      "tree": "6d2e9e4a9f6fa2428e0ace29cf764212b823598a",
      "parents": [
        "c01d4323309a90a298fd81cf3a059ee1b12be2e9"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sat May 15 23:15:20 2010 +0200"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sun May 16 01:57:42 2010 +0200"
      },
      "message": "lockup_detector: Introduce CONFIG_HARDLOCKUP_DETECTOR\n\nThis new config is deemed to simplify even more the lockup detector\ndependencies and can make it easier to bring a smooth sorting\nbetween archs that support the new generic lockup detector and those\nthat still have their own, especially for those that are in the\nmiddle of this migration.\n\nInstead of checking whether we have CONFIG_LOCKUP_DETECTOR +\nCONFIG_PERF_EVENTS_NMI each time an arch wants to know if it needs\nto build its own lockup detector, take a shortcut with this new\nconfig. It is enabled only if the hardlockup detection part of\nthe whole lockup detector is on.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Don Zickus \u003cdzickus@redhat.com\u003e\nCc: Cyrill Gorcunov \u003cgorcunov@gmail.com\u003e\n"
    },
    {
      "commit": "c01d4323309a90a298fd81cf3a059ee1b12be2e9",
      "tree": "d34c6508c56d14cf1461528c1840182a348f26f4",
      "parents": [
        "e16bb1d7fe07609bc8b0e4c043eff2f47ada78d8"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sat May 15 22:57:48 2010 +0200"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sun May 16 01:57:36 2010 +0200"
      },
      "message": "lockup_detector: Adapt CONFIG_PERF_EVENT_NMI to other archs\n\nCONFIG_PERF_EVENT_NMI is something that need to be enabled from the\narch. This is fine on x86 as PERF_EVENTS is builtin but if other\narchs select it, they will need to handle the PERF_EVENTS dependency.\n\nInstead, handle the dependency in the generic layer:\n\n- archs need to tell what they support through HAVE_PERF_EVENTS_NMI\n- Enable magically PERF_EVENTS_NMI if we have PERF_EVENTS and\n  HAVE_PERF_EVENTS_NMI.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Don Zickus \u003cdzickus@redhat.com\u003e\nCc: Cyrill Gorcunov \u003cgorcunov@gmail.com\u003e\n"
    },
    {
      "commit": "0102752e4c9e0655b39734550d4c35327954f7f9",
      "tree": "04c23f88e57c8e804d144434c60b91879e83648d",
      "parents": [
        "b2812d031dea86926e9c10f7714af33ac2f6b43d"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sun Apr 11 18:55:56 2010 +0200"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sat May 01 04:32:11 2010 +0200"
      },
      "message": "hw-breakpoints: Separate constraint space for data and instruction breakpoints\n\nThere are two outstanding fashions for archs to implement hardware\nbreakpoints.\n\nThe first is to separate breakpoint address pattern definition\nspace between data and instruction breakpoints. We then have\ntypically distinct instruction address breakpoint registers\nand data address breakpoint registers, delivered with\nseparate control registers for data and instruction breakpoints\nas well. This is the case of PowerPc and ARM for example.\n\nThe second consists in having merged breakpoint address space\ndefinition between data and instruction breakpoint. Address\nregisters can host either instruction or data address and\nthe access mode for the breakpoint is defined in a control\nregister. This is the case of x86 and Super H.\n\nThis patch adds a new CONFIG_HAVE_MIXED_BREAKPOINTS_REGS config\nthat archs can select if they belong to the second case. Those\nwill have their slot allocation merged for instructions and\ndata breakpoints.\n\nThe others will have a separate slot tracking between data and\ninstruction breakpoints.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nAcked-by: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: Will Deacon \u003cwill.deacon@arm.com\u003e\nCc: Mahesh Salgaonkar \u003cmahesh@linux.vnet.ibm.com\u003e\nCc: K. Prasad \u003cprasad@linux.vnet.ibm.com\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "5cc718b9dad682329a60e73547c6e708faa5bbe4",
      "tree": "18a1ace43929109e1602a1e30bba42d22677aac9",
      "parents": [
        "8ea7f544100844307072cae2f5fc108afdef999a"
      ],
      "author": {
        "name": "Masami Hiramatsu",
        "email": "mhiramat@redhat.com",
        "time": "Mon Mar 15 13:00:54 2010 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Mar 16 11:07:23 2010 +0100"
      },
      "message": "kprobes: Hide CONFIG_OPTPROBES and set if arch supports optimized kprobes\n\nHide CONFIG_OPTPROBES and set if the arch supports optimized\nkprobes (IOW, HAVE_OPTPROBES\u003dy), since this option doesn\u0027t\nchange the major behavior of kprobes, and workarounds for minor\nchanges are documented.\n\nSigned-off-by: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nCc: systemtap \u003csystemtap@sources.redhat.com\u003e\nCc: DLE \u003cdle-develop@lists.sourceforge.net\u003e\nCc: Dieter Ries \u003cmail@dieterries.net\u003e\nCc: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nCc: OGAWA Hirofumi \u003chirofumi@mail.parknet.co.jp\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c20100315170054.31593.3153.stgit@localhost6.localdomain6\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "660f6a360be399f4ebdd6572a3d24afe54e9bb1c",
      "tree": "9c16463c495a656e34577d59c97b58997b61d242",
      "parents": [
        "586fac13f8685bf9dfb32e1ee98bfb14f0dd0061",
        "e5a11016643d1ab7172193591506d33a844734cc"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 05 10:50:22 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 05 10:50:22 2010 -0800"
      },
      "message": "Merge branch \u0027perf-probes-for-linus-2\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027perf-probes-for-linus-2\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  x86: Issue at least one memory barrier in stop_machine_text_poke()\n  perf probe: Correct probe syntax on command line help\n  perf probe: Add lazy line matching support\n  perf probe: Show more lines after last line\n  perf probe: Check function address range strictly in line finder\n  perf probe: Use libdw callback routines\n  perf probe: Use elfutils-libdw for analyzing debuginfo\n  perf probe: Rename probe finder functions\n  perf probe: Fix bugs in line range finder\n  perf probe: Update perf probe document\n  perf probe: Do not show --line option without dwarf support\n  kprobes: Add documents of jump optimization\n  kprobes/x86: Support kprobes jump optimization on x86\n  x86: Add text_poke_smp for SMP cross modifying code\n  kprobes/x86: Cleanup save/restore registers\n  kprobes/x86: Boost probes when reentering\n  kprobes: Jump optimization sysctl interface\n  kprobes: Introduce kprobes jump optimization\n  kprobes: Introduce generic insn_slot framework\n  kprobes/x86: Cleanup RELATIVEJUMP_INSTRUCTION to RELATIVEJUMP_OPCODE\n"
    },
    {
      "commit": "e0d272429a34ff143bfa04ee8e29dd4eed2964c7",
      "tree": "5a719135b245811b5d61ed084d7b8c1bc2e87031",
      "parents": [
        "d25e8dbdab203ed8b4fd0a174bb5259e35ecd87c",
        "480917427b0b6ff39de55ffc81391055472e6c26"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Feb 28 10:17:55 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Feb 28 10:17:55 2010 -0800"
      },
      "message": "Merge branch \u0027tracing-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027tracing-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (28 commits)\n  ftrace: Add function names to dangling } in function graph tracer\n  tracing: Simplify memory recycle of trace_define_field\n  tracing: Remove unnecessary variable in print_graph_return\n  tracing: Fix typo of info text in trace_kprobe.c\n  tracing: Fix typo in prof_sysexit_enable()\n  tracing: Remove CONFIG_TRACE_POWER from kernel config\n  tracing: Fix ftrace_event_call alignment for use with gcc 4.5\n  ftrace: Remove memory barriers from NMI code when not needed\n  tracing/kprobes: Add short documentation for HAVE_REGS_AND_STACK_ACCESS_API\n  s390: Add pt_regs register and stack access API\n  tracing/kprobes: Make Kconfig dependencies generic\n  tracing: Unify arch_syscall_addr() implementations\n  tracing: Add notrace to TRACE_EVENT implementation functions\n  ftrace: Allow to remove a single function from function graph filter\n  tracing: Add correct/incorrect to sort keys for branch annotation output\n  tracing: Simplify test for function_graph tracing start point\n  tracing: Drop the tr check from the graph tracing path\n  tracing: Add stack dump to trace_printk if stacktrace option is set\n  tracing: Use appropriate perl constructs in recordmcount.pl\n  tracing: optimize recordmcount.pl for offsets-handling\n  ...\n"
    },
    {
      "commit": "013cfc50672bbb638796545231683231647edb07",
      "tree": "447341fdc02e9ae26540123c5139f06a4186c66f",
      "parents": [
        "b309a294e5b24692d0f7ea1defa168074cea619e"
      ],
      "author": {
        "name": "Robert Richter",
        "email": "robert.richter@amd.com",
        "time": "Thu Jan 28 18:05:26 2010 +0100"
      },
      "committer": {
        "name": "Robert Richter",
        "email": "robert.richter@amd.com",
        "time": "Fri Feb 26 15:13:55 2010 +0100"
      },
      "message": "oprofile/x86: remove OPROFILE_IBS config option\n\nOProfile support for IBS is now for several versions in the\nkernel. The feature is stable now and the code can be activated\npermanently.\n\nAs a side effect IBS now works also on nosmp configs.\n\nSigned-off-by: Robert Richter \u003crobert.richter@amd.com\u003e\n"
    },
    {
      "commit": "b309a294e5b24692d0f7ea1defa168074cea619e",
      "tree": "8f776bd9ffbc05dfc2f3ca6d6ea3eb7b228ee831",
      "parents": [
        "18b4a4d59e97e7ff13ee84b5bec79f3fc70a9f0a"
      ],
      "author": {
        "name": "Robert Richter",
        "email": "robert.richter@amd.com",
        "time": "Fri Feb 26 15:01:23 2010 +0100"
      },
      "committer": {
        "name": "Robert Richter",
        "email": "robert.richter@amd.com",
        "time": "Fri Feb 26 15:13:54 2010 +0100"
      },
      "message": "oprofile: remove EXPERIMENTAL from the config option description\n\nOProfile is already used for a long time and no longer experimental.\n\nSigned-off-by: Robert Richter \u003crobert.richter@amd.com\u003e\n"
    },
    {
      "commit": "18b4a4d59e97e7ff13ee84b5bec79f3fc70a9f0a",
      "tree": "fc117bf0681831422998345659843eec5c564f7f",
      "parents": [
        "724e6d3fe8003c3f60bf404bf22e4e331327c596"
      ],
      "author": {
        "name": "Robert Richter",
        "email": "robert.richter@amd.com",
        "time": "Wed Feb 10 10:03:34 2010 +0100"
      },
      "committer": {
        "name": "Robert Richter",
        "email": "robert.richter@amd.com",
        "time": "Fri Feb 26 14:52:52 2010 +0100"
      },
      "message": "oprofile: remove tracing build dependency\n\nThe commit\n\n 1155de4 ring-buffer: Make it generally available\n\nalready made ring-buffer available without the TRACING option\nenabled. This patch removes the TRACING dependency from oprofile.\n\nFixes also oprofile configuration on ia64.\n\nThe patch also applies to the 2.6.32-stable kernel.\n\nReported-by: Tony Jones \u003ctonyj@suse.de\u003e\nCc: stable@kernel.org\nSigned-off-by: Robert Richter \u003crobert.richter@amd.com\u003e\n"
    },
    {
      "commit": "afd66255b9a48f5851326ddae50e2203fbf71dc9",
      "tree": "32c7a36a8e2c740b989f16b3e2878f8c565d57f8",
      "parents": [
        "4610ee1d3638fa05ba8e87ccfa971db8e4033ae7"
      ],
      "author": {
        "name": "Masami Hiramatsu",
        "email": "mhiramat@redhat.com",
        "time": "Thu Feb 25 08:34:07 2010 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Feb 25 17:49:24 2010 +0100"
      },
      "message": "kprobes: Introduce kprobes jump optimization\n\nIntroduce kprobes jump optimization arch-independent parts.\nKprobes uses breakpoint instruction for interrupting execution\nflow, on some architectures, it can be replaced by a jump\ninstruction and interruption emulation code. This gains kprobs\u0027\nperformance drastically.\n\nTo enable this feature, set CONFIG_OPTPROBES\u003dy (default y if the\narch supports OPTPROBE).\n\nChanges in v9:\n - Fix a bug to optimize probe when enabling.\n - Check nearby probes can be optimize/unoptimize when disarming/arming\n   kprobes, instead of registering/unregistering. This will help\n   kprobe-tracer because most of probes on it are usually disabled.\n\nChanges in v6:\n - Cleanup coding style for readability.\n - Add comments around get/put_online_cpus().\n\nChanges in v5:\n - Use get_online_cpus()/put_online_cpus() for avoiding text_mutex\n   deadlock.\n\nSigned-off-by: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nCc: systemtap \u003csystemtap@sources.redhat.com\u003e\nCc: DLE \u003cdle-develop@lists.sourceforge.net\u003e\nCc: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nCc: Jim Keniston \u003cjkenisto@us.ibm.com\u003e\nCc: Srikar Dronamraju \u003csrikar@linux.vnet.ibm.com\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Anders Kaseorg \u003candersk@ksplice.com\u003e\nCc: Tim Abbott \u003ctabbott@ksplice.com\u003e\nCc: Andi Kleen \u003candi@firstfloor.org\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: Mathieu Desnoyers \u003ccompudj@krystal.dyndns.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nLKML-Reference: \u003c20100225133407.6725.81992.stgit@localhost6.localdomain6\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e01292b1fd68ff2abe234d584b06e64344d2c1de",
      "tree": "b9abd2012cc92740a216083ebd3fc3c92e7d84bc",
      "parents": [
        "952974ac61f686896bd4134dae106a886a5589f1"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Thu Feb 18 14:25:21 2010 +0100"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Mon Feb 22 17:05:51 2010 +0100"
      },
      "message": "tracing/kprobes: Add short documentation for HAVE_REGS_AND_STACK_ACCESS_API\n\nSo that arch developers know how to implement it without the\nneed to dig into changelogs.\n\nReported-by: Mike Frysinger \u003cvapier.adi@gmail.com\u003e\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nAcked-by: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: \"David S . Miller\" \u003cdavem@davemloft.net\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c20100218132521.GB2406@osiris.boeblingen.de.ibm.com\u003e\n[added reference to ptrace.h in the config help]\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "f850c30c8b426ba1688cb63b1a3e534eed03a138",
      "tree": "b01f27bc57b73cf8311c8135be0ffc8e93b16ed6",
      "parents": [
        "e7b8e675d9c71b868b66f62f725a948047514719"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Wed Feb 10 17:25:17 2010 +0100"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Wed Feb 17 13:13:08 2010 +0100"
      },
      "message": "tracing/kprobes: Make Kconfig dependencies generic\n\nKPROBES_EVENT actually depends on the regs and stack access API\n(b1cf540f) and not on x86.\nSo introduce a new config option which architectures can select if\nthey have the API implemented and switch x86.\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nAcked-by: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nLKML-Reference: \u003c20100210162517.GB6933@osiris.boeblingen.de.ibm.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "99e8c5a3b875a34d894a711c9a3669858d6adf45",
      "tree": "cb0feb7052857b9f32b476f9b4d793b8ff628974",
      "parents": [
        "5d27c23df09b702868d9a3bff86ec6abd22963ac"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Thu Dec 17 01:33:54 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Dec 18 13:11:51 2009 +0100"
      },
      "message": "hw-breakpoints: Fix hardware breakpoints -\u003e perf events dependency\n\nThe kbuild\u0027s select command doesn\u0027t propagate through the config\ndependencies.\n\nHence the current rules of hardware breakpoint\u0027s config can\u0027t\nensure perf can never be disabled under us.\n\nWe have:\n\nconfig X86\n\tselects HAVE_HW_BREAKPOINTS\n\nconfig HAVE_HW_BREAKPOINTS\n\tselect PERF_EVENTS\n\nconfig PERF_EVENTS\n\t[...]\n\nx86 will select the breakpoints but that won\u0027t propagate to perf\nevents. The user can still disable the latter, but it is\nnecessary for the breakpoints.\n\nWhat we need is:\n\n - x86 selects HAVE_HW_BREAKPOINTS and PERF_EVENTS\n - HAVE_HW_BREAKPOINTS depends on PERF_EVENTS\n\nso that we ensure PERF_EVENTS is enabled and frozen for x86.\n\nThis fixes the following kind of build errors:\n\n In file included from arch/x86/kernel/hw_breakpoint.c:31:\n include/linux/hw_breakpoint.h: In function \u0027hw_breakpoint_addr\u0027:\n include/linux/hw_breakpoint.h:39: error: \u0027struct perf_event\u0027 has no member named \u0027attr\u0027\n\nv2: Select also ANON_INODES from x86, required for perf\n\nReported-by: Cyrill Gorcunov \u003cgorcunov@gmail.com\u003e\nReported-by: Michal Marek \u003cmmarek@suse.cz\u003e\nReported-by: Andrew Randrianasulu \u003crandrik_a@yahoo.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nCc: K.Prasad \u003cprasad@linux.vnet.ibm.com\u003e\nLKML-Reference: \u003c1261010034-7786-1-git-send-regression-fweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ed9216c1717a3f3738a77908aff78995ea69e7ff",
      "tree": "c6b5ace7c333dabbf1d94074a13a98244bcdfb26",
      "parents": [
        "d7fc02c7bae7b1cf69269992cf880a43a350cdaa",
        "d5696725b2a4c59503f5e0bc33adeee7f30cd45b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 08 08:02:38 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 08 08:02:38 2009 -0800"
      },
      "message": "Merge branch \u0027kvm-updates/2.6.33\u0027 of git://git.kernel.org/pub/scm/virt/kvm/kvm\n\n* \u0027kvm-updates/2.6.33\u0027 of git://git.kernel.org/pub/scm/virt/kvm/kvm: (84 commits)\n  KVM: VMX: Fix comparison of guest efer with stale host value\n  KVM: s390: Fix prefix register checking in arch/s390/kvm/sigp.c\n  KVM: Drop user return notifier when disabling virtualization on a cpu\n  KVM: VMX: Disable unrestricted guest when EPT disabled\n  KVM: x86 emulator: limit instructions to 15 bytes\n  KVM: s390: Make psw available on all exits, not just a subset\n  KVM: x86: Add KVM_GET/SET_VCPU_EVENTS\n  KVM: VMX: Report unexpected simultaneous exceptions as internal errors\n  KVM: Allow internal errors reported to userspace to carry extra data\n  KVM: Reorder IOCTLs in main kvm.h\n  KVM: x86: Polish exception injection via KVM_SET_GUEST_DEBUG\n  KVM: only clear irq_source_id if irqchip is present\n  KVM: x86: disallow KVM_{SET,GET}_LAPIC without allocated in-kernel lapic\n  KVM: x86: disallow multiple KVM_CREATE_IRQCHIP\n  KVM: VMX: Remove vmx-\u003emsr_offset_efer\n  KVM: MMU: update invlpg handler comment\n  KVM: VMX: move CR3/PDPTR update to vmx_set_cr3\n  KVM: remove duplicated task_switch check\n  KVM: powerpc: Fix BUILD_BUG_ON condition\n  KVM: VMX: Use shared msr infrastructure\n  ...\n\nTrivial conflicts due to new Kconfig options in arch/Kconfig and kernel/Makefile\n"
    },
    {
      "commit": "24f1e32c60c45c89a997c73395b69c8af6f0a84e",
      "tree": "4f30f16e18cb4abbcf96b3b331e6a3f01bfa26e6",
      "parents": [
        "2da3e160cb3d226d87b907fab26850d838ed8d7c"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Wed Sep 09 19:22:48 2009 +0200"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sun Nov 08 15:34:42 2009 +0100"
      },
      "message": "hw-breakpoints: Rewrite the hw-breakpoints layer on top of perf events\n\nThis patch rebase the implementation of the breakpoints API on top of\nperf events instances.\n\nEach breakpoints are now perf events that handle the\nregister scheduling, thread/cpu attachment, etc..\n\nThe new layering is now made as follows:\n\n       ptrace       kgdb      ftrace   perf syscall\n          \\          |          /         /\n           \\         |         /         /\n                                        /\n            Core breakpoint API        /\n                                      /\n                     |               /\n                     |              /\n\n              Breakpoints perf events\n\n                     |\n                     |\n\n               Breakpoints PMU ---- Debug Register constraints handling\n                                    (Part of core breakpoint API)\n                     |\n                     |\n\n             Hardware debug registers\n\nReasons of this rewrite:\n\n- Use the centralized/optimized pmu registers scheduling,\n  implying an easier arch integration\n- More powerful register handling: perf attributes (pinned/flexible\n  events, exclusive/non-exclusive, tunable period, etc...)\n\nImpact:\n\n- New perf ABI: the hardware breakpoints counters\n- Ptrace breakpoints setting remains tricky and still needs some per\n  thread breakpoints references.\n\nTodo (in the order):\n\n- Support breakpoints perf counter events for perf tools (ie: implement\n  perf_bpcounter_event())\n- Support from perf tools\n\nChanges in v2:\n\n- Follow the perf \"event \" rename\n- The ptrace regression have been fixed (ptrace breakpoint perf events\n  weren\u0027t released when a task ended)\n- Drop the struct hw_breakpoint and store generic fields in\n  perf_event_attr.\n- Separate core and arch specific headers, drop\n  asm-generic/hw_breakpoint.h and create linux/hw_breakpoint.h\n- Use new generic len/type for breakpoint\n- Handle off case: when breakpoints api is not supported by an arch\n\nChanges in v3:\n\n- Fix broken CONFIG_KVM, we need to propagate the breakpoint api\n  changes to kvm when we exit the guest and restore the bp registers\n  to the host.\n\nChanges in v4:\n\n- Drop the hw_breakpoint_restore() stub as it is only used by KVM\n- EXPORT_SYMBOL_GPL hw_breakpoint_restore() as KVM can be built as a\n  module\n- Restore the breakpoints unconditionally on kvm guest exit:\n  TIF_DEBUG_THREAD doesn\u0027t anymore cover every cases of running\n  breakpoints and vcpu-\u003earch.switch_db_regs might not always be\n  set when the guest used debug registers.\n  (Waiting for a reliable optimization)\n\nChanges in v5:\n\n- Split-up the asm-generic/hw-breakpoint.h moving to\n  linux/hw_breakpoint.h into a separate patch\n- Optimize the breakpoints restoring while switching from kvm guest\n  to host. We only want to restore the state if we have active\n  breakpoints to the host, otherwise we don\u0027t care about messed-up\n  address registers.\n- Add asm/hw_breakpoint.h to Kbuild\n- Fix bad breakpoint type in trace_selftest.c\n\nChanges in v6:\n\n- Fix wrong header inclusion in trace.h (triggered a build\n  error with CONFIG_FTRACE_SELFTEST\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Prasad \u003cprasad@linux.vnet.ibm.com\u003e\nCc: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Jan Kiszka \u003cjan.kiszka@web.de\u003e\nCc: Jiri Slaby \u003cjirislaby@gmail.com\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Avi Kivity \u003cavi@redhat.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\n"
    },
    {
      "commit": "0f8f86c7bdd1c954fbe153af437a0d91a6c5721a",
      "tree": "94a8d419a470a4f9852ca397bb9bbe48db92ff5c",
      "parents": [
        "dca2d6ac09d9ef59ff46820d4f0c94b08a671202",
        "f39cdf25bf77219676ec5360980ac40b1a7e144a"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sun Oct 18 01:09:09 2009 +0200"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sun Oct 18 01:12:33 2009 +0200"
      },
      "message": "Merge commit \u0027perf/core\u0027 into perf/hw-breakpoint\n\nConflicts:\n\tkernel/Makefile\n\tkernel/trace/Makefile\n\tkernel/trace/trace.h\n\tsamples/Makefile\n\nMerge reason: We need to be uptodate with the perf events development\nbranch because we plan to rewrite the breakpoints API on top of\nperf events.\n"
    },
    {
      "commit": "7c68af6e32c73992bad24107311f3433c89016e2",
      "tree": "9046ac5339f944e8ddccd34be226790b953dda61",
      "parents": [
        "817b33d38f81c8736d39283c35c886ae4668f1af"
      ],
      "author": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sat Sep 19 09:40:22 2009 +0300"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Thu Oct 01 12:12:18 2009 -0700"
      },
      "message": "core, x86: Add user return notifiers\n\nAdd a general per-cpu notifier that is called whenever the kernel is\nabout to return to userspace.  The notifier uses a thread_info flag\nand existing checks, so there is no impact on user return or context\nswitch fast paths.\n\nThis will be used initially to speed up KVM task switching by lazily\nupdating MSRs.\n\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\nLKML-Reference: \u003c1253342422-13811-1-git-send-email-avi@redhat.com\u003e\nSigned-off-by: H. Peter Anvin \u003chpa@zytor.com\u003e\n"
    },
    {
      "commit": "9a5963eb494c8a7be65199e15854551df7d2d939",
      "tree": "1ab01e8910e3f92de9aabb23b6f37c7aa275f5f0",
      "parents": [
        "b375a11a239e9e1cac40c7f3ff28b343d9f7ac51"
      ],
      "author": {
        "name": "Christian Borntraeger",
        "email": "borntraeger@de.ibm.com",
        "time": "Wed Sep 16 21:56:49 2009 +0200"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Sep 17 15:53:42 2009 -0400"
      },
      "message": "oprofile: fix oprofile regression: select RING_BUFFER_ALLOW_SWAP\n\ncommit 85bac32c4a52c592b857f2c360cc5ec93a097d70\n    ring-buffer: only enable ring_buffer_swap_cpu when needed\nbroke oprofile (at least on s390, but likely on all platforms).\n\nthis patch lets oprofile select RING_BUFER_ALLOW_SWAP to make\nring_buffer_swap_cpu usable for oprofile.\n\nSigned-off-by: Christian Borntraeger \u003cborntraeger@de.ibm.com\u003e\nLKML-Reference: \u003c200909162156.49239.borntraeger@de.ibm.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Robert Richter \u003crobert.richter@amd.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "dca2d6ac09d9ef59ff46820d4f0c94b08a671202",
      "tree": "fdec753b842dad09e3a4151954fab3eb5c43500d",
      "parents": [
        "d6a65dffb30d8636b1e5d4c201564ef401a246cf",
        "18240904960a39e582ced8ba8ececb10b8c22dd3"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Sep 15 12:18:15 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Sep 15 12:18:15 2009 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into tracing/hw-breakpoints\n\nConflicts:\n\tarch/x86/kernel/process_64.c\n\nSemantic conflict fixed in:\n\tarch/x86/kvm/x86.c\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "a1922ed661ab2c1637d0b10cde933bd9cd33d965",
      "tree": "0f1777542b385ebefd30b3586d830fd8ed6fda5b",
      "parents": [
        "75e33751ca8bbb72dd6f1a74d2810ddc8cbe4bdf",
        "d28daf923ac5e4a0d7cecebae56f3e339189366b"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Sep 07 08:19:51 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Sep 07 08:19:51 2009 +0200"
      },
      "message": "Merge branch \u0027tracing/core\u0027 into tracing/hw-breakpoints\n\nConflicts:\n\tarch/Kconfig\n\tkernel/trace/trace.h\n\nMerge reason: resolve the conflicts, plus adopt to the new\n              ring-buffer APIs.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "4d4036e0e7299c6cbb2d2421b4b30b7a409ce61a",
      "tree": "c9003cd927ed878412e89a59db0138b6b701b629",
      "parents": [
        "6e63ea4b0b14ff5fb8a3ca704fcda7d28b95f079"
      ],
      "author": {
        "name": "Jason Yeh",
        "email": "jason.yeh@amd.com",
        "time": "Wed Jul 08 13:49:38 2009 +0200"
      },
      "committer": {
        "name": "Robert Richter",
        "email": "robert.richter@amd.com",
        "time": "Mon Jul 20 16:33:53 2009 +0200"
      },
      "message": "oprofile: Implement performance counter multiplexing\n\nThe number of hardware counters is limited. The multiplexing feature\nenables OProfile to gather more events than counters are provided by\nthe hardware. This is realized by switching between events at an user\nspecified time interval.\n\nA new file (/dev/oprofile/time_slice) is added for the user to specify\nthe timer interval in ms. If the number of events to profile is higher\nthan the number of hardware counters available, the patch will\nschedule a work queue that switches the event counter and re-writes\nthe different sets of values into it. The switching mechanism needs to\nbe implemented for each architecture to support multiplexing. This\npatch only implements AMD CPU support, but multiplexing can be easily\nextended for other models and architectures.\n\nThere are follow-on patches that rework parts of this patch.\n\nSigned-off-by: Jason Yeh \u003cjason.yeh@amd.com\u003e\nSigned-off-by: Robert Richter \u003crobert.richter@amd.com\u003e\n"
    },
    {
      "commit": "2521f2c228ad750701ba4702484e31d876dbc386",
      "tree": "2221de3e3de9512979b8244c6304366e3be5be63",
      "parents": [
        "0b923606e75f1ab672e25b14ac039a1cdcfa382f"
      ],
      "author": {
        "name": "Peter Oberparleiter",
        "email": "oberpar@linux.vnet.ibm.com",
        "time": "Wed Jun 17 16:28:08 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jun 18 13:03:57 2009 -0700"
      },
      "message": "gcov: add gcov profiling infrastructure\n\nEnable the use of GCC\u0027s coverage testing tool gcov [1] with the Linux\nkernel.  gcov may be useful for:\n\n * debugging (has this code been reached at all?)\n * test improvement (how do I change my test to cover these lines?)\n * minimizing kernel configurations (do I need this option if the\n   associated code is never run?)\n\nThe profiling patch incorporates the following changes:\n\n * change kbuild to include profiling flags\n * provide functions needed by profiling code\n * present profiling data as files in debugfs\n\nNote that on some architectures, enabling gcc\u0027s profiling option\n\"-fprofile-arcs\" for the entire kernel may trigger compile/link/\nrun-time problems, some of which are caused by toolchain bugs and\nothers which require adjustment of architecture code.\n\nFor this reason profiling the entire kernel is initially restricted\nto those architectures for which it is known to work without changes.\nThis restriction can be lifted once an architecture has been tested\nand found compatible with gcc\u0027s profiling. Profiling of single files\nor directories is still available on all platforms (see config help\ntext).\n\n[1] http://gcc.gnu.org/onlinedocs/gcc/Gcov.html\n\nSigned-off-by: Peter Oberparleiter \u003coberpar@linux.vnet.ibm.com\u003e\nCc: Andi Kleen \u003candi@firstfloor.org\u003e\nCc: Huang Ying \u003cying.huang@intel.com\u003e\nCc: Li Wei \u003cW.Li@Sun.COM\u003e\nCc: Michael Ellerman \u003cmichaele@au1.ibm.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Heiko Carstens \u003cheicars2@linux.vnet.ibm.com\u003e\nCc: Martin Schwidefsky \u003cmschwid2@linux.vnet.ibm.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: WANG Cong \u003cxiyou.wangcong@gmail.com\u003e\nCc: Sam Ravnborg \u003csam@ravnborg.org\u003e\nCc: Jeff Dike \u003cjdike@addtoit.com\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "62a038d34db26771756cf3689e36de638bedd2c4",
      "tree": "4b435b34474a889d8a5c82b687e981d9e09abc91",
      "parents": [
        "b332828c39326b1dca617f387dd15d12e81cd5f0"
      ],
      "author": {
        "name": "K.Prasad",
        "email": "prasad@linux.vnet.ibm.com",
        "time": "Mon Jun 01 23:43:33 2009 +0530"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue Jun 02 22:46:58 2009 +0200"
      },
      "message": "hw-breakpoints: introducing generic hardware breakpoint handler interfaces\n\nThis patch introduces the generic Hardware Breakpoint interfaces for both user\nand kernel space requests.\nThis core Api handles the hardware breakpoints through new helpers. It\nhandles the user-space breakpoints and kernel breakpoints in front of\narch implementation.\n\nOne can choose kernel wide breakpoints using the following helpers\nand passing them a generic struct hw_breakpoint:\n\n- register_kernel_hw_breakpoint()\n- unregister_kernel_hw_breakpoint()\n- modify_kernel_hw_breakpoint()\n\nOn the other side, you can choose per task breakpoints.\n\n- register_user_hw_breakpoint()\n- unregister_user_hw_breakpoint()\n- modify_user_hw_breakpoint()\n\n[ fweisbec@gmail.com: fix conflict against perfcounter ]\n\nOriginal-patch-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nSigned-off-by: K.Prasad \u003cprasad@linux.vnet.ibm.com\u003e\nReviewed-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "36cd3c9f925b9307236505ae7ad1ad7ac4d4357c",
      "tree": "d9be68502d0f11b2259427e9ee8320891367143c",
      "parents": [
        "022624a758dc9489388a99ad29577b4c8c09237c"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Thu Apr 09 18:48:34 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Apr 09 19:28:24 2009 +0200"
      },
      "message": "mutex: have non-spinning mutexes on s390 by default\n\nImpact: performance regression fix for s390\n\nThe adaptive spinning mutexes will not always do what one would expect on\nvirtualized architectures like s390. Especially the cpu_relax() loop in\nmutex_spin_on_owner might hurt if the mutex holding cpu has been scheduled\naway by the hypervisor.\n\nWe would end up in a cpu_relax() loop when there is no chance that the\nstate of the mutex changes until the target cpu has been scheduled again by\nthe hypervisor.\n\nFor that reason we should change the default behaviour to no-spin on s390.\n\nWe do have an instruction which allows to yield the current cpu in favour of\na different target cpu. Also we have an instruction which allows us to figure\nout if the target cpu is physically backed.\n\nHowever we need to do some performance tests until we can come up with\na solution that will do the right thing on s390.\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Christian Borntraeger \u003cborntraeger@de.ibm.com\u003e\nLKML-Reference: \u003c20090409184834.7a0df7b2@osiris.boeblingen.de.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "8302294f43250dc337108c51882a6007f2b1e2e0",
      "tree": "85acd4440799c46a372df9cad170fa0c21e59096",
      "parents": [
        "4fe70410d9a219dabb47328effccae7e7f2a6e26",
        "2e572895bf3203e881356a4039ab0fa428ed2639"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Apr 01 21:54:19 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Apr 02 00:49:02 2009 +0200"
      },
      "message": "Merge branch \u0027tracing/core-v2\u0027 into tracing-for-linus\n\nConflicts:\n\tinclude/linux/slub_def.h\n\tlib/Kconfig.debug\n\tmm/slob.c\n\tmm/slub.c\n"
    },
    {
      "commit": "40ada30f9621fbd831ac2437b9a2a399aad34b00",
      "tree": "47df1abc756d9ce33feec3eb5bb601edafbcf14c",
      "parents": [
        "526211bc58c4b3265352801c5a7f469af5c34711"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 05 21:19:55 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 05 21:53:25 2009 +0100"
      },
      "message": "tracing: clean up menu\n\nClean up menu structure, introduce TRACING_SUPPORT switch that signals\nwhether an architecture supports various instrumentation mechanisms.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "5ee00bd4691e7364bb7b62e2068d473cd5cb9320",
      "tree": "5223b3e5baadea873e0b2b5e6b40236de27bd864",
      "parents": [
        "0bd5c4f7c874cf48ff7904dcf8a59988c8fea0e8"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Fri Jan 09 12:14:24 2009 +0100"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Thu Mar 05 14:36:50 2009 +0100"
      },
      "message": "dma-debug: add Kconfig entry\n\nImpact: add a Kconfig entry for DMA-API debugging\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "1a94bc34768e463a93cb3751819709ab0ea80a01",
      "tree": "a27753a61c2aa02d31b2d1f8efe9f00e68770856",
      "parents": [
        "f627a741d24f12955fa2d9f8831c3b12860635bd"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Wed Jan 14 14:13:59 2009 +0100"
      },
      "committer": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Wed Jan 14 14:15:16 2009 +0100"
      },
      "message": "[CVE-2009-0029] System call wrapper infrastructure\n\nFrom: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n\nBy selecting HAVE_SYSCALL_WRAPPERS architectures can activate\nsystem call wrappers in order to sign extend system call arguments.\n\nAll architectures where the ABI defines that the caller of a function\nhas to perform sign extension probably need this.\n\nReported-by: Christian Borntraeger \u003cborntraeger@de.ibm.com\u003e\nAcked-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\n"
    },
    {
      "commit": "d69d59f49763e6bd047c591c6c1f84c8e13da931",
      "tree": "ec4d1fa467b0e552ffd2f0c4de5acfe999eecec1",
      "parents": [
        "c4f50183f90fb1fd99aa5941f01b90cd1b882d2e"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Dec 12 09:38:57 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Dec 12 09:46:31 2008 +0100"
      },
      "message": "oprofile: select RING_BUFFER\n\nImpact: build fix\n\nOProfile now depends on the ring buffer infrastructure:\n\n arch/x86/oprofile/built-in.o: In function `oprofile_add_ibs_sample\u0027:\n : undefined reference to `ring_buffer_unlock_commit\u0027\n\nSelect TRACING and RING_BUFFER when oprofile is enabled.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "96b8936a9ed08746e47081458a5eb9e43a751e24",
      "tree": "d1a738fdd95dda182f99c90fe3079283e0b07307",
      "parents": [
        "16799c6a4d5156c6ee185b51b7586cca1aae0800"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Tue Nov 25 08:10:03 2008 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Nov 30 11:00:15 2008 -0800"
      },
      "message": "remove __ARCH_WANT_COMPAT_SYS_PTRACE\n\nAll architectures now use the generic compat_sys_ptrace, as should every\nnew architecture that needs 32bit compat (if we\u0027ll ever get another).\n\nRemove the now superflous __ARCH_WANT_COMPAT_SYS_PTRACE define, and also\nkill a comment about __ARCH_SYS_PTRACE that was added after\n__ARCH_SYS_PTRACE was already gone.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ba8b453de08c18cbc2453bcabfd0936c1d6695cb",
      "tree": "1b3182cab9de4f2646650e4846f9fb9f25fc1b46",
      "parents": [
        "0173a3265b228da319ceb9c1ec6a5682fd1b2d92"
      ],
      "author": {
        "name": "Jesper Dangaard Brouer",
        "email": "jdb@comx.dk",
        "time": "Fri Oct 24 15:05:12 2008 +0200"
      },
      "committer": {
        "name": "Robert Richter",
        "email": "robert.richter@amd.com",
        "time": "Mon Oct 27 19:15:39 2008 +0100"
      },
      "message": "Change UTF8 chars in Kconfig help text about Oprofile AMD barcelona\n\nFixes screwing up text output when doing a make oldconfig and viewing\nhelp text of \"OProfile AMD IBS support\".  When the terminal is\nnot using an UTF8 locale / LANG.  \"make config\" breaks terminal output\nand its not possible to continue.\n\n(Change added by changeset 852402cc Tue Jul 22 21:09:06 2008)\n\nSigned-off-by: Jesper Dangaard Brouer \u003chawk@comx.dk\u003e\nSigned-off-by: Robert Richter \u003crobert.richter@amd.com\u003e\n"
    },
    {
      "commit": "9ba16087d9f996a93ab6f4453a52a4b24bc1f25c",
      "tree": "98a292c556b646aec40ce137b1ec689b3469f120",
      "parents": [
        "a25d644fc0e232f242d1f3baa63c149c42536ff0"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "jbeulich@novell.com",
        "time": "Wed Oct 15 22:01:38 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 16 11:21:31 2008 -0700"
      },
      "message": "Kconfig: eliminate \"def_bool n\" constructs\n\nUsing \"def_bool n\" is pointless, simply using bool here appears more\nappropriate.\n\nFurther, retaining such options that don\u0027t have a prompt and aren\u0027t\nselected by anything seems also at least questionable.\n\nSigned-off-by: Jan Beulich \u003cjbeulich@novell.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Tony Luck \u003ctony.luck@intel.com\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\nCc: Sam Ravnborg \u003csam@ravnborg.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "accba5f3965d6a9d1bf7c1e1a7995d17e9d521b6",
      "tree": "8fb40782e79472ed882ff2098d4dd295557278ee",
      "parents": [
        "6852fd9b86d05063c6ef49d2e12e061cc7f6a105",
        "4480f15b3306f43bbb0310d461142b4e897ca45b"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Oct 13 11:05:51 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Oct 13 11:05:51 2008 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into oprofile-v2\n\nConflicts:\n\tarch/x86/kernel/apic_32.c\n\tarch/x86/oprofile/nmi_int.c\n\tinclude/linux/pci_ids.h\n"
    },
    {
      "commit": "1f5a4ad97a0e7b663d527ecc02aabe203d000d91",
      "tree": "83f01115a0c1abfa375d6a0edd5ddabd122676f5",
      "parents": [
        "828c365cc8b8d38c346fccb19fa80d28f2240831"
      ],
      "author": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Fri Jul 25 19:45:57 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:09 2008 -0700"
      },
      "message": "tracehook: CONFIG_HAVE_ARCH_TRACEHOOK\n\nThis adds the generic HAVE_ARCH_TRACEHOOK kconfig item.  Each arch should\nadd to some Kconfig file:\n\n\tselect HAVE_ARCH_TRACEHOOK\n\nif the arch code uses all the latest hooks to enable newfangled tracing\nand debugging code.  The comment in arch/Kconfig lists all the\nprerequisite arch support.  When all these are available, setting\nHAVE_ARCH_TRACEHOOK will allow enabling any new features that depend on\nthe modern arch interfaces.\n\nSigned-off-by: Roland McGrath \u003croland@redhat.com\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nReviewed-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "852402cc27bfa1200164e9e8dc7f6e5f0a4fbd46",
      "tree": "0194e23373230888de9115f5ffaacb09e005b57a",
      "parents": [
        "6aa360e6c16c145edf1837690e0f7aaea6b86ef3"
      ],
      "author": {
        "name": "Robert Richter",
        "email": "robert.richter@amd.com",
        "time": "Tue Jul 22 21:09:06 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Jul 26 11:48:13 2008 +0200"
      },
      "message": "x86/oprofile: add CONFIG_OPROFILE_IBS option\n\nSigned-off-by: Robert Richter \u003crobert.richter@amd.com\u003e\nCc: oprofile-list \u003coprofile-list@lists.sourceforge.net\u003e\nCc: Robert Richter \u003crobert.richter@amd.com\u003e\nCc: Barry Kasindorf \u003cbarry.kasindorf@amd.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "58340a07c194e0aed7bc58b61ff24330bb2a409f",
      "tree": "907a53c71b3092e3a3a95c6641d4839e20214efd",
      "parents": [
        "e0ce0da9fefcc723dc006c35a7f91a32750abd40"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Fri Jul 25 01:45:33 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:27 2008 -0700"
      },
      "message": "introduce HAVE_EFFICIENT_UNALIGNED_ACCESS Kconfig symbol\n\nIn many cases, especially in networking, it can be beneficial to know at\ncompile time whether the architecture can do unaligned accesses efficiently.\nThis patch introduces a new Kconfig symbol\n\n\tHAVE_EFFICIENT_UNALIGNED_ACCESS\n\nfor that purpose and adds it to the powerpc and x86 architectures.  Also add\nsome documentation about alignment and networking, and especially one intended\nuse of this symbol.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nAcked-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e [x86 architecture part]\nCc: \u003clinux-arch@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "28b2ee20c7cba812b6f2ccf6d722cf86d00a84dc",
      "tree": "e8f1efd05c38c1cb26ca3ee051a454eb685fd122",
      "parents": [
        "0d71d10a4252a3938e6b70189bc776171c02e076"
      ],
      "author": {
        "name": "Rik van Riel",
        "email": "riel@redhat.com",
        "time": "Wed Jul 23 21:27:05 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 24 10:47:15 2008 -0700"
      },
      "message": "access_process_vm device memory infrastructure\n\nIn order to be able to debug things like the X server and programs using\nthe PPC Cell SPUs, the debugger needs to be able to access device memory\nthrough ptrace and /proc/pid/mem.\n\nThis patch:\n\nAdd the generic_access_phys access function and put the hooks in place\nto allow access_process_vm to access device or PPC Cell SPU memory.\n\n[riel@redhat.com: Add documentation for the vm_ops-\u003eaccess function]\nSigned-off-by: Rik van Riel \u003criel@redhat.com\u003e\nSigned-off-by: Benjamin Herrensmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Dave Airlie \u003cairlied@linux.ie\u003e\nCc: Hugh Dickins \u003chugh@veritas.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Arnd Bergmann \u003carnd@arndb.de\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9483a578df27fe7603605d565eefe039c1ba5845",
      "tree": "e8f071d503b26d23d22556ec5d115cd67a45d47c",
      "parents": [
        "d7ce20b2024d318b9ba88859226af1441270d99f"
      ],
      "author": {
        "name": "David Brownell",
        "email": "dbrownell@users.sourceforge.net",
        "time": "Wed Jul 23 21:26:48 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 24 10:47:13 2008 -0700"
      },
      "message": "add HAVE_CLK to Kconfig, for driver dependencies\n\nFlag platforms as HAVE_CLK (or not) in Kconfig, based on whether they\nsupport \u003clinux/clk.h\u003e calls, so that otherwise portable drivers which need\nthose calls can list that dependency.\n\nSomething like this is a prerequisite for merging the musb_hdrc driver,\ncurrently used on platforms including Davinci, OMAP2430, OMAP3xx ...  and\nthe discrete TUSB6010 chip, which doesn\u0027t have a natural platform\ndependency.  (Used with OMAP 2420 in current Nokia N8x0 tablets.)\n\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nAcked-by: Haavard Skinnemoen \u003chskinnemoen@atmel.com\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3d4422332711ef48ef0f132f1fcbfcbd56c7f3d1",
      "tree": "9fd3cfa9825e8cb0b7e08dfae85cc9a722442849",
      "parents": [
        "543cf4cb3fe6f6cae3651ba918b9c56200b257d0"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Jun 26 11:21:34 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Jun 26 11:21:34 2008 +0200"
      },
      "message": "Add generic helpers for arch IPI function calls\n\nThis adds kernel/smp.c which contains helpers for IPI function calls. In\naddition to supporting the existing smp_call_function() in a more efficient\nmanner, it also adds a more scalable variant called smp_call_function_single()\nfor calling a given function on a single CPU only.\n\nThe core of this is based on the x86-64 patch from Nick Piggin, lots of\nchanges since then. \"Alan D. Brunelle\" \u003cAlan.Brunelle@hp.com\u003e has\ncontributed lots of fixes and suggestions as well. Also thanks to\nPaul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e for reviewing RCU usage\nand getting rid of the data allocation fallback deadlock.\n\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nReviewed-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "74bc7ceebfa1c84ddd3a843ebfb56df013bf7ef5",
      "tree": "548155250fbc7410273125019c70a7c5c085e895",
      "parents": [
        "d2ba7e2ae206e9ab24e8937d99d0d5513bfd08e5"
      ],
      "author": {
        "name": "Arthur Kepner",
        "email": "akepner@sgi.com",
        "time": "Tue Apr 29 01:00:30 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:11 2008 -0700"
      },
      "message": "dma: add dma_*map*_attrs() interfaces\n\nIntroduce new interfaces, dma_*map*_attrs(), for passing architecture-specific\nattributes when memory is mapped and unmapped for DMA.  Give the interfaces\ndefault implementations which ignore attributes.  Also introduce the\ndma_{set|get}_attr() interfaces for setting and retrieving individual\nattributes.  Define one attribute, DMA_ATTR_WRITE_BARRIER, in anticipation of\nits use by ia64/sn.  Select whether architectures implement arch-specific\nversions of the dma_*map*_attrs() interfaces via HAVE_DMA_ATTRS in Kconfig.\n\n[markn@au1.ibm.com: dma_{set,get}_attr() have to be static inline]\nSigned-off-by: Arthur Kepner \u003cakepner@sgi.com\u003e\nCc: Tony Luck \u003ctony.luck@intel.com\u003e\nCc: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\nCc: Jes Sorensen \u003cjes@sgi.com\u003e\nCc: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nCc: Roland Dreier \u003crdreier@cisco.com\u003e\nCc: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\nCc: David Miller \u003cdavem@davemloft.net\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Grant Grundler \u003cgrundler@parisc-linux.org\u003e\nCc: Michael Ellerman \u003cmichael@ellerman.id.au\u003e\nSigned-off-by: Mark Nelson \u003cmarkn@au1.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9edddaa200df18e08fe0cf21036e8ae467b1363c",
      "tree": "26f5319fac24fb6c76b1276b19725caeb5ec24bc",
      "parents": [
        "8182ec49a73729334f5a6c65a607ba7009ebd6d6"
      ],
      "author": {
        "name": "Ananth N Mavinakayanahalli",
        "email": "ananth@in.ibm.com",
        "time": "Tue Mar 04 14:28:37 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Mar 04 16:35:11 2008 -0800"
      },
      "message": "Kprobes: indicate kretprobe support in Kconfig\n\nAdd CONFIG_HAVE_KRETPROBES to the arch/\u003carch\u003e/Kconfig file for relevant\narchitectures with kprobes support.  This facilitates easy handling of\nin-kernel modules (like samples/kprobes/kretprobe_example.c) that depend on\nkretprobes being present in the kernel.\n\nThanks to Sam Ravnborg for helping make the patch more lean.\n\nPer Mathieu\u0027s suggestion, added CONFIG_KRETPROBES and fixed up dependencies.\n\nSigned-off-by: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nAcked-by: Mathieu Desnoyers \u003cmathieu.desnoyers@polymtl.ca\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "125e564582cbce6219397fc64556438420efae4c",
      "tree": "501bb3cdb3f17bfbe3b9a43bd89b48ac801a1e38",
      "parents": [
        "3f550096dede4430f83b16457da83bf429155ac2"
      ],
      "author": {
        "name": "Mathieu Desnoyers",
        "email": "mathieu.desnoyers@polymtl.ca",
        "time": "Sat Feb 02 15:10:36 2008 -0500"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Sun Feb 03 08:58:08 2008 +0100"
      },
      "message": "Move Kconfig.instrumentation to arch/Kconfig and init/Kconfig\n\nMove the instrumentation Kconfig to\n\narch/Kconfig for architecture dependent options\n  - oprofile\n  - kprobes\n\nand\n\ninit/Kconfig for architecture independent options\n  - profiling\n  - markers\n\nRemove the \"Instrumentation Support\" menu. Everything moves to \"General setup\".\nDelete the kernel/Kconfig.instrumentation file.\n\nSigned-off-by: Mathieu Desnoyers \u003cmathieu.desnoyers@polymtl.ca\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: \u003clinux-arch@vger.kernel.org\u003e\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n"
    },
    {
      "commit": "fb32e03fdc170251a381449a8d9b82cf7e811a6f",
      "tree": "9b7c0ad2f097bdc0498e6ca07b9e83b1f2aac1bc",
      "parents": [
        "c0ffa3a951668734a635cd1e26bf7583795854c5"
      ],
      "author": {
        "name": "Mathieu Desnoyers",
        "email": "mathieu.desnoyers@polymtl.ca",
        "time": "Sat Feb 02 15:10:33 2008 -0500"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Sun Feb 03 08:58:07 2008 +0100"
      },
      "message": "Create arch/Kconfig\n\nPuts the content of arch/Kconfig in the \"General setup\" menu.\n\nLinus:\n\n\u003e Should it come with a re-duplication of it\u0027s content into each\n\u003e architecture, which was the case previously ? The oprofile and kprobes\n\u003e menu entries were litteraly cut and pasted from one architecture to\n\u003e another. Should we put its content in init/Kconfig then ?\n\nI don\u0027t think it\u0027s a good idea to go back to making it per-architecture,\nalthough that extensive \"depends on \u003clist-of-archiectures-here\u003e\" might\nindicate that there certainly is room for cleanup there.\n\nAnd I don\u0027t think it\u0027s wrong keeping it in kernel/Kconfig.xyz per se, I\njust think it\u0027s wrong to (a) lump the code together when it really doesn\u0027t\nnecessarily need to and (b) show it to users as some kind of choice that\nis tied together (whether it then has common code or not).\n\nOn the per-architecture side, I do think it would be better to *not* have\ninternal architecture knowledge in a generic file, and as such a line like\n\n        depends on X86_32 || IA64 || PPC || S390 || SPARC64 || X86_64 || AVR32\n\nreally shouldn\u0027t exist in a file like kernel/Kconfig.instrumentation.\n\nIt would be much better to do\n\n        depends on ARCH_SUPPORTS_KPROBES\n\nin that generic file, and then architectures that do support it would just\nhave a\n\n        bool ARCH_SUPPORTS_KPROBES\n                default y\n\nin *their* architecture files. That would seem to be much more logical,\nand is readable both for arch maintainers *and* for people who have no\nclue - and don\u0027t care - about which architecture is supposed to support\nwhich interface...\n\nSam Ravnborg:\n\nStuff it into a new file: arch/Kconfig\nWe can then extend this file to include all the \u0027trailing\u0027\nKconfig things that are anyway equal for all ARCHs.\n\nBut it should be kept clean - so if we introduce such a file\nthen we should use ARCH_HAS_whatever in the arch specific Kconfig\nfiles to enable stuff that is not shared.\n\n[...]\n\nThe above suggestion is actually not exactly the best way to do it...\nFirst the naming..\nA quick grep shows following usage today (in Kconfig files)\nARCH_HAS        51\nARCH_SUPPORTS   4\nHAVE_ARCH       7\n\nARCH_HAS is the clear winner.\n\nIn the common Kconfig file do:\n\nconfig FOO\n        depends on ARCH_HAS_FOO\n        bool \"bla bla\"\n\nconfig ARCH_HAS_FOO\n        def_bool n\n\nIn the arch specific Kconfig file in a suitable place do:\n\nconfig SUITABLE_OPTION\n        select ARCH_HAS_FOO\n\nThe naming of ARCH_HAS_ is fixed and shall be:\nARCH_HAS_\u003cconfig option it will enable\u003e\n\nOnly a single line added pr. architecture.\nAnd we will end up with a (maybe even commented) list of trivial selects.\n\n- Yet another update :\n\nMoving to HAVE_* now.\n\nSigned-off-by: Mathieu Desnoyers \u003cmathieu.desnoyers@polymtl.ca\u003e\nCc: Jeff Dike \u003cjdike@addtoit.com\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n"
    }
  ]
}
