)]}'
{
  "log": [
    {
      "commit": "f82c37e7bb4c4d9b6a476c642d5c2d2efbd6f240",
      "tree": "09fc553c2fb6f527962048d139159dc139e04afc",
      "parents": [
        "c6b9e73f2fee8bb86058f296de808b326473456b",
        "dcd5c1662db59a6b82942f47fb6ac9dd63f6d3dd"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 18 16:52:46 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 18 16:52:46 2010 -0700"
      },
      "message": "Merge branch \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (35 commits)\n  perf: Fix unexported generic perf_arch_fetch_caller_regs\n  perf record: Don\u0027t try to find buildids in a zero sized file\n  perf: export perf_trace_regs and perf_arch_fetch_caller_regs\n  perf, x86: Fix hw_perf_enable() event assignment\n  perf, ppc: Fix compile error due to new cpu notifiers\n  perf: Make the install relative to DESTDIR if specified\n  kprobes: Calculate the index correctly when freeing the out-of-line execution slot\n  perf tools: Fix sparse CPU numbering related bugs\n  perf_event: Fix oops triggered by cpu offline/online\n  perf: Drop the obsolete profile naming for trace events\n  perf: Take a hot regs snapshot for trace events\n  perf: Introduce new perf_fetch_caller_regs() for hot regs snapshot\n  perf/x86-64: Use frame pointer to walk on irq and process stacks\n  lockdep: Move lock events under lockdep recursion protection\n  perf report: Print the map table just after samples for which no map was found\n  perf report: Add multiple event support\n  perf session: Change perf_session post processing functions to take histogram tree\n  perf session: Add storage for seperating event types in report\n  perf session: Change add_hist_entry to take the tree root instead of session\n  perf record: Add ID and to recorded event data when recording multiple events\n  ...\n"
    },
    {
      "commit": "4e3eaddd142e2142c048c5052a0a9d2604fccfc6",
      "tree": "5bc45a286502e54e790c54948f22364c5afd9d89",
      "parents": [
        "8655e7e3ddec60603c4f6c14cdf642e2ba198df8",
        "b97c4bc16734a2e597dac7f91ee9eb78f4aeef9a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Mar 13 14:43:01 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Mar 13 14:43:01 2010 -0800"
      },
      "message": "Merge branch \u0027core-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  locking: Make sparse work with inline spinlocks and rwlocks\n  x86/mce: Fix RCU lockdep splats\n  rcu: Increase RCU CPU stall timeouts if PROVE_RCU\n  ftrace: Replace read_barrier_depends() with rcu_dereference_raw()\n  rcu: Suppress RCU lockdep warnings during early boot\n  rcu, ftrace: Fix RCU lockdep splat in ftrace_perf_buf_prepare()\n  rcu: Suppress __mpol_dup() false positive from RCU lockdep\n  rcu: Make rcu_read_lock_sched_held() handle !PREEMPT\n  rcu: Add control variables to lockdep_rcu_dereference() diagnostics\n  rcu, cgroup: Relax the check in task_subsys_state() as early boot is now handled by lockdep-RCU\n  rcu: Use wrapper function instead of exporting tasklist_lock\n  sched, rcu: Fix rcu_dereference() for RCU-lockdep\n  rcu: Make task_subsys_state() RCU-lockdep checks handle boot-time use\n  rcu: Fix holdoff for accelerated GPs for last non-dynticked CPU\n  x86/gart: Unexport gart_iommu_aperture\n\nFix trivial conflicts in kernel/trace/ftrace.c\n"
    },
    {
      "commit": "97d5a22005f38057b4bc0d95f81cd26510268794",
      "tree": "b981789b1cec8ac36527e52204e407b32efa0ea6",
      "parents": [
        "c530665c31c0140b74ca7689e7f836177796e5bd"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Fri Mar 05 05:35:37 2010 +0100"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Wed Mar 10 14:47:18 2010 +0100"
      },
      "message": "perf: Drop the obsolete profile naming for trace events\n\nDrop the obsolete \"profile\" naming used by perf for trace events.\nPerf can now do more than simple events counting, so generalize\nthe API naming.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\n"
    },
    {
      "commit": "c530665c31c0140b74ca7689e7f836177796e5bd",
      "tree": "ac9ebb98aca58fdf84cc18958a94393a9a7bbdf3",
      "parents": [
        "5331d7b84613b8325362dde53dc2bff2fb87d351"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Wed Mar 03 07:16:16 2010 +0100"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Wed Mar 10 14:40:38 2010 +0100"
      },
      "message": "perf: Take a hot regs snapshot for trace events\n\nWe are taking a wrong regs snapshot when a trace event triggers.\nEither we use get_irq_regs(), which gives us the interrupted\nregisters if we are in an interrupt, or we use task_pt_regs()\nwhich gives us the state before we entered the kernel, assuming\nwe are lucky enough to be no kernel thread, in which case\ntask_pt_regs() returns the initial set of regs when the kernel\nthread was started.\n\nWhat we want is different. We need a hot snapshot of the regs,\nso that we can get the instruction pointer to record in the\nsample, the frame pointer for the callchain, and some other\nthings.\n\nLet\u0027s use the new perf_fetch_caller_regs() for that.\n\nComparison with perf record -e lock: -R -a -f -g\nBefore:\n\n        perf  [kernel]                   [k] __do_softirq\n               |\n               --- __do_softirq\n                  |\n                  |--55.16%-- __open\n                  |\n                   --44.84%-- __write_nocancel\n\nAfter:\n\n            perf  [kernel]           [k] perf_tp_event\n               |\n               --- perf_tp_event\n                  |\n                  |--41.07%-- lock_acquire\n                  |          |\n                  |          |--39.36%-- _raw_spin_lock\n                  |          |          |\n                  |          |          |--7.81%-- hrtimer_interrupt\n                  |          |          |          smp_apic_timer_interrupt\n                  |          |          |          apic_timer_interrupt\n\nThe old case was producing unreliable callchains. Now having\nright frame and instruction pointers, we have the trace we\nwant.\n\nAlso syscalls and kprobe events already have the right regs,\nlet\u0027s use them instead of wasting a retrieval.\n\nv2: Follow the rename perf_save_regs() -\u003e perf_fetch_caller_regs()\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: H. Peter Anvin \u003chpa@zytor.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: Archs \u003clinux-arch@vger.kernel.org\u003e\n"
    },
    {
      "commit": "c812a51d11bbe983f4c24e32b59b265705ddd3c2",
      "tree": "d454f518db51a4de700cf3dcd4c3c71ee7288b47",
      "parents": [
        "9467c4fdd66f6810cecef0f1173330f3c6e67d45",
        "d2be1651b736002e0c76d7095d6c0ba77b4a897c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 05 13:12:34 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 05 13:12:34 2010 -0800"
      },
      "message": "Merge branch \u0027kvm-updates/2.6.34\u0027 of git://git.kernel.org/pub/scm/virt/kvm/kvm\n\n* \u0027kvm-updates/2.6.34\u0027 of git://git.kernel.org/pub/scm/virt/kvm/kvm: (145 commits)\n  KVM: x86: Add KVM_CAP_X86_ROBUST_SINGLESTEP\n  KVM: VMX: Update instruction length on intercepted BP\n  KVM: Fix emulate_sys[call, enter, exit]()\u0027s fault handling\n  KVM: Fix segment descriptor loading\n  KVM: Fix load_guest_segment_descriptor() to inject page fault\n  KVM: x86 emulator: Forbid modifying CS segment register by mov instruction\n  KVM: Convert kvm-\u003erequests_lock to raw_spinlock_t\n  KVM: Convert i8254/i8259 locks to raw_spinlocks\n  KVM: x86 emulator: disallow opcode 82 in 64-bit mode\n  KVM: x86 emulator: code style cleanup\n  KVM: Plan obsolescence of kernel allocated slots, paravirt mmu\n  KVM: x86 emulator: Add LOCK prefix validity checking\n  KVM: x86 emulator: Check CPL level during privilege instruction emulation\n  KVM: x86 emulator: Fix popf emulation\n  KVM: x86 emulator: Check IOPL level during io instruction emulation\n  KVM: x86 emulator: fix memory access during x86 emulation\n  KVM: x86 emulator: Add Virtual-8086 mode of emulation\n  KVM: x86 emulator: Add group9 instruction decoding\n  KVM: x86 emulator: Add group8 instruction decoding\n  KVM: do not store wqh in irqfd\n  ...\n\nTrivial conflicts in Documentation/feature-removal-schedule.txt\n"
    },
    {
      "commit": "1f63b9c15b17d5af360c180f5c71537e954d5d3b",
      "tree": "4da17d6f2035ae093680fa2caa3e1c84b44bb237",
      "parents": [
        "b24bc1e61cec2174faf5dfa632da16b6ca17144f",
        "64e290ec69be39f1887fa0b403c1e417b6b038e7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 05 10:47:00 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 05 10:47:00 2010 -0800"
      },
      "message": "Merge branch \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4\n\n* \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4: (36 commits)\n  ext4: fix up rb_root initializations to use RB_ROOT\n  ext4: Code cleanup for EXT4_IOC_MOVE_EXT ioctl\n  ext4: Fix the NULL reference in double_down_write_data_sem()\n  ext4: Fix insertion point of extent in mext_insert_across_blocks()\n  ext4: consolidate in_range() definitions\n  ext4: cleanup to use ext4_grp_offs_to_block()\n  ext4: cleanup to use ext4_group_first_block_no()\n  ext4: Release page references acquired in ext4_da_block_invalidatepages\n  ext4: Fix ext4_quota_write cross block boundary behaviour\n  ext4: Convert BUG_ON checks to use ext4_error() instead\n  ext4: Use direct_IO_no_locking in ext4 dio read\n  ext4: use ext4_get_block_write in buffer write\n  ext4: mechanical rename some of the direct I/O get_block\u0027s identifiers\n  ext4: make \"offset\" consistent in ext4_check_dir_entry()\n  ext4: Handle non empty on-disk orphan link\n  ext4: explicitly remove inode from orphan list after failed direct io\n  ext4: fix error handling in migrate\n  ext4: deprecate obsoleted mount options\n  ext4: Fix fencepost error in chosing choosing group vs file preallocation.\n  jbd2: clean up an assertion in jbd2_journal_commit_transaction()\n  ...\n"
    },
    {
      "commit": "8d53dd546f36073e0d29b0cfc24c665db301e3e7",
      "tree": "1cd2582e669fe2ff580ddc707705e5efb18251de",
      "parents": [
        "99ee4ca746dda71326db7645463b4075ac1d665c"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Wed Mar 03 17:50:18 2010 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 04 12:07:35 2010 +0100"
      },
      "message": "rcu, ftrace: Fix RCU lockdep splat in ftrace_perf_buf_prepare()\n\nChange the pair of rcu_dereference() calls in\nftrace_perf_buf_prepare() to rcu_dereference_sched().\n\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: laijs@cn.fujitsu.com\nCc: dipankar@in.ibm.com\nCc: mathieu.desnoyers@polymtl.ca\nCc: josh@joshtriplett.org\nCc: dvhltc@us.ibm.com\nCc: niv@us.ibm.com\nCc: peterz@infradead.org\nCc: Valdis.Kletnieks@vt.edu\nCc: dhowells@redhat.com\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c1267667418-32233-3-git-send-email-paulmck@linux.vnet.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "90bb6fc556ab255abd798bcf4ff5769690ab2eea",
      "tree": "dd17338dbcb5a2963800639bcf097595861810d2",
      "parents": [
        "43db669730743fcc2a74b641ff4d77781eb15bfa"
      ],
      "author": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Thu Dec 31 12:10:16 2009 +0200"
      },
      "committer": {
        "name": "Marcelo Tosatti",
        "email": "mtosatti@redhat.com",
        "time": "Mon Mar 01 12:36:09 2010 -0300"
      },
      "message": "KVM: MMU: Add tracepoint for guest page aging\n\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "0c04851c0c093ce98ab4ca69556480d779292418",
      "tree": "58562c88457cf9dc9650b963aec974fe58ab9351",
      "parents": [
        "8ae099127668de80e4babba73bb492740ce3a1be"
      ],
      "author": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Thu Jan 21 15:31:52 2010 +0200"
      },
      "committer": {
        "name": "Marcelo Tosatti",
        "email": "mtosatti@redhat.com",
        "time": "Mon Mar 01 12:36:05 2010 -0300"
      },
      "message": "KVM: trace guest fpu loads and unloads\n\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\nSigned-off-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\n"
    },
    {
      "commit": "6556a6743549defc32e5f90ee2cb1ecd833a44c3",
      "tree": "622306583d4a3c13235a8bfc012854c125c597f1",
      "parents": [
        "e0d272429a34ff143bfa04ee8e29dd4eed2964c7",
        "1dd2980d990068e20045b90c424518cc7f3657ff"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Feb 28 10:20:25 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Feb 28 10:20:25 2010 -0800"
      },
      "message": "Merge branch \u0027perf-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027perf-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (172 commits)\n  perf_event, amd: Fix spinlock initialization\n  perf_event: Fix preempt warning in perf_clock()\n  perf tools: Flush maps on COMM events\n  perf_events, x86: Split PMU definitions into separate files\n  perf annotate: Handle samples not at objdump output addr boundaries\n  perf_events, x86: Remove superflous MSR writes\n  perf_events: Simplify code by removing cpu argument to hw_perf_group_sched_in()\n  perf_events, x86: AMD event scheduling\n  perf_events: Add new start/stop PMU callbacks\n  perf_events: Report the MMAP pgoff value in bytes\n  perf annotate: Defer allocating sym_priv-\u003ehist array\n  perf symbols: Improve debugging information about symtab origins\n  perf top: Use a macro instead of a constant variable\n  perf symbols: Check the right return variable\n  perf/scripts: Tag syscall_name helper as not yet available\n  perf/scripts: Add perf-trace-python Documentation\n  perf/scripts: Remove unnecessary PyTuple resizes\n  perf/scripts: Add syscall tracing scripts\n  perf/scripts: Add Python scripting engine\n  perf/scripts: Remove check-perf-trace from listed scripts\n  ...\n\nFix trivial conflict in tools/perf/util/probe-event.c\n"
    },
    {
      "commit": "86c38a31aa7f2dd6e74a262710bf8ebf7455acc5",
      "tree": "167d2c46917233373e597cc5f82d3f9132170e65",
      "parents": [
        "0c54dd341fb701928b8e5dca91ced1870c55b05b"
      ],
      "author": {
        "name": "Jeff Mahoney",
        "email": "jeffm@suse.com",
        "time": "Wed Feb 24 13:59:23 2010 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Feb 25 09:38:11 2010 -0500"
      },
      "message": "tracing: Fix ftrace_event_call alignment for use with gcc 4.5\n\nGCC 4.5 introduces behavior that forces the alignment of structures to\n use the largest possible value. The default value is 32 bytes, so if\n some structures are defined with a 4-byte alignment and others aren\u0027t\n declared with an alignment constraint at all - it will align at 32-bytes.\n\n For things like the ftrace events, this results in a non-standard array.\n When initializing the ftrace subsystem, we traverse the _ftrace_events\n section and call the initialization callback for each event. When the\n structures are misaligned, we could be treating another part of the\n structure (or the zeroed out space between them) as a function pointer.\n\n This patch forces the alignment for all the ftrace_event_call structures\n to 4 bytes.\n\n Without this patch, the kernel fails to boot very early when built with\n gcc 4.5.\n\n It\u0027s trivial to check the alignment of the members of the array, so it\n might be worthwhile to add something to the build system to do that\n automatically. Unfortunately, that only covers this case. I\u0027ve asked one\n of the gcc developers about adding a warning when this condition is seen.\n\nCc: stable@kernel.org\nSigned-off-by: Jeff Mahoney \u003cjeffm@suse.com\u003e\nLKML-Reference: \u003c4B85770B.6010901@suse.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "83f0d53993b2967e54186468b0fc4321447f68f1",
      "tree": "1e53910353eae38830e56199bc916caf4cd22362",
      "parents": [
        "c7c6b1fe9f942c1a30585ec2210a09dfff238506"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Feb 16 10:38:47 2010 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Feb 16 10:38:47 2010 -0500"
      },
      "message": "tracing: Add notrace to TRACE_EVENT implementation functions\n\nThe functions used to implement the TRACE_EVENT macro show up in\nfunction tracing. This is considered a distraction, and these should\nnot be displayed. For example:\n\n     \u003cidle\u003e-0     [000]    57.202149: task_of \u003c-update_stats_wait_end\n     \u003cidle\u003e-0     [000]    57.202149: ftrace_raw_event_sched_stat_wait \u003c-update_stats_wait_end\n     \u003cidle\u003e-0     [000]    57.202150: ftrace_raw_event_id_sched_stat_template \u003c-ftrace_raw_event_sched_stat_wait\n     \u003cidle\u003e-0     [000]    57.202150: sched_stat_wait: comm\u003dsshd pid\u003d2735 delay\u003d19207 [ns]\n\nThe \"ftrace_raw_event_*\" traces are just the utility functions used\nby TRACE_EVENT tracepoints.\n\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nRequested-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "c965be10ca3cb0bdd04016c852764afaf8e647c8",
      "tree": "e8706e6ca99c47091bc8265c9d8587f945a3dc74",
      "parents": [
        "18e97e06b5fb2d7f6cf272ca07d26d8247db8723"
      ],
      "author": {
        "name": "Hitoshi Mitake",
        "email": "mitake@dcl.info.waseda.ac.jp",
        "time": "Sat Jan 30 20:43:32 2010 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Jan 31 09:08:23 2010 +0100"
      },
      "message": "perf lock: Enhance information of lock trace events\n\nAdd wait time and lock identification details.\n\nSigned-off-by: Hitoshi Mitake \u003cmitake@dcl.info.waseda.ac.jp\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c1264851813-8413-11-git-send-email-mitake@dcl.info.waseda.ac.jp\u003e\n[ removed the file/line bits as we can do that better via IPs ]\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "430ad5a600a83956749307b13257c464c3826b55",
      "tree": "9cd3dd3f54e29397ff303478de9fe6902f675b9b",
      "parents": [
        "339ce1a4dc2ca26444c4f65c31b71a5056f3bb0b"
      ],
      "author": {
        "name": "Xiao Guangrong",
        "email": "xiaoguangrong@cn.fujitsu.com",
        "time": "Thu Jan 28 09:32:29 2010 +0800"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Fri Jan 29 02:02:57 2010 +0100"
      },
      "message": "perf: Factorize trace events raw sample buffer operations\n\nIntroduce ftrace_perf_buf_prepare() and ftrace_perf_buf_submit() to\ngather the common code that operates on raw events sampling buffer.\nThis cleans up redundant code between regular trace events, syscall\nevents and kprobe events.\n\nChangelog v1-\u003ev2:\n- Rename function name as per Masami and Frederic\u0027s suggestion\n- Add __kprobes for ftrace_perf_buf_prepare() and make\n  ftrace_perf_buf_submit() inline as per Masami\u0027s suggestion\n- Export ftrace_perf_buf_prepare since modules will use it\n\nSigned-off-by: Xiao Guangrong \u003cxiaoguangrong@cn.fujitsu.com\u003e\nAcked-by: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nLKML-Reference: \u003c4B60E92D.9000808@cn.fujitsu.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "61405fea92c42d072d9b8bd189689f1502a838af",
      "tree": "013ea3e7ed71f4114004d5852d40b6e89e128f76",
      "parents": [
        "9c443dfdd31eddea6cbe6ee0ca469fbcc4e1dc3b",
        "1703f2c321a8a531c393e137a82602e16c6061cb"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 13 09:58:37 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 13 10:08:50 2010 +0100"
      },
      "message": "Merge branch \u0027perf/urgent\u0027 into perf/core\n\nMerge reason: queue up dependent patch, update to -rc4\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "0fa0edaf32b9a78b9854f1da98d4511a501089b0",
      "tree": "2226710ff7f455cfc9ed9e29252337f70cf3ab33",
      "parents": [
        "5a65e956220efc2421e21ee56d6153fd5c533a95"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Tue Dec 15 15:39:57 2009 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Jan 06 12:08:46 2010 -0500"
      },
      "message": "tracing: Remove show_format and related macros from TRACE_EVENT\n\nThe previous patches added the use of print_fmt string and changes\nthe trace_define_field() function to also create the fields and\nformat output for the event format files.\n\n   text\t   data\t    bss\t    dec\t    hex\tfilename\n5857201\t1355780\t9336808\t16549789\t fc879d\tvmlinux\n5884589\t1351684\t9337896\t16574169\t fce6d9\tvmlinux-orig\n\nThe above shows the size of the vmlinux after this patch set\ncompared to the vmlinux-orig which is before the patch set.\n\nThis saves us 27k on text, 1k on bss and adds just 4k of data.\n\nThe total savings of 24k in size.\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4B273D4D.40604@cn.fujitsu.com\u003e\nAcked-by: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "509e760cd91c831983097ae174cb6c0b8c6c8e6b",
      "tree": "985da24e69e80b81713c2901c94b127c961cd426",
      "parents": [
        "809826a389040e0ad9d646b587bccc0e34691afd"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Tue Dec 15 15:39:42 2009 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Jan 06 11:41:54 2010 -0500"
      },
      "message": "tracing: Add print_fmt field\n\nThis is part of a patch set that removes the show_format method\nin the ftrace event macros.\n\nThe print_fmt field is added to hold the string that shows\nthe print_fmt in the event format files. This patch only adds\nthe field but it is currently not used. Later patches will use\nthis field to enable us to remove the show_format field\nand function.\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4B273D3E.2000704@cn.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "fb7ae981cb9fe8665b9da97e8734745e030c151d",
      "tree": "7b127c1bd4c0457c30f57d0f9c6ceacf69ab88c2",
      "parents": [
        "e96dc9674cb597de4fee757ed005c8465072d13f"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Tue Dec 15 15:39:38 2009 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Dec 30 10:27:06 2009 -0500"
      },
      "message": "tracing: Fix sign fields in ftrace_define_fields_##call()\n\nAdd is_signed_type() call to trace_define_field() in ftrace macros.\n\nThe code previously just passed in 0 (false), disregarding whether\nor not the field was actually a signed type.\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4B273D3A.6020007@cn.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "07b139c8c81b97bbe55c68daf0cbeca8b1c609ca",
      "tree": "ea410cac398bef3cc6cc7e2d2dc3527b50aac6d1",
      "parents": [
        "659d8cfbb225f1fa5a4f8671a847ef3ab5a89660"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Mon Dec 21 14:27:35 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Dec 28 10:33:06 2009 +0100"
      },
      "message": "perf events: Remove CONFIG_EVENT_PROFILE\n\nQuoted from Ingo:\n\n| This reminds me - i think we should eliminate CONFIG_EVENT_PROFILE -\n| it\u0027s an unnecessary Kconfig complication. If both PERF_EVENTS and\n| EVENT_TRACING is enabled we should expose generic tracepoints.\n|\n| Nor is it limited to event \u0027profiling\u0027, so it has become a misnomer as\n| well.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nLKML-Reference: \u003c4B2F1557.2050705@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "cc0104e877fff32865a67b256d3a9ce52ff15790",
      "tree": "18779442274e81607822ecb0905c55ac4ce6a163",
      "parents": [
        "16620e0f1990fa6d896a639449c4b3d678458464",
        "f40542532e96dda5506eb76badea322f2ae4731c"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Dec 14 09:16:49 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Dec 14 09:16:49 2009 +0100"
      },
      "message": "Merge branch \u0027linus\u0027 into tracing/urgent\n\nConflicts:\n\tkernel/trace/trace_kprobe.c\n\nMerge reason: resolve the conflict.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e00bf2ec60605eb95687b7a0c3b83c87c48541dc",
      "tree": "e0b63423355286bc14cee438b39e9ba681f7327a",
      "parents": [
        "8d18eaaff5acaa58369be342c86e607643ce10c7"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Tue Dec 08 11:17:29 2009 +0800"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sun Dec 13 18:37:28 2009 +0100"
      },
      "message": "tracing: Change event-\u003eprofile_count to be int type\n\nLike total_profile_count, struct ftrace_event_call::profile_count\nis protected by event_mutex, so it doesn\u0027t need to be atomic_t.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nLKML-Reference: \u003c4B1DC549.5010705@cn.fujitsu.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "3b8e4273814a7f9e9a74ece517d9206fea919aaa",
      "tree": "aa7960d90fe8cd4b04537bf9ea84ac73cb3b69ad",
      "parents": [
        "614a71a26ba3d97e9fa85649db69a682b78e407d"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Tue Dec 08 11:14:52 2009 +0800"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sun Dec 13 18:37:25 2009 +0100"
      },
      "message": "tracing: Move a printk out of ftrace_raw_reg_event_foo()\n\nMove the printk from each ftrace_raw_reg_event_foo() to\nits caller ftrace_event_enable_disable(). This avoids each\nregfunc trace event callbacks to handle a same error report\nthat can be carried from the caller.\n\nSee how much space this saves:\n\n   text    data     bss     dec     hex filename\n5345151 1961864 7103260 14410275         dbe223 vmlinux.o.old\n5331487 1961864 7103260 14396611         dbacc3 vmlinux.o\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nLKML-Reference: \u003c4B1DC4AC.802@cn.fujitsu.com\u003e\n[start cmdline record before calling regfunc to avoid lost\nwindow of pid to comm resolution]\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "614a71a26ba3d97e9fa85649db69a682b78e407d",
      "tree": "f0e52c9fa62f4e4230bc2ead2449caae3b30ff87",
      "parents": [
        "87d9b4e1c52867a45331a9a5495f6448e0c68b23"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Tue Dec 08 11:14:36 2009 +0800"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sun Dec 13 18:34:23 2009 +0100"
      },
      "message": "tracing: Pull up calls to trace_define_common_fields()\n\nCall trace_define_common_fields() in event_create_dir() only.\nThis avoids trace events to handle it from their define_fields\ncallbacks and shrinks the kernel code size:\n\n   text    data     bss     dec     hex filename\n5346802 1961864 7103260 14411926         dbe896 vmlinux.o.old\n5345151 1961864 7103260 14410275         dbe223 vmlinux.o\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nLKML-Reference: \u003c4B1DC49C.8000107@cn.fujitsu.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "87d9b4e1c52867a45331a9a5495f6448e0c68b23",
      "tree": "dcac60fbfa60eec687d723fad780165cec5fd9b1",
      "parents": [
        "4819568f23a8bef0ca99b740ca60fe2450ab0aac"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Tue Dec 08 11:14:20 2009 +0800"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sun Dec 13 18:34:23 2009 +0100"
      },
      "message": "tracing: Extract duplicate ftrace_raw_init_event_foo()\n\nUse a generic trace_event_raw_init() function for all event\u0027s raw_init\ncallbacks (but kprobes) instead of defining the same version for each\nof these.\nThis shrinks the kernel code:\n\n   text    data     bss     dec     hex filename\n5355293 1961928 7103260 14420481         dc0a01 vmlinux.o.old\n5346802 1961864 7103260 14411926         dbe896 vmlinux.o\n\nraw_init can\u0027t be removed, because ftrace events and kprobe events\nuse different raw_init callbacks. Though it\u0027s possible to totally\nremove raw_init, I choose to leave it as it is for now.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nLKML-Reference: \u003c4B1DC48C.7080603@cn.fujitsu.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "4819568f23a8bef0ca99b740ca60fe2450ab0aac",
      "tree": "18fa04e59e34dd96fd33c7edbeb49b8336ec688b",
      "parents": [
        "dd7f59435782a02ceb6d16b9ce823dd3345d75ec"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Sat Dec 12 13:06:13 2009 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Dec 13 08:14:45 2009 +0100"
      },
      "message": "ftrace.h: Use common pr_info fmt string\n\nReduces fmt string space a bit.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c1260651974.2637.4.camel@Joe-Laptop.home\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "3070f27d6ecb69364e7cffe16c8b15e1b8ef41dd",
      "tree": "6a624eb764265b67b2765b978c749fbe08871886",
      "parents": [
        "1e57c2186fc204ecd5e47f279d00eba3c3db245c",
        "e9c0748b687aa70179a9e6d8ffc24b2874fe350b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Dec 11 20:49:09 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Dec 11 20:49:09 2009 -0800"
      },
      "message": "Merge branch \u0027timers-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027timers-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  itimer: Fix the itimer trace print format\n  hrtimer: move timer stats helper functions to hrtimer.c\n  hrtimer: Tune hrtimer_interrupt hang logic\n"
    },
    {
      "commit": "4515c3069da5bfb6f08dbfca499464b4cbdfcb50",
      "tree": "0f067045a0e31f126aebcf3087028639ceb237b4",
      "parents": [
        "a5eba3f66f812cbc076a1170b3f888ad63f850b2",
        "fab3a549e204172236779f502eccb4f9bf0dc87d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 10 09:33:29 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 10 09:33:29 2009 -0800"
      },
      "message": "Merge branch \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4\n\n* \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4: (47 commits)\n  ext4: Fix potential fiemap deadlock (mmap_sem vs. i_data_sem)\n  ext4: Do not override ext2 or ext3 if built they are built as modules\n  jbd2: Export jbd2_log_start_commit to fix ext4 build\n  ext4: Fix insufficient checks in EXT4_IOC_MOVE_EXT\n  ext4: Wait for proper transaction commit on fsync\n  ext4: fix incorrect block reservation on quota transfer.\n  ext4: quota macros cleanup\n  ext4: ext4_get_reserved_space() must return bytes instead of blocks\n  ext4: remove blocks from inode prealloc list on failure\n  ext4: wait for log to commit when umounting\n  ext4: Avoid data / filesystem corruption when write fails to copy data\n  ext4: Use ext4 file system driver for ext2/ext3 file system mounts\n  ext4: Return the PTR_ERR of the correct pointer in setup_new_group_blocks()\n  jbd2: Add ENOMEM checking in and for jbd2_journal_write_metadata_buffer()\n  ext4: remove unused parameter wbc from __ext4_journalled_writepage()\n  ext4: remove encountered_congestion trace\n  ext4: move_extent_per_page() cleanup\n  ext4: initialize moved_len before calling ext4_move_extents()\n  ext4: Fix double-free of blocks with EXT4_IOC_MOVE_EXT\n  ext4: use ext4_data_block_valid() in ext4_free_blocks()\n  ...\n"
    },
    {
      "commit": "e9c0748b687aa70179a9e6d8ffc24b2874fe350b",
      "tree": "a7f3093cbe19b0f890bb91c13d60093411a0a7d6",
      "parents": [
        "5f201907dfe4ad42c44006ddfcec00ed12e59497"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Dec 10 13:23:19 2009 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Dec 10 13:23:19 2009 +0100"
      },
      "message": "itimer: Fix the itimer trace print format\n\nCompiling powerpc64 results in:\n\ninclude/trace/events/timer.h:279: warning:\nformat \u0027%lu\u0027 expects type \u0027long unsigned int\u0027, but argument 4 has type \u0027cputime_t\u0027\n....\n\ncputime_t on power is u64, which triggers the above warning.\n\nCast the cputime_t to unsigned long long and fix the print format\nstring. That works on both 32 and 64 bit architectures.\n\nWhile at it change the print format for long variables from %lu to %ld.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Xiao Guangrong \u003cxiaoguangrong@cn.fujitsu.com\u003e\n"
    },
    {
      "commit": "f8ec9d6837241865cf99bed97bb99f4399fd5a03",
      "tree": "f1198366ae4c9c2db3c8869813f061ee85d3b243",
      "parents": [
        "71f2be213a0009098819e5c04f75ff19f84f2122"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Fri Jan 01 01:00:21 2010 -0500"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Fri Jan 01 01:00:21 2010 -0500"
      },
      "message": "ext4: Add new tracepoints to debug delayed allocation space functions\n\nAdd tracepoints for ext4_da_reserve_space(),\next4_da_update_reserve_space(), and ext4_da_release_space().\n\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "71f2be213a0009098819e5c04f75ff19f84f2122",
      "tree": "af3dcbb307a8cccc24670945c14c4b3d32bbd2c0",
      "parents": [
        "1f2acb6017d8528135ec3b01ab7cd2be6ea0630b"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Wed Dec 23 07:45:44 2009 -0500"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Wed Dec 23 07:45:44 2009 -0500"
      },
      "message": "ext4: Add new tracepoint for jbd2_cleanup_journal_tail\n\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "c3fa27d1367fac63ac8533d6f20ea851d0d70a10",
      "tree": "e7731554085e22b6b63411b1ebb401079f3e0bbb",
      "parents": [
        "96fa2b508d2d3fe040cf4ef2fffb955f0a537ea1",
        "d103d01e4b19f185d3c85f77402b605534c32e89"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 05 15:30:21 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 05 15:30:21 2009 -0800"
      },
      "message": "Merge branch \u0027perf-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027perf-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (470 commits)\n  x86: Fix comments of register/stack access functions\n  perf tools: Replace %m with %a in sscanf\n  hw-breakpoints: Keep track of user disabled breakpoints\n  tracing/syscalls: Make syscall events print callbacks static\n  tracing: Add DEFINE_EVENT(), DEFINE_SINGLE_EVENT() support to docbook\n  perf: Don\u0027t free perf_mmap_data until work has been done\n  perf_event: Fix compile error\n  perf tools: Fix _GNU_SOURCE macro related strndup() build error\n  trace_syscalls: Remove unused syscall_name_to_nr()\n  trace_syscalls: Simplify syscall profile\n  trace_syscalls: Remove duplicate init_enter_##sname()\n  trace_syscalls: Add syscall_nr field to struct syscall_metadata\n  trace_syscalls: Remove enter_id exit_id\n  trace_syscalls: Set event_enter_##sname-\u003edata to its metadata\n  trace_syscalls: Remove unused event_syscall_enter and event_syscall_exit\n  perf_event: Initialize data.period in perf_swevent_hrtimer()\n  perf probe: Simplify event naming\n  perf probe: Add --list option for listing current probe events\n  perf probe: Add argv_split() from lib/argv_split.c\n  perf probe: Move probe event utility functions to probe-event.c\n  ...\n"
    },
    {
      "commit": "96fa2b508d2d3fe040cf4ef2fffb955f0a537ea1",
      "tree": "3cec6d72a450735fe6b8ed996c7399f57c05a5cb",
      "parents": [
        "7a797cdcca2b3c0031e580203f18d6c9483aaec5",
        "b8007ef7422270864eae523cb38d7522a53a94d3"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 05 09:53:36 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 05 09:53:36 2009 -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: (40 commits)\n  tracing: Separate raw syscall from syscall tracer\n  ring-buffer-benchmark: Add parameters to set produce/consumer priorities\n  tracing, function tracer: Clean up strstrip() usage\n  ring-buffer benchmark: Run producer/consumer threads at nice +19\n  tracing: Remove the stale include/trace/power.h\n  tracing: Only print objcopy version warning once from recordmcount\n  tracing: Prevent build warning: \u0027ftrace_graph_buf\u0027 defined but not used\n  ring-buffer: Move access to commit_page up into function used\n  tracing: do not disable interrupts for trace_clock_local\n  ring-buffer: Add multiple iterations between benchmark timestamps\n  kprobes: Sanitize struct kretprobe_instance allocations\n  tracing: Fix to use __always_unused attribute\n  compiler: Introduce __always_unused\n  tracing: Exit with error if a weak function is used in recordmcount.pl\n  tracing: Move conditional into update_funcs() in recordmcount.pl\n  tracing: Add regex for weak functions in recordmcount.pl\n  tracing: Move mcount section search to front of loop in recordmcount.pl\n  tracing: Fix objcopy revision check in recordmcount.pl\n  tracing: Check absolute path of input file in recordmcount.pl\n  tracing: Correct the check for number of arguments in recordmcount.pl\n  ...\n"
    },
    {
      "commit": "26fb20d008d841268545c25bb183f21ed16db891",
      "tree": "4e14dc653d0e6b5d43c2bb8f55b795b232200698",
      "parents": [
        "23ba90e328fd2326378447cafafa47defdfc83c2",
        "767df1bdd8cbff2c8c40c9ac8295bbdaa5fb24c4"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Dec 03 20:10:59 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Dec 03 20:11:06 2009 +0100"
      },
      "message": "Merge branch \u0027perf/mce\u0027 into perf/core\n\nMerge reason: It\u0027s ready for v2.6.33.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "3bbe84e9d385205d638035ee9dcc4db1b486ea08",
      "tree": "e7261e9a3ca13f6e2fd34333e4ccab33b265c32e",
      "parents": [
        "a1301da0997bf73c44dbe584e9070a13adc89672"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Tue Dec 01 16:24:01 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Dec 01 17:33:30 2009 +0100"
      },
      "message": "trace_syscalls: Simplify syscall profile\n\nuse only one prof_sysenter_enable() instead of\nprof_sysenter_enable_##sname()\n\nuse only one prof_sysenter_disable() instead of\nprof_sysenter_disable_##sname()\n\nuse only one prof_sysexit_enable() instead of\nprof_sysexit_enable_##sname()\n\nuse only one prof_sysexit_disable() instead of\nprof_sysexit_disable_##sname()\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nAcked-by: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c4B14D2A1.8060304@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "a1301da0997bf73c44dbe584e9070a13adc89672",
      "tree": "64c7e580f553291bcaaf065fc0dbceee8daf9cd6",
      "parents": [
        "c252f65793874b56d50395ab604db465ce688665"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Tue Dec 01 16:23:55 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Dec 01 17:33:30 2009 +0100"
      },
      "message": "trace_syscalls: Remove duplicate init_enter_##sname()\n\nuse only one init_syscall_trace instead of\nmany init_enter_##sname()/init_exit_##sname()\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nAcked-by: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c4B14D29B.6090708@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c252f65793874b56d50395ab604db465ce688665",
      "tree": "30bc32361d2b368679910270ec4e99e841fa099b",
      "parents": [
        "fcc19438dda38dacc8c144e2db3ebc6b9fd4f8b8"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Tue Dec 01 16:23:47 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Dec 01 17:33:29 2009 +0100"
      },
      "message": "trace_syscalls: Add syscall_nr field to struct syscall_metadata\n\nAdd syscall_nr field to struct syscall_metadata,\nit helps us to get syscall number easier.\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nAcked-by: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c4B14D293.6090800@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "fcc19438dda38dacc8c144e2db3ebc6b9fd4f8b8",
      "tree": "0f82cd0ce19bc113e2ba631c14f2e8c04884d608",
      "parents": [
        "31c16b13349970b2684248c7d8608d2a96ae135d"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Tue Dec 01 16:23:36 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Dec 01 17:33:29 2009 +0100"
      },
      "message": "trace_syscalls: Remove enter_id exit_id\n\nuse -\u003eenter_event-\u003eid instead of -\u003eenter_id\nuse -\u003eexit_event-\u003eid instead of -\u003eexit_id\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nAcked-by: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c4B14D288.7030001@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "31c16b13349970b2684248c7d8608d2a96ae135d",
      "tree": "0f0a2bee35f604090b30d6724e13bb2faec8a6a5",
      "parents": [
        "bf56a4ea9f1683c5b223fd3a5dbea23f1fa91c34"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Tue Dec 01 16:23:30 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Dec 01 17:33:28 2009 +0100"
      },
      "message": "trace_syscalls: Set event_enter_##sname-\u003edata to its metadata\n\nSet event_enter_##sname-\u003edata to its metadata,\nit makes codes simpler.\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nAcked-by: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c4B14D282.7050709@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "bf56a4ea9f1683c5b223fd3a5dbea23f1fa91c34",
      "tree": "c6f54058fb427ab9c4f776c9414f85a60b6344b0",
      "parents": [
        "59d069eb5ae9b033ed1c124c92e1532c4a958991"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Tue Dec 01 16:23:20 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Dec 01 17:33:28 2009 +0100"
      },
      "message": "trace_syscalls: Remove unused event_syscall_enter and event_syscall_exit\n\nfix event_enter_##sname-\u003eevent\nfix event_exit_##sname-\u003eevent\n\nremove unused event_syscall_enter and event_syscall_exit\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nAcked-by: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c4B14D278.4090209@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ba005e1f417295d28cd1563ab82bc33af07fb16a",
      "tree": "d771659edc46c1bd5467578a6616657c8cf26db5",
      "parents": [
        "f9d4257e01d266e67420cc99d456b6d4c8464f54"
      ],
      "author": {
        "name": "Masami Hiramatsu",
        "email": "mhiramat@redhat.com",
        "time": "Tue Nov 24 16:56:58 2009 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Nov 26 10:55:38 2009 +0100"
      },
      "message": "tracepoint: Add signal loss events\n\nAdd signal_overflow_fail and signal_lose_info tracepoints\nfor signal-lost events.\n\nChanges in v3:\n - Add docbook style comments\n\nChanges in v2:\n - Use siginfo string macro\n\nSuggested-by: Roland McGrath \u003croland@redhat.com\u003e\nReviewed-by: Jason Baron \u003cjbaron@redhat.com\u003e\nSigned-off-by: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nAcked-by: Roland McGrath \u003croland@redhat.com\u003e\nCc: systemtap \u003csystemtap@sources.redhat.com\u003e\nCc: DLE \u003cdle-develop@lists.sourceforge.net\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nLKML-Reference: \u003c20091124215658.30449.9934.stgit@dhcp-100-2-132.bos.redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "f9d4257e01d266e67420cc99d456b6d4c8464f54",
      "tree": "6661efc95e3002b9b1bf8d9c94deb9ec736a04de",
      "parents": [
        "d1eb650ff4130972fa21462fa49cd35a2865403b"
      ],
      "author": {
        "name": "Masami Hiramatsu",
        "email": "mhiramat@redhat.com",
        "time": "Tue Nov 24 16:56:51 2009 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Nov 26 10:55:38 2009 +0100"
      },
      "message": "tracepoint: Add signal deliver event\n\nAdd a tracepoint where a process gets a signal. This tracepoint\nshows signal-number, sa-handler and sa-flag.\n\nChanges in v3:\n - Add docbook style comments\n\nChanges in v2:\n - Add siginfo argument\n - Fix comment\n\nSigned-off-by: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nReviewed-by: Jason Baron \u003cjbaron@redhat.com\u003e\nAcked-by: Roland McGrath \u003croland@redhat.com\u003e\nCc: systemtap \u003csystemtap@sources.redhat.com\u003e\nCc: DLE \u003cdle-develop@lists.sourceforge.net\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nLKML-Reference: \u003c20091124215651.30449.20926.stgit@dhcp-100-2-132.bos.redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "d1eb650ff4130972fa21462fa49cd35a2865403b",
      "tree": "e43cee89ccad8adfa06f2e5f746ad96d2e00d9b3",
      "parents": [
        "80bbf6b641c8843b9d751a1f299aa7ee073ab9d4"
      ],
      "author": {
        "name": "Masami Hiramatsu",
        "email": "mhiramat@redhat.com",
        "time": "Tue Nov 24 16:56:45 2009 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Nov 26 10:55:37 2009 +0100"
      },
      "message": "tracepoint: Move signal sending tracepoint to events/signal.h\n\nMove signal sending event to events/signal.h. This patch also\nrenames sched_signal_send event to signal_generate.\n\nChanges in v4:\n - Fix a typo of task_struct pointer.\n\nChanges in v3:\n - Add docbook style comments\n\nChanges in v2:\n - Add siginfo argument\n - Add siginfo storing macro\n\nSigned-off-by: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nReviewed-by: Jason Baron \u003cjbaron@redhat.com\u003e\nAcked-by: Roland McGrath \u003croland@redhat.com\u003e\nCc: systemtap \u003csystemtap@sources.redhat.com\u003e\nCc: DLE \u003cdle-develop@lists.sourceforge.net\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nLKML-Reference: \u003c20091124215645.30449.60208.stgit@dhcp-100-2-132.bos.redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "470dda7417f284b9cfc96560b2acd98df63798a2",
      "tree": "c24bd04ea87975a56d34f3a86c2d32c9350bc6a0",
      "parents": [
        "b5eb34c3592545c756e50d882c08417eb60740a7"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Thu Nov 26 15:08:01 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Nov 26 09:14:05 2009 +0100"
      },
      "message": "tracing: Restore original format of sched events\n\nThe original format for sched_stat_iowait and sched_stat_sleep:\n\n  $ cat events/sched/sched_stat_iowait/format\n  ...\n  print fmt: \"comm\u003d%s pid\u003d%d delay\u003d%Lu [ns]\", ...\n  $ cat events/sched/sched_stat_sleep/format\n  ...\n  print fmt: \"comm\u003d%s pid\u003d%d delay\u003d%Lu [ns]\", ...\n\nBut commit commit 75ec29ab848a7e92a41aaafaeb33d1afbc839be4\n(\"tracing: Convert some sched trace events to DEFINE_EVENT and\n_PRINT\") broke the format:\n\n  $ cat events/sched/sched_stat_iowait/format\n  print fmt: \"task: %s:%d iowait: %Lu [ns]\", ...\n  $ cat events/sched/sched_stat_sleep/format\n  print fmt: \"task: %s:%d sleep: %Lu [ns]\", ...\n\nNo change in functionality.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c4B0E2951.9050800@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b5eb34c3592545c756e50d882c08417eb60740a7",
      "tree": "222b0a0fd4a834573484b3b40917f56b7a24e8eb",
      "parents": [
        "071688f36e7eba3e37b2fc48e35bfdab99b80b4d"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Thu Nov 26 15:07:36 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Nov 26 09:14:05 2009 +0100"
      },
      "message": "tracing: Convert some ext4 events to DEFINE_TRACE\n\nUse DECLARE_EVENT_CLASS to remove duplicate code:\n\n   text    data     bss     dec     hex filename\n 294695    6104     340  301139   49853 fs/ext4/ext4.o.old\n 289983    6104     324  296411   485db fs/ext4/ext4.o\n\n5 events are convertd:\n\n  ext4__write_begin: ext4_write_begin, ext4_da_write_begin\n  ext4__write_end: ext4_{ordered, writeback, journalled}_write_end\n\nNo change in functionality.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Theodore Ts\u0027o \u003ctytso@mit.edu\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c4B0E2938.2040708@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "071688f36e7eba3e37b2fc48e35bfdab99b80b4d",
      "tree": "938eeb106c1adcdccfdf55200e1564b28a39240c",
      "parents": [
        "77ca1e0294f25fc26053ba14353e703158acef26"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Thu Nov 26 15:06:55 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Nov 26 09:14:04 2009 +0100"
      },
      "message": "tracing: Convert some jbd2 events to DEFINE_EVENT\n\nUse DECLARE_EVENT_CLASS to remove duplicate code:\n\n   text    data     bss     dec     hex filename\n  34903    1693     448   37044    90b4 fs/jbd2/journal.o.old\n  31931    1693     416   34040    84f8 fs/jbd2/journal.o\n\nFour events are converted:\n\n  jbd2_commit: jbd2_start_commit,\n               jbd2_commit_{locking, flushing, logging}\n\nNo change in functionality.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Theodore Ts\u0027o \u003ctytso@mit.edu\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c4B0E290F.7030909@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "77ca1e0294f25fc26053ba14353e703158acef26",
      "tree": "9f227291d8da984b28708ec3bd2b5cc92cb787da",
      "parents": [
        "7703466b4c0a21b88d701882bef0d45bcb0a0281"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Thu Nov 26 15:06:14 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Nov 26 09:14:04 2009 +0100"
      },
      "message": "tracing: Convert some block events to DEFINE_EVENT\n\nuse DECLARE_EVENT_CLASS to remove duplicate code:\n\n   text    data     bss     dec     hex filename\n  53570    3284     184   57038    dece block/blk-core.o.old\n  43702    3284     144   47130    b81a block/blk-core.o\n\n12 events are converted:\n\n  block_rq: block_rq_insert, block_rq_issue\n  block_rq_with_error: block_rq_{abort, requeue, complete}\n  block_bio: block_bio_{backmerge, frontmerge, queue}\n  block_get_rq: block_getrq, block_sleeprq\n  block_unplug: block_unplug_timer, block_unplug_io\n\nNo change in functionality.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c4B0E28E6.7060609@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "7703466b4c0a21b88d701882bef0d45bcb0a0281",
      "tree": "b2d8b0ae1d0af754adf55fe5190104d3708ffdf5",
      "parents": [
        "382ece710bf88b08440b598731361e5a47582b62"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Thu Nov 26 15:05:38 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Nov 26 09:14:03 2009 +0100"
      },
      "message": "tracing: Convert some power events to DEFINE_EVENT\n\nUse DECLARE_EVENT_CLASS to remove duplicate code:\n\n   text    data     bss     dec     hex filename\n   4312     524      12    4848    12f0 kernel/trace/power-traces.o.old\n   3455     524       8    3987     f93 kernel/trace/power-traces.o\n\nTwo events are converted:\n\n  power: power_start, power_frequency\n\nNo change in functionality.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Arjan van de Ven \u003carjan@infradead.org\u003e\nLKML-Reference: \u003c4B0E28C2.1090906@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "382ece710bf88b08440b598731361e5a47582b62",
      "tree": "c261ffb1229d1e1c329be362f97a89f03060c7ed",
      "parents": [
        "c467307c1a812c3150b27a68c2b2d3397bb40a4f"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Thu Nov 26 15:05:03 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Nov 26 09:14:03 2009 +0100"
      },
      "message": "tracing: Convert some workqueue events to DEFINE_EVENT\n\nUse DECLARE_EVENT_CLASS to remove duplicate code:\n\n   text    data     bss     dec     hex filename\n  13171     800      72   14043    36db kernel/workqueue.o.old\n  12243     800      68   13111    3337 kernel/workqueue.o\n\nTwo events are converted:\n\n  workqueue: workqueue_insertion, workqueue_execution\n\nNo change in functionality.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c4B0E289F.5010104@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c467307c1a812c3150b27a68c2b2d3397bb40a4f",
      "tree": "c4cbb435998016afdaa9ee71497867ecbf9a5def",
      "parents": [
        "53d0422c2d10808fddb2c30859193bfea164c7e3"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Thu Nov 26 15:04:31 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Nov 26 09:14:03 2009 +0100"
      },
      "message": "tracing: Convert softirq events to DEFINE_EVENT\n\nUse DECLARE_EVENT_CLASS to remove duplicate code:\n\n   text    data     bss     dec     hex filename\n  12781     952      36   13769    35c9 kernel/softirq.o.old\n  11981     952      32   12965    32a5 kernel/softirq.o\n\nTwo events are converted:\n\n  softirq: softirq_entry, softirq_exit\n\nNo change in functionality.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c4B0E287F.4030708@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "53d0422c2d10808fddb2c30859193bfea164c7e3",
      "tree": "c0131ec3cdff711873af7177fc29403091944aaa",
      "parents": [
        "925684d6d589e40e41007edf47c69e729d911263"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Thu Nov 26 15:04:10 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Nov 26 09:14:02 2009 +0100"
      },
      "message": "tracing: Convert some kmem events to DEFINE_EVENT\n\nUse DECLARE_EVENT_CLASS to remove duplicate code:\n\n   text    data     bss     dec     hex filename\n 333987   69800   27228  431015   693a7 mm/built-in.o.old\n 330030   69800   27228  427058   68432 mm/built-in.o\n\n8 events are converted:\n\n  kmem_alloc: kmalloc, kmem_cache_alloc\n  kmem_alloc_node: kmalloc_node, kmem_cache_alloc_node\n  kmem_free: kfree, kmem_cache_free\n  mm_page: mm_page_alloc_zone_locked, mm_page_pcpu_drain\n\nNo change in functionality.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Mel Gorman \u003cmel@csn.ul.ie\u003e\nLKML-Reference: \u003c4B0E286A.2000405@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "925684d6d589e40e41007edf47c69e729d911263",
      "tree": "cb653b9a2fa673eabffdc2ed581731916b32bc0e",
      "parents": [
        "091ad3658e3c76c5fb05f65bfb64a0246f8f31b5"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Thu Nov 26 15:03:23 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Nov 26 09:14:02 2009 +0100"
      },
      "message": "tracing: Convert module refcnt events to DEFINE_EVENT\n\nUse DECLARE_EVENT_CLASS to remove duplicate code:\n\n   text    data     bss     dec     hex filename\n  29854    1980     128   31962    7cda kernel/module.o.old\n  28750    1980     128   30858    788a kernel/module.o\n\nTwo events are converted:\n\n  module_refcnt: module_get, module_put\n\nNo change in functionality.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c4B0E283B.3010508@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "091ad3658e3c76c5fb05f65bfb64a0246f8f31b5",
      "tree": "90f67be68a31e2001a4a73e0325a2a7798240a51",
      "parents": [
        "28b4e0d86acf59ae3bc422921138a4958458326e"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Nov 26 09:04:55 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Nov 26 09:04:55 2009 +0100"
      },
      "message": "events: Rename TRACE_EVENT_TEMPLATE() to DECLARE_EVENT_CLASS()\n\nIt is not quite obvious at first sight what TRACE_EVENT_TEMPLATE\ndoes: does it define an event as well beyond defining a template?\n\nTo clarify this, rename it to DECLARE_EVENT_CLASS, which follows\nthe various \u0027DECLARE_*()\u0027 idioms we already have in the kernel:\n\n  DECLARE_EVENT_CLASS(class)\n\n    DEFINE_EVENT(class, event1)\n    DEFINE_EVENT(class, event2)\n    DEFINE_EVENT(class, event3)\n\nTo complete this logic we should also rename TRACE_EVENT() to:\n\n  DEFINE_SINGLE_EVENT(single_event)\n\n... but in a more quiet moment of the kernel cycle.\n\nCc: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c4B0E286A.2000405@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b8007ef7422270864eae523cb38d7522a53a94d3",
      "tree": "a016bb4f9fe18656ba1942fe8892cf27ab71a1e4",
      "parents": [
        "7ac074340480018681a0d72b324d4487543bdc0e"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Tue Nov 03 13:45:32 2009 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Nov 25 14:20:06 2009 -0500"
      },
      "message": "tracing: Separate raw syscall from syscall tracer\n\nThe current syscall tracer mixes raw syscalls and real syscalls.\n\necho 1 \u003e events/syscalls/enable\nAnd we get these from the output:\n\n(XXXX insteads \"            grep-20914 [001] 588211.446347\" .. etc)\n\nXXXX: sys_read(fd: 3, buf: 80609a8, count: 7000)\nXXXX: sys_enter: NR 3 (3, 80609a8, 7000, a, 1000, bfce8ef8)\nXXXX: sys_read -\u003e 0x138\nXXXX: sys_exit: NR 3 \u003d 312\nXXXX: sys_read(fd: 3, buf: 8060ae0, count: 7000)\nXXXX: sys_enter: NR 3 (3, 8060ae0, 7000, a, 1000, bfce8ef8)\nXXXX: sys_read -\u003e 0x138\nXXXX: sys_exit: NR 3 \u003d 312\n\nThere are 2 drawbacks here.\nA) two almost identical records are saved in ringbuffer\n   when a syscall enters or exits. (4 records for every syscall)\n   This wastes precious space in the ring buffer.\nB) the lines including \"sys_enter/sys_exit\" produces\n   hardly any useful information for the output (no labels).\n\nThe user can use this method to prevent these drawbacks:\necho 1 \u003e events/syscalls/enable\necho 0 \u003e events/syscalls/sys_enter/enable\necho 0 \u003e events/syscalls/sys_exit/enable\n\nBut this is not user friendly. So we separate raw syscall\nfrom syscall tracer.\n\nAfter this fix applied:\nsyscall tracer\u0027s output (echo 1 \u003e events/syscalls/enable):\n\nXXXX: sys_read(fd: 3, buf: bfe87d88, count: 200)\nXXXX: sys_read -\u003e 0x200\nXXXX: sys_fstat64(fd: 3, statbuf: bfe87c98)\nXXXX: sys_fstat64 -\u003e 0x0\nXXXX: sys_close(fd: 3)\n\nraw syscall tracer\u0027s output (echo 1 \u003e events/raw_syscalls/enable):\n\nXXXX: sys_enter: NR 175 (0, bf92bf18, bf92bf98, 8, b748cff4, bf92bef8)\nXXXX: sys_exit: NR 175 \u003d 0\nXXXX: sys_enter: NR 175 (2, bf92bf98, 0, 8, b748cff4, bf92bef8)\nXXXX: sys_exit: NR 175 \u003d 0\nXXXX: sys_enter: NR 3 (9, bf927f9c, 4000, b77e2518, b77dce60, bf92bff8)\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4AEFC37C.5080609@cn.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "75ec29ab848a7e92a41aaafaeb33d1afbc839be4",
      "tree": "d9bf6d12a60ddfe7cab9fb6ca370b0436ffe4649",
      "parents": [
        "e5bc9721684e9412f3e0465222f317c362a8ab47"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Nov 18 20:48:08 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Nov 24 18:24:00 2009 -0500"
      },
      "message": "tracing: Convert some sched trace events to DEFINE_EVENT and _PRINT\n\nConverting some of the scheduler trace events to use the\nTRACE_EVENT_TEMPLATE, DEFINE_EVENT and DEFINE_EVENT_PRINT helped to\nsave some space:\n\n$ size kernel/sched.o-*\n   text\t   data\t    bss\t    dec\t    hex\tfilename\n  79299\t   6776\t   2520\t  88595\t  15a13\tkernel/sched.o-notrace\n 101941\t  11896\t   2584\t 116421\t  1c6c5\tkernel/sched.o-templ\n 104779\t  11896\t   2584\t 119259\t  1d1db\tkernel/sched.o-trace\n\nsched.o-notrace is without any tracepoints compiled\nsched.o-templ is with this patch\nsched.o-trace is the tracepoints before this patch\n\nThe trace events converted to DEFINE_EVENT:\n\nsched_wakeup, sched_wakeup_new, sched_process_free, sched_process_exit,\nand sched_stat_wait.\n\nThe trace events converted to DEFINE_EVENT_PRINT:\n\nsched_stat_sleep and sched_stat_iowait.\n\nNote, since the TRACE_EVENT_TEMPLATE always uses a print, the\nsched_stat_wait print format is defined in the template and this\ntemplate is used by sched_stat_sleep and sched_stat_iowait. But the\nlater two override the print format.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "e5bc9721684e9412f3e0465222f317c362a8ab47",
      "tree": "380e76f64fd58e1f68715514e4b37734f3098fb3",
      "parents": [
        "ff038f5c37c2070829004a0678372766c2b32180"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Nov 18 20:36:26 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Nov 24 18:23:53 2009 -0500"
      },
      "message": "tracing: Create new DEFINE_EVENT_PRINT\n\nAfter creating the TRACE_EVENT_TEMPLATE I started to look at other\ntrace points to see what duplication was made. I noticed that there\nare several trace points where they are almost identical except for\nthe name and the output format. Since TRACE_EVENT_TEMPLATE was successful\nin bringing down the size of trace events, I added a DEFINE_EVENT_PRINT.\n\nDEFINE_EVENT_PRINT is used just like DEFINE_EVENT is. That is, the\nDEFINE_EVENT_PRINT also uses a TRACE_EVENT_TEMPLATE, but it allows the\ndeveloper to overwrite the print format. If there are two or more\nTRACE_EVENTS that are identical except for the name and print, then\nthey can be converted to use a TRACE_EVENT_TEMPLATE. Since the\nTRACE_EVENT_TEMPLATE already does the print output, the first trace event\nwould have its print format held in the TRACE_EVENT_TEMPLATE and\nbe defined with a DEFINE_EVENT. The rest will use the DEFINE_EVENT_PRINT\nand override the print format.\n\nConverting the sched trace points to both DEFINE_EVENT and\nDEFINE_EVENT_PRINT. Five were converted to DEFINE_EVENT and two were\nconverted to DEFINE_EVENT_PRINT.\n\nI was able to get the following:\n\n$ size kernel/sched.o-*\n   text\t   data\t    bss\t    dec\t    hex\tfilename\n  79299\t   6776\t   2520\t  88595\t  15a13\tkernel/sched.o-notrace\n 101941\t  11896\t   2584\t 116421\t  1c6c5\tkernel/sched.o-templ\n 104779\t  11896\t   2584\t 119259\t  1d1db\tkernel/sched.o-trace\n\nsched.o-notrace is the scheduler compiled with no trace points.\nsched.o-templ is with the use of DEFINE_EVENT and DEFINE_EVENT_PRINT\nsched.o-trace is the current trace events.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "ff038f5c37c2070829004a0678372766c2b32180",
      "tree": "69a48d73eb959ae3c9be3814c42e37a8ea188c41",
      "parents": [
        "fa7c27ee9394fc0d52404b2a89882e95868a60b9"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Nov 18 20:27:27 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Nov 24 17:52:11 2009 -0500"
      },
      "message": "tracing: Create new TRACE_EVENT_TEMPLATE\n\nThere are some places in the kernel that define several tracepoints and\nthey are all identical besides the name. The code to enable, disable and\nrecord is created for every trace point even if most of the code is\nidentical.\n\nThis patch adds TRACE_EVENT_TEMPLATE that lets the developer create\na template TRACE_EVENT and create trace points with DEFINE_EVENT, which\nis based off of a given template. Each trace point used by this\nwill share most of the code, and bring down the size of the kernel\nwhen there are several duplicate events.\n\nUsage is:\n\nTRACE_EVENT_TEMPLATE(name, proto, args, tstruct, assign, print);\n\nWhich would be the same as defining a normal TRACE_EVENT.\n\nTo create the trace events that the trace points will use:\n\nDEFINE_EVENT(template, name, proto, args) is done. The template\nis the name of the TRACE_EVENT_TEMPLATE to use. The name is the\nname of the trace point. The parameters proto and args must be the same\nas the proto and args of the template. If they are not the same,\nthen a compile error will result. I tried hard removing this duplication\nbut the C preprocessor is not powerful enough (or my CPP magic\nexperience points is not at a high enough level) to not need them.\n\nA lot of trace events are coming in with new XFS development. Most of\nthe trace points are identical except for the name. The following shows\nthe advantage of having TRACE_EVENT_TEMPLATE:\n\n$ size fs/xfs/xfs.o.*\n    text          data     bss     dec     hex filename\n  452114          2788    3520  458422   6feb6 fs/xfs/xfs.o.old\n  638482         38116    3744  680342   a6196 fs/xfs/xfs.o.template\n  996954         38116    4480 1039550   fdcbe fs/xfs/xfs.o.trace\n\nxfs.o.old is without any tracepoints.\nxfs.o.template uses the new TRACE_EVENT_TEMPLATE.\nxfs.o.trace uses the current TRACE_EVENT macros.\n\nRequested-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "b4d7241596ffb6398ac5535ae8cf80d845b0c254",
      "tree": "b885fbea9745d133bde48ce5bf86f07e425eda5d",
      "parents": [
        "ac48b0a1d068887141581bea8285de5fcab182b0"
      ],
      "author": {
        "name": "Wu Fengguang",
        "email": "fengguang.wu@intel.com",
        "time": "Tue Nov 24 11:15:08 2009 -0500"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Tue Nov 24 11:15:08 2009 -0500"
      },
      "message": "ext4: remove encountered_congestion trace\n\nIt is no longer set and scheduled to be removed.\n\nSigned-off-by: Wu Fengguang \u003cfengguang.wu@intel.com\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "4ed7c92d68a5387ba5f7030dc76eab03558e27f5",
      "tree": "38d758819c41261275c2dbd6f64976f824c5fd27",
      "parents": [
        "f67218c3e93abaf0f480bb94b53d234853ffe4de"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Mon Nov 23 11:37:29 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Nov 23 11:49:57 2009 +0100"
      },
      "message": "perf_events: Undo some recursion damage\n\nMake perf_swevent_get_recursion_context return a context number\nand disable preemption.\n\nThis could be used to remove the IRQ disable from the trace bit\nand index the per-cpu buffer with.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nLKML-Reference: \u003c20091123103819.993226816@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6eebee625544ac4ef1d805da942f463275bd6caa",
      "tree": "3db08ee0240d6556a5affed9bb9018cbf01874aa",
      "parents": [
        "e6362609b6c71c5b802026be9cf263bbdd67a50e"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Sun Nov 22 20:23:31 2009 -0500"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Sun Nov 22 20:23:31 2009 -0500"
      },
      "message": "ext4: print i_mode in octal in ext4 tracepoints\n\nInode permissions are much easier to understand if they are printed in\noctal.\n\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "e6362609b6c71c5b802026be9cf263bbdd67a50e",
      "tree": "be908b6b0566f70d31378bf11b548a0d59ae0218",
      "parents": [
        "4433871130f36585fde38e7dd817433296648945"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Mon Nov 23 07:17:05 2009 -0500"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Mon Nov 23 07:17:05 2009 -0500"
      },
      "message": "ext4: call ext4_forget() from ext4_free_blocks()\n\nAdd the facility for ext4_forget() to be called from\next4_free_blocks().  This simplifies the code in a large number of\nplaces, and centralizes most of the work of calling ext4_forget() into\na single place.\n\nAlso fix a bug in the extents migration code; it wasn\u0027t calling\next4_forget() when releasing the indirect blocks during the\nconversion.  As a result, if the system cashed during or shortly after\nthe extents migration, and the released indirect blocks get reused as\ndata blocks, the journal replay would corrupt the data blocks.  With\nthis new patch, fixing this bug was as simple as adding the\nEXT4_FREE_BLOCKS_FORGET flags to the call to ext4_free_blocks().\n\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\nCc: \"Aneesh Kumar K.V\" \u003caneesh.kumar@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "ce71b9df8893ec954e56c5979df6da274f20f65e",
      "tree": "76e8a5e33393c2f4fca4083628fc142dcbb55250",
      "parents": [
        "e25613683bd5c46d3e8c8ae6416dccc9f357dcdc"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sun Nov 22 05:26:55 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Nov 22 09:03:42 2009 +0100"
      },
      "message": "tracing: Use the perf recursion protection from trace event\n\nWhen we commit a trace to perf, we first check if we are\nrecursing in the same buffer so that we don\u0027t mess-up the buffer\nwith a recursing trace. But later on, we do the same check from\nperf to avoid commit recursion. The recursion check is desired\nearly before we touch the buffer but we want to do this check\nonly once.\n\nThen export the recursion protection from perf and use it from\nthe trace events before submitting a trace.\n\nv2: Put appropriate Reported-by tag\n\nReported-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nLKML-Reference: \u003c1258864015-10579-1-git-send-email-fweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "192dcf1d1775736627280a5dd4cb0f605b21857a",
      "tree": "1adc2aa74260d11d401538640496fe3bb402b282",
      "parents": [
        "638adb0561264a3360a53e93def62288c85d8373"
      ],
      "author": {
        "name": "Josh Stone",
        "email": "jistone@redhat.com",
        "time": "Wed Nov 18 13:06:55 2009 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Nov 19 05:38:40 2009 +0100"
      },
      "message": "tracing: Remove the stale include/trace/power.h\n\nCommit 6161352 moved the power tracing to include/trace/events/,\nbut left the old header behind.  No one is using the old header,\nand its declarations are now incorrect, so it should be removed.\n\nSigned-off-by: Josh Stone \u003cjistone@redhat.com\u003e\nAcked-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nCc: Frank Ch. Eigler \u003cfche@redhat.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c1258578415-14752-1-git-send-email-jistone@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "a7b63425a41cd6a8d50f76fef0660c5110f97e91",
      "tree": "be17ee121f1c8814d8d39c9f3e0205d9397fab54",
      "parents": [
        "35039eb6b199749943547c8572be6604edf00229",
        "3726cc75e581c157202da93bb2333cce25c15c98"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Nov 17 10:16:43 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Nov 17 10:17:47 2009 +0100"
      },
      "message": "Merge branch \u0027perf/core\u0027 into perf/probes\n\nResolved merge conflict in tools/perf/Makefile\n\nMerge reason: we want to queue up a dependent patch.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "beac2da7565e42be59963824899825d0cc624295",
      "tree": "22b38198349bd000cd146243271f604708fbc3fb",
      "parents": [
        "cf40db137cc2b2a1b3f6850247ac2b181d9d3847"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Mon Nov 23 07:25:08 2009 -0500"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Mon Nov 23 07:25:08 2009 -0500"
      },
      "message": "ext4: add tracepoint for ext4_forget()\n\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "811cb50baf63461ce0bdb234927046131fc7fa8b",
      "tree": "ea161607e94f11754048c8769b37f58d55fe8de6",
      "parents": [
        "a646365cc330b5aaf4452c91f61b1e0d1acf68d0"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Fri Nov 13 23:40:09 2009 +0100"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Fri Nov 13 22:20:34 2009 -0500"
      },
      "message": "tracing: Fix event format export\n\nFor some reason the export of the event print format to userspace\nuses \u0027#fmt\u0027 which breaks if the format string is anything but a plain\nstring, for example if it is built with macros then the macro names\nare exported instead of their contents.\n\nUse\n\t\"\\\"%s\\\"\", fmt\ninstead of\n\t\"%s\", #fmt\nto export the string and not the way it is built.\n\nFor example, in net/mac80211/driver-trace.h for the trace event drv_start\nthere is:\n\n        TP_printk(\n                LOCAL_PR_FMT, LOCAL_PR_ARG\n        )\n\nWhich use to produce:\n\n print fmt: LOCAL_PR_FMT, REC-\u003ewiphy_name\n\nNow produces:\n\n print fmt: \"%s\", REC-\u003ewiphy_name\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nLKML-Reference: \u003c20091113224009.GB23942@elte.hu\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "67178767b936fb47a3a5e88097cff41ccbda7acb",
      "tree": "f55675817e8d934bd2a627a729a010a58bbba464",
      "parents": [
        "db48cccc7c709ccfa7cb4ac702bc27c216bffee7"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Fri Nov 13 10:06:34 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Nov 13 10:48:27 2009 +0100"
      },
      "message": "tracing: Rename \u0027lockdep\u0027 event subsystem into \u0027lock\u0027\n\nLockdep events subsystem gathers various locking related events\nsuch as a request, release, contention or acquisition of a lock.\n\nThe name of this event subsystem is a bit of a misnomer since\nthese events are not quite related to lockdep but more generally\nto locking, ie: these events are not reporting lock dependencies\nor possible deadlock scenario but pure locking events.\n\nHence this rename.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: Hitoshi Mitake \u003cmitake@dcl.info.waseda.ac.jp\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c1258103194-843-1-git-send-email-fweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "444a2a3bcd6d5bed5c823136f68fcc93c0fe283f",
      "tree": "6a57308586b4e723238646074e79298845803520",
      "parents": [
        "09879b99d44d701c603935ef2549004405d7f8f9"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Fri Nov 06 04:13:05 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Nov 08 10:31:42 2009 +0100"
      },
      "message": "tracing, perf_events: Protect the buffer from recursion in perf\n\nWhile tracing using events with perf, if one enables the\nlockdep:lock_acquire event, it will infect every other perf\ntrace events.\n\nBasically, you can enable whatever set of trace events through\nperf but if this event is part of the set, the only result we\ncan get is a long list of lock_acquire events of rcu read lock,\nand only that.\n\nThis is because of a recursion inside perf.\n\n1) When a trace event is triggered, it will fill a per cpu\n   buffer and submit it to perf.\n\n2) Perf will commit this event but will also protect some data\n   using rcu_read_lock\n\n3) A recursion appears: rcu_read_lock triggers a lock_acquire\n   event that will fill the per cpu event and then submit the\n   buffer to perf.\n\n4) Perf detects a recursion and ignores it\n\n5) Perf continues its work on the previous event, but its buffer\n   has been overwritten by the lock_acquire event, it has then\n   been turned into a lock_acquire event of rcu read lock\n\nSuch scenario also happens with lock_release with\nrcu_read_unlock().\n\nWe could turn the rcu_read_lock() into __rcu_read_lock() to drop\nthe lock debugging from perf fast path, but that would make us\nlose the rcu debugging and that doesn\u0027t prevent from other\npossible kind of recursion from perf in the future.\n\nThis patch adds a recursion protection based on a counter on the\nperf trace per cpu buffers to solve the problem.\n\n-v2: Fixed lost whitespace, added reviewed-by tag\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nReviewed-by: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nLKML-Reference: \u003c1257477185-7838-1-git-send-email-fweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "9de09ace8d518141a4375e1d216ab64db4377799",
      "tree": "da8e7a77f4ea91eb3bb73fc6da72ecf8c99e1c16",
      "parents": [
        "1beee96bae0daf7f491356777c3080cc436950f5",
        "6d3f1e12f46a2f9a1bb7e7aa433df8dd31ce5647"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Oct 29 09:02:15 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Oct 29 09:02:20 2009 +0100"
      },
      "message": "Merge branch \u0027tracing/urgent\u0027 into tracing/core\n\nMerge reason: Pick up fixes and move base from -rc1 to -rc5.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "43315956509ca6913764861ac7dec128b91eb1ec",
      "tree": "60fd5647f150a46e63093a41417c2eef3e776b3d",
      "parents": [
        "9bf4e7fba8006d19846fec877b6da0616b2772de",
        "6beba7adbe092e63dfe8d09fbd1e3ec140474a13"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Oct 23 08:23:20 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Oct 23 08:23:20 2009 +0200"
      },
      "message": "Merge branch \u0027perf/core\u0027 into perf/probes\n\nConflicts:\n\ttools/perf/Makefile\n\nMerge reason:\n\n - fix the conflict\n - pick up the pr_*() infrastructure to queue up dependent patch\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "bb3c3e807140816b5f5fd4840473ee52a916ad4f",
      "tree": "9e8a69d266a7df86ca16177eefffab4b4e910753",
      "parents": [
        "595c36490deb49381dc51231a3d5e6b66786ed27",
        "012abeea669ea49636cf952d13298bb68654146a"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Oct 17 09:58:25 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Oct 17 09:58:25 2009 +0200"
      },
      "message": "Merge commit \u0027v2.6.32-rc5\u0027 into perf/probes\n\nConflicts:\n\tkernel/trace/trace_event_profile.c\n\nMerge reason: update to -rc5 and resolve conflict.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "434a83c3fbb951908a3a52040f7f0e0b8ba00dd0",
      "tree": "2b0d75112d6f132e749024c2a61a806426a2ac06",
      "parents": [
        "a66abe7fbf7805a1a02f241bd5283265ff6706ec"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Oct 15 11:50:39 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Oct 15 12:42:03 2009 +0200"
      },
      "message": "events: Harmonize event field names and print output names\n\nNow that we can filter based on fields via perf record, people\nwill start using filter expressions and will expect them to\nbe obvious.\n\nThe primary way to see which fields are available is by looking\nat the trace output, such as:\n\n  gcc-18676 [000]   343.011728: irq_handler_entry: irq\u003d0 handler\u003dtimer\n  cc1-18677 [000]   343.012727: irq_handler_entry: irq\u003d0 handler\u003dtimer\n  cc1-18677 [000]   343.032692: irq_handler_entry: irq\u003d0 handler\u003dtimer\n  cc1-18677 [000]   343.033690: irq_handler_entry: irq\u003d0 handler\u003dtimer\n  cc1-18677 [000]   343.034687: irq_handler_entry: irq\u003d0 handler\u003dtimer\n  cc1-18677 [000]   343.035686: irq_handler_entry: irq\u003d0 handler\u003dtimer\n  cc1-18677 [000]   343.036684: irq_handler_entry: irq\u003d0 handler\u003dtimer\n\nWhile \u0027irq\u003d\u003d0\u0027 filters work, the \u0027handler\u003d\u003d\u003cx\u003e\u0027 filter expression\ndoes not work:\n\n  $ perf record -R -f -a -e irq:irq_handler_entry --filter handler\u003dtimer sleep 1\n   Error: failed to set filter with 22 (Invalid argument)\n\nThe problem is that while an \u0027irq\u0027 field exists and is recognized\nas a filter field - \u0027handler\u0027 does not exist - its name is \u0027name\u0027\nin the output.\n\nTo solve this, we need to synchronize the printout and the field\nnames, wherever possible.\n\nIn cases where the printout prints a non-field, we enclose\nthat information in square brackets, such as:\n\n  perf-1380  [013]   724.903505: softirq_exit: vec\u003d9 [action\u003dRCU]\n  perf-1380  [013]   724.904482: softirq_exit: vec\u003d1 [action\u003dTIMER]\n\nThis way users can use filter expressions more intuitively: all\nfields that show up as \u0027primary\u0027 (non-bracketed) information is\nfilterable.\n\nThis patch harmonizes the field names for all irq, bkl, power,\nsched and timer events.\n\nWe might in fact think about dropping the print format bit of\ngeneric tracepoints altogether, and just print the fields that\nare being recorded.\n\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\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\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "713490e02eed242b4c1c672b3c0c8b708f8b6f1d",
      "tree": "8485759cfc112366d2485f473ad348a1c714f421",
      "parents": [
        "c4dc775f53136cd6af8f88bce67cce9b42751768",
        "1beee96bae0daf7f491356777c3080cc436950f5"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Oct 15 11:33:56 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Oct 15 11:34:00 2009 +0200"
      },
      "message": "Merge branch \u0027tracing/core\u0027 into perf/core\n\nMerge reason: to add event filter support we need the following\ncommits from the tracing tree:\n\n 3f6fe06: tracing/filters: Unify the regex parsing helpers\n 1889d20: tracing/filters: Provide basic regex support\n 737f453: tracing/filters: Cleanup useless headers\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c44fc770845163f8d9e573f37f92a7b7a7ade14e",
      "tree": "dac4327b1454b73cefe7ffb2ef28cc67ea878f2b",
      "parents": [
        "4d8289494a37e19cd7f3beacea9c957ad3debad6"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sat Sep 19 06:50:42 2009 +0200"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Wed Oct 14 09:53:56 2009 +0200"
      },
      "message": "tracing: Move syscalls metadata handling from arch to core\n\nMost of the syscalls metadata processing is done from arch.\nBut these operations are mostly generic accross archs. Especially now\nthat we have a common variable name that expresses the number of\nsyscalls supported by an arch: NR_syscalls, the only remaining bits\nthat need to reside in arch is the syscall nr to addr translation.\n\nv2: Compare syscalls symbols only after the \"sys\" prefix so that we\n    avoid spurious mismatches with archs that have syscalls wrappers,\n    in which case syscalls symbols have \"SyS\" prefixed aliases.\n    (Reported by: Heiko Carstens)\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nAcked-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\n"
    },
    {
      "commit": "8968f9d3dc23d9a1821d97c6f11e72a59382e56c",
      "tree": "79272a0169556c1cf22ede10d5eedb59747c28a0",
      "parents": [
        "9dbdd6c41c12fb42ee7188eafa7e1917b192af3a"
      ],
      "author": {
        "name": "Hidetoshi Seto",
        "email": "seto.hidetoshi@jp.fujitsu.com",
        "time": "Tue Oct 13 16:19:41 2009 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Oct 13 09:43:38 2009 +0200"
      },
      "message": "perf_event, x86, mce: Use TRACE_EVENT() for MCE logging\n\nThis approach is the first baby step towards solving many of the\nstructural problems the x86 MCE logging code is having today:\n\n - It has a private ring-buffer implementation that has a number\n   of limitations and has been historically fragile and buggy.\n\n - It is using a quirky /dev/mcelog ioctl driven ABI that is MCE\n   specific. /dev/mcelog is not part of any larger logging\n   framework and hence has remained on the fringes for many years.\n\n - The MCE logging code is still very unclean partly due to its ABI\n   limitations. Fields are being reused for multiple purposes, and\n   the whole message structure is limited and x86 specific to begin\n   with.\n\nAll in one, the x86 tree would like to move away from this private\nimplementation of an event logging facility to a broader framework.\n\nBy using perf events we gain the following advantages:\n\n - Multiple user-space agents can access MCE events. We can have an\n   mcelog daemon running but also a system-wide tracer capturing\n   important events in flight-recorder mode.\n\n - Sampling support: the kernel and the user-space call-chain of MCE\n   events can be stored and analyzed as well. This way actual patterns\n   of bad behavior can be matched to precisely what kind of activity\n   happened in the kernel (and/or in the app) around that moment in\n   time.\n\n - Coupling with other hardware and software events: the PMU can track a\n   number of other anomalies - monitoring software might chose to\n   monitor those plus the MCE events as well - in one coherent stream of\n   events.\n\n - Discovery of MCE sources - tracepoints are enumerated and tools can\n   act upon the existence (or non-existence) of various channels of MCE\n   information.\n\n - Filtering support: we just subscribe to and act upon the events we\n   are interested in. Then even on a per event source basis there\u0027s\n   in-kernel filter expressions available that can restrict the amount\n   of data that hits the event channel.\n\n - Arbitrary deep per cpu buffering of events - we can buffer 32\n   entries or we can buffer as much as we want, as long as we have\n   the RAM.\n\n - An NMI-safe ring-buffer implementation - mappable to user-space.\n\n - Built-in support for timestamping of events, PID markers, CPU\n   markers, etc.\n\n - A rich ABI accessible over system call interface. Per cpu, per task\n   and per workload monitoring of MCE events can be done this way. The\n   ABI itself has a nice, meaningful structure.\n\n - Extensible ABI: new fields can be added without breaking tooling.\n   New tracepoints can be added as the hardware side evolves. There\u0027s\n   various parsers that can be used.\n\n - Lots of scheduling/buffering/batching modes of operandi for MCE\n   events. poll() support. mmap() support. read() support. You name it.\n\n - Rich tooling support: even without any MCE specific extensions added\n   the \u0027perf\u0027 tool today offers various views of MCE data: perf report,\n   perf stat, perf trace can all be used to view logged MCE events and\n   perhaps correlate them to certain user-space usage patterns. But it\n   can be used directly as well, for user-space agents and policy action\n   in mcelog, etc.\n\nWith this we hope to achieve significant code cleanup and feature\nimprovements in the MCE code, and we hope to be able to drop the\n/dev/mcelog facility in the end.\n\nThis patch is just a plain dumb dump of mce_log() records to\nthe tracepoints / perf events framework - a first proof of\nconcept step.\n\nSigned-off-by: Hidetoshi Seto \u003cseto.hidetoshi@jp.fujitsu.com\u003e\nCc: Huang Ying \u003cying.huang@intel.com\u003e\nCc: Andi Kleen \u003cak@linux.intel.com\u003e\nLKML-Reference: \u003c4AD42A0D.7050104@jp.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "9dbdd6c41c12fb42ee7188eafa7e1917b192af3a",
      "tree": "06a9eb894bc976c5c20e84ccd74fd82b9b71aed4",
      "parents": [
        "7a693d3f0d10f978ebdf3082c41404ab97106567",
        "161291396e76e0832c08f617eb9bd364d1648148"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Oct 13 09:31:28 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Oct 13 09:31:34 2009 +0200"
      },
      "message": "Merge commit \u0027v2.6.32-rc4\u0027 into perf/core\n\nMerge reason: we were on an -rc1 base, merge up to -rc4.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "26a50744b21fff65bd754874072857bee8967f4d",
      "tree": "4819820f0841090232fcd2525f496f787fd411c7",
      "parents": [
        "d9b2002c406011164f245de7a81304625989f1c9"
      ],
      "author": {
        "name": "Tom Zanussi",
        "email": "tzanussi@gmail.com",
        "time": "Tue Oct 06 01:09:50 2009 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Oct 06 15:04:45 2009 +0200"
      },
      "message": "tracing/events: Add \u0027signed\u0027 field to format files\n\nThe sign info used for filters in the kernel is also useful to\napplications that process the trace stream.  Add it to the format\nfiles and make it available to userspace.\n\nSigned-off-by: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: rostedt@goodmis.org\nCc: lizf@cn.fujitsu.com\nCc: hch@infradead.org\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\nLKML-Reference: \u003c1254809398-8078-2-git-send-email-tzanussi@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "58e57fbd1c7e8833314459555e337364fe5521f3",
      "tree": "242a3859387588889c9dcc45915b0dec951f84c3",
      "parents": [
        "8a0382f6fceaf0c6479e582e1054f36333ea3d24",
        "0f78ab9899e9d6acb09d5465def618704255963b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Oct 04 12:39:14 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Oct 04 12:39:14 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.dk/linux-2.6-block\n\n* \u0027for-linus\u0027 of git://git.kernel.dk/linux-2.6-block: (41 commits)\n  Revert \"Seperate read and write statistics of in_flight requests\"\n  cfq-iosched: don\u0027t delay async queue if it hasn\u0027t dispatched at all\n  block: Topology ioctls\n  cfq-iosched: use assigned slice sync value, not default\n  cfq-iosched: rename \u0027desktop\u0027 sysfs entry to \u0027low_latency\u0027\n  cfq-iosched: implement slower async initiate and queue ramp up\n  cfq-iosched: delay async IO dispatch, if sync IO was just done\n  cfq-iosched: add a knob for desktop interactiveness\n  Add a tracepoint for block request remapping\n  block: allow large discard requests\n  block: use normal I/O path for discard requests\n  swapfile: avoid NULL pointer dereference in swapon when s_bdev is NULL\n  fs/bio.c: move EXPORT* macros to line after function\n  Add missing blk_trace_remove_sysfs to be in pair with blk_trace_init_sysfs\n  cciss: fix build when !PROC_FS\n  block: Do not clamp max_hw_sectors for stacking devices\n  block: Set max_sectors correctly for stacking devices\n  cciss: cciss_host_attr_groups should be const\n  cciss: Dynamically allocate the drive_info_struct for each logical drive.\n  cciss: Add usage_count attribute to each logical drive in /sys\n  ...\n"
    },
    {
      "commit": "b0da3f0dada78832c9da03ad2152ae76bd9a2496",
      "tree": "58380f5d8f3c313fbb9fd0310509a408b38a0399",
      "parents": [
        "67efc9258010da35b27b3854d0880c7e193004ed"
      ],
      "author": {
        "name": "Jun\u0027ichi Nomura",
        "email": "j-nomura@ce.jp.nec.com",
        "time": "Thu Oct 01 21:16:13 2009 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Oct 01 21:19:34 2009 +0200"
      },
      "message": "Add a tracepoint for block request remapping\n\nSince 2.6.31 now has request-based device-mapper, it\u0027s useful to have\na tracepoint for request-remapping as well as bio-remapping.\nThis patch adds a tracepoint for request-remapping, trace_block_rq_remap().\n\nSigned-off-by: Kiyoshi Ueda \u003ck-ueda@ct.jp.nec.com\u003e\nSigned-off-by: Jun\u0027ichi Nomura \u003cj-nomura@ce.jp.nec.com\u003e\nCc: Alasdair G Kergon \u003cagk@redhat.com\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "0aa73ba1c4e1ad1d51a29e0df95ccd9f746918b6",
      "tree": "f0714ddcd02812b4fbe3b5405df9e4068f5587e2",
      "parents": [
        "925936ebf35a95c290e010b784c962164e6728f3",
        "33974093c024f08caadd2fc71a83bd811ed1831d"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Oct 01 11:20:33 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Oct 01 11:20:48 2009 +0200"
      },
      "message": "Merge branch \u0027tracing/urgent\u0027 into tracing/core\n\nMerge reason: Pick up latest fixes and update to latest upstream.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "9f44fdc5188bc1a0bbcc3453d57f01e49ba868d9",
      "tree": "a636c14f741e662814fe95bf35f22659411f1733",
      "parents": [
        "4c8f1cb266cba4d1052f524d04df839d8f732ace",
        "c1fccc0696bcaff6008c11865091f5ec4b0937ab"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 30 09:32:30 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 30 09:32:30 2009 -0700"
      },
      "message": "Merge branch \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4\n\n* \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4:\n  ext4: Fix time encoding with extra epoch bits\n  ext4: Add a stub for mpage_da_data in the trace header\n  jbd2: Use tracepoints for history file\n  ext4: Use tracepoints for mb_history trace file\n  ext4, jbd2: Drop unneeded printks at mount and unmount time\n  ext4: Handle nested ext4_journal_start/stop calls without a journal\n  ext4: Make sure ext4_dirty_inode() updates the inode in no journal mode\n  ext4: Avoid updating the inode table bh twice in no journal mode\n  ext4: EXT4_IOC_MOVE_EXT: Check for different original and donor inodes first\n  ext4: async direct IO for holes and fallocate support\n  ext4: Use end_io callback to avoid direct I/O fallback to buffered I/O\n  ext4: Split uninitialized extents for direct I/O\n  ext4: release reserved quota when block reservation for delalloc retry\n  ext4: Adjust ext4_da_writepages() to write out larger contiguous chunks\n  ext4: Fix hueristic which avoids group preallocation for closed files\n  ext4: Use ext4_msg() for ext4_da_writepage() errors\n  ext4: Update documentation about quota mount options\n"
    },
    {
      "commit": "0ef122494020521309be855bfdeeb41f34bf8c94",
      "tree": "27de7288ac9141164e8c7949c3950dc6be04d045",
      "parents": [
        "bf6993276f74d46776f35c45ddef29b981b1d1c6"
      ],
      "author": {
        "name": "Josh Stone",
        "email": "jistone@redhat.com",
        "time": "Wed Sep 30 00:51:22 2009 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Wed Sep 30 00:51:22 2009 -0400"
      },
      "message": "ext4: Add a stub for mpage_da_data in the trace header\n\nThe tracepoint ext4_da_write_pages has a struct mpage_da_data*\nparameter, but that struct is only defined in fs/ext4/ext4.h.  This\npatch adds a forward declaration for that struct, so this tracepoint\nheader can still be used by tools like SystemTap.\n\nThis is a continuation of the fix in commit 3661d286.\n\nhttp://sourceware.org/bugzilla/show_bug.cgi?id\u003d10703\n\nSigned-off-by: Josh Stone \u003cjistone@redhat.com\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "bf6993276f74d46776f35c45ddef29b981b1d1c6",
      "tree": "5c9cb128fed29a83add1932b12443edaa6fd06cc",
      "parents": [
        "296c355cd6443d89fa251885a8d78778fe111dc4"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Wed Sep 30 00:32:06 2009 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Wed Sep 30 00:32:06 2009 -0400"
      },
      "message": "jbd2: Use tracepoints for history file\n\nThe /proc/fs/jbd2/\u003cdev\u003e/history was maintained manually; by using\ntracepoints, we can get all of the existing functionality of the /proc\nfile plus extra capabilities thanks to the ftrace infrastructure.  We\nsave memory as a bonus.\n\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "296c355cd6443d89fa251885a8d78778fe111dc4",
      "tree": "5cf7c8b115617dc3829a16a5969894d37b73173c",
      "parents": [
        "90576c0b9a0b5323fc4bd7f23f49be0d234f36d1"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Wed Sep 30 00:32:42 2009 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Wed Sep 30 00:32:42 2009 -0400"
      },
      "message": "ext4: Use tracepoints for mb_history trace file\n\nThe /proc/fs/ext4/\u003cdev\u003e/mb_history was maintained manually, and had a\nnumber of problems: it required a largish amount of memory to be\nallocated for each ext4 filesystem, and the s_mb_history_lock\nintroduced a CPU contention problem.  \n\nBy ripping out the mb_history code and replacing it with ftrace\ntracepoints, and we get more functionality: timestamps, event\nfiltering, the ability to correlate mballoc history with other ext4\ntracepoints, etc.\n\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "55138e0bc29c0751e2152df9ad35deea542f29b3",
      "tree": "40dbc77de3e7a426030bd740ba8e2fd0d2171523",
      "parents": [
        "71780577306fd1e76c7a92e3b308db624d03adb9"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Tue Sep 29 13:31:31 2009 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Tue Sep 29 13:31:31 2009 -0400"
      },
      "message": "ext4: Adjust ext4_da_writepages() to write out larger contiguous chunks\n\nWork around problems in the writeback code to force out writebacks in\nlarger chunks than just 4mb, which is just too small.  This also works\naround limitations in the ext4 block allocator, which can\u0027t allocate\nmore than 2048 blocks at a time.  So we need to defeat the round-robin\ncharacteristics of the writeback code and try to write out as many\nblocks in one inode before allowing the writeback code to move on to\nanother inode.  We add a a new per-filesystem tunable,\nmax_writeback_mb_bump, which caps this to a default of 128mb per\ninode.\n\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "4187e7e9f1294afdcb3be5d00aa74412a1c2ded8",
      "tree": "1d4b3447cb2a7407d97e51ee5c48069d6b92c9e3",
      "parents": [
        "5bb241b325d7d91bc4ec0b394f31dffb17fe7978",
        "115e8a288252ef748f34f8b7c1115c563d702eda"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Sep 26 10:13:54 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Sep 26 10:13:54 2009 -0700"
      },
      "message": "Merge branch \u0027tracing-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027tracing-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  modules, tracing: Remove stale struct marker signature from module_layout()\n  tracing/workqueue: Use %pf in workqueue trace events\n  tracing: Fix a comment and a trivial format issue in tracepoint.h\n  tracing: Fix failure path in ftrace_regex_open()\n  tracing: Fix failure path in ftrace_graph_write()\n  tracing: Check the return value of trace_get_user()\n  tracing: Fix off-by-one in trace_get_user()\n"
    },
    {
      "commit": "96a2c464de07d7c72988db851c029b204fc59108",
      "tree": "6e24c17c603268c097069000883b83bc51b4d112",
      "parents": [
        "0efb4d20723d58edbad29d1ff98a86b631adb5e6"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sat Aug 01 01:34:24 2009 +0200"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Thu Sep 24 15:16:31 2009 +0200"
      },
      "message": "tracing/bkl: Add bkl ftrace events\n\nAdd two events lock_kernel and unlock_kernel() to trace the bkl uses.\nThis opens the door for userspace tools to perform statistics about\nthe callsites that use it, dependencies with other locks (by pairing\nthe trace with lock events), use with recursivity and so on...\n\nThe {__reacquire,release}_kernel_lock() events are not traced because\nthese are called from schedule, thus the sched events are sufficient\nto trace them.\n\nExample of a trace:\n\nhald-addon-stor-4152  [000]   165.875501: unlock_kernel: depth: 0, fs/block_dev.c:1358 __blkdev_put()\nhald-addon-stor-4152  [000]   167.832974: lock_kernel: depth: 0, fs/block_dev.c:1167 __blkdev_get()\n\nHow to get the callsites that acquire it recursively:\n\ncd /debug/tracing/events/bkl\necho \"lock_depth \u003e 0\" \u003e filter\n\nfirefox-4951  [001]   206.276967: unlock_kernel: depth: 1, fs/reiserfs/super.c:575 reiserfs_dirty_inode()\n\nYou can also filter by file and/or line.\n\nv2: Use of FILTER_PTR_STRING attribute for files and lines fields to\n    make them traceable.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\n"
    },
    {
      "commit": "d7a4b414eed51f1653bb05ebe84122bf9a7ae18b",
      "tree": "bd6603a0c27de4c138a1767871897e9cd3e1a1d2",
      "parents": [
        "1f0ab40976460bc4673fa204ce917a725185d8f2",
        "a724eada8c2a7b62463b73ccf73fd0bb6e928aeb"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Wed Sep 23 23:08:43 2009 +0200"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Wed Sep 23 23:08:43 2009 +0200"
      },
      "message": "Merge commit \u0027linus/master\u0027 into tracing/kprobes\n\nConflicts:\n\tkernel/trace/Makefile\n\tkernel/trace/trace.h\n\tkernel/trace/trace_event_types.h\n\tkernel/trace/trace_export.c\n\nMerge reason:\n\tSync with latest significant tracing core changes.\n"
    },
    {
      "commit": "31bbb9b58d1e8ebcf2b28c95c2250a9f8e31e397",
      "tree": "6bb0c0490d66d32eca43e73abb28d8b3ab0e7b91",
      "parents": [
        "ff830b8e5f999d1ccbd0282a666520f0b557daa4",
        "3f0a525ebf4b8ef041a332bbe4a73aee94bb064b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 09:46:15 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 09:46:15 2009 -0700"
      },
      "message": "Merge branch \u0027timers-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027timers-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  itimers: Add tracepoints for itimer\n  hrtimer: Add tracepoint for hrtimers\n  timers: Add tracepoints for timer_list timers\n  cputime: Optimize jiffies_to_cputime(1)\n  itimers: Simplify arm_timer() code a bit\n  itimers: Fix periodic tics precision\n  itimers: Merge ITIMER_VIRT and ITIMER_PROF\n\nTrivial header file include conflicts in kernel/fork.c\n"
    },
    {
      "commit": "9961079348d43dddb1f21118c17f054f63bbaa05",
      "tree": "7e706b160c2989dd0882d3facb9dcdf2f6e9c51d",
      "parents": [
        "8cd09a5984c08dafade74c9c1ab4311af2bf2d24"
      ],
      "author": {
        "name": "Anton Blanchard",
        "email": "anton@samba.org",
        "time": "Tue Sep 22 12:40:33 2009 +1000"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue Sep 22 23:14:58 2009 +0200"
      },
      "message": "tracing/workqueue: Use %pf in workqueue trace events\n\nUsing %pf instead of %pF supresses printing of the function offset\nwhich will always be 0 in the case of worklet functions.\n\nSigned-off-by: Anton Blanchard \u003canton@samba.org\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Zhaolei \u003czhaolei@cn.fujitsu.com\u003e\nCc: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c20090922024033.GB31801@kryten\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "0d3d062a6e289e065bd0aa537a6806a1806bf8aa",
      "tree": "9895e9cb48674d072885af3424e1ef145ec81f28",
      "parents": [
        "e0fff1bd12469c45dab088e353d8882761387bb6"
      ],
      "author": {
        "name": "Mel Gorman",
        "email": "mel@csn.ul.ie",
        "time": "Mon Sep 21 17:02:44 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:34 2009 -0700"
      },
      "message": "tracing, page-allocator: add trace event for page traffic related to the buddy lists\n\nThe page allocation trace event reports that a page was successfully\nallocated but it does not specify where it came from.  When analysing\nperformance, it can be important to distinguish between pages coming from\nthe per-cpu allocator and pages coming from the buddy lists as the latter\nrequires the zone lock to the taken and more data structures to be\nexamined.\n\nThis patch adds a trace event for __rmqueue reporting when a page is being\nallocated from the buddy lists.  It distinguishes between being called to\nrefill the per-cpu lists or whether it is a high-order allocation.\nSimilarly, this patch adds an event to catch when the PCP lists are being\ndrained a little and pages are going back to the buddy lists.\n\nThis is trickier to draw conclusions from but high activity on those\nevents could explain why there were a large number of cache misses on a\npage-allocator-intensive workload.  The coalescing and splitting of\nbuddies involves a lot of writing of page metadata and cache line bounces\nnot to mention the acquisition of an interrupt-safe lock necessary to\nenter this path.\n\n[akpm@linux-foundation.org: fix build]\nSigned-off-by: Mel Gorman \u003cmel@csn.ul.ie\u003e\nAcked-by: Rik van Riel \u003criel@redhat.com\u003e\nReviewed-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Larry Woodman \u003clwoodman@redhat.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Li Ming Chun \u003cmacli@brc.ubc.ca\u003e\nReviewed-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e0fff1bd12469c45dab088e353d8882761387bb6",
      "tree": "dc120a7597bbd4f3841f951346dbe1f7b85dd3fb",
      "parents": [
        "4b4f278c030aa4b6ee0915f396e9a9478d92d610"
      ],
      "author": {
        "name": "Mel Gorman",
        "email": "mel@csn.ul.ie",
        "time": "Mon Sep 21 17:02:42 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:34 2009 -0700"
      },
      "message": "tracing, page-allocator: add trace events for anti-fragmentation falling back to other migratetypes\n\nFragmentation avoidance depends on being able to use free pages from lists\nof the appropriate migrate type.  In the event this is not possible,\n__rmqueue_fallback() selects a different list and in some circumstances\nchange the migratetype of the pageblock.  Simplistically, the more times\nthis event occurs, the more likely that fragmentation will be a problem\nlater for hugepage allocation at least but there are other considerations\nsuch as the order of page being split to satisfy the allocation.\n\nThis patch adds a trace event for __rmqueue_fallback() that reports what\npage is being used for the fallback, the orders of relevant pages, the\ndesired migratetype and the migratetype of the lists being used, whether\nthe pageblock changed type and whether this event is important with\nrespect to fragmentation avoidance or not.  This information can be used\nto help analyse fragmentation avoidance and help decide whether\nmin_free_kbytes should be increased or not.\n\nSigned-off-by: Mel Gorman \u003cmel@csn.ul.ie\u003e\nAcked-by: Rik van Riel \u003criel@redhat.com\u003e\nReviewed-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Larry Woodman \u003clwoodman@redhat.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Li Ming Chun \u003cmacli@brc.ubc.ca\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4b4f278c030aa4b6ee0915f396e9a9478d92d610",
      "tree": "10825c2d197977bc9080093a6ecbd3ce80723876",
      "parents": [
        "38a398572fa2d8124f7479e40db581b5b72719c9"
      ],
      "author": {
        "name": "Mel Gorman",
        "email": "mel@csn.ul.ie",
        "time": "Mon Sep 21 17:02:41 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:34 2009 -0700"
      },
      "message": "tracing, page-allocator: add trace events for page allocation and page freeing\n\nThis patch adds trace events for the allocation and freeing of pages,\nincluding the freeing of pagevecs.  Using the events, it will be known\nwhat struct page and pfns are being allocated and freed and what the call\nsite was in many cases.\n\nThe page alloc tracepoints be used as an indicator as to whether the\nworkload was heavily dependant on the page allocator or not.  You can make\na guess based on vmstat but you can\u0027t get a per-process breakdown.\nDepending on the call path, the call_site for page allocation may be\n__get_free_pages() instead of a useful callsite.  Instead of passing down\na return address similar to slab debugging, the user should enable the\nstacktrace and seg-addr options to get a proper stack trace.\n\nThe pagevec free tracepoint has a different usecase.  It can be used to\nget a idea of how many pages are being dumped off the LRU and whether it\nis kswapd doing the work or a process doing direct reclaim.\n\nSigned-off-by: Mel Gorman \u003cmel@csn.ul.ie\u003e\nAcked-by: Rik van Riel \u003criel@redhat.com\u003e\nReviewed-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Larry Woodman \u003clwoodman@redhat.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Li Ming Chun \u003cmacli@brc.ubc.ca\u003e\nReviewed-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "43c1266ce4dc06bfd236cec31e11e9ecd69c0bef",
      "tree": "40a86739ca4c36200f447f655b01c57cfe646e26",
      "parents": [
        "b8c7f1dc5ca4e0d10709182233cdab932cef593d",
        "57c0c15b5244320065374ad2c54f4fbec77a6428"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 21 09:15:07 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 21 09:15:07 2009 -0700"
      },
      "message": "Merge branch \u0027perfcounters-rename-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027perfcounters-rename-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  perf: Tidy up after the big rename\n  perf: Do the big rename: Performance Counters -\u003e Performance Events\n  perf_counter: Rename \u0027event\u0027 to event_id/hw_event\n  perf_counter: Rename list_entry -\u003e group_entry, counter_list -\u003e group_list\n\nManually resolved some fairly trivial conflicts with the tracing tree in\ninclude/trace/ftrace.h and kernel/trace/trace_syscalls.c.\n"
    },
    {
      "commit": "bd4c3a3441144cd46d1f544046523724c5bc6e94",
      "tree": "8b5c67249a7a163caf3f88cbcb9df5236fcc3b93",
      "parents": [
        "b3727c24da69971503a4ca98b3b877753c6a4393",
        "583a22e7c154dc0a3938db522696b4bc7f098f59"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 21 09:05:47 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 21 09:05:47 2009 -0700"
      },
      "message": "Merge branch \u0027tracing-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027tracing-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  kernel/profile.c: Switch /proc/irq/prof_cpu_mask to seq_file\n  tracing: Export trace_profile_buf symbols\n  tracing/events: use list_for_entry_continue\n  tracing: remove max_tracer_type_len\n  function-graph: use ftrace_graph_funcs directly\n  tracing: Remove markers\n  tracing: Allocate the ftrace event profile buffer dynamically\n  tracing: Factorize the events profile accounting\n"
    },
    {
      "commit": "cdd6c482c9ff9c55475ee7392ec8f672eddb7be6",
      "tree": "81f98a3ab46c589792057fe2392c1e10f8ad7893",
      "parents": [
        "dfc65094d0313cc48969fa60bcf33d693aeb05a7"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Sep 21 12:02:48 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Sep 21 14:28:04 2009 +0200"
      },
      "message": "perf: Do the big rename: Performance Counters -\u003e Performance Events\n\nBye-bye Performance Counters, welcome Performance Events!\n\nIn the past few months the perfcounters subsystem has grown out its\ninitial role of counting hardware events, and has become (and is\nbecoming) a much broader generic event enumeration, reporting, logging,\nmonitoring, analysis facility.\n\nNaming its core object \u0027perf_counter\u0027 and naming the subsystem\n\u0027perfcounters\u0027 has become more and more of a misnomer. With pending\ncode like hw-breakpoints support the \u0027counter\u0027 name is less and\nless appropriate.\n\nAll in one, we\u0027ve decided to rename the subsystem to \u0027performance\nevents\u0027 and to propagate this rename through all fields, variables\nand API names. (in an ABI compatible fashion)\n\nThe word \u0027event\u0027 is also a bit shorter than \u0027counter\u0027 - which makes\nit slightly more convenient to write/handle as well.\n\nThanks goes to Stephane Eranian who first observed this misnomer and\nsuggested a rename.\n\nUser-space tooling and ABI compatibility is not affected - this patch\nshould be function-invariant. (Also, defconfigs were not touched to\nkeep the size down.)\n\nThis patch has been generated via the following script:\n\n  FILES\u003d$(find * -type f | grep -vE \u0027oprofile|[^K]config\u0027)\n\n  sed -i \\\n    -e \u0027s/PERF_EVENT_/PERF_RECORD_/g\u0027 \\\n    -e \u0027s/PERF_COUNTER/PERF_EVENT/g\u0027 \\\n    -e \u0027s/perf_counter/perf_event/g\u0027 \\\n    -e \u0027s/nb_counters/nb_events/g\u0027 \\\n    -e \u0027s/swcounter/swevent/g\u0027 \\\n    -e \u0027s/tpcounter_event/tp_event/g\u0027 \\\n    $FILES\n\n  for N in $(find . -name perf_counter.[ch]); do\n    M\u003d$(echo $N | sed \u0027s/perf_counter/perf_event/g\u0027)\n    mv $N $M\n  done\n\n  FILES\u003d$(find . -name perf_event.*)\n\n  sed -i \\\n    -e \u0027s/COUNTER_MASK/REG_MASK/g\u0027 \\\n    -e \u0027s/COUNTER/EVENT/g\u0027 \\\n    -e \u0027s/\\\u003cevent\\\u003e/event_id/g\u0027 \\\n    -e \u0027s/counter/event/g\u0027 \\\n    -e \u0027s/Counter/Event/g\u0027 \\\n    $FILES\n\n... to keep it as correct as possible. This script can also be\nused by anyone who has pending perfcounters patches - it converts\na Linux kernel tree over to the new naming. We tried to time this\nchange to the point in time where the amount of pending patches\nis the smallest: the end of the merge window.\n\nNamespace clashes were fixed up in a preparatory patch - and some\nstylistic fallout will be fixed up in a subsequent patch.\n\n( NOTE: \u0027counters\u0027 are still the proper terminology when we deal\n  with hardware registers - and these sed scripts are a bit\n  over-eager in renaming them. I\u0027ve undone some of that, but\n  in case there\u0027s something left where \u0027counter\u0027 would be\n  better than \u0027event\u0027 we can undo that on an individual basis\n  instead of touching an otherwise nicely automated patch. )\n\nSuggested-by: Stephane Eranian \u003ceranian@google.com\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-by: Paul Mackerras \u003cpaulus@samba.org\u003e\nReviewed-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: Kyle McMartin \u003ckyle@mcmartin.ca\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nCc: \u003clinux-arch@vger.kernel.org\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "467f9957d9283be40101d7255d06fae7e211ff4c",
      "tree": "71d155ab52b3a78bc88d0c8088b09b3c37f9357a",
      "parents": [
        "78f28b7c555359c67c2a0d23f7436e915329421e",
        "cdf8073d6b2c6c5a3cd6ce0e6c1297157f7f99ba"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Sep 20 15:54:37 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Sep 20 15:54:37 2009 -0700"
      },
      "message": "Merge branch \u0027perfcounters-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027perfcounters-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (58 commits)\n  perf_counter: Fix perf_copy_attr() pointer arithmetic\n  perf utils: Use a define for the maximum length of a trace event\n  perf: Add timechart help text and add timechart to \"perf help\"\n  tracing, x86, cpuidle: Move the end point of a C state in the power tracer\n  perf utils: Be consistent about minimum text size in the svghelper\n  perf timechart: Add \"perf timechart record\"\n  perf: Add the timechart tool\n  perf: Add a SVG helper library file\n  tracing, perf: Convert the power tracer into an event tracer\n  perf: Add a sample_event type to the event_union\n  perf: Allow perf utilities to have \"callback\" options without arguments\n  perf: Store trace event name/id pairs in perf.data\n  perf: Add a timestamp to fork events\n  sched_clock: Make it NMI safe\n  perf_counter: Fix up swcounter throttling\n  x86, perf_counter, bts: Optimize BTS overflow handling\n  perf sched: Add --input\u003dfile option to builtin-sched.c\n  perf trace: Sample timestamp and cpu when using record flag\n  perf tools: Increase MAX_EVENT_LENGTH\n  perf tools: Fix memory leak in read_ftrace_printk()\n  ...\n"
    },
    {
      "commit": "6161352142d5fed4cd753b32e5ccde66e705b14e",
      "tree": "d64d0e3e6c44440181ddb5d1bc6884067fee0749",
      "parents": [
        "fd39e055c4fefa4553efc9030f9903afdc6ee323"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Thu Sep 17 16:11:28 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Sep 19 11:42:12 2009 +0200"
      },
      "message": "tracing, perf: Convert the power tracer into an event tracer\n\nThis patch converts the existing power tracer into an event tracer,\nso that power events (C states and frequency changes) can be\ntracked via \"perf\".\n\nThis also removes the perl script that was used to demo the tracer;\nits functionality is being replaced entirely with timechart.\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c20090912130542.6d314860@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "929bf0d0156562ce631728b6fa53d68004d456d2",
      "tree": "739063990a8077b29ef97e69d73bce94573daae4",
      "parents": [
        "def0a9b2573e00ab0b486cb5382625203ab4c4a6",
        "202c4675c55ddf6b443c7e057d2dff6b42ef71aa"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Sep 19 11:27:32 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Sep 19 11:28:41 2009 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into perfcounters/core\n\nMerge reason: Bring in tracing changes we depend on.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "3530c1886291df061e3972c55590777ef1cb67f8",
      "tree": "bd6755e533eb5a0f37ff600da6bc0d9d1ba33c17",
      "parents": [
        "6952b61de9984073289859073e8195ad0bee8fd5",
        "1358870deaf11a752a84fbd89201749aa62498e8"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Sep 18 10:56:26 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Sep 18 10:56:26 2009 -0700"
      },
      "message": "Merge branch \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4\n\n* \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4: (64 commits)\n  ext4: Update documentation about quota mount options\n  ext4: replace MAX_DEFRAG_SIZE with EXT_MAX_BLOCK\n  ext4: Fix the alloc on close after a truncate hueristic\n  ext4: Add a tracepoint for ext4_alloc_da_blocks()\n  ext4: store EXT4_EXT_MIGRATE in i_state instead of i_flags\n  ext4: limit block allocations for indirect-block files to \u003c 2^32\n  ext4: Fix different block exchange issue in EXT4_IOC_MOVE_EXT\n  ext4: Add null extent check to ext_get_path\n  ext4: Replace BUG_ON() with ext4_error() in move_extents.c\n  ext4: Replace get_ext_path macro with an inline funciton\n  ext4: Fix include/trace/events/ext4.h to work with Systemtap\n  ext4: Fix initalization of s_flex_groups\n  ext4: Always set dx_node\u0027s fake_dirent explicitly.\n  ext4: Fix async commit mode to be safe by using a barrier\n  ext4: Don\u0027t update superblock write time when filesystem is read-only\n  ext4: Clarify the locking details in mballoc\n  ext4: check for need init flag in ext4_mb_load_buddy\n  ext4: move ext4_mb_init_group() function earlier in the mballoc.c\n  ext4: Make non-journal fsync work properly\n  ext4: Assure that metadata blocks are written during fsync in no journal mode\n  ...\n"
    },
    {
      "commit": "20ab4425a77a1f34028cc6ce57053c22c184ba5f",
      "tree": "ca821b19593c3821fa13a520201537ad35e4c98d",
      "parents": [
        "e5e25cf47b0bdd1f7e9b8bb6368ee48e16de0c87"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Fri Sep 18 06:10:28 2009 +0200"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Fri Sep 18 07:25:44 2009 +0200"
      },
      "message": "tracing: Allocate the ftrace event profile buffer dynamically\n\nCurrently the trace event profile buffer is allocated in the stack. But\nthis may be too much for the stack, as the events can have large\nstatically defined field size and can also grow with dynamic arrays.\n\nAllocate two per cpu buffer for all profiled events. The first cpu\nbuffer is used to host every non-nmi context traces. It is protected\nby disabling the interrupts while writing and committing the trace.\n\nThe second buffer is reserved for nmi. So that there is no race between\nthem and the first buffer.\n\nThe whole write/commit section is rcu protected because we release\nthese buffers while deactivating the last profiling trace event.\n\nv2: Move the buffers from trace_event to be global, as pointed by\n    Steven Rostedt.\n\nv3: Fix the syscall events to handle the profiling buffer races\n    by disabling interrupts, now that the buffers are globals.\n\nSuggested-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    }
  ],
  "next": "e5e25cf47b0bdd1f7e9b8bb6368ee48e16de0c87"
}
