)]}'
{
  "log": [
    {
      "commit": "6ff9a64d2aaa6eae396adc95e9c91c0cbfa6dbe4",
      "tree": "1ca1b9a0aff32f1542a9dc3d2f5ccac7ab8a52e3",
      "parents": [
        "bc5c6c043d8381676339fb3da59cc4cc5921d368"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Jun 10 14:28:34 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Jun 10 14:28:34 2009 -0400"
      },
      "message": "tracing: do not translate event helper macros in print format\n\nBy moving the macro that creates the print format code above the\ndefining of the event macro helpers (__get_str, __print_symbolic,\nand __get_dynamic_array), we get a little cleaner print format.\n\nInstead of:\n\n  (char *)((void *)REC + REC-\u003e__data_loc_name)\n\nwe get:\n\n   __get_str(name)\n\nInstead of:\n\n   ({ static const struct trace_print_flags symbols[] \u003d { { HI_SOFTIRQ, \"HI\" }, {\n\nwe get:\n\n   __print_symbolic(REC-\u003evec, { HI_SOFTIRQ, \"HI\" }, {\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "bc5c6c043d8381676339fb3da59cc4cc5921d368",
      "tree": "9fb2f01d7a651b4c6e25e0a5dccf337a9dd9a3d5",
      "parents": [
        "f1db457ce6e2f63cb01022f58c0c023838958bd1"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@gentoo.org",
        "time": "Wed Jun 10 04:48:41 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Jun 10 13:06:25 2009 -0400"
      },
      "message": "ftrace/documentation: fix typo in function grapher name\n\nThe function graph tracer is called just \"function_graph\" (no trailing\n\"_tracer\" needed).\n\nSigned-off-by: Mike Frysinger \u003cvapier@gentoo.org\u003e\nLKML-Reference: \u003c1244623722-6325-1-git-send-email-vapier@gentoo.org\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "f1db457ce6e2f63cb01022f58c0c023838958bd1",
      "tree": "cc75e087ddfcbdf0a1f15585b4b844f58691cf26",
      "parents": [
        "110bf2b764eb6026b868d84499263cb24b1bcc8d"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Wed Jun 10 10:06:24 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jun 10 11:55:06 2009 +0200"
      },
      "message": "tracing/events: convert block trace points to TRACE_EVENT(), fix !CONFIG_BLOCK\n\nFix building failures when CONFIG_BLOCK \u003d\u003d n.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4A2F1520.8020003@cn.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "110bf2b764eb6026b868d84499263cb24b1bcc8d",
      "tree": "66c869f6f96497051c4bda0797e234b3f7b39e8f",
      "parents": [
        "725c624a58a10ef90a2ff889e122158fabf36147"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Jun 09 17:29:07 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Jun 09 17:29:07 2009 -0400"
      },
      "message": "tracing: add protection around module events unload\n\nWhen reading the trace buffer, there is a race that when a module\nis unloaded it removes events that is stilled referenced in the buffers.\nThis patch adds the protection around the unloading of the events\nfrom modules and the reading of the trace buffers.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "725c624a58a10ef90a2ff889e122158fabf36147",
      "tree": "0a233afc51fa5bc0717ff99f3004219da54dcd6b",
      "parents": [
        "6556d1df88fe68f9836beeb43342a336691cb67c"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Jun 08 19:09:45 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Jun 09 15:17:32 2009 -0400"
      },
      "message": "tracing: add trace_seq_vprint interface\n\nThe code to update the print formats for events requires a vprintf\nformat in the trace_seq. This patch adds that interface.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "6556d1df88fe68f9836beeb43342a336691cb67c",
      "tree": "f9c550134fdf74fadafee32253a8a69552bfc9f1",
      "parents": [
        "55782138e47d9baf2f7d3a7af9e7cf42adf72c56"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Jun 09 14:04:26 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Jun 09 14:17:36 2009 -0400"
      },
      "message": "tracing: fix the block trace points print size\n\nThe sector field is either u64 or unsigned long depending on\nthe arch. This patch casts the sector to unsigned long long to\nprevent the printf warnings.\n\n[ Impact: remove compile warnings ]\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "55782138e47d9baf2f7d3a7af9e7cf42adf72c56",
      "tree": "c7ccabae20e27bbeb08b69a358e8b86c98d1d9f3",
      "parents": [
        "f57a8a1911342265e7acdc190333c4e9235a6632"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Tue Jun 09 13:43:05 2009 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Jun 09 12:34:23 2009 -0400"
      },
      "message": "tracing/events: convert block trace points to TRACE_EVENT()\n\nTRACE_EVENT is a more generic way to define tracepoints. Doing so adds\nthese new capabilities to this tracepoint:\n\n  - zero-copy and per-cpu splice() tracing\n  - binary tracing without printf overhead\n  - structured logging records exposed under /debug/tracing/events\n  - trace events embedded in function tracer output and other plugins\n  - user-defined, per tracepoint filter expressions\n  ...\n\nCons:\n\n  - no dev_t info for the output of plug, unplug_timer and unplug_io events.\n    no dev_t info for getrq and sleeprq events if bio \u003d\u003d NULL.\n    no dev_t info for rq_abort,...,rq_requeue events if rq-\u003erq_disk \u003d\u003d NULL.\n\n    This is mainly because we can\u0027t get the deivce from a request queue.\n    But this may change in the future.\n\n  - A packet command is converted to a string in TP_assign, not TP_print.\n    While blktrace do the convertion just before output.\n\n    Since pc requests should be rather rare, this is not a big issue.\n\n  - In blktrace, an event can have 2 different print formats, but a TRACE_EVENT\n    has a unique format, which means we have some unused data in a trace entry.\n\n    The overhead is minimized by using __dynamic_array() instead of __array().\n\nI\u0027ve benchmarked the ioctl blktrace vs the splice based TRACE_EVENT tracing:\n\n      dd                   dd + ioctl blktrace       dd + TRACE_EVENT (splice)\n1     7.36s, 42.7 MB/s     7.50s, 42.0 MB/s          7.41s, 42.5 MB/s\n2     7.43s, 42.3 MB/s     7.48s, 42.1 MB/s          7.43s, 42.4 MB/s\n3     7.38s, 42.6 MB/s     7.45s, 42.2 MB/s          7.41s, 42.5 MB/s\n\nSo the overhead of tracing is very small, and no regression when using\nthose trace events vs blktrace.\n\nAnd the binary output of TRACE_EVENT is much smaller than blktrace:\n\n # ls -l -h\n -rw-r--r-- 1 root root 8.8M 06-09 13:24 sda.blktrace.0\n -rw-r--r-- 1 root root 195K 06-09 13:24 sda.blktrace.1\n -rw-r--r-- 1 root root 2.7M 06-09 13:25 trace_splice.out\n\nFollowing are some comparisons between TRACE_EVENT and blktrace:\n\nplug:\n  kjournald-480   [000]   303.084981: block_plug: [kjournald]\n  kjournald-480   [000]   303.084981:   8,0    P   N [kjournald]\n\nunplug_io:\n  kblockd/0-118   [000]   300.052973: block_unplug_io: [kblockd/0] 1\n  kblockd/0-118   [000]   300.052974:   8,0    U   N [kblockd/0] 1\n\nremap:\n  kjournald-480   [000]   303.085042: block_remap: 8,0 W 102736992 + 8 \u003c- (8,8) 33384\n  kjournald-480   [000]   303.085043:   8,0    A   W 102736992 + 8 \u003c- (8,8) 33384\n\nbio_backmerge:\n  kjournald-480   [000]   303.085086: block_bio_backmerge: 8,0 W 102737032 + 8 [kjournald]\n  kjournald-480   [000]   303.085086:   8,0    M   W 102737032 + 8 [kjournald]\n\ngetrq:\n  kjournald-480   [000]   303.084974: block_getrq: 8,0 W 102736984 + 8 [kjournald]\n  kjournald-480   [000]   303.084975:   8,0    G   W 102736984 + 8 [kjournald]\n\n  bash-2066  [001]  1072.953770:   8,0    G   N [bash]\n  bash-2066  [001]  1072.953773: block_getrq: 0,0 N 0 + 0 [bash]\n\nrq_complete:\n  konsole-2065  [001]   300.053184: block_rq_complete: 8,0 W () 103669040 + 16 [0]\n  konsole-2065  [001]   300.053191:   8,0    C   W 103669040 + 16 [0]\n\n  ksoftirqd/1-7   [001]  1072.953811:   8,0    C   N (5a 00 08 00 00 00 00 00 24 00) [0]\n  ksoftirqd/1-7   [001]  1072.953813: block_rq_complete: 0,0 N (5a 00 08 00 00 00 00 00 24 00) 0 + 0 [0]\n\nrq_insert:\n  kjournald-480   [000]   303.084985: block_rq_insert: 8,0 W 0 () 102736984 + 8 [kjournald]\n  kjournald-480   [000]   303.084986:   8,0    I   W 102736984 + 8 [kjournald]\n\nChangelog from v2 -\u003e v3:\n\n- use the newly introduced __dynamic_array().\n\nChangelog from v1 -\u003e v2:\n\n- use __string() instead of __array() to minimize the memory required\n  to store hex dump of rq-\u003ecmd().\n\n- support large pc requests.\n\n- add missing blk_fill_rwbs_rq() in block_rq_requeue TRACE_EVENT.\n\n- some cleanups.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4A2DF669.5070905@cn.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "f57a8a1911342265e7acdc190333c4e9235a6632",
      "tree": "db7aecf9dc26311068a48da77022e0377bf5d3d6",
      "parents": [
        "1f8a6a10fb9437eac3f516ea4324a19087872f30"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Jun 05 14:11:30 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Jun 09 12:33:30 2009 -0400"
      },
      "message": "ring-buffer: fix ret in rb_add_time_stamp\n\nThe update of ret got mistakenly added to the if statement of\nrb_try_to_discard. The variable ret should be 1 on commit and zero\notherwise.\n\n[ Impact: fix compiler warning and real bug ]\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "1f8a6a10fb9437eac3f516ea4324a19087872f30",
      "tree": "944f73519ef205c3baccd130d93ed70f7e7bc790",
      "parents": [
        "918143e8b7d6153d7a83a3f854323407939f4a7e"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "peterz@infradead.org",
        "time": "Mon Jun 08 18:18:39 2009 +0200"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Jun 08 18:50:20 2009 -0400"
      },
      "message": "ring-buffer: pass in lockdep class key for reader_lock\n\nOn Sun, 7 Jun 2009, Ingo Molnar wrote:\n\u003e Testing tracer sched_switch: \u003c6\u003eStarting ring buffer hammer\n\u003e PASSED\n\u003e Testing tracer sysprof: PASSED\n\u003e Testing tracer function: PASSED\n\u003e Testing tracer irqsoff:\n\u003e \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n\u003e PASSED\n\u003e Testing tracer preemptoff: PASSED\n\u003e Testing tracer preemptirqsoff: [ INFO: possible recursive locking detected ]\n\u003e PASSED\n\u003e Testing tracer branch: 2.6.30-rc8-tip-01972-ge5b9078-dirty #5760\n\u003e ---------------------------------------------\n\u003e rb_consumer/431 is trying to acquire lock:\n\u003e  (\u0026cpu_buffer-\u003ereader_lock){......}, at: [\u003cc109eef7\u003e] ring_buffer_reset_cpu+0x37/0x70\n\u003e\n\u003e but task is already holding lock:\n\u003e  (\u0026cpu_buffer-\u003ereader_lock){......}, at: [\u003cc10a019e\u003e] ring_buffer_consume+0x7e/0xc0\n\u003e\n\u003e other info that might help us debug this:\n\u003e 1 lock held by rb_consumer/431:\n\u003e  #0:  (\u0026cpu_buffer-\u003ereader_lock){......}, at: [\u003cc10a019e\u003e] ring_buffer_consume+0x7e/0xc0\n\nThe ring buffer is a generic structure, and can be used outside of\nftrace. If ftrace traces within the use of the ring buffer, it can produce\nfalse positives with lockdep.\n\nThis patch passes in a static lock key into the allocation of the ring\nbuffer, so that different ring buffers will have their own lock class.\n\nReported-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c1244477919.13761.9042.camel@twins\u003e\n\n[ store key in ring buffer descriptor ]\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "918143e8b7d6153d7a83a3f854323407939f4a7e",
      "tree": "34c0b1434516d146fc3811a6d071b052dd59342b",
      "parents": [
        "64edbc562034f2ec3fce382cb208fab40586d005",
        "563af16c30ede41eda2d614195d88e07f7c7103d"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 05 16:50:29 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 05 16:50:29 2009 +0200"
      },
      "message": "Merge branch \u0027tip/tracing/ftrace-4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into tracing/ftrace\n"
    },
    {
      "commit": "64edbc562034f2ec3fce382cb208fab40586d005",
      "tree": "7fbfaaea9467d14a1a6ac5667ce01be5ccb9b635",
      "parents": [
        "43bd1236234cacbc18d1476a9b57e7a306efddf5",
        "0f6ce3de4ef6ff940308087c49760d068851c1a7"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jun 04 13:59:26 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jun 04 13:59:40 2009 +0200"
      },
      "message": "Merge branch \u0027tracing/ftrace\u0027 into tracing/core\n\nMerge reason: this mini-topic had outstanding problems that delayed\n              its merge, so it does not fast-forward.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "563af16c30ede41eda2d614195d88e07f7c7103d",
      "tree": "a56b4f3339b8850b8f1fd9064bb99d50cd99aa79",
      "parents": [
        "56d8bd3f0b98972312cad683947ec90b21011199"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Jun 03 11:10:44 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Jun 03 11:10:44 2009 -0400"
      },
      "message": "tracing: add annotation to what type of stack trace is recorded\n\nThe current method of printing out a stack trace is to add a new line\nand print out the trace:\n\n    yum-updatesd-3120  [002]   573.691303:\n \u003d\u003e do_softirq\n \u003d\u003e irq_exit\n \u003d\u003e smp_apic_timer_interrupt\n \u003d\u003e apic_timer_interrupt\n\nThis looks a bit awkward, and if we have both stack and user stack traces\nrunning, it would be nice to have a title to tell them apart, although\nit is easy to tell by the output.\n\nThis patch adds an annotation to the start of the stack traces:\n\n            init-1     [003]   929.304979: \u003cstack trace\u003e\n \u003d\u003e user_path_at\n \u003d\u003e vfs_fstatat\n \u003d\u003e vfs_stat\n \u003d\u003e sys_newstat\n \u003d\u003e system_call_fastpath\n\n             cat-3459  [002]  1016.824040: \u003cuser stack trace\u003e\n \u003d\u003e  \u003c0000003aae6c0250\u003e\n \u003d\u003e  \u003c00007ffff4b06ae4\u003e\n \u003d\u003e  \u003c69636172742f6775\u003e\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "56d8bd3f0b98972312cad683947ec90b21011199",
      "tree": "8ed2bb43d0f00923dd81b5b2c19c91b09e3977c6",
      "parents": [
        "048dc50c5e7eada19ebabbad70b7966d14283d41"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Wed Jun 03 14:52:03 2009 +0100"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Jun 03 10:29:48 2009 -0400"
      },
      "message": "tracing: fix multiple use of __print_flags and __print_symbolic\n\nHere is an updated patch to include the extra call to\ntrace_seq_init() as requested. This is vs. the latest\n-tip tree and fixes the use of multiple __print_flags\nand __print_symbolic in a single tracer. Also tested\nto ensure its working now:\n\nmount.gfs2-2534  [000]   235.850587: gfs2_glock_queue: 8.7 glock 1:2 dequeue PR\nmount.gfs2-2534  [000]   235.850591: gfs2_demote_rq: 8.7 glock 1:0 demote EX to NL flags:DI\nmount.gfs2-2534  [000]   235.850591: gfs2_glock_queue: 8.7 glock 1:0 dequeue EX\nglock_workqueue-2529  [000]   235.850666: gfs2_glock_state_change: 8.7 glock 1:0 state EX \u003d\u003e NL tgt:NL dmt:NL flags:lDpI\nglock_workqueue-2529  [000]   235.850672: gfs2_glock_put: 8.7 glock 1:0 state NL \u003d\u003e IV flags:I\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\nLKML-Reference: \u003c1244037123.29604.603.camel@localhost.localdomain\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "048dc50c5e7eada19ebabbad70b7966d14283d41",
      "tree": "2d81fa88cfb5ebd5ee2622b4eb7632b1f369a567",
      "parents": [
        "f11b3f4e2932bfdcfc458ab8d1ece62724ceabfc"
      ],
      "author": {
        "name": "walimis",
        "email": "walimisdev@gmail.com",
        "time": "Wed Jun 03 16:01:30 2009 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Jun 03 10:25:30 2009 -0400"
      },
      "message": "tracing/events: fix output format of user stack\n\nAccording to \"events/ftrace/user_stack/format\", fix the output of\nuser stack.\n\nbefore fix:\n\n  sh-1073  [000]    31.137561:  \u003cb7f274fe\u003e \u003c-  \u003c0804e33c\u003e \u003c-  \u003c080835c1\u003e\n\nafter fix:\n\n  sh-1072  [000]    37.039329:\n \u003d\u003e  \u003cb7f8a4fe\u003e\n \u003d\u003e  \u003c0804e33c\u003e\n \u003d\u003e  \u003c080835c1\u003e\n\nSigned-off-by: walimis \u003cwalimisdev@gmail.com\u003e\nLKML-Reference: \u003c1244016090-7814-3-git-send-email-walimisdev@gmail.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "f11b3f4e2932bfdcfc458ab8d1ece62724ceabfc",
      "tree": "7cfd2a8b955b27eea4c0d5860e9a92fdc91b8024",
      "parents": [
        "083a63b48e4dd0a6a2d44216720076dc81ebb255"
      ],
      "author": {
        "name": "walimis",
        "email": "walimisdev@gmail.com",
        "time": "Wed Jun 03 16:01:29 2009 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Jun 03 10:25:15 2009 -0400"
      },
      "message": "tracing/events: fix output format of kernel stack\n\nAccording to \"events/ftrace/kernel_stack/format\", output format of\nkernel stack should use \"\u003d\u003e\" instead of \"\u003c\u003d\".\n\nThe second problem is that we shouldn\u0027t skip the first entry in the stack,\nalthough it seems to be duplicated when used in the \"function\" tracer,\nbut events also use it. If we skip the first one, we will drop the topmost\nentry of the stack.\n\nThe last problem is that if the last entry is ULONG_MAX(0xffffffff), we should\ndrop it, otherwise it will print a NULL name line.\n\nbefore fix:\n\n      sh-1072  [000]   26.957239: sched_process_fork: parent sh:1072 child sh:1073\n      sh-1072  [000]   26.957262:\n \u003c\u003d syscall_call\n \u003c\u003d\n      sh-1072  [000]   26.957744: sched_switch: task sh:1072 [120] (R) \u003d\u003d\u003e sh:1073 [120]\n      sh-1072  [000]   26.957752:\n \u003c\u003d preempt_schedule\n \u003c\u003d wake_up_new_task\n \u003c\u003d do_fork\n \u003c\u003d sys_clone\n \u003c\u003d syscall_call\n \u003c\u003d\n\nAfter fix:\n\n      sh-1075  [000]    39.791848: sched_process_fork: parent sh:1075  child sh:1076\n      sh-1075  [000]    39.791871:\n \u003d\u003e sys_clone\n \u003d\u003e syscall_call\n      sh-1075  [000]    39.792713: sched_switch: task sh:1075 [120] (R) \u003d\u003d\u003e sh:1076 [120]\n      sh-1075  [000]    39.792722:\n \u003d\u003e schedule\n \u003d\u003e preempt_schedule\n \u003d\u003e wake_up_new_task\n \u003d\u003e do_fork\n \u003d\u003e sys_clone\n \u003d\u003e syscall_call\n\nSigned-off-by: walimis \u003cwalimisdev@gmail.com\u003e\nLKML-Reference: \u003c1244016090-7814-2-git-send-email-walimisdev@gmail.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "083a63b48e4dd0a6a2d44216720076dc81ebb255",
      "tree": "c63fe5fed8b44538ecb6870cbe99c45d32915f9e",
      "parents": [
        "ea05b57cc19234d8de9887c8a32c2e58e84b56ba"
      ],
      "author": {
        "name": "walimis",
        "email": "walimisdev@gmail.com",
        "time": "Wed Jun 03 16:01:28 2009 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Jun 03 10:24:44 2009 -0400"
      },
      "message": "tracing/trace_stack: fix the number of entries in the header\n\nThe last entry in the stack_dump_trace is ULONG_MAX, which is not\na valid entry, but max_stack_trace.nr_entries has accounted for it.\nSo when printing the header, we should decrease it by one.\nBefore fix, print as following, for example:\n\n\tDepth    Size   Location    (53 entries)\t\u003c--- should be 52\n\t-----    ----   --------\n  0)     3264     108   update_wall_time+0x4d5/0x9a0\n  ...\n 51)       80      80   syscall_call+0x7/0xb\n ^^^\n   it\u0027s correct.\n\nSigned-off-by: walimis \u003cwalimisdev@gmail.com\u003e\nLKML-Reference: \u003c1244016090-7814-1-git-send-email-walimisdev@gmail.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "ea05b57cc19234d8de9887c8a32c2e58e84b56ba",
      "tree": "6153db3dab161d495207114359b8c09944567f0c",
      "parents": [
        "edd813bffc62a980bb4fb9b1243f31c1cce78da3"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Jun 03 09:30:10 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Jun 03 10:15:25 2009 -0400"
      },
      "message": "ring-buffer: discard timestamps that are at the start of the buffer\n\nEvery buffer page in the ring buffer includes its own time stamp.\nWhen an event is recorded to the ring buffer with a delta time greater\nthan what can be held in the event header, a time stamp event is created.\n\nIf the the create timestamp falls over to the next buffer page, it is\nredundant because the buffer page holds a full time stamp. This patch\nwill try to discard the time stamp when it falls to the start of the\nnext page.\n\nThis change also fixes a issues with disarding events. If most events are\ndiscarded, timestamps will start to creep into the ring buffer. If we\ndo not discard the timestamps then they can fill up the ring buffer over\ntime and waste space.\n\nThis change will keep time stamps from filling up over another page. If\nsomething is recorded in the buffer page, and the rest is filtered, then\nthe time stamps can only fill up to the end of the page.\n\n[ Impact: prevent time stamps from filling ring buffer ]\n\nReported-by: Tim Bird \u003ctim.bird@am.sony.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "edd813bffc62a980bb4fb9b1243f31c1cce78da3",
      "tree": "45dd8b0ca7b74f05bd545a1c3c7c4d2137f1b1d0",
      "parents": [
        "a2023556409cf7fec5d67a26f7fcfa57c5a4086d"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Jun 02 23:00:53 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Jun 03 10:15:22 2009 -0400"
      },
      "message": "ring-buffer: try to discard unneeded timestamps\n\nThere are times that a race may happen that we add a timestamp in a\nnested write. This timestamp would just contain a zero delta and serves\nno purpose.\n\nNow that we have a way to discard events, this patch will try to discard\nthe timestamp instead of just wasting the space in the ring buffer.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "a2023556409cf7fec5d67a26f7fcfa57c5a4086d",
      "tree": "85d8824dd8989c62dc8f28feb2ee79f570f6872f",
      "parents": [
        "0f6ce3de4ef6ff940308087c49760d068851c1a7"
      ],
      "author": {
        "name": "Tim Bird",
        "email": "tim.bird@am.sony.com",
        "time": "Tue Jun 02 17:06:54 2009 -0700"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Jun 03 10:15:06 2009 -0400"
      },
      "message": "ring-buffer: fix bug in ring_buffer_discard_commit\n\nThere\u0027s a bug in ring_buffer_discard_commit.  The wrong\npointer is being compared in order to check if the event\ncan be freed from the buffer rather than discarded\n(i.e. marked as PAD).\n\nI noticed this when I was working on duration filtering.\nThe bug is not deadly - it just results in lots of wasted\nspace in the buffer.  All filtered events are left in\nthe buffer and marked as discarded, rather than being\nremoved from the buffer to make space for other events.\n\nUnfortunately, when I fixed this bug, I got errors doing a\nfiltered function trace.  Multiple TIME_EXTEND\nevents pile up in the buffer, and trigger the\nfollowing loop overage warning in rb_iter_peek():\n\nagain:\n\t...\n\tif (RB_WARN_ON(cpu_buffer, ++nr_loops \u003e 10))\n\t\treturn NULL;\n\nI\u0027m not sure what the best way is to fix this. I don\u0027t\nknow if I should extend the loop threshhold, or if I should\nmake the test more complex (ignore TIME_EXTEND\nevents), or just get rid of this loop check completely.\n\nNote that if I implement a workaround for this, then I\nsee another problem from rb_advance_iter().  I haven\u0027t\ntracked that one down yet.\n\nIn general, it seems like the case of removing filtered\nevents has not been working properly, and so some assumptions\nabout buffer invariant conditions need to be revisited.\n\nHere\u0027s the patch for the simple fix:\n\nCompare correct pointer for checking if an event can be\nfreed rather than left as discarded in the buffer.\n\nSigned-off-by: Tim Bird \u003ctim.bird@am.sony.com\u003e\nLKML-Reference: \u003c4A25BE9E.5090909@am.sony.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "0f6ce3de4ef6ff940308087c49760d068851c1a7",
      "tree": "26a732ee4dd5b0f5612f0385893ec483c6ba4ab3",
      "parents": [
        "112f38a7e36e9d688b389507136bf3af3e6d159b"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Jun 01 21:51:28 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Jun 01 23:26:23 2009 -0400"
      },
      "message": "ftrace: do not profile functions when disabled\n\nA race was found that if one were to enable and disable the function\nprofiler repeatedly, then the system can panic. This was because a profiled\nfunction may be preempted just before disabling interrupts. While\nthe profiler is disabled and then reenabled, the preempted function\ncould start again, and access the hash as it is being initialized.\n\nThis just adds a check in the irq disabled part to check if the profiler\nis enabled, and if it is not then it will just exit.\n\nWhen the system is disabled, the profile_enabled variable is cleared\nbefore calling the unregistering of the function profiler. This\nunregistering calls stop machine which also acts as a synchronize schedule.\n\n[ Impact: fix panic in enabling/disabling function profiler ]\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "112f38a7e36e9d688b389507136bf3af3e6d159b",
      "tree": "e63fd02a143c57b5a786351e4f2643f2104e2346",
      "parents": [
        "1d080d6c3141623c92caaebe20e847cb99ccbb60"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Jun 01 15:16:05 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Jun 01 23:26:02 2009 -0400"
      },
      "message": "tracing: make trace pipe recognize latency format flag\n\nThe trace_pipe did not recognize the latency format flag and would produce\ndifferent output than the trace file. The problem was partly due that\nthe trace flags in the iterator was not set as well as the trace_pipe\nzeros out part of the iterator (including the flags) to be able to use\nthe same routines as the trace file. trace_flags of the iterator should\nnot cause any problems when not zeroed out by for trace_pipe.\n\nReported-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "1d080d6c3141623c92caaebe20e847cb99ccbb60",
      "tree": "e77559ff0edc3bfaf228a0e4e7c26ca3cf720de8",
      "parents": [
        "ec081ddc3d90aab35bc0de19a358b964978837cf"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Jun 01 12:20:40 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Jun 01 23:25:42 2009 -0400"
      },
      "message": "tracing: remove redundant SOFTIRQ from softirq event traces\n\nAfter converting the softirq tracer to use te flags options, this\ncaused a regression with the name. Since the flag was used directly\nit was printed out (i.e. HRTIMER_SOFTIRQ).\n\nThis patch only shows the softirq name without the SOFTIRQ part.\n\n[ Impact: fix regression of output from softirq events ]\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "ec081ddc3d90aab35bc0de19a358b964978837cf",
      "tree": "a8c4128a3eb8e5917cc67cd0a3aee8f1e93c9205",
      "parents": [
        "7fcb7c472f455d1711eb5a7633204dba8800a6d6"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Mon Jun 01 15:53:35 2009 +0100"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Jun 01 23:25:29 2009 -0400"
      },
      "message": "tracing: add exports to use __print_symbolic and __print_flags from a module\n\nA patch to allow the use of __print_symbolic and __print_flags\nfrom a module. This allows the current GFS2 tracing patch to\nbuild.\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\nLKML-Reference: \u003c1243868015.29604.542.camel@localhost.localdomain\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "7fcb7c472f455d1711eb5a7633204dba8800a6d6",
      "tree": "ba64de513bdbe5550c6fc08078a356359830ec99",
      "parents": [
        "a9c1c3abe1160a5632e48c929b02b740556bf423"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Mon Jun 01 15:35:46 2009 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Jun 01 23:25:15 2009 -0400"
      },
      "message": "tracing/events: introduce __dynamic_array()\n\n__string() is limited:\n\n  - it\u0027s a char array, but we may want to define array with other types\n  - a source string should be available, but we may just know the string size\n\nWe introduce __dynamic_array() to break those limitations, and __string()\nbecomes a wrapper of it. As a side effect, now __get_str() can be used\nin TP_fast_assign but not only TP_print.\n\nTake XFS for example, we have the string length in the dirent, but the\nstring itself is not NULL-terminated, so __dynamic_array() can be used:\n\nTRACE_EVENT(xfs_dir2,\n\tTP_PROTO(struct xfs_da_args *args),\n\tTP_ARGS(args),\n\n\tTP_STRUCT__entry(\n\t\t__field(int, namelen)\n\t\t__dynamic_array(char, name, args-\u003enamelen + 1)\n\t\t...\n\t),\n\n\tTP_fast_assign(\n\t\tchar *name \u003d __get_str(name);\n\n\t\tif (args-\u003enamelen)\n\t\t\tmemcpy(name, args-\u003ename, args-\u003enamelen);\n\t\tname[args-\u003enamelen] \u003d \u0027\\0\u0027;\n\n\t\t__entry-\u003enamelen \u003d args-\u003enamelen;\n\t),\n\n\tTP_printk(\"name %.*s namelen %d\",\n\t\t  __entry-\u003enamelen ? __get_str(name) : NULL\n\t\t  __entry-\u003enamelen)\n);\n\n[ Impact: allow defining dynamic size arrays ]\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4A2384D2.3080403@cn.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "a9c1c3abe1160a5632e48c929b02b740556bf423",
      "tree": "07d2313c9b8c637e6532e61efe034dba5a697231",
      "parents": [
        "6e25db44a7ad7eb380f4ec774ec00a8fcddea112"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Mon Jun 01 15:35:13 2009 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Jun 01 23:24:53 2009 -0400"
      },
      "message": "tracing/events: put TP_fast_assign into braces\n\nCurrently TP_fast_assign has a limitation that we can\u0027t define local\nvariables in it.\n\nHere\u0027s one use case when we introduce __dynamic_array():\n\nTP_fast_assign(\n\ttype *p \u003d __get_dynamic_array(item);\n\n\tfoo(p);\n\tbar(p);\n),\n\n[ Impact: allow defining local variables in TP_fast_assign ]\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4A2384B1.90100@cn.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "6e25db44a7ad7eb380f4ec774ec00a8fcddea112",
      "tree": "35531dfe6f96b7883fc3014bbd0239eba616d414",
      "parents": [
        "897f17a65389a26509bd0c79a9812d1c9ea8ea6f"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Fri May 29 11:24:59 2009 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Jun 01 23:24:13 2009 -0400"
      },
      "message": "tracing/events: fix a typo in __string() format output\n\n\"tsize\" should be \"\\tsize\". Also remove the space before \"__str_loc\".\n\nBefore:\n # cat tracing/events/irq/irq_handler_entry/format\n        ...\n        field:int irq;  offset:12;      size:4;\n        field: __str_loc name;  offset:16;tsize:2;\n        ...\n\nAfter:\n # cat tracing/events/irq/irq_handler_entry/format\n\t...\n        field:int irq;  offset:12;      size:4;\n        field:__str_loc name;   offset:16;      size:2;\n\t...\n\n[ Impact: standardize __string field description in events format file ]\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "897f17a65389a26509bd0c79a9812d1c9ea8ea6f",
      "tree": "ec23bdc97840581c6f4881f6e427c66d72a1269c",
      "parents": [
        "5e0a093910876882f91f1d4b8a1635a099e6c7ba"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu May 28 16:31:21 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Jun 01 23:23:55 2009 -0400"
      },
      "message": "tracing: combine the default tracers into one config\n\nBoth event tracer and sched switch plugin are selected by default\nby all generic tracers. But if no generic tracer is enabled, their options\nappear. But ether one of them will select the other, thus it only\nmakes sense to have the default tracers be selected by one option.\n\n[ Impact: clean up kconfig menu ]\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "5e0a093910876882f91f1d4b8a1635a099e6c7ba",
      "tree": "2e9fb5caa629c2f1f77f82a78863366b82ad05f6",
      "parents": [
        "2af15d6a44b871ad4c2a651302374cde8f335480"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu May 28 15:50:13 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Jun 01 23:23:30 2009 -0400"
      },
      "message": "tracing: fix config options to not show when automatically selected\n\nThere are two options that are selected by all tracers, but we want\nto have those options available when no tracer is selected. These are\n\n The event tracer and sched switch tracer.\n\nThe are enabled by all tracers, but if a tracer is not selected we want\nthe options to appear. All tracers including them select TRACING.\nThus what we would like to do is:\n\n  config EVENT_TRACER\n\tbool \"prompt\"\n\tdepends on TRACING\n\tselect TRACING\n\nBut that gives us a bug in the kbuild system since we just created a\ncircular dependency. We only want the prompt to show when TRACING is off.\n\nThis patch adds GENERIC_TRACER that all tracers will select instead of\nTRACING. The two options (sched switch and event tracer) will select\nTRACING directly and depend on !GENERIC_TRACER. This solves the cicular\ndependency.\n\n[ Impact: hide options that are selected by default ]\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "2af15d6a44b871ad4c2a651302374cde8f335480",
      "tree": "39f06d511e3e1d1970fe4571128549c1c26230c1",
      "parents": [
        "f2aebaee653a35b01c3665de2cbb1e31456b8ea8"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu May 28 13:37:24 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Jun 01 23:23:10 2009 -0400"
      },
      "message": "ftrace: add kernel command line function filtering\n\nWhen using ftrace\u003dfunction on the command line to trace functions\non boot up, one can not filter out functions that are commonly called.\n\nThis patch adds two new ftrace command line commands.\n\n  ftrace_notrace\u003dfunction-list\n  ftrace_filter\u003dfunction-list\n\nWhere function-list is a comma separated list of functions to filter.\nThe ftrace_notrace will make the functions listed not be included\nin the function tracing, and ftrace_filter will only trace the functions\nlisted.\n\nThese two act the same as the debugfs/tracing/set_ftrace_notrace and\ndebugfs/tracing/set_ftrace_filter respectively.\n\nThe simple glob expressions that are allowed by the filter files can also\nbe used by the command line interface.\n\n\tftrace_notrace\u003drcu*,*lock,*spin*\n\nWill not trace any function that starts with rcu, ends with lock, or has\nthe word spin in it.\n\nNote, if the self tests are enabled, they may interfere with the filtering\nset by the command lines.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "43bd1236234cacbc18d1476a9b57e7a306efddf5",
      "tree": "087fd59a2f98e85fdf017267998a7364a47536c3",
      "parents": [
        "dbd3fbdfeecfad4e71139db05d72560c3583e2a9"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sat May 30 04:25:30 2009 +0200"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue Jun 02 01:18:33 2009 +0200"
      },
      "message": "tracing/stat: remove unappropriate safe walk on list\n\nregister_stat_tracer() uses list_for_each_entry_safe\nto check whether a tracer is already present in the list.\nBut we don\u0027t delete anything from the list here, so\nwe don\u0027t need the safe version\n\n[ Impact: cleanup list use is stat tracing ]\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "dbd3fbdfeecfad4e71139db05d72560c3583e2a9",
      "tree": "51cf7d906bd73d91398dcc1142812f244fb0c9f6",
      "parents": [
        "e16228069083a2f6b94383ac5739aea7a0f38ce4"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Wed May 27 11:42:46 2009 +0800"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue Jun 02 01:18:18 2009 +0200"
      },
      "message": "tracing/stat: do some cleanups\n\n- remove duplicate code in stat_seq_init()\n- update comments to reflect the change from stat list to stat rbtree\n\n[ Impact: clean up ]\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "e16228069083a2f6b94383ac5739aea7a0f38ce4",
      "tree": "97bf6074fff3ea29daa732f92d29472cf803165a",
      "parents": [
        "b3dd7ba7d862707800c7ac45068f14ade2b65155"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Wed May 27 11:04:48 2009 +0800"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue Jun 02 01:18:03 2009 +0200"
      },
      "message": "tracing/stat: remember to free root node\n\nWhen closing a trace_stat file, we destroy the rbtree constructed during\nfile open, but there is memory leak that the root node is not freed.\n\n[ Impact: fix memory leak when closing a trace_stat file ]\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "b3dd7ba7d862707800c7ac45068f14ade2b65155",
      "tree": "2b39cf635ea0c8acb52bea38edd6a8db843644d4",
      "parents": [
        "8f184f27300f66f6dcc8296c2dae7a1fbe8429c9"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Wed May 27 11:04:26 2009 +0800"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue Jun 02 01:17:49 2009 +0200"
      },
      "message": "tracing/stat: change dummpy_cmp() to return -1\n\nCurrently the output of trace_stat/workqueues is totally reversed:\n\n # cat /debug/tracing/trace_stat/workqueues\n    ...\n    1       17       17      210       37   `-blk_unplug_work+0x0/0x57\n    1     3779     3779      181       11   |-cfq_kick_queue+0x0/0x2f\n    1     3796     3796                     kblockd/1:120\n    ...\n\nThe correct output should be:\n\n    1     3796     3796                     kblockd/1:120\n    1     3779     3779      181       11   |-cfq_kick_queue+0x0/0x2f\n    1       17       17      210       37   `-blk_unplug_work+0x0/0x57\n\nIt\u0027s caused by \"tracing/stat: replace linked list by an rbtree for\nsorting\"\n(53059c9b67a62a3dc8c80204d3da42b9267ea5a0).\n\ndummpy_cmp() should return -1, so rb_node will always be inserted as\nright-most node in the rbtree, thus we sort the output in ascending\norder.\n\n[ Impact: fix the output of trace_stat/workqueues ]\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "8f184f27300f66f6dcc8296c2dae7a1fbe8429c9",
      "tree": "a21aa4d88a11217bdd9eaaf31b2189d8b6b45b5b",
      "parents": [
        "0d64f8342de26d02451900b1aad94716fe92c4ab"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sat May 16 06:24:36 2009 +0200"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue Jun 02 01:17:35 2009 +0200"
      },
      "message": "tracing/stat: replace linked list by an rbtree for sorting\n\nWhen the stat tracing framework prepares the entries from a tracer\nto output them to the user, it starts by computing a linear sort\nthrough a linked list to give the entries ordered by relevance\nto the user.\n\nThis is quite ugly and causes a small latency when we begin to\nread the file.\n\nThis patch changes that by turning the linked list into a red-black\ntree. Athough the whole iteration using the start and next tracer\ncallbacks while opening the file remain the same, it is now much\nmore fast and scalable.\n\nThe rbtree guarantees O(log(n)) insertions whereas a linked\nlist with linear sorting brought us a O(n) despair. Now the\n(visible) latency has disapeared.\n\n[ Impact: kill the latency while starting to read a stat tracer file ]\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "0d64f8342de26d02451900b1aad94716fe92c4ab",
      "tree": "b74741815a673be584141dcd3691daaeea0fc053",
      "parents": [
        "f3c4ae26e93d354152196b62797ba86ad86dd0cc"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sat May 16 05:58:49 2009 +0200"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue Jun 02 01:17:17 2009 +0200"
      },
      "message": "tracing/stat: replace trace_stat_session by stat_session\n\nThe \"trace\" prefix in struct trace_stat_session type is annoying while\nreading the trace_stat.c file. It makes the lines longer, and\nis not that much useful to explain the sense of this type.\n\nJust keep \"struct stat_session\" for this type.\n\n[ Impact: make the code a bit more readable ]\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "f3c4ae26e93d354152196b62797ba86ad86dd0cc",
      "tree": "62a6ea34e64bffaaa192d05c42409f4ef1d361d5",
      "parents": [
        "b8867164f05791a6b5363bd51c1274e03600886e"
      ],
      "author": {
        "name": "Zhaolei",
        "email": "zhaolei@cn.fujitsu.com",
        "time": "Mon Apr 20 15:02:17 2009 +0800"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue Jun 02 01:14:26 2009 +0200"
      },
      "message": "trace_workqueue: remove blank line between each cpu\n\nThe blankline between each cpu\u0027s workqueue stat is not necessary, because\nthe cpu number is enough to part them by eye.\nOld style also caused a blankline below headline, and made code complex\nby using lock, disableirq and get cpu var.\n\nOld style:\n # CPU  INSERTED  EXECUTED   NAME\n # |      |         |          |\n\n   0   8644       8644       events/0\n   0      0          0       cpuset\n   ...\n   0      1          1       kdmflush\n\n   1  35365      35365       events/1\n   ...\n\nNew style:\n # CPU  INSERTED  EXECUTED   NAME\n # |      |         |          |\n\n   0   8644       8644       events/0\n   0      0          0       cpuset\n   ...\n   0      1          1       kdmflush\n   1  35365      35365       events/1\n   ...\n\n[ Impact: provide more readable code ]\n\nSigned-off-by: Zhao Lei \u003czhaolei@cn.fujitsu.com\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "b8867164f05791a6b5363bd51c1274e03600886e",
      "tree": "781be4716c204703143db86606372b64db6dc835",
      "parents": [
        "1fdfca9c577aac96a559c1ea68f5c9156f17d636"
      ],
      "author": {
        "name": "Zhaolei",
        "email": "zhaolei@cn.fujitsu.com",
        "time": "Mon Apr 20 14:59:36 2009 +0800"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue Jun 02 01:13:46 2009 +0200"
      },
      "message": "trace_workqueue: remove cpu_workqueue_stats-\u003efirst_entry\n\ncpu_workqueue_stats-\u003efirst_entry is useless because we can retrieve the\nheader of a cpu workqueue using:\nif (\u0026cpu_workqueue_stats-\u003elist \u003d\u003d workqueue_cpu_stat(cpu)-\u003elist.next)\n\n[ Impact: cleanup ]\n\nSigned-off-by: Zhao Lei \u003czhaolei@cn.fujitsu.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "1fdfca9c577aac96a559c1ea68f5c9156f17d636",
      "tree": "fbbeeba504037440e42cce056781d56ecebfc4b1",
      "parents": [
        "fb39125fd79a25c5002f3b45cf4c80e3fa6b961b"
      ],
      "author": {
        "name": "Zhaolei",
        "email": "zhaolei@cn.fujitsu.com",
        "time": "Mon Apr 20 14:58:26 2009 +0800"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue Jun 02 01:13:05 2009 +0200"
      },
      "message": "trace_workqueue: use list_for_each_entry() instead of list_for_each_entry_safe()\n\nNo need to use list_for_each_entry_safe() in iteration without deleting\nany node, we can use list_for_each_entry() instead.\n\n[ Impact: cleanup ]\n\nSigned-off-by: Zhao Lei \u003czhaolei@cn.fujitsu.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "fb39125fd79a25c5002f3b45cf4c80e3fa6b961b",
      "tree": "96a9d274896f94306bc4d4972eca2153934f4814",
      "parents": [
        "f2aebaee653a35b01c3665de2cbb1e31456b8ea8"
      ],
      "author": {
        "name": "Zhaolei",
        "email": "zhaolei@cn.fujitsu.com",
        "time": "Fri Apr 17 15:15:51 2009 +0800"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue Jun 02 01:10:40 2009 +0200"
      },
      "message": "ftrace, workqueuetrace: make workqueue tracepoints use TRACE_EVENT macro\n\nv3: zhaolei@cn.fujitsu.com: Change TRACE_EVENT definition to new format\n    introduced by Steven Rostedt: consolidate trace and trace_event headers\nv2: kosaki@jp.fujitsu.com: print the function names instead of addr, and zap\n    the work addr\nv1: zhaolei@cn.fujitsu.com: Make workqueue tracepoints use TRACE_EVENT macro\n\nTRACE_EVENT is a more generic way to define tracepoints.\nDoing so adds these new capabilities to the tracepoints:\n\n  - zero-copy and per-cpu splice() tracing\n  - binary tracing without printf overhead\n  - structured logging records exposed under /debug/tracing/events\n  - trace events embedded in function tracer output and other plugins\n  - user-defined, per tracepoint filter expressions\n\nThen, this patch converts DEFINE_TRACE to TRACE_EVENT in workqueue related\ntracepoints.\n\n[ Impact: expand workqueue tracer to events tracing ]\n\nSigned-off-by: Zhao Lei \u003czhaolei@cn.fujitsu.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "f2aebaee653a35b01c3665de2cbb1e31456b8ea8",
      "tree": "e9a873c81bb4105d10a04d925f15e53e9ad1ac0c",
      "parents": [
        "5b6045a906f48d37591365c5dcdd6d1d146bfd4a"
      ],
      "author": {
        "name": "Zhaolei",
        "email": "zhaolei@cn.fujitsu.com",
        "time": "Wed May 27 21:36:02 2009 +0800"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Thu May 28 01:22:06 2009 +0200"
      },
      "message": "ftrace: don\u0027t convert function\u0027s local variable name in macro\n\n\"call\" is an argument of macro, but it is also used as a local\nvariable name of function in macro.\nWe should keep this local variable name distinct from any\nCPP macro parameter name if both are in the same macro scope,\nalthough it hasn\u0027t caused any problem yet.\n\n[ Impact: robustify macro ]\n\nSigned-off-by: Zhao Lei \u003czhaolei@cn.fujitsu.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "5b6045a906f48d37591365c5dcdd6d1d146bfd4a",
      "tree": "33a7b9513c84e442eda0159ee294a02f33589f55",
      "parents": [
        "c2adae0970ca1db8adb92fb56ae3bcabd916e8bd"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Tue May 26 17:28:02 2009 +0200"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Thu May 28 01:21:03 2009 +0200"
      },
      "message": "trace: disable preemption before taking raw spinlocks\n\ns390 code uses smp_processor_id() in __raw_spin_lock() code which\nreveals that a (raw) spinlock is taken without preemption disabled.\nThis can potentially deadlock.\n\nTo fix this explicitly disable and enable preemption.\n\nBUG: using smp_processor_id() in preemptible [00000000] code: cat/2278\ncaller is trace_find_cmdline+0x40/0xfc\nCPU: 0 Not tainted 2.6.30-rc7-dirty #39\nProcess cat (pid: 2278, task: 000000003faedb68, ksp: 000000003b33b988)\n000000003b33b988 000000003b33bae0 0000000000000002 0000000000000000\n       000000003b33bb80 000000003b33baf8 000000003b33baf8 00000000000175d6\n       0000000000000001 000000003b33b988 000000003f9b0000 000000000000000b\n       000000000000000c 000000003b33bb40 000000003b33bae0 0000000000000000\n       0000000000000000 00000000000175d6 000000003b33bae0 000000003b33bb28\nCall Trace:\n([\u003c00000000000174b2\u003e] show_trace+0x112/0x170)\n [\u003c0000000000017582\u003e] show_stack+0x72/0x100\n [\u003c0000000000441538\u003e] dump_stack+0xc8/0xd8\n [\u003c000000000025c350\u003e] debug_smp_processor_id+0x114/0x130\n [\u003c00000000000bf0e4\u003e] trace_find_cmdline+0x40/0xfc\n [\u003c00000000000c35d4\u003e] trace_print_context+0x58/0xac\n [\u003c00000000000bb676\u003e] print_trace_line+0x416/0x470\n [\u003c00000000000bc8fe\u003e] s_show+0x4e/0x428\n [\u003c000000000013834e\u003e] seq_read+0x36a/0x5d4\n [\u003c0000000000112a78\u003e] vfs_read+0xc8/0x174\n [\u003c0000000000112c58\u003e] SyS_read+0x74/0xc4\n [\u003c000000000002c7ae\u003e] sysc_noemu+0x10/0x16\n [\u003c000002000012436c\u003e] 0x2000012436c\n1 lock held by cat/2278:\n #0:  (\u0026p-\u003elock){+.+.+.}, at: [\u003c0000000000138056\u003e] seq_read+0x72/0x5d4\n\n[ Impact: fix preempt-unsafe raw spinlock ]\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "c2adae0970ca1db8adb92fb56ae3bcabd916e8bd",
      "tree": "8612e3513e14cf9190ce90e59037f7eb4688ba4a",
      "parents": [
        "0f4fc29dd68dfab9c6ddd5d087d34a5b6818cb00"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed May 20 19:56:19 2009 -0400"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue May 26 20:32:30 2009 +0200"
      },
      "message": "tracing: convert irq events to use __print_symbolic\n\nThe recording of the names at trace time is inefficient. This patch\nimplements the softirq event recording to only record the vector\nand then use the __print_symbolic interface to print out the names.\n\n[ Impact: faster recording of softirq events ]\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "0f4fc29dd68dfab9c6ddd5d087d34a5b6818cb00",
      "tree": "af3d210c8db9adcf117580c949fb708badcb520b",
      "parents": [
        "62ba180e80f4194a498585ac0e4c07daa8ca08d1"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed May 20 19:21:47 2009 -0400"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue May 26 20:31:50 2009 +0200"
      },
      "message": "tracing: add __print_symbolic to trace events\n\nThis patch adds __print_symbolic which is similar to __print_flags but\nworks for an enumeration type instead. That is, there is only a one to one\nmapping between the values and the symbols. When a match is made, then\nit is printed, otherwise the hex value is outputed.\n\n[ Impact: add interface for showing symbol names in events ]\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "62ba180e80f4194a498585ac0e4c07daa8ca08d1",
      "tree": "44bdb742aa542e16cc08d93d6cca6b22e9492071",
      "parents": [
        "937cdb9db7f59278d0cb1582e6e64e3dfd73b4fc"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri May 15 16:16:30 2009 -0400"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue May 26 20:31:14 2009 +0200"
      },
      "message": "tracing: add flag output for kmem events\n\nThis patch changes the output for gfp_flags from being a simple hex value\nto the actual names.\n\n  gfp_flags\u003dGFP_ATOMIC  instead of gfp_flags\u003d00000020\n\nAnd even\n\n  gfp_flags\u003dGFP_KERNEL instead of gfp_flags\u003d000000d0\n\n(Thanks to Frederic Weisbecker for pointing out that the first version\n had a bad order of GFP masks)\n\n[ Impact: more human readable output from tracer ]\n\nAcked-by: Eduard - Gabriel Munteanu \u003ceduard.munteanu@linux360.ro\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "937cdb9db7f59278d0cb1582e6e64e3dfd73b4fc",
      "tree": "11ade43ae91890ad025fa97a9fd651b9149518dc",
      "parents": [
        "be74b73a57645cc253d881ab0c1014eb64b9cf22"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri May 15 10:51:13 2009 -0400"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue May 26 20:29:19 2009 +0200"
      },
      "message": "tracing: add previous task state info to sched switch event\n\nIt is useful to see the state of a task that is being switched out.\nThis patch adds the output of the state of the previous task in\nthe context switch event.\n\n[ Impact: see state of switched out task in context switch ]\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "be74b73a57645cc253d881ab0c1014eb64b9cf22",
      "tree": "83f14ae9a43fe98a1363d30d20d60245e1115382",
      "parents": [
        "0e907c99391362385c8e3af2c43b904dd1fd5d73"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue May 26 20:25:22 2009 +0200"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue May 26 20:25:22 2009 +0200"
      },
      "message": "tracing: add __print_flags for events\n\nDevelopers have been asking for the ability in the ftrace event tracer\nto display names of bits in a flags variable.\n\nInstead of printing out c2, it would be easier to read FOO|BAR|GOO,\nassuming that FOO is bit 1, BAR is bit 6 and GOO is bit 7.\n\nSome examples where this would be useful are the state flags in a context\nswitch, kmalloc flags, and even permision flags in accessing files.\n\n[\n  v2 changes include:\n\n  Frederic Weisbecker\u0027s idea of using a mask instead of bits,\n  thus we can output GFP_KERNEL instead of GPF_WAIT|GFP_IO|GFP_FS.\n\n  Li Zefan\u0027s idea of allowing the caller of __print_flags to add their\n  own delimiter (or no delimiter) where we can get for file permissions\n  rwx instead of r|w|x.\n]\n\n[\n  v3 changes:\n\n   Christoph Hellwig\u0027s idea of using an array instead of va_args.\n]\n\n[ Impact: better displaying of flags in trace output ]\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "0e907c99391362385c8e3af2c43b904dd1fd5d73",
      "tree": "86f1fc73644d4a7db5e1cbc96434aa89d02879cc",
      "parents": [
        "b11c53e12f94a46b50bccc7a1a953d7ca1d54a31"
      ],
      "author": {
        "name": "Zhaolei",
        "email": "zhaolei@cn.fujitsu.com",
        "time": "Mon May 25 18:13:59 2009 +0800"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue May 26 03:30:31 2009 +0200"
      },
      "message": "ftrace: clean up of using ftrace_event_enable_disable()\n\nAlways use ftrace_event_enable_disable() to enable/disable an event\nso that we can factorize out the event toggling code.\n\n[ Impact: factorize and cleanup event tracing code ]\n\nSigned-off-by: Zhao Lei \u003czhaolei@cn.fujitsu.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nLKML-Reference: \u003c4A14FDFE.2080402@cn.fujitsu.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "b11c53e12f94a46b50bccc7a1a953d7ca1d54a31",
      "tree": "a0d658e31ffd7f05834c6026874cd4120a35dd29",
      "parents": [
        "29fcefba8a2f0fea11e2b721fe174a1832801284"
      ],
      "author": {
        "name": "Zhaolei",
        "email": "zhaolei@cn.fujitsu.com",
        "time": "Mon May 25 18:11:59 2009 +0800"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue May 26 03:03:21 2009 +0200"
      },
      "message": "ftrace: Add task_comm support for trace_event\n\nIf we enable a trace event alone without any tracer running (such as\nfunction tracer, sched switch tracer, etc...) it can\u0027t output enough\ntask command information.\n\nWe need to use the tracing_{start/stop}_cmdline_record() helpers\nwhich are designed to keep track of cmdlines for any tasks that\nwere scheduled during the tracing.\n\nBefore this patch:\n # echo 1 \u003e debugfs/tracing/events/sched/sched_switch/enable\n # cat debugfs/tracing/trace\n # tracer: nop\n #\n #           TASK-PID    CPU#    TIMESTAMP  FUNCTION\n #              | |       |          |         |\n            \u003c...\u003e-2289  [000] 526276.724790: sched_switch: task bash:2289 [120] \u003d\u003d\u003e sshd:2287 [120]\n            \u003c...\u003e-2287  [000] 526276.725231: sched_switch: task sshd:2287 [120] \u003d\u003d\u003e bash:2289 [120]\n            \u003c...\u003e-2289  [000] 526276.725452: sched_switch: task bash:2289 [120] \u003d\u003d\u003e sshd:2287 [120]\n            \u003c...\u003e-2287  [000] 526276.727181: sched_switch: task sshd:2287 [120] \u003d\u003d\u003e swapper:0 [140]\n           \u003cidle\u003e-0     [000] 526277.032734: sched_switch: task swapper:0 [140] \u003d\u003d\u003e events/0:5 [115]\n            \u003c...\u003e-5     [000] 526277.032782: sched_switch: task events/0:5 [115] \u003d\u003d\u003e swapper:0 [140]\n ...\n\nAfter this patch:\n # tracer: nop\n #\n #           TASK-PID    CPU#    TIMESTAMP  FUNCTION\n #              | |       |          |         |\n             bash-2269  [000] 527347.989229: sched_switch: task bash:2269 [120] \u003d\u003d\u003e sshd:2267 [120]\n             sshd-2267  [000] 527347.990960: sched_switch: task sshd:2267 [120] \u003d\u003d\u003e bash:2269 [120]\n             bash-2269  [000] 527347.991143: sched_switch: task bash:2269 [120] \u003d\u003d\u003e sshd:2267 [120]\n             sshd-2267  [000] 527347.992959: sched_switch: task sshd:2267 [120] \u003d\u003d\u003e swapper:0 [140]\n           \u003cidle\u003e-0     [000] 527348.531989: sched_switch: task swapper:0 [140] \u003d\u003d\u003e events/0:5 [115]\n         events/0-5     [000] 527348.532115: sched_switch: task events/0:5 [115] \u003d\u003d\u003e swapper:0 [140]\n ...\n\nChangelog:\nv1-\u003ev2: Update Kconfig to select CONTEXT_SWITCH_TRACER in\n        ENABLE_EVENT_TRACING\nv2-\u003ev3: v2 can solve problem that was caused by config EVENT_TRACING\n        alone, but when CONFIG_FTRACE is off and CONFIG_TRACING is\n        selected by other config, compile fail happened again.\n        This version solves it.\n\n[ Impact: fix incomplete output of event tracing ]\n\nSigned-off-by: Zhao Lei \u003czhaolei@cn.fujitsu.com\u003e\nCc: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c4A14FDFE.2080402@cn.fujitsu.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "29fcefba8a2f0fea11e2b721fe174a1832801284",
      "tree": "438d92a543d13ac1c6ae9b80c0c7459a16ed0490",
      "parents": [
        "b0aae68cc5508f3c2fbf728988c954db4c8b8a53"
      ],
      "author": {
        "name": "Pekka Enberg",
        "email": "penberg@cs.helsinki.fi",
        "time": "Sun May 24 11:13:17 2009 +0300"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue May 26 03:03:21 2009 +0200"
      },
      "message": "kmemtrace: fix kernel parameter documentation\n\nThe kmemtrace.enable kernel parameter no longer works. To enable\nkmemtrace at boot-time, you must pass \"ftrace\u003dkmemtrace\" instead.\n\n[ Impact: remove obsolete kernel parameter documentation ]\n\nCc: Eduard - Gabriel Munteanu \u003ceduard.munteanu@linux360.ro\u003e\nSigned-off-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nLKML-Reference: \u003calpine.DEB.2.00.0905241112190.10296@rocky\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "b0aae68cc5508f3c2fbf728988c954db4c8b8a53",
      "tree": "af1253c54cf3edc83806acab14a60d1529e81709",
      "parents": [
        "4f5359685af6de7dca101393dc606620adbe963f"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Thu May 21 13:59:18 2009 +0800"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue May 26 00:15:21 2009 +0200"
      },
      "message": "tracing/events: change the type of __str_loc_item to unsigned short\n\nWhen defining a dynamic size string, we add __str_loc_##item to the\ntrace entry, and it stores the location of the actual string in\nentry-\u003e_str_data[]\n\n\u0027unsigned short\u0027 should be sufficient to store this information, thus\nwe save 2 bytes per dyn-size string in the ring buffer.\n\n[ Impact: reduce memory occupied by dyn-size strings in ring buffer ]\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c4A14EDB6.2050507@cn.fujitsu.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "4f5359685af6de7dca101393dc606620adbe963f",
      "tree": "1f9dc3fb9299008daa6a5fb6f03945008ea4a4f9",
      "parents": [
        "5537937696c55530447c20aa27daccb8d0d29b33"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Mon May 18 19:35:34 2009 +0800"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Mon May 25 23:53:41 2009 +0200"
      },
      "message": "tracing: add trace_event_read_lock()\n\nI found that there is nothing to protect event_hash in\nftrace_find_event(). Rcu protects the event hashlist\nbut not the event itself while we use it after its extraction\nthrough ftrace_find_event().\n\nThis lack of a proper locking in this spot opens a race\nwindow between any event dereferencing and module removal.\n\nEg:\n\n--Task A--\n\nprint_trace_line(trace) {\n  event \u003d find_ftrace_event(trace)\n\n--Task B--\n\ntrace_module_remove_events(mod) {\n  list_trace_events_module(ev, mod) {\n    unregister_ftrace_event(ev-\u003eevent) {\n      hlist_del(ev-\u003eevent-\u003enode)\n        list_del(....)\n    }\n  }\n}\n|--\u003e module removed, the event has been dropped\n\n--Task A--\n\n  event-\u003eprint(trace); // Dereferencing freed memory\n\nIf the event retrieved belongs to a module and this module\nis concurrently removed, we may end up dereferencing a data\nfrom a freed module.\n\nRCU could solve this, but it would add latency to the kernel and\nforbid tracers output callbacks to call any sleepable code.\nSo this fix converts \u0027trace_event_mutex\u0027 to a read/write semaphore,\nand adds trace_event_read_lock() to protect ftrace_find_event().\n\n[ Impact: fix possible freed memory dereference in ftrace ]\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c4A114806.7090302@cn.fujitsu.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "5537937696c55530447c20aa27daccb8d0d29b33",
      "tree": "e3207e5a491822238ed299a5e7d96dfc72b1c43a",
      "parents": [
        "fd51d251e4cdb21f68e9dbc4336514d64a105a79"
      ],
      "author": {
        "name": "Ming Lei",
        "email": "tom.leiming@gmail.com",
        "time": "Mon May 18 23:04:46 2009 +0800"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Wed May 20 19:23:11 2009 +0200"
      },
      "message": "ftrace: fix check for return value of register_module_notifier in event_trace_init\n\nregister_module_notifier() returns zero in the success case.\nSo fix the inverted fail case check in trace events modules\nhandler.\n\n[ Impact: fix spurious warning on ftrace initialization]\n\nReported-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nSigned-off-by: Ming Lei \u003ctom.leiming@gmail.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "fd51d251e4cdb21f68e9dbc4336514d64a105a79",
      "tree": "478fb26aea6b7e79532f33cc5949b4fece18cdfc",
      "parents": [
        "143c145e3a475065a4be661468d0df1bd0b25f74"
      ],
      "author": {
        "name": "Stefan Raspl",
        "email": "raspl@linux.vnet.ibm.com",
        "time": "Tue May 19 09:59:08 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue May 19 10:29:21 2009 +0200"
      },
      "message": "blktrace: remove debugfs entries on bad path\n\ndebugfs directory entries for devices are not removed on some\nof the failure pathes in do_blk_trace_setup().\nOne way to reproduce is to start blktrace on multiple devices\nwith insufficient Vmalloc space: Devices will fail with\na message like this:\n\n\tBLKTRACESETUP(2) /dev/sdu failed: 5/Input/output error\n\nIf so, the respective entries in debugfs\n(e.g. /sys/kernel/debug/block/sdu) will remain and subsequent\nattempts to start blktrace on the respective devices will not\nsucceed due to existing directories.\n\n[ Impact: fix /debug/tracing file cleanup corner case ]\n\nSigned-off-by: Stefan Raspl \u003cstefan.raspl@linux.vnet.ibm.com\u003e\nAcked-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: schwidefsky@de.ibm.com\nCc: heiko.carstens@de.ibm.com\nLKML-Reference: \u003c4A1266CC.5040801@linux.vnet.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "143c145e3a475065a4be661468d0df1bd0b25f74",
      "tree": "d3454be19499a5bee54d61dc38912926e620b2c4",
      "parents": [
        "24ed0c4bfc7d2d7507bb9d50f7f3bbdcd85d76dd"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Tue May 19 14:43:15 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue May 19 10:29:21 2009 +0200"
      },
      "message": "tracing/events: Documentation updates\n\n- fix some typos\n- document the difference between \u0027\u003e\u0027 and \u0027\u003e\u003e\u0027\n- document the \u0027enable\u0027 toggle\n- remove section \"Defining an event-enabled tracepoint\", since it\u0027s\n  out-dated and sample/trace_events/ already serves this purpose.\n\nv2: add \"Updated by Li Zefan\"\n\n[ Impact: make documentation up-to-date ]\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: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\nLKML-Reference: \u003c4A125503.5060406@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "24ed0c4bfc7d2d7507bb9d50f7f3bbdcd85d76dd",
      "tree": "954ff0ff7f4249ec7a2e9e9233bb4d8e0670f9ce",
      "parents": [
        "1079cac0f4eb7d968395378b1625979d4c818dd6"
      ],
      "author": {
        "name": "Ming Lei",
        "email": "tom.leiming@gmail.com",
        "time": "Sun May 17 15:31:38 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon May 18 10:24:13 2009 +0200"
      },
      "message": "tracing: fix check for return value of register_module_notifier\n\nreturn zero should be correct, so fix it.\n\n[ Impact: eliminate incorrect syslog message ]\n\nSigned-off-by: Ming Lei \u003ctom.leiming@gmail.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nAcked-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: rostedt@goodmis.org\nLKML-Reference: \u003c1242545498-7285-1-git-send-email-tom.leiming@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "1079cac0f4eb7d968395378b1625979d4c818dd6",
      "tree": "d261058d95d27fe7250511d5fad69db30dc17731",
      "parents": [
        "5872144f64b34a5942f6b4acedc90b02de72c58b",
        "1406de8e11eb043681297adf86d6892ff8efc27a"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon May 18 10:15:09 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon May 18 10:15:35 2009 +0200"
      },
      "message": "Merge commit \u0027v2.6.30-rc6\u0027 into tracing/core\n\nMerge reason: we were on an -rc4 base, sync up to -rc6\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "1406de8e11eb043681297adf86d6892ff8efc27a",
      "tree": "49ba4fa5579faa22bee505f15526087a50936ae5",
      "parents": [
        "72357d59559e3b9293bdea9c0d755862504f2bf3"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 15 21:12:57 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 15 21:12:57 2009 -0700"
      },
      "message": "Linux 2.6.30-rc6\n"
    },
    {
      "commit": "72357d59559e3b9293bdea9c0d755862504f2bf3",
      "tree": "3a047c436154201bfa5bf8682b9379e718d7dcc3",
      "parents": [
        "7c7327d9664280cad833da1f14bad13a3ea8f0bf",
        "8d181018532dd709ec1f789e374cda92d7b01ce1"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 15 16:47:55 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 15 16:47:55 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6:\n  PCI MSI: Fix MSI-X with NIU cards\n  PCI: Fix pci-e port driver slot_reset bad default return value\n"
    },
    {
      "commit": "7c7327d9664280cad833da1f14bad13a3ea8f0bf",
      "tree": "8af1f200310281054bfbaf76a7c90eaebefe5c51",
      "parents": [
        "40f293ff833f4054de880d105bda0dbb5e2468db",
        "3d7a9d1c7ee251a04095d43eec5a3f4ff3f710a8"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 15 14:29:53 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 15 14:30:02 2009 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/holtmann/bluetooth-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/holtmann/bluetooth-2.6:\n  Bluetooth: Don\u0027t trigger disconnect timeout for security mode 3 pairing\n  Bluetooth: Don\u0027t use hci_acl_connect_cancel() for incoming connections\n  Bluetooth: Fix wrong module refcount when connection setup fails\n\nAnother case of me handling the fallout from Davem\u0027s unfortunate\naddiction to shuffleboard.\n\nWon\u0027t anybody think of the children? Join the anti-shuffleboard league\ntoday!\n"
    },
    {
      "commit": "40f293ff833f4054de880d105bda0dbb5e2468db",
      "tree": "8ee903bd20476dd2a38e42b1e611f3c8d1142bb6",
      "parents": [
        "8c21f34126222239450717b78dda0c4962d9ebfa",
        "08d7b3d1edff84bd673d9e9ab36b5aa62e1ba903"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 15 13:22:11 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 15 13:22:11 2009 -0700"
      },
      "message": "Merge branch \u0027drm-intel-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/anholt/drm-intel\n\n* \u0027drm-intel-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/anholt/drm-intel:\n  drm/i915: Add new GET_PIPE_FROM_CRTC_ID ioctl.\n  drm/i915: Set HDMI hot plug interrupt enable for only the output in question.\n  drm/i915: Include 965GME pci ID in IS_I965GM(dev) to match UMS.\n  drm/i915: Use the GM45 VGA hotplug workaround on G45 as well.\n  drm/i915: ignore LVDS on intel graphics systems that lie about having it\n  drm/i915: sanity check IER at wait_request time\n  drm/i915: workaround IGD i2c bus issue in kernel side (v2)\n  drm/i915: Don\u0027t allow binding objects into the last page of the aperture.\n  drm/i915: save/restore fence registers across suspend/resume\n  drm/i915: x86 always has writeq. Add I915_READ64 for symmetry.\n"
    },
    {
      "commit": "8c21f34126222239450717b78dda0c4962d9ebfa",
      "tree": "3ed64c828f8bf8896e684a6ae471ed56b926b0d8",
      "parents": [
        "3346857f6fab1d6d1237a3ec7cfa159ec9b52db5",
        "4bca3286433585b5f1c3e7d8ac37a2f4b3def9ca"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 15 12:04:37 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 15 12:04:49 2009 -0700"
      },
      "message": "Merge branch \u0027upstream-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev\n\n* \u0027upstream-linus\u0027 of ssh://master.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev:\n  libata: Media rotation rate and form factor heuristics\n  libata: Report disk alignment and physical block size\n  sata_fsl: Fix the command description of FSL SATA controller\n  sata_fsl: Fix compile warnings\n  [libata] sata_sx4: fixup interrupt handling\n  [libata] sata_sx4: convert to new exception handling methods\n"
    },
    {
      "commit": "3346857f6fab1d6d1237a3ec7cfa159ec9b52db5",
      "tree": "9468318835176cdb6e51a8ec4c8c87340c080611",
      "parents": [
        "5d41343ac88eeddd25dc4ffb7050c9095c41a70d",
        "542cc7937e6af73cb2edc455a0e456d22e254abb"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 15 12:01:59 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 15 12:02:06 2009 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6:\n  iwlwifi: fix device id registration for 6000 series 2x2 devices\n  ath5k: update channel in sw state after stopping RX and TX\n  rtl8187: use DMA-aware buffers with usb_control_msg\n  mac80211: avoid NULL ptr deref when finding max_rates in PID and minstrel\n  airo: airo_get_encode{,ext} potential buffer overflow\n\nPulled directly by Linus because Davem is off playing shuffle-board at\nsome Alaskan cruise, and the NULL ptr deref issue hits people and should\nget merged sooner rather than later.\n\nDavid - make us proud on the shuffle-board tournament!\n"
    },
    {
      "commit": "4bca3286433585b5f1c3e7d8ac37a2f4b3def9ca",
      "tree": "54188630bb30858acf409df5bd07b7f31bf575ec",
      "parents": [
        "61d79a8eb362f826a002d3d14c4f9a070a818542"
      ],
      "author": {
        "name": "Martin K. Petersen",
        "email": "martin.petersen@oracle.com",
        "time": "Fri May 15 00:40:35 2009 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@redhat.com",
        "time": "Fri May 15 14:14:56 2009 -0400"
      },
      "message": "libata: Media rotation rate and form factor heuristics\n\nThis patch provides new heuristics for parsing both the form factor and\nmedia rotation rate ATA IDENFITY words.\n\nThe reported ATA version must be 7 or greater and the device must return\nvalues defined as valid in the standard.  Only then are the\ncharacteristics reported to SCSI via the VPD B1 page.\n\nThis seems like a reasonable compromise to me considering that we have\nbeen shipping several kernel releases that key off the rotation rate bit\nwithout any version checking whatsoever.  With no complaints so far.\n\nSigned-off-by: Martin K. Petersen \u003cmartin.petersen@oracle.com\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n"
    },
    {
      "commit": "61d79a8eb362f826a002d3d14c4f9a070a818542",
      "tree": "f67dce998de1d28da9a0aea898208d512728ef1e",
      "parents": [
        "d358724385d9bb3e360f5b95c17ec4f77c913460"
      ],
      "author": {
        "name": "Martin K. Petersen",
        "email": "martin.petersen@oracle.com",
        "time": "Fri May 15 00:40:34 2009 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@redhat.com",
        "time": "Fri May 15 14:14:22 2009 -0400"
      },
      "message": "libata: Report disk alignment and physical block size\n\nFor disks with 4KB sectors, report the correct block size and alignment\nwhen filling out the READ CAPACITY(16) response.\n\nThis patch is based upon code from Matthew Wilcox\u0027 4KB ATA tree.  I\nfixed the bug I reported a while back caused by ATA and SCSI using\ndifferent approaches to describing the alignment.\n\nSigned-off-by: Martin K. Petersen \u003cmartin.petersen@oracle.com\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n"
    },
    {
      "commit": "d358724385d9bb3e360f5b95c17ec4f77c913460",
      "tree": "bf848f530e12466616a341196abf74ea87ecdcf7",
      "parents": [
        "f48c019f1550aea7a3a1227efb9901916f5cd30d"
      ],
      "author": {
        "name": "Dave Liu",
        "email": "daveliu@freescale.com",
        "time": "Thu May 14 09:47:07 2009 -0500"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@redhat.com",
        "time": "Fri May 15 14:14:08 2009 -0400"
      },
      "message": "sata_fsl: Fix the command description of FSL SATA controller\n\nThe bit 11 of command description is reserved bit in Freescale\nSATA controller and needs to be set to \u00271\u0027.  This is needed to\nmake sure the last write from the controller to the buffer\ndescriptor is seen before an interrupt is raised.\n\nSigned-off-by: Dave Liu \u003cdaveliu@freescale.com\u003e\nSigned-off-by: Kumar Gala \u003cgalak@kernel.crashing.org\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n"
    },
    {
      "commit": "f48c019f1550aea7a3a1227efb9901916f5cd30d",
      "tree": "6fef8859d92817bc46ac3fc46f1382fb7ce15f80",
      "parents": [
        "19799bfc5da476ad72eecc5f0f9018c5d351cbd5"
      ],
      "author": {
        "name": "Kumar Gala",
        "email": "galak@kernel.crashing.org",
        "time": "Wed May 13 22:10:50 2009 -0500"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@redhat.com",
        "time": "Fri May 15 14:14:01 2009 -0400"
      },
      "message": "sata_fsl: Fix compile warnings\n\nWe we build with dma_addr_t as a 64-bit quantity we get:\n\ndrivers/ata/sata_fsl.c: In function \u0027sata_fsl_fill_sg\u0027:\ndrivers/ata/sata_fsl.c:340: warning: format \u0027%x\u0027 expects type \u0027unsigned int\u0027, but argument 4 has type \u0027dma_addr_t\u0027\n\nSigned-off-by: Kumar Gala \u003cgalak@kernel.crashing.org\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n"
    },
    {
      "commit": "19799bfc5da476ad72eecc5f0f9018c5d351cbd5",
      "tree": "44dfb7e03f353e74ca37da20630ddc5eb1529ea9",
      "parents": [
        "67651ee5710c45ea62fae68b768d65395ccf47c2"
      ],
      "author": {
        "name": "David Milburn",
        "email": "dmilburn@redhat.com",
        "time": "Wed May 13 18:02:21 2009 -0500"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@redhat.com",
        "time": "Fri May 15 14:08:10 2009 -0400"
      },
      "message": "[libata] sata_sx4: fixup interrupt handling\n\nIssuing ATA_CMD_SET_FEATURES (0xef) times out because\npdc20621_interrupt ignores command completion since\nATA_TFLAG_POLLING flag is set.\n\nThis has already been fixed for sata_promise:\n\ncommit 51b94d2a5a90d4800e74d7348bcde098a28f4fb3\nAuthor: Tejun Heo \u003chtejun@gmail.com\u003e\nDate:   Fri Jun 8 13:46:55 2007 -0700\n\n    sata_promise: use TF interface for polling NODATA commands\n\nAlso, this patch includes Mikael\u0027s original patches:\n\nhttp://marc.info/?l\u003dlinux-ide\u0026m\u003d121135828227724\u0026w\u003d2\nhttp://marc.info/?l\u003dlinux-ide\u0026m\u003d121144512109826\u0026w\u003d2\n\nSigned-off-by: Mikael Pettersson \u003cmikpe@it.uu.se\u003e\nSigned-off-by: David Milburn \u003cdmilburn@redhat.com\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n"
    },
    {
      "commit": "67651ee5710c45ea62fae68b768d65395ccf47c2",
      "tree": "91232a79eb11e7f68091cf4c062a97b250e58553",
      "parents": [
        "5d41343ac88eeddd25dc4ffb7050c9095c41a70d"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Wed Apr 08 16:02:18 2009 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@redhat.com",
        "time": "Fri May 15 14:05:22 2009 -0400"
      },
      "message": "[libata] sata_sx4: convert to new exception handling methods\n\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n"
    },
    {
      "commit": "5d41343ac88eeddd25dc4ffb7050c9095c41a70d",
      "tree": "bb40dd5493d19276a806bbd35064c44922b11d93",
      "parents": [
        "c244450dac6d83be1ceadf29a65a5b49c34ceed8",
        "2ec0ae3acec47f628179ee95fe2c4da01b5e9fc4"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 15 08:07:25 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 15 08:07:25 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 race in ext4_inode_info.i_cached_extent\n  ext4: Clear the unwritten buffer_head flag after the extent is initialized\n  ext4: Use a fake block number for delayed new buffer_head\n  ext4: Fix sub-block zeroing for writes into preallocated extents\n"
    },
    {
      "commit": "c244450dac6d83be1ceadf29a65a5b49c34ceed8",
      "tree": "14741f05d136df2da0f1a01c7a6085fc8b864322",
      "parents": [
        "ade385e4d14f4158b3b27acd992a98bca4cd7f23",
        "60befb97f5ab11037f1ae7563ca7137878a7bd46"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 15 08:06:56 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 15 08:06:56 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6:\n  ASoC: DaVinci EVM board support buildfixes\n  ASoC: DaVinci I2S updates\n  ASoC: davinci-pcm buildfixes\n  ALSA: pcsp: fix printk format warning\n  ALSA: riptide: postfix increment and off by one\n  pxa2xx-ac97: fix reset gpio mode setting\n  ASoC: soc-core: fix crash when removing not instantiated card\n"
    },
    {
      "commit": "ade385e4d14f4158b3b27acd992a98bca4cd7f23",
      "tree": "9f20430f5690901936348b0c955327c4a37d3485",
      "parents": [
        "c6538499814d8112c5d4d08570a7cf0758e5f8f5",
        "d34a792da969a00b0f653c512414411760f55a20"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 15 08:06:45 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 15 08:06:45 2009 -0700"
      },
      "message": "Merge branch \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jwessel/linux-2.6-kgdb\n\n* \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jwessel/linux-2.6-kgdb:\n  kgdb: gdb documentation fix\n  kgdb,i386: use address that SP register points to in the exception frame\n  sysrq, intel_fb: fix sysrq g collision\n"
    },
    {
      "commit": "c6538499814d8112c5d4d08570a7cf0758e5f8f5",
      "tree": "3c3574d8aea838d91372765847577772092f09bc",
      "parents": [
        "662f11cf2aaedd3d5fe6afbec78ba3288fd0c4ca",
        "cd17cbfda004fe5f406c01b318c6378d9895896f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 15 08:05:37 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 15 08:05:37 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:\n  Revert \"mm: add /proc controls for pdflush threads\"\n  viocd: needs to depend on BLOCK\n  block: fix the bio_vec array index out-of-bounds test\n"
    },
    {
      "commit": "662f11cf2aaedd3d5fe6afbec78ba3288fd0c4ca",
      "tree": "f491041c3f04e5164682bfe67f75aa5fced33609",
      "parents": [
        "1f71ebedb3f8ce9108978168759c8551d873a912",
        "ad892a63f64888a7b05eb2046febbcfbdd54dfcc"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 15 08:05:02 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 15 08:05:02 2009 -0700"
      },
      "message": "Merge branch \u0027merge\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc\n\n* \u0027merge\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc:\n  powerpc: Fix PCI ROM access\n  powerpc/pseries: Really fix the oprofile CPU type on pseries\n  serial/nwpserial: Fix wrong register read address and add interrupt acknowledge.\n  powerpc/cell: Make ptcal more reliable\n  powerpc: Allow mem\u003dx cmdline to work with 4G+\n  powerpc/mpic: Fix incorrect allocation of interrupt rev-map\n  powerpc: Fix oprofile sampling of marked events on POWER7\n  powerpc/iseries: Fix pci breakage due to bad dma_data initialization\n  powerpc: Fix mktree build error on Mac OS X host\n  powerpc/virtex: Fix duplicate level irq events.\n  powerpc/virtex: Add uImage to the default images list\n  powerpc/boot: add simpleImage.* to clean-files list\n  powerpc/8xx: Update defconfigs\n  powerpc/embedded6xx: Update defconfigs\n  powerpc/86xx: Update defconfigs\n  powerpc/85xx: Update defconfigs\n  powerpc/83xx: Update defconfigs\n  powerpc/fsl_soc: Remove mpc83xx_wdt_init, again\n"
    },
    {
      "commit": "1f71ebedb3f8ce9108978168759c8551d873a912",
      "tree": "604f633fa092872f8b70873780c36e024de3677a",
      "parents": [
        "bd67ce0f661482bd073f94144dd7e5a093ef012f"
      ],
      "author": {
        "name": "Sukadev Bhattiprolu",
        "email": "sukadev@linux.vnet.ibm.com",
        "time": "Thu May 14 19:38:24 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 15 08:03:23 2009 -0700"
      },
      "message": "devpts: correctly set default options\n\ndevpts_get_sb() calls memset(0) to clear mount options and calls\nparse_mount_options() if user specified any mount options.\n\nThe memset(0) is bogus since the \u0027mode\u0027 and \u0027ptmxmode\u0027 options are\nnon-zero by default.  parse_mount_options() restores options to default\nanyway and can properly deal with NULL mount options.\n\nSo in devpts_get_sb() remove memset(0) and call parse_mount_options() even\nfor NULL mount options.\n\nBug reported by Eric Paris: http://lkml.org/lkml/2009/5/7/448.\n\nSigned-off-by: Sukadev Bhattiprolu \u003csukadev@us.ibm.com\u003e\nTested-by: Marc Dionne \u003cmarc.c.dionne@gmail.com\u003e\nReported-by: Eric Paris \u003ceparis@redhat.com\u003e\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nAcked-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: \"Rafael J. Wysocki\" \u003crjw@sisk.pl\u003e\nReviewed-by: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "60befb97f5ab11037f1ae7563ca7137878a7bd46",
      "tree": "135fd84011d6f75eccbb7647c9b03957a800ed99",
      "parents": [
        "a3d2b755c0e8f301c079d8aa5a761622259400fe",
        "f492ec9f02908579353e31949855f86909a5af14"
      ],
      "author": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Fri May 15 15:38:26 2009 +0200"
      },
      "committer": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Fri May 15 15:38:26 2009 +0200"
      },
      "message": "Merge branch \u0027fix/asoc\u0027 into for-linus\n\n* fix/asoc:\n  ASoC: DaVinci EVM board support buildfixes\n  ASoC: DaVinci I2S updates\n  ASoC: davinci-pcm buildfixes\n  pxa2xx-ac97: fix reset gpio mode setting\n  ASoC: soc-core: fix crash when removing not instantiated card\n"
    },
    {
      "commit": "a3d2b755c0e8f301c079d8aa5a761622259400fe",
      "tree": "5c26f7617ac49addcdc65e27f97f218495ac6b3e",
      "parents": [
        "bbb2b6829d2afa4cfc58f7c321b2c3aaa7f4835e",
        "5a641bcd6398841cc4606b0a732d41a09256fd94"
      ],
      "author": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Fri May 15 15:38:20 2009 +0200"
      },
      "committer": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Fri May 15 15:38:20 2009 +0200"
      },
      "message": "Merge branch \u0027fix/misc\u0027 into for-linus\n\n* fix/misc:\n  ALSA: pcsp: fix printk format warning\n  ALSA: riptide: postfix increment and off by one\n"
    },
    {
      "commit": "2ec0ae3acec47f628179ee95fe2c4da01b5e9fc4",
      "tree": "f8cf43b7d3840c405dac1db3974466a2d755919a",
      "parents": [
        "2a8964d63d50dd2d65d71d342bc7fb6ef4117614"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Fri May 15 09:07:28 2009 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Fri May 15 09:07:28 2009 -0400"
      },
      "message": "ext4: Fix race in ext4_inode_info.i_cached_extent\n\nIf two CPU\u0027s simultaneously call ext4_ext_get_blocks() at the same\ntime, there is nothing protecting the i_cached_extent structure from\nbeing used and updated at the same time.  This could potentially cause\nthe wrong location on disk to be read or written to, including\npotentially causing the corruption of the block group descriptors\nand/or inode table.\n\nThis bug has been in the ext4 code since almost the very beginning of\next4\u0027s development.  Fortunately once the data is stored in the page\ncache cache, ext4_get_blocks() doesn\u0027t need to be called, so trying to\nreplicate this problem to the point where we could identify its root\ncause was *extremely* difficult.  Many thanks to Kevin Shanahan for\nworking over several months to be able to reproduce this easily so we\ncould finally nail down the cause of the corruption.\n\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\nReviewed-by: \"Aneesh Kumar K.V\" \u003caneesh.kumar@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "d34a792da969a00b0f653c512414411760f55a20",
      "tree": "cf90c43bd1d3edf6083e9762fd22dead6723d016",
      "parents": [
        "33ab1979bc9f719213bc3f392c8fd9d012e4f4e9"
      ],
      "author": {
        "name": "Frank Rowand",
        "email": "frank.rowand@am.sony.com",
        "time": "Fri May 15 07:56:25 2009 -0500"
      },
      "committer": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Fri May 15 07:56:25 2009 -0500"
      },
      "message": "kgdb: gdb documentation fix\n\ngdb command \"set remote debug 1\" is not valid, change to correct command.\n\nSigned-off-by: Frank Rowand \u003cfrank.rowand@am.sony.com\u003e\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\n"
    },
    {
      "commit": "33ab1979bc9f719213bc3f392c8fd9d012e4f4e9",
      "tree": "4bec72fadd446a86c7ffc96269a9f83fc4a9f456",
      "parents": [
        "364b5b7b1d793a7f98be55b6b154716dcae78dfc"
      ],
      "author": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Wed Feb 11 18:46:32 2009 -0600"
      },
      "committer": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Fri May 15 07:56:25 2009 -0500"
      },
      "message": "kgdb,i386: use address that SP register points to in the exception frame\n\nThe treatment of the SP register is different on x86_64 and i386.\nThis is a regression fix that lived outside the mainline kernel from\n2.6.27 to now.  The regression was a result of the original merge\nconsolidation of the i386 and x86_64 archs to x86.\n\nThe incorrectly reported SP on i386 prevented stack tracebacks from\nworking correctly in gdb.\n\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\n"
    },
    {
      "commit": "364b5b7b1d793a7f98be55b6b154716dcae78dfc",
      "tree": "2c8d2571bde15bf7c376bd222b3cc916bd52c13d",
      "parents": [
        "45d447406a19cbfd42720f066f156f4eb9d68801"
      ],
      "author": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Wed May 13 21:56:59 2009 -0500"
      },
      "committer": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Fri May 15 07:56:24 2009 -0500"
      },
      "message": "sysrq, intel_fb: fix sysrq g collision\n\nCommit 79e539453b34e35f39299a899d263b0a1f1670bd introduced a\nregression where you cannot use sysrq \u0027g\u0027 to enter kgdb.  The solution\nis to move the intel fb sysrq over to V for video instead of G for\ngraphics.  The SMP VOYAGER code to register for the sysrq-v is not\nanywhere to be found in the mainline kernel, so the comments in the\ncode were cleaned up as well.\n\nThis patch also cleans up the sysrq definitions for kgdb to make it\ngeneric for the kernel debugger, such that the sysrq \u0027g\u0027 can be used\nin the future to enter a gdbstub or another kernel debugger.\n\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\nAcked-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\nAcked-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cd17cbfda004fe5f406c01b318c6378d9895896f",
      "tree": "821e279bc6d9d52bc13fa6c3905ebbd44a2e4860",
      "parents": [
        "05dc7b613481c695bb4fc476c6fbb46364b63f62"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri May 15 11:32:24 2009 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri May 15 11:32:24 2009 +0200"
      },
      "message": "Revert \"mm: add /proc controls for pdflush threads\"\n\nThis reverts commit fafd688e4c0c34da0f3de909881117d374e4c7af.\n\nWork is progressing to switch away from pdflush as the process backing\nfor flushing out dirty data. So it seems pointless to add more knobs\nto control pdflush threads. The original author of the patch did not\nhave any specific use cases for adding the knobs, so we can easily\nrevert this before 2.6.30 to avoid having to maintain this API\nforever.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "f492ec9f02908579353e31949855f86909a5af14",
      "tree": "595b7f2e42fb9eaf6f0b83267dc158619845b199",
      "parents": [
        "a62114cb90a351016121bca02e69d6a9e24afa0e"
      ],
      "author": {
        "name": "David Brownell",
        "email": "dbrownell@users.sourceforge.net",
        "time": "Thu May 14 13:01:59 2009 -0700"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Fri May 15 08:59:07 2009 +0100"
      },
      "message": "ASoC: DaVinci EVM board support buildfixes\n\nThis is a build fix, resyncing the DaVinci EVM ASoC board code\nwith the version in the DaVinci tree.  That resync includes\nsupport for the DM355 EVM, although that board isn\u0027t yet in\nmainline.\n\n(NOTE:  also includes a bugfix to the platform_add_resources\ncall, recently sent by Chaithrika U S \u003cchaithrika@ti.com\u003e but\nnot yet merged into the DaVinci tree.)\n\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "a62114cb90a351016121bca02e69d6a9e24afa0e",
      "tree": "79493df5aa72f43b40239078668ffd9ac88201a3",
      "parents": [
        "82075af6cb9b4918ab52a7100425b09fae6aafe3"
      ],
      "author": {
        "name": "David Brownell",
        "email": "dbrownell@users.sourceforge.net",
        "time": "Thu May 14 12:47:42 2009 -0700"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Fri May 15 08:58:58 2009 +0100"
      },
      "message": "ASoC: DaVinci I2S updates\n\nThis resyncs the DaVinci I2S code with the version in the DaVinci\ntree.  The behavioral change uses updated clock interfaces which\nrecently merged to mainline.  Two other changes include adding a\ncomment on the ASP/McBSP/McASP confusion, and dropping pdev-\u003eid in\norder to support more boards than just the DM644x EVM.\n\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "82075af6cb9b4918ab52a7100425b09fae6aafe3",
      "tree": "b1d86ab2db25a3bcb3addf30a917bb6ad99006d3",
      "parents": [
        "1ffafeb556d50de8039e14f1cbbe58e9e4549915"
      ],
      "author": {
        "name": "David Brownell",
        "email": "dbrownell@users.sourceforge.net",
        "time": "Thu May 14 12:41:22 2009 -0700"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Fri May 15 08:58:05 2009 +0100"
      },
      "message": "ASoC: davinci-pcm buildfixes\n\nThis is a buildfix for the DaVinci PCM code, resyncing it with\nthe version in the DaVinci tree.  The notable change is using\ncurrent EDMA interfaces, which recently merged to mainline.\n(The older interfaces never made it into mainline.)\n\nNOTE:  open issue, the DMA should be to/from SRAM; see chip\nerrata for more info.  The artifacts are extremely easy to\nhear on DM355 hardware (not yet supported in mainline), but\ndon\u0027t seem as audible on DM6446 hardwaare (which does have\nmainline support).\n\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "ad892a63f64888a7b05eb2046febbcfbdd54dfcc",
      "tree": "473fccb436ed94b3eb8fcab2378f6dbe523bdc4c",
      "parents": [
        "b173f03d7c48d3346541f26e0b29690dbadca279"
      ],
      "author": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Thu May 14 20:16:47 2009 +0000"
      },
      "committer": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Fri May 15 16:43:42 2009 +1000"
      },
      "message": "powerpc: Fix PCI ROM access\n\nA couple of issues crept in since about 2.6.27 related to accessing PCI\ndevice ROMs on various powerpc machines.\n\nFirst, historically, we don\u0027t allocate the ROM resource in the resource\ntree. I\u0027m not entirely certain of why, I susepct they often contained\ngarbage on x86 but it\u0027s hard to tell. This causes the current generic\ncode to always call pci_assign_resource() when trying to access the said\nROM from sysfs, which will try to re-assign some new address regardless\nof what the ROM BAR was already set to at boot time. This can be a\nproblem on hypervisor platforms like pSeries where we aren\u0027t supposed\nto move PCI devices around (and in fact probably can\u0027t).\n\nSecond, our code that generates the PCI tree from the OF device-tree\n(instead of doing config space probing) which we mostly use on pseries\nat the moment, didn\u0027t set the (new) flag IORESOURCE_SIZEALIGN on any\nresource. That means that any attempt at re-assigning such a resource\nwith pci_assign_resource() would fail due to resource_alignment()\nreturning 0.\n\nThis fixes this by doing these two things:\n\n - The code that calculates resource flags based on the OF device-node\nis improved to set IORESOURCE_SIZEALIGN on any valid BAR, and while at\nit also set IORESOURCE_READONLY for ROMs since we were lacking that too\n\n - We now allocate ROM resources as part of the resource tree. However\nto limit the chances of nasty conflicts due to busted firmwares, we\nonly do it on the second pass of our two-passes allocation scheme,\nso that all valid and enabled BARs get precedence.\n\nThis brings pSeries back the ability to access PCI ROMs via sysfs (and\nthus initialize various video cards from X etc...).\n\nSigned-off-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\n"
    },
    {
      "commit": "b173f03d7c48d3346541f26e0b29690dbadca279",
      "tree": "9eec335a778a6bb715feb4fd0b000fa091d02b0f",
      "parents": [
        "951c4df5b7703137bf4eee002d98d083fbc890cc"
      ],
      "author": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Thu May 14 18:34:06 2009 +0000"
      },
      "committer": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Fri May 15 16:43:42 2009 +1000"
      },
      "message": "powerpc/pseries: Really fix the oprofile CPU type on pseries\n\nMy previous pach for fixing the oprofile CPU type got somewhat mismerged\n(by my fault) when it collided with another related patch. This should\nfinally (fingers crossed) fix the whole thing.\n\nWe make sure we keep the -old- oprofile type and CPU type whenever\none of them was specified in the first pass through the function.\n\nSigned-off-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\n"
    },
    {
      "commit": "951c4df5b7703137bf4eee002d98d083fbc890cc",
      "tree": "cd60e96d0a6e1deeba177894b8cfaa8ba51c0345",
      "parents": [
        "37cd8ed90fc5b11941110d2d0cea6807f86d4787"
      ],
      "author": {
        "name": "Benjamin Krill",
        "email": "ben@codiert.org",
        "time": "Wed May 13 05:56:54 2009 +0000"
      },
      "committer": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Fri May 15 16:43:42 2009 +1000"
      },
      "message": "serial/nwpserial: Fix wrong register read address and add interrupt acknowledge.\n\nThe receive interrupt routine checks the wrong register if the\nreceive fifo is empty. Further an explicit interrupt acknowledge\nwrite is introduced. In some circumstances another interrupt was\nissued.\n\nSigned-off-by: Benjamin Krill \u003cben@codiert.org\u003e\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nSigned-off-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\n"
    },
    {
      "commit": "37cd8ed90fc5b11941110d2d0cea6807f86d4787",
      "tree": "7de01cea9c05684953905438f7afe87039d9026f",
      "parents": [
        "49a849652513235a244dfbf5e58c54f796bd1148"
      ],
      "author": {
        "name": "Gerhard Stenzel",
        "email": "stenzel@de.ibm.com",
        "time": "Wed May 13 05:50:46 2009 +0000"
      },
      "committer": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Fri May 15 16:43:42 2009 +1000"
      },
      "message": "powerpc/cell: Make ptcal more reliable\n\nThere have been a series of checkstops on QS21 related to\nptcal being set up incorrectly. On systems that only\nhave memory on a single node, ptcal fails when it gets\na pointer to memory on the remote node.\n\nMoreover, agressive prefetching in memcpy and other\nfunctions may accidentally touch the first cache line\nof the page that we reserve for ptcal, which causes\nan ECC checkstop.\n\nWe now allocate pages only from the specified node, moves the\nptcal area into the middle of the allocated page to avoid\npotential prefetch problems and prints the address of the\nptcal area to facilitate diagnostics.\n\nSigned-off-by: Gerhard Stenzel \u003cgerhard.stenzel@de.ibm.com\u003e\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nSigned-off-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\n"
    },
    {
      "commit": "49a849652513235a244dfbf5e58c54f796bd1148",
      "tree": "809fe33bad6255fab153fb5a7f03170150ab88c7",
      "parents": [
        "31207dab7d2e63795eb15823947bd2f7025b08e2"
      ],
      "author": {
        "name": "Becky Bruce",
        "email": "beckyb@kernel.crashing.org",
        "time": "Fri May 08 12:19:27 2009 +0000"
      },
      "committer": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Fri May 15 16:43:41 2009 +1000"
      },
      "message": "powerpc: Allow mem\u003dx cmdline to work with 4G+\n\nWe\u0027re currently choking on mem\u003d4g (and above) due to memory_limit\nbeing specified as an unsigned long. Make memory_limit\nphys_addr_t to fix this.\n\nSigned-off-by: Becky Bruce \u003cbeckyb@kernel.crashing.org\u003e\nSigned-off-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\n"
    },
    {
      "commit": "31207dab7d2e63795eb15823947bd2f7025b08e2",
      "tree": "84607395d7d74e56e32c5155ecec7efee0d90c12",
      "parents": [
        "e5fc948b11a9d0aee1cabe7c82726bc36d496875"
      ],
      "author": {
        "name": "Kumar Gala",
        "email": "galak@kernel.crashing.org",
        "time": "Fri May 08 12:08:20 2009 +0000"
      },
      "committer": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Fri May 15 16:43:41 2009 +1000"
      },
      "message": "powerpc/mpic: Fix incorrect allocation of interrupt rev-map\n\nBefore when we were setting up the irq host map for mpic we passed in\njust isu_size for the size of the linear map.  However, for a number of\nmpic implementations we have no isu (thus pass in 0) and will end up\nwith a no linear map (size \u003d 0).  This causes us to always call\nirq_find_mapping() from mpic_get_irq().\n\nBy moving the allocation of the host map to after we\u0027ve determined the\nnumber of sources we can actually benefit from having a linear map for\nthe non-isu users that covers all the interrupt sources.\n\nSigned-off-by: Kumar Gala \u003cgalak@kernel.crashing.org\u003e\nSigned-off-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\n"
    },
    {
      "commit": "e5fc948b11a9d0aee1cabe7c82726bc36d496875",
      "tree": "ea0b22d395eae62f41c00b7cf14ae263933433bf",
      "parents": [
        "397717c578a5e02cf76b6c99c68f50fee94b59f8"
      ],
      "author": {
        "name": "Maynard Johnson",
        "email": "maynardj@us.ibm.com",
        "time": "Thu May 07 05:48:32 2009 +0000"
      },
      "committer": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Fri May 15 16:43:41 2009 +1000"
      },
      "message": "powerpc: Fix oprofile sampling of marked events on POWER7\n\nDescription\n-----------\nChange ppc64 oprofile kernel driver to use the SLOT bits (MMCRA[37:39]only on\nolder processors where those bits are defined.\n\nBackground\n----------\nThe performance monitor unit of the 64-bit POWER processor family has the\nability to collect accurate instruction-level samples when profiling on marked\nevents (i.e., \"PM_MRK_\u003cevent-name\u003e\").  In processors prior to POWER6, the MMCRA\nregister contained \"slot information\" that the oprofile kernel driver used to\nadjust the value latched in the SIAR at the time of a PMU interrupt.  But as of\nPOWER6, these slot bits in MMCRA are no longer necessary for oprofile to use,\nsince the SIAR itself holds the accurate sampled instruction address.  With\nPOWER6, these MMCRA slot bits were zero\u0027ed out by hardware so oprofile\u0027s use of\nthese slot bits was, in effect, a NOP.  But with POWER7, these bits are no\nlonger zero\u0027ed out; however, they serve some other purpose rather than slot\ninformation.  Thus, using these bits on POWER7 to adjust the SIAR value results\nin samples being attributed to the wrong instructions.  The attached patch\nchanges the oprofile kernel driver to ignore these slot bits on all newer\nprocessors starting with POWER6.\n\nSigned-off-by: Maynard Johnson \u003cmaynardj@us.ibm.com\u003e\nSigned-off-by: Michael Wolf \u003cmjw@linux.vnet.ibm.com\u003e\nSigned-off-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\n"
    },
    {
      "commit": "397717c578a5e02cf76b6c99c68f50fee94b59f8",
      "tree": "c4b02725a662150a9ba7129bd6cbfaa98a4adcd0",
      "parents": [
        "93f1cc609c702a83e44da51cabdd353b20c24f79"
      ],
      "author": {
        "name": "Stephen Rothwell  x",
        "email": "sfr@canb.auug.org.au",
        "time": "Wed May 06 14:07:52 2009 +0000"
      },
      "committer": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Fri May 15 16:43:41 2009 +1000"
      },
      "message": "powerpc/iseries: Fix pci breakage due to bad dma_data initialization\n\nCommit 4fc665b88a79a45bae8bbf3a05563c27c7337c3d \"powerpc: Merge 32 and\n64-bit dma code\" made changes to the PCI initialisation code that added\nan assignment to archdata.dma_data but only for 32 bit code.  Commit\n7eef440a545c7f812ed10b49d4a10a351df9cad6 \"powerpc/pci: Cosmetic cleanups\nof pci-common.c\" removed the conditional compilation.  Unfortunately,\nthe iSeries code setup the archdata.dma_data before that assignment was\ndone - effectively overwriting the dma_data with NULL.\n\nFix this up by moving the iSeries setup of dma_data into a\npci_dma_dev_setup callback.\n\nSigned-off-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nSigned-off-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\n"
    },
    {
      "commit": "93f1cc609c702a83e44da51cabdd353b20c24f79",
      "tree": "db8f70733352bdb3775216367619d3f95eb5b656",
      "parents": [
        "ba10eedf5a3fba991563873d4cb65a067aa13f24"
      ],
      "author": {
        "name": "Timur Tabi",
        "email": "timur@freescale.com",
        "time": "Thu Apr 30 18:16:44 2009 +0000"
      },
      "committer": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Fri May 15 16:43:41 2009 +1000"
      },
      "message": "powerpc: Fix mktree build error on Mac OS X host\n\nThe mktree utility defines some variables as \"uint\", although this is not a\nstandard C type, and so cross-compiling on Mac OS X fails.  Change this to\n\"unsigned int\".\n\nSigned-off-by: Timur Tabi \u003ctimur@freescale.com\u003e\nAcked-by: Josh Boyer \u003cjwboyer@linux.vnet.ibm.com\u003e\nSigned-off-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\n"
    },
    {
      "commit": "5872144f64b34a5942f6b4acedc90b02de72c58b",
      "tree": "65ab10576155c05d7ac319197896a31721f61499",
      "parents": [
        "8cd995b6deedf98b7694ed32a786ee7f793d1eec"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Fri May 15 11:07:56 2009 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu May 14 23:55:12 2009 -0400"
      },
      "message": "tracing/filters: fix off-by-one bug\n\nWe should leave the last slot for the ending \u0027\\0\u0027.\n\n[ Impact: fix possible crash when the length of an operand is 128 ]\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4A0CDC8C.30602@cn.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "8cd995b6deedf98b7694ed32a786ee7f793d1eec",
      "tree": "6c423c242027eacf07018ae9e0488ef035337c68",
      "parents": [
        "1ec7c4849c214fc78b023230264399836ea3b245"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Fri May 15 11:07:27 2009 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu May 14 23:55:10 2009 -0400"
      },
      "message": "tracing/filters: add missing unlock in a failure path\n\n[ Impact: fix deadlock in a rare case we fail to allocate memory ]\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4A0CDC6F.7070200@cn.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "1ec7c4849c214fc78b023230264399836ea3b245",
      "tree": "52a53fcd4d7ea0cd94b65bd8c6bf20402e3356af",
      "parents": [
        "29a679754b1a2581ee456eada6c2de7ce95068bb"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu May 14 23:40:06 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu May 14 23:40:06 2009 -0400"
      },
      "message": "tracing: stop stack trace on first empty entry\n\nThe stack tracer stores eight entries in the ring buffer when an event\ntraces the stack. The output outputs all eight entries regardless of\nhow many entries were recorded.\n\nThis patch breaks out of the loop when a null entry is discovered.\n\n[ Impact: only print the stack that is recorded ]\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "29a679754b1a2581ee456eada6c2de7ce95068bb",
      "tree": "e647c89f3a293f4436ed285acc46180e6fe9a292",
      "parents": [
        "168b6b1d0594c7866caa73b12f3b8d91075695f2"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu May 14 23:19:09 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu May 14 23:19:09 2009 -0400"
      },
      "message": "x86/stacktrace: return 0 instead of -1 for stack ops\n\nIf we return -1 in the ops-\u003estack for the stacktrace saving, we end up\nbreaking out of the loop if the stack we are tracing is in the exception\nstack. This causes traces like:\n\n          \u003cidle\u003e-0     [002] 34263.745825: raise_softirq_irqoff \u003c-__blk_complete_request\n          \u003cidle\u003e-0     [002] 34263.745826:\n \u003c\u003d 0\n \u003c\u003d 0\n \u003c\u003d 0\n \u003c\u003d 0\n \u003c\u003d 0\n \u003c\u003d 0\n \u003c\u003d 0\n\nBy returning \"0\" instead, the irq stack is saved as well, and we see:\n\n          \u003cidle\u003e-0     [003]   883.280992: raise_softirq_irqoff \u003c-__hrtimer_star\nt_range_ns\n          \u003cidle\u003e-0     [003]   883.280992:\n \u003c\u003d hrtimer_start_range_ns\n \u003c\u003d tick_nohz_restart_sched_tick\n \u003c\u003d cpu_idle\n \u003c\u003d start_secondary\n \u003c\u003d\n \u003c\u003d 0\n \u003c\u003d 0\n\n[ Impact: record stacks from interrupts ]\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "bd67ce0f661482bd073f94144dd7e5a093ef012f",
      "tree": "19e14963b4a6d57a46ff0f8c62606eb1879a4add",
      "parents": [
        "c48f2295a96d12c1c57d4655890af9984d3c061c",
        "d8e2f53ac99f4ce7d63807a84f98d1b80df598cf"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 14 19:20:04 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 14 19:20:04 2009 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6:\n  cifs: fix error handling in parse_DFS_referrals\n"
    },
    {
      "commit": "c48f2295a96d12c1c57d4655890af9984d3c061c",
      "tree": "9d7e96fd4307a896763b4658f33640423f3d244c",
      "parents": [
        "5732c468495effd3089c1c893f3eba9a8a1d373c",
        "5d81b83d03eb32085c569854695e102dde7af544"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 14 19:19:43 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 14 19:19:43 2009 -0700"
      },
      "message": "Merge branch \u0027upstream\u0027 of git://ftp.linux-mips.org/pub/scm/upstream-linus\n\n* \u0027upstream\u0027 of git://ftp.linux-mips.org/pub/scm/upstream-linus: (38 commits)\n  MIPS: Sibyte: Fix locking in set_irq_affinity\n  MIPS: Use force_sig when handling address errors.\n  MIPS: Cavium: Add struct clocksource * argument to octeon_cvmcount_read()\n  MIPS: Rewrite \u003casm/div64.h\u003e to work with gcc 4.4.0.\n  MIPS: Fix highmem.\n  MIPS: Fix sign-extension bug in 32-bit kernel on 32-bit hardware.\n  MIPS: MSP71xx: Remove the RAMROOT functions\n  MIPS: Use -mno-check-zero-division\n  MIPS: Set compiler options only after the compiler prefix has ben set.\n  MIPS: IP27: Get rid of #ident.  Gcc 4.4.0 doesn\u0027t like it.\n  MIPS: uaccess: Switch lock annotations to might_fault().\n  MIPS: MSP71xx: Resolve use of non-existent GPIO routines in msp71xx reset\n  MIPS: MSP71xx: Resolve multiple definition of plat_timer_setup\n  MIPS: Make uaccess.h slightly more sparse friendly.\n  MIPS: Make access_ok() sideeffect proof.\n  MIPS: IP27: Fix clash with NMI_OFFSET from hardirq.h\n  MIPS: Alchemy: Timer build fix\n  MIPS: Kconfig: Delete duplicate definition of RWSEM_GENERIC_SPINLOCK.\n  MIPS: Cavium: Add support for 8k and 32k page sizes.\n  MIPS: TXx9: Fix possible overflow in clock calculations\n  ...\n"
    },
    {
      "commit": "5732c468495effd3089c1c893f3eba9a8a1d373c",
      "tree": "6cb79b79acde60efd82af296fd312569034d5a58",
      "parents": [
        "45d447406a19cbfd42720f066f156f4eb9d68801",
        "9f55684c2d9869e8cc53595a3fee679958511cfb"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 14 19:18:44 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 14 19:18:44 2009 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable:\n  Btrfs: Spelling fix in btrfs_lookup_first_block_group comments\n  Btrfs: make show_options result match actual option names\n  Btrfs: remove outdated comment in btrfs_ioctl_resize()\n  Btrfs: remove some WARN_ONs in the IO failure path\n  Btrfs: Don\u0027t loop forever on metadata IO failures\n  Btrfs: init inode ordered_data_close flag properly\n"
    }
  ],
  "next": "08d7b3d1edff84bd673d9e9ab36b5aa62e1ba903"
}
