)]}'
{
  "log": [
    {
      "commit": "32aaeffbd4a7457bf2f7448b33b5946ff2a960eb",
      "tree": "faf7ad871d87176423ff9ed1d1ba4d9c688fc23f",
      "parents": [
        "208bca0860406d16398145ddd950036a737c3c9d",
        "67b84999b1a8b1af5625b1eabe92146c5eb42932"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Nov 06 19:44:47 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Nov 06 19:44:47 2011 -0800"
      },
      "message": "Merge branch \u0027modsplit-Oct31_2011\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux\n\n* \u0027modsplit-Oct31_2011\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux: (230 commits)\n  Revert \"tracing: Include module.h in define_trace.h\"\n  irq: don\u0027t put module.h into irq.h for tracking irqgen modules.\n  bluetooth: macroize two small inlines to avoid module.h\n  ip_vs.h: fix implicit use of module_get/module_put from module.h\n  nf_conntrack.h: fix up fallout from implicit moduleparam.h presence\n  include: replace linux/module.h with \"struct module\" wherever possible\n  include: convert various register fcns to macros to avoid include chaining\n  crypto.h: remove unused crypto_tfm_alg_modname() inline\n  uwb.h: fix implicit use of asm/page.h for PAGE_SIZE\n  pm_runtime.h: explicitly requires notifier.h\n  linux/dmaengine.h: fix implicit use of bitmap.h and asm/page.h\n  miscdevice.h: fix up implicit use of lists and types\n  stop_machine.h: fix implicit use of smp.h for smp_processor_id\n  of: fix implicit use of errno.h in include/linux/of.h\n  of_platform.h: delete needless include \u003clinux/module.h\u003e\n  acpi: remove module.h include from platform/aclinux.h\n  miscdevice.h: delete unnecessary inclusion of module.h\n  device_cgroup.h: delete needless include \u003clinux/module.h\u003e\n  net: sch_generic remove redundant use of \u003clinux/module.h\u003e\n  net: inet_timewait_sock doesnt need \u003clinux/module.h\u003e\n  ...\n\nFix up trivial conflicts (other header files, and  removal of the ab3550 mfd driver) in\n - drivers/media/dvb/frontends/dibx000_common.c\n - drivers/media/video/{mt9m111.c,ov6650.c}\n - drivers/mfd/ab3550-core.c\n - include/linux/dmaengine.h\n"
    },
    {
      "commit": "208bca0860406d16398145ddd950036a737c3c9d",
      "tree": "7797a16c17d8bd155120126fa7976727fc6de013",
      "parents": [
        "6aad3738f6a79fd0ca480eaceefe064cc471f6eb",
        "0e175a1835ffc979e55787774e58ec79e41957d7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Nov 06 19:02:23 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Nov 06 19:02:23 2011 -0800"
      },
      "message": "Merge branch \u0027writeback-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/wfg/linux\n\n* \u0027writeback-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/wfg/linux:\n  writeback: Add a \u0027reason\u0027 to wb_writeback_work\n  writeback: send work item to queue_io, move_expired_inodes\n  writeback: trace event balance_dirty_pages\n  writeback: trace event bdi_dirty_ratelimit\n  writeback: fix ppc compile warnings on do_div(long long, unsigned long)\n  writeback: per-bdi background threshold\n  writeback: dirty position control - bdi reserve area\n  writeback: control dirty pause time\n  writeback: limit max dirty pause time\n  writeback: IO-less balance_dirty_pages()\n  writeback: per task dirty rate limit\n  writeback: stabilize bdi-\u003edirty_ratelimit\n  writeback: dirty rate control\n  writeback: add bg_threshold parameter to __bdi_update_bandwidth()\n  writeback: dirty position control\n  writeback: account per-bdi accumulated dirtied pages\n"
    },
    {
      "commit": "f1f8935a5c38a2c61e86a42bc971a2539eef2211",
      "tree": "694950045f2f5d89507d7206cf6595e09cdfbd2c",
      "parents": [
        "34116645d912f65d7eb4508a1db3c9d0e45facb1",
        "f2a44523b20f323e4aef7c16261d34d6f0a4bf06"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Nov 02 10:06:20 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Nov 02 10:06:20 2011 -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: (97 commits)\n  jbd2: Unify log messages in jbd2 code\n  jbd/jbd2: validate sb-\u003es_first in journal_get_superblock()\n  ext4: let ext4_ext_rm_leaf work with EXT_DEBUG defined\n  ext4: fix a syntax error in ext4_ext_insert_extent when debugging enabled\n  ext4: fix a typo in struct ext4_allocation_context\n  ext4: Don\u0027t normalize an falloc request if it can fit in 1 extent.\n  ext4: remove comments about extent mount option in ext4_new_inode()\n  ext4: let ext4_discard_partial_buffers handle unaligned range correctly\n  ext4: return ENOMEM if find_or_create_pages fails\n  ext4: move vars to local scope in ext4_discard_partial_page_buffers_no_lock()\n  ext4: Create helper function for EXT4_IO_END_UNWRITTEN and i_aiodio_unwritten\n  ext4: optimize locking for end_io extent conversion\n  ext4: remove unnecessary call to waitqueue_active()\n  ext4: Use correct locking for ext4_end_io_nolock()\n  ext4: fix race in xattr block allocation path\n  ext4: trace punch_hole correctly in ext4_ext_map_blocks\n  ext4: clean up AGGRESSIVE_TEST code\n  ext4: move variables to their scope\n  ext4: fix quota accounting during migration\n  ext4: migrate cleanup\n  ...\n"
    },
    {
      "commit": "4356f21d09283dc6d39a6f7287a65ddab61e2808",
      "tree": "34822a1662ea83291455834556a4fb5bf98ecd72",
      "parents": [
        "b9e84ac1536d35aee03b2601f19694949f0bd506"
      ],
      "author": {
        "name": "Minchan Kim",
        "email": "minchan.kim@gmail.com",
        "time": "Mon Oct 31 17:06:47 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 31 17:30:44 2011 -0700"
      },
      "message": "mm: change isolate mode from #define to bitwise type\n\nChange ISOLATE_XXX macro with bitwise isolate_mode_t type.  Normally,\nmacro isn\u0027t recommended as it\u0027s type-unsafe and making debugging harder as\nsymbol cannot be passed throught to the debugger.\n\nQuote from Johannes\n\" Hmm, it would probably be cleaner to fully convert the isolation mode\ninto independent flags.  INACTIVE, ACTIVE, BOTH is currently a\ntri-state among flags, which is a bit ugly.\"\n\nThis patch moves isolate mode from swap.h to mmzone.h by memcontrol.h\n\nSigned-off-by: Minchan Kim \u003cminchan.kim@gmail.com\u003e\nCc: Johannes Weiner \u003channes@cmpxchg.org\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Mel Gorman \u003cmgorman@suse.de\u003e\nCc: Rik van Riel \u003criel@redhat.com\u003e\nCc: Michal Hocko \u003cmhocko@suse.cz\u003e\nCc: Andrea Arcangeli \u003caarcange@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "67b84999b1a8b1af5625b1eabe92146c5eb42932",
      "tree": "5e746daf684ba699b02a489c75a8d501dddbc6b0",
      "parents": [
        "ec53cf23c0ddb0c29950b9a4ac46964c4c6c6c2f"
      ],
      "author": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Sun Sep 18 13:36:07 2011 -0400"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Mon Oct 31 19:32:35 2011 -0400"
      },
      "message": "Revert \"tracing: Include module.h in define_trace.h\"\n\nThis reverts commit 3a9f987b3141f086de27832514aad9f50a53f754.\n\nWith all the files that are real modules now having module.h\nexplicitly called out for inclusion, and no reliance on any\nimplicit presence of module.h assumed, we should no longer\nneed this workaround.\n\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "de47725421ad5627a5c905f4e40bb844ebc06d29",
      "tree": "bc23b0405d4a79dcc866a8b2877f128ee0ea9ffc",
      "parents": [
        "eb5589a8f0dab7e29021344228856339e6a1249c"
      ],
      "author": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Thu May 26 13:46:22 2011 -0400"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Mon Oct 31 19:32:32 2011 -0400"
      },
      "message": "include: replace linux/module.h with \"struct module\" wherever possible\n\nThe \u003clinux/module.h\u003e pretty much brings in the kitchen sink along\nwith it, so it should be avoided wherever reasonably possible in\nterms of being included from other commonly used \u003clinux/something.h\u003e\nfiles, as it results in a measureable increase on compile times.\n\nThe worst culprit was probably device.h since it is used everywhere.\nThis file also had an implicit dependency/usage of mutex.h which was\nmasked by module.h, and is also fixed here at the same time.\n\nThere are over a dozen other headers that simply declare the\nstruct instead of pulling in the whole file, so follow their lead\nand simply make it a few more.\n\nMost of the implicit dependencies on module.h being present by\nthese headers pulling it in have been now weeded out, so we can\nfinally make this change with hopefully minimal breakage.\n\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "0e175a1835ffc979e55787774e58ec79e41957d7",
      "tree": "6ec4b65a8de4e9d1c12d26a1079079ed81d79450",
      "parents": [
        "ad4e38dd6a33bb3a4882c487d7abe621e583b982"
      ],
      "author": {
        "name": "Curt Wohlgemuth",
        "email": "curtw@google.com",
        "time": "Fri Oct 07 21:54:10 2011 -0600"
      },
      "committer": {
        "name": "Wu Fengguang",
        "email": "fengguang.wu@intel.com",
        "time": "Mon Oct 31 00:33:36 2011 +0800"
      },
      "message": "writeback: Add a \u0027reason\u0027 to wb_writeback_work\n\nThis creates a new \u0027reason\u0027 field in a wb_writeback_work\nstructure, which unambiguously identifies who initiates\nwriteback activity.  A \u0027wb_reason\u0027 enumeration has been\nadded to writeback.h, to enumerate the possible reasons.\n\nThe \u0027writeback_work_class\u0027 and tracepoint event class and\n\u0027writeback_queue_io\u0027 tracepoints are updated to include the\nsymbolic \u0027reason\u0027 in all trace events.\n\nAnd the \u0027writeback_inodes_sbXXX\u0027 family of routines has had\na wb_stats parameter added to them, so callers can specify\nwhy writeback is being started.\n\nAcked-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Curt Wohlgemuth \u003ccurtw@google.com\u003e\nSigned-off-by: Wu Fengguang \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "ad4e38dd6a33bb3a4882c487d7abe621e583b982",
      "tree": "5b78b8929ade5372b2e24d4c1793f8cb39962146",
      "parents": [
        "ece13ac31bbe492d940ba0bc4ade2ae1521f46a5"
      ],
      "author": {
        "name": "Curt Wohlgemuth",
        "email": "curtw@google.com",
        "time": "Fri Oct 07 21:51:56 2011 -0600"
      },
      "committer": {
        "name": "Wu Fengguang",
        "email": "fengguang.wu@intel.com",
        "time": "Mon Oct 31 00:33:27 2011 +0800"
      },
      "message": "writeback: send work item to queue_io, move_expired_inodes\n\nInstead of sending -\u003eolder_than_this to queue_io() and\nmove_expired_inodes(), send the entire wb_writeback_work\nstructure.  There are other fields of a work item that are\nuseful in these routines and in tracepoints.\n\nAcked-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Curt Wohlgemuth \u003ccurtw@google.com\u003e\nSigned-off-by: Wu Fengguang \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "ece13ac31bbe492d940ba0bc4ade2ae1521f46a5",
      "tree": "2bfddab0f62999bf595a72913b79cabafbad0e40",
      "parents": [
        "b48c104d2211b0ac881a71f5f76a3816225f8111"
      ],
      "author": {
        "name": "Wu Fengguang",
        "email": "fengguang.wu@intel.com",
        "time": "Sun Aug 29 23:33:20 2010 -0600"
      },
      "committer": {
        "name": "Wu Fengguang",
        "email": "fengguang.wu@intel.com",
        "time": "Mon Oct 31 00:29:38 2011 +0800"
      },
      "message": "writeback: trace event balance_dirty_pages\n\nUseful for analyzing the dynamics of the throttling algorithms and\ndebugging user reported problems.\n\nSigned-off-by: Wu Fengguang \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "b48c104d2211b0ac881a71f5f76a3816225f8111",
      "tree": "b947f3fd4c8b49ee12d516f3eb520209c577387b",
      "parents": [
        "50657fc4dfa7e345a1008f7c1de0bf930bbecca9"
      ],
      "author": {
        "name": "Wu Fengguang",
        "email": "fengguang.wu@intel.com",
        "time": "Wed Mar 02 17:22:49 2011 -0600"
      },
      "committer": {
        "name": "Wu Fengguang",
        "email": "fengguang.wu@intel.com",
        "time": "Mon Oct 31 00:29:21 2011 +0800"
      },
      "message": "writeback: trace event bdi_dirty_ratelimit\n\nIt helps understand how various throttle bandwidths are updated.\n\nSigned-off-by: Wu Fengguang \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "68d99b2c8efcb6ed3807a55569300c53b5f88be5",
      "tree": "f189c8f2132d3668a2f0e503f5c3f8695b26a1c8",
      "parents": [
        "0e59e7e7feb5a12938fbf9135147eeda3238c6c4",
        "8128c9f21509f9a8b6da94ac432d845dda458406"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 28 14:25:01 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 28 14:25:01 2011 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound: (549 commits)\n  ALSA: hda - Fix ADC input-amp handling for Cx20549 codec\n  ALSA: hda - Keep EAPD turned on for old Conexant chips\n  ALSA: hda/realtek - Fix missing volume controls with ALC260\n  ASoC: wm8940: Properly set codec-\u003edapm.bias_level\n  ALSA: hda - Fix pin-config for ASUS W90V\n  ALSA: hda - Fix surround/CLFE headphone and speaker pins order\n  ALSA: hda - Fix typo\n  ALSA: Update the sound git tree URL\n  ALSA: HDA: Add new revision for ALC662\n  ASoC: max98095: Convert codec-\u003ehw_write to snd_soc_write\n  ASoC: keep pointer to resource so it can be freed\n  ASoC: sgtl5000: Fix wrong mask in some snd_soc_update_bits calls\n  ASoC: wm8996: Fix wrong mask for setting WM8996_AIF_CLOCKING_2\n  ASoC: da7210: Add support for line out and DAC\n  ASoC: da7210: Add support for DAPM\n  ALSA: hda/realtek - Fix DAC assignments of multiple speakers\n  ASoC: Use SGTL5000_LINREG_VDDD_MASK instead of hardcoded mask value\n  ASoC: Set sgtl5000-\u003eldo in ldo_regulator_register\n  ASoC: wm8996: Use SND_SOC_DAPM_AIF_OUT for AIF2 Capture\n  ASoC: wm8994: Use SND_SOC_DAPM_AIF_OUT for AIF3 Capture\n  ...\n"
    },
    {
      "commit": "6f91bc5fda82d2c49b4f7fb29424cf6a3c7574bc",
      "tree": "e5670070f007c4ad5300e93a4e36fa9a802e2bd9",
      "parents": [
        "446066724c3629664e29942a00b0aee0d6b1663a"
      ],
      "author": {
        "name": "Eric Gouriou",
        "email": "egouriou@google.com",
        "time": "Thu Oct 27 11:43:23 2011 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Thu Oct 27 11:43:23 2011 -0400"
      },
      "message": "ext4: optimize ext4_ext_convert_to_initialized()\n\nThis patch introduces a fast path in ext4_ext_convert_to_initialized()\nfor the case when the conversion can be performed by transferring\nthe newly initialized blocks from the uninitialized extent into\nan adjacent initialized extent. Doing so removes the expensive\ninvocations of memmove() which occur during extent insertion and\nthe subsequent merge.\n\nIn practice this should be the common case for clients performing\nappend writes into files pre-allocated via\nfallocate(FALLOC_FL_KEEP_SIZE). In such a workload performed via\ndirect IO and when using a suboptimal implementation of memmove()\n(x86_64 prior to the 2.6.39 rewrite), this patch reduces kernel CPU\nconsumption by 32%.\n\nTwo new trace points are added to ext4_ext_convert_to_initialized()\nto offer visibility into its operations. No exit trace point has\nbeen added due to the multiplicity of return points. This can be\nrevisited once the upstream cleanup is backported.\n\nSigned-off-by: Eric Gouriou \u003cegouriou@google.com\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "8a4a8918ed6e4a361f4df19f199bbc2d0a89a46c",
      "tree": "d76974986aaaa8549baf2d6a106fa6cb60d64b88",
      "parents": [
        "8686a0e200419322654a75155e2e6f80346a1297",
        "540f41edc15473ca3b2876de72646546ae101374"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 26 17:08:43 2011 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 26 17:08:43 2011 +0200"
      },
      "message": "Merge branch \u0027sched-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\n* \u0027sched-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (46 commits)\n  llist: Add back llist_add_batch() and llist_del_first() prototypes\n  sched: Don\u0027t use tasklist_lock for debug prints\n  sched: Warn on rt throttling\n  sched: Unify the -\u003ecpus_allowed mask copy\n  sched: Wrap scheduler p-\u003ecpus_allowed access\n  sched: Request for idle balance during nohz idle load balance\n  sched: Use resched IPI to kick off the nohz idle balance\n  sched: Fix idle_cpu()\n  llist: Remove cpu_relax() usage in cmpxchg loops\n  sched: Convert to struct llist\n  llist: Add llist_next()\n  irq_work: Use llist in the struct irq_work logic\n  llist: Return whether list is empty before adding in llist_add()\n  llist: Move cpu_relax() to after the cmpxchg()\n  llist: Remove the platform-dependent NMI checks\n  llist: Make some llist functions inline\n  sched, tracing: Show PREEMPT_ACTIVE state in trace_sched_switch\n  sched: Remove redundant test in check_preempt_tick()\n  sched: Add documentation for bandwidth control\n  sched: Return unused runtime on group dequeue\n  ...\n"
    },
    {
      "commit": "7115e3fcf45514db7525a05365b10454ff7f345e",
      "tree": "17450e6337d559cc35dae6a7a73abab01ac63f00",
      "parents": [
        "1f6e05171bb5cc32a4d6437ab2269fc21d169ca7",
        "c752d04066a36ae30b29795f3fa3f536292c1f8c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 26 17:03:38 2011 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 26 17:03:38 2011 +0200"
      },
      "message": "Merge branch \u0027perf-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\n* \u0027perf-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (121 commits)\n  perf symbols: Increase symbol KSYM_NAME_LEN size\n  perf hists browser: Refuse \u0027a\u0027 hotkey on non symbolic views\n  perf ui browser: Use libslang to read keys\n  perf tools: Fix tracing info recording\n  perf hists browser: Elide DSO column when it is set to just one DSO, ditto for threads\n  perf hists: Don\u0027t consider filtered entries when calculating column widths\n  perf hists: Don\u0027t decay total_period for filtered entries\n  perf hists browser: Honour symbol_conf.show_{nr_samples,total_period}\n  perf hists browser: Do not exit on tab key with single event\n  perf annotate browser: Don\u0027t change selection line when returning from callq\n  perf tools: handle endianness of feature bitmap\n  perf tools: Add prelink suggestion to dso update message\n  perf script: Fix unknown feature comment\n  perf hists browser: Apply the dso and thread filters when merging new batches\n  perf hists: Move the dso and thread filters from hist_browser\n  perf ui browser: Honour the xterm colors\n  perf top tui: Give color hints just on the percentage, like on --stdio\n  perf ui browser: Make the colors configurable and change the defaults\n  perf tui: Remove unneeded call to newtCls on startup\n  perf hists: Don\u0027t format the percentage on hist_entry__snprintf\n  ...\n\nFix up conflicts in arch/x86/kernel/kprobes.c manually.\n\nIngo\u0027s tree did the insane \"add volatile to const array\", which just\ndoesn\u0027t make sense (\"volatile const\"?).  But we could remove the const\n*and* make the array volatile to make doubly sure that gcc doesn\u0027t\noptimize it away..\n\nAlso fix up kernel/trace/ring_buffer.c non-data-conflicts manually: the\nreader_lock has been turned into a raw lock by the core locking merge,\nand there was a new user of it introduced in this perf core merge.  Make\nsure that new use also uses the raw accessor functions.\n"
    },
    {
      "commit": "19b4a8d520a6e0176dd52aaa429261ad4fcaa545",
      "tree": "6dcf5a780718fc50b9cd79cc803daa7c7e080a02",
      "parents": [
        "3cfef9524677a4ecb392d6fbffe6ebce6302f1d4",
        "048b718029033af117870d3da47da12995be14a3"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 26 16:26:53 2011 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 26 16:26:53 2011 +0200"
      },
      "message": "Merge branch \u0027core-rcu-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\n* \u0027core-rcu-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (45 commits)\n  rcu: Move propagation of -\u003ecompleted from rcu_start_gp() to rcu_report_qs_rsp()\n  rcu: Remove rcu_needs_cpu_flush() to avoid false quiescent states\n  rcu: Wire up RCU_BOOST_PRIO for rcutree\n  rcu: Make rcu_torture_boost() exit loops at end of test\n  rcu: Make rcu_torture_fqs() exit loops at end of test\n  rcu: Permit rt_mutex_unlock() with irqs disabled\n  rcu: Avoid having just-onlined CPU resched itself when RCU is idle\n  rcu: Suppress NMI backtraces when stall ends before dump\n  rcu: Prohibit grace periods during early boot\n  rcu: Simplify unboosting checks\n  rcu: Prevent early boot set_need_resched() from __rcu_pending()\n  rcu: Dump local stack if cannot dump all CPUs\u0027 stacks\n  rcu: Move __rcu_read_unlock()\u0027s barrier() within if-statement\n  rcu: Improve rcu_assign_pointer() and RCU_INIT_POINTER() documentation\n  rcu: Make rcu_assign_pointer() unconditionally insert a memory barrier\n  rcu: Make rcu_implicit_dynticks_qs() locals be correct size\n  rcu: Eliminate in_irq() checks in rcu_enter_nohz()\n  nohz: Remove nohz_cpu_mask\n  rcu: Document interpretation of RCU-lockdep splats\n  rcu: Allow rcutorture\u0027s stat_interval parameter to be changed at runtime\n  ...\n"
    },
    {
      "commit": "e33bae14fd8da449d735552d78e6dd33ece0458c",
      "tree": "048c062c47f7bfdb0ea8ad19c5b5849a58ff3022",
      "parents": [
        "7670c7010c7b367ca40c3aba02afb36149764a6e",
        "14211d026dad4641d4dffd7a4c520bcaa8fd4a65"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 26 14:20:53 2011 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 26 14:20:53 2011 +0200"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://github.com/ericvh/linux\n\n* \u0027for-linus\u0027 of git://github.com/ericvh/linux:\n  9p: fix 9p.txt to advertise msize instead of maxdata\n  net/9p: Convert net/9p protocol dumps to tracepoints\n  fs/9p: change an int to unsigned int\n  fs/9p: Cleanup option parsing in 9p\n  9p: move dereference after NULL check\n  fs/9p: inode file operation is properly initialized init_special_inode\n  fs/9p: Update zero-copy implementation in 9p\n"
    },
    {
      "commit": "7e0bb71e75020348bee523720a0c2f04cc72f540",
      "tree": "1a22d65bbce34e8cc0f82c543c9486ffb58332f7",
      "parents": [
        "b9e2780d576a010d4aba1e69f247170bf3718d6b",
        "0ab1e79b825a5cd8aeb3b34d89c9a89dea900056"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 25 15:18:39 2011 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 25 15:18:39 2011 +0200"
      },
      "message": "Merge branch \u0027pm-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm\n\n* \u0027pm-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (63 commits)\n  PM / Clocks: Remove redundant NULL checks before kfree()\n  PM / Documentation: Update docs about suspend and CPU hotplug\n  ACPI / PM: Add Sony VGN-FW21E to nonvs blacklist.\n  ARM: mach-shmobile: sh7372 A4R support (v4)\n  ARM: mach-shmobile: sh7372 A3SP support (v4)\n  PM / Sleep: Mark devices involved in wakeup signaling during suspend\n  PM / Hibernate: Improve performance of LZO/plain hibernation, checksum image\n  PM / Hibernate: Do not initialize static and extern variables to 0\n  PM / Freezer: Make fake_signal_wake_up() wake TASK_KILLABLE tasks too\n  PM / Hibernate: Add resumedelay kernel param in addition to resumewait\n  MAINTAINERS: Update linux-pm list address\n  PM / ACPI: Blacklist Vaio VGN-FW520F machine known to require acpi_sleep\u003dnonvs\n  PM / ACPI: Blacklist Sony Vaio known to require acpi_sleep\u003dnonvs\n  PM / Hibernate: Add resumewait param to support MMC-like devices as resume file\n  PM / Hibernate: Fix typo in a kerneldoc comment\n  PM / Hibernate: Freeze kernel threads after preallocating memory\n  PM: Update the policy on default wakeup settings\n  PM / VT: Cleanup #if defined uglyness and fix compile error\n  PM / Suspend: Off by one in pm_suspend()\n  PM / Hibernate: Include storage keys in hibernation image on s390\n  ...\n"
    },
    {
      "commit": "4e7e2a2008f5d8c49791c412849d5b0232d39bb3",
      "tree": "32c3fa2d5cefb388689cb795225022769bf7b413",
      "parents": [
        "8a9ea3237e7eb5c25f09e429ad242ae5a3d5ea22",
        "7cccbdc84487616c3dbe493b04bfa1f362f4bc56"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 25 13:57:45 2011 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 25 13:57:45 2011 +0200"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://opensource.wolfsonmicro.com/regmap\n\n* \u0027for-linus\u0027 of git://opensource.wolfsonmicro.com/regmap: (62 commits)\n  mfd: Enable rbtree cache for wm831x devices\n  regmap: Support some block operations on cached devices\n  regmap: Allow caches for devices with no defaults\n  regmap: Ensure rbtree syncs registers set to zero properly\n  regmap: Allow rbtree to cache zero default values\n  regmap: Warn on raw I/O as well as bulk reads that bypass cache\n  regmap: Return a sensible error code if we fail to read the cache\n  regmap: Use bsearch() to search the register defaults\n  regmap: Fix doc comment\n  regmap: Optimize the lookup path to use binary search\n  regmap: Ensure we scream if we enable cache bypass/only at the same time\n  regmap: Implement regcache_cache_bypass helper function\n  regmap: Save/restore the bypass state upon syncing\n  regmap: Lock the sync path, ensure we use the lockless _regmap_write()\n  regmap: Fix apostrophe usage\n  regmap: Make _regmap_write() global\n  regmap: Fix lock used for regcache_cache_only()\n  regmap: Grab the lock in regcache_cache_only()\n  regmap: Modify map-\u003ecache_bypass directly\n  regmap: Fix regcache_sync generic implementation\n  ...\n"
    },
    {
      "commit": "348b59012e5c6402741d067cf6eeeb6271999d06",
      "tree": "38041cac7af6f020fa2756eded6a2d9f31132ffc",
      "parents": [
        "ef6b0807e2c986d5f1cb878e1b32a7cf4c32b4c8"
      ],
      "author": {
        "name": "Aneesh Kumar K.V",
        "email": "aneesh.kumar@linux.vnet.ibm.com",
        "time": "Sun Aug 07 00:46:59 2011 +0530"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Mon Oct 24 11:13:12 2011 -0500"
      },
      "message": "net/9p: Convert net/9p protocol dumps to tracepoints\n\nThis helps in more control over debugging.\nroot@qemu-img-64:~# ls /pass/123\nls: cannot access /pass/123: No such file or directory\nroot@qemu-img-64:~# cat /sys/kernel/debug/tracing/trace\n# tracer: nop\n#\n#           TASK-PID    CPU#    TIMESTAMP  FUNCTION\n#              | |       |          |         |\n              ls-1536  [001]    70.928584: 9p_protocol_dump: clnt 18446612132784021504 P9_TWALK(tag \u003d 1)\n000: 16 00 00 00 6e 01 00 01 00 00 00 02 00 00 00 01\n010: 00 03 00 31 32 33 00 00 00 ff ff ff ff 00 00 00\n\n              ls-1536  [001]    70.928587: \u003cstack trace\u003e\n \u003d\u003e trace_9p_protocol_dump\n \u003d\u003e p9pdu_finalize\n \u003d\u003e p9_client_rpc\n \u003d\u003e p9_client_walk\n \u003d\u003e v9fs_vfs_lookup\n \u003d\u003e d_alloc_and_lookup\n \u003d\u003e walk_component\n \u003d\u003e path_lookupat\n              ls-1536  [000]    70.929696: 9p_protocol_dump: clnt 18446612132784021504 P9_RLERROR(tag \u003d 1)\n000: 0b 00 00 00 07 01 00 02 00 00 00 4e 03 00 02 00\n010: 00 00 00 00 03 00 02 00 00 00 00 00 ff 43 00 00\n\n              ls-1536  [000]    70.929697: \u003cstack trace\u003e\n \u003d\u003e trace_9p_protocol_dump\n \u003d\u003e p9_client_rpc\n \u003d\u003e p9_client_walk\n \u003d\u003e v9fs_vfs_lookup\n \u003d\u003e d_alloc_and_lookup\n \u003d\u003e walk_component\n \u003d\u003e path_lookupat\n \u003d\u003e do_path_lookup\n\nSigned-off-by: Aneesh Kumar K.V \u003caneesh.kumar@linux.vnet.ibm.com\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "d727b60659a1173eb4142a5fc521ce67c28b34e1",
      "tree": "793d0fc86ecf98331024db5c86bc271cc72aa2d2",
      "parents": [
        "3ee72ca99288f1de95ec9c570e43f531c8799f06",
        "2a5306cc5f383b0e7414c75e458111afd4a563a4"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Oct 07 23:16:55 2011 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Oct 07 23:16:55 2011 +0200"
      },
      "message": "Merge branch \u0027pm-runtime\u0027 into pm-for-linus\n\n* pm-runtime:\n  PM / Tracing: build rpm-traces.c only if CONFIG_PM_RUNTIME is set\n  PM / Runtime: Replace dev_dbg() with trace_rpm_*()\n  PM / Runtime: Introduce trace points for tracing rpm_* functions\n  PM / Runtime: Don\u0027t run callbacks under lock for power.irq_safe set\n  USB: Add wakeup info to debugging messages\n  PM / Runtime: pm_runtime_idle() can be called in atomic context\n  PM / Runtime: Add macro to test for runtime PM events\n  PM / Runtime: Add might_sleep() to runtime PM functions\n"
    },
    {
      "commit": "9d014020234525ae100879d71078a4bcb4849195",
      "tree": "a0d6c0776670cb876e5a8118a4e6ed28d8f51cbc",
      "parents": [
        "92e51938f5d005026ba4bb5b1fae5a86dc195b86",
        "976d167615b64e14bc1491ca51d424e2ba9a5e84"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Oct 06 12:48:57 2011 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Oct 06 12:49:21 2011 +0200"
      },
      "message": "Merge commit \u0027v3.1-rc9\u0027 into perf/core\n\nMerge reason: pick up latest fixes.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "22f92bacbeea24b20e447444c28e7cad9f1ac3f8",
      "tree": "5c3f2346804a186aa2d954f078fd2f4d44bcc26e",
      "parents": [
        "557ab425429a5123d37f412ce3e6d6137cb621f8",
        "0f86267b79bc6e357b8606077c7f70239045ea9c"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Oct 04 11:08:16 2011 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Oct 04 11:09:08 2011 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into sched/core\n\nMerge reason: pick up the latest fixes.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "92e51938f5d005026ba4bb5b1fae5a86dc195b86",
      "tree": "d3f4db1d6de383ab36efa0147e44ddc8608a8b53",
      "parents": [
        "87ffef79ab7562ca4a1f6f22ed7ddef1c434bc24"
      ],
      "author": {
        "name": "Andrew Vagin",
        "email": "avagin@openvz.org",
        "time": "Mon Sep 26 19:55:32 2011 +0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Oct 04 11:07:54 2011 +0200"
      },
      "message": "perf: Fix counter of ftrace events\n\nEach event adds some points to its counters. By default it adds 1,\nand a number of points may be transmited in event\u0027s parameters.\n\nE.g. sched:sched_stat_runtime adds how long process has been running.\n\nBut this functionality was broken by v2.6.31-rc5-392-gf413cdb\nand now the event\u0027s parameters doesn\u0027t affect on a number of points.\n\nTP_perf_assign isn\u0027t defined, so __perf_count(c) isn\u0027t executed and\n__count is always equal to 1.\n\nSigned-off-by: Andrew Vagin \u003cavagin@openvz.org\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1317052535-1765247-2-git-send-email-avagin@openvz.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "143dfe8611a63030ce0c79419dc362f7838be557",
      "tree": "626b823d86fbb947296fc6c7fe2be324a85f3b5c",
      "parents": [
        "9d823e8f6b1b7b39f952d7d1795f29162143a433"
      ],
      "author": {
        "name": "Wu Fengguang",
        "email": "fengguang.wu@intel.com",
        "time": "Fri Aug 27 18:45:12 2010 -0600"
      },
      "committer": {
        "name": "Wu Fengguang",
        "email": "fengguang.wu@intel.com",
        "time": "Mon Oct 03 21:08:57 2011 +0800"
      },
      "message": "writeback: IO-less balance_dirty_pages()\n\nAs proposed by Chris, Dave and Jan, don\u0027t start foreground writeback IO\ninside balance_dirty_pages(). Instead, simply let it idle sleep for some\ntime to throttle the dirtying task. In the mean while, kick off the\nper-bdi flusher thread to do background writeback IO.\n\nRATIONALS\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n\n- disk seeks on concurrent writeback of multiple inodes (Dave Chinner)\n\n  If every thread doing writes and being throttled start foreground\n  writeback, it leads to N IO submitters from at least N different\n  inodes at the same time, end up with N different sets of IO being\n  issued with potentially zero locality to each other, resulting in\n  much lower elevator sort/merge efficiency and hence we seek the disk\n  all over the place to service the different sets of IO.\n  OTOH, if there is only one submission thread, it doesn\u0027t jump between\n  inodes in the same way when congestion clears - it keeps writing to\n  the same inode, resulting in large related chunks of sequential IOs\n  being issued to the disk. This is more efficient than the above\n  foreground writeback because the elevator works better and the disk\n  seeks less.\n\n- lock contention and cache bouncing on concurrent IO submitters (Dave Chinner)\n\n  With this patchset, the fs_mark benchmark on a 12-drive software RAID0 goes\n  from CPU bound to IO bound, freeing \"3-4 CPUs worth of spinlock contention\".\n\n  * \"CPU usage has dropped by ~55%\", \"it certainly appears that most of\n    the CPU time saving comes from the removal of contention on the\n    inode_wb_list_lock\" (IMHO at least 10% comes from the reduction of\n    cacheline bouncing, because the new code is able to call much less\n    frequently into balance_dirty_pages() and hence access the global\n    page states)\n\n  * the user space \"App overhead\" is reduced by 20%, by avoiding the\n    cacheline pollution by the complex writeback code path\n\n  * \"for a ~5% throughput reduction\", \"the number of write IOs have\n    dropped by ~25%\", and the elapsed time reduced from 41:42.17 to\n    40:53.23.\n\n  * On a simple test of 100 dd, it reduces the CPU %system time from 30% to 3%,\n    and improves IO throughput from 38MB/s to 42MB/s.\n\n- IO size too small for fast arrays and too large for slow USB sticks\n\n  The write_chunk used by current balance_dirty_pages() cannot be\n  directly set to some large value (eg. 128MB) for better IO efficiency.\n  Because it could lead to more than 1 second user perceivable stalls.\n  Even the current 4MB write size may be too large for slow USB sticks.\n  The fact that balance_dirty_pages() starts IO on itself couples the\n  IO size to wait time, which makes it hard to do suitable IO size while\n  keeping the wait time under control.\n\n  Now it\u0027s possible to increase writeback chunk size proportional to the\n  disk bandwidth. In a simple test of 50 dd\u0027s on XFS, 1-HDD, 3GB ram,\n  the larger writeback size dramatically reduces the seek count to 1/10\n  (far beyond my expectation) and improves the write throughput by 24%.\n\n- long block time in balance_dirty_pages() hurts desktop responsiveness\n\n  Many of us may have the experience: it often takes a couple of seconds\n  or even long time to stop a heavy writing dd/cp/tar command with\n  Ctrl-C or \"kill -9\".\n\n- IO pipeline broken by bumpy write() progress\n\n  There are a broad class of \"loop {read(buf); write(buf);}\" applications\n  whose read() pipeline will be under-utilized or even come to a stop if\n  the write()s have long latencies _or_ don\u0027t progress in a constant rate.\n  The current threshold based throttling inherently transfers the large\n  low level IO completion fluctuations to bumpy application write()s,\n  and further deteriorates with increasing number of dirtiers and/or bdi\u0027s.\n\n  For example, when doing 50 dd\u0027s + 1 remote rsync to an XFS partition,\n  the rsync progresses very bumpy in legacy kernel, and throughput is\n  improved by 67% by this patchset. (plus the larger write chunk size,\n  it will be 93% speedup).\n\n  The new rate based throttling can support 1000+ dd\u0027s with excellent\n  smoothness, low latency and low overheads.\n\nFor the above reasons, it\u0027s much better to do IO-less and low latency\npauses in balance_dirty_pages().\n\nJan Kara, Dave Chinner and me explored the scheme to let\nbalance_dirty_pages() wait for enough writeback IO completions to\nsafeguard the dirty limit. However it\u0027s found to have two problems:\n\n- in large NUMA systems, the per-cpu counters may have big accounting\n  errors, leading to big throttle wait time and jitters.\n\n- NFS may kill large amount of unstable pages with one single COMMIT.\n  Because NFS server serves COMMIT with expensive fsync() IOs, it is\n  desirable to delay and reduce the number of COMMITs. So it\u0027s not\n  likely to optimize away such kind of bursty IO completions, and the\n  resulted large (and tiny) stall times in IO completion based throttling.\n\nSo here is a pause time oriented approach, which tries to control the\npause time in each balance_dirty_pages() invocations, by controlling\nthe number of pages dirtied before calling balance_dirty_pages(), for\nsmooth and efficient dirty throttling:\n\n- avoid useless (eg. zero pause time) balance_dirty_pages() calls\n- avoid too small pause time (less than   4ms, which burns CPU power)\n- avoid too large pause time (more than 200ms, which hurts responsiveness)\n- avoid big fluctuations of pause times\n\nIt can control pause times at will. The default policy (in a followup\npatch) will be to do ~10ms pauses in 1-dd case, and increase to ~100ms\nin 1000-dd case.\n\nBEHAVIOR CHANGE\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n\n(1) dirty threshold\n\nUsers will notice that the applications will get throttled once crossing\nthe global (background + dirty)/2\u003d15% threshold, and then balanced around\n17.5%. Before patch, the behavior is to just throttle it at 20% dirtyable\nmemory in 1-dd case.\n\nSince the task will be soft throttled earlier than before, it may be\nperceived by end users as performance \"slow down\" if his application\nhappens to dirty more than 15% dirtyable memory.\n\n(2) smoothness/responsiveness\n\nUsers will notice a more responsive system during heavy writeback.\n\"killall dd\" will take effect instantly.\n\nSigned-off-by: Wu Fengguang \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "048b718029033af117870d3da47da12995be14a3",
      "tree": "b3d4bf5219cd6543c35cb79d1aa08ae98cf2a8af",
      "parents": [
        "47ea91b4052d9e94b9dca5d7a3d947fbebd07ba9",
        "afe24b122eb6edb5f1cb942570ac8d766105c7fc"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Oct 01 14:21:36 2011 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Oct 01 14:21:36 2011 +0200"
      },
      "message": "Merge branch \u0027rcu/next\u0027 of git://github.com/paulmckrcu/linux into core/rcu\n"
    },
    {
      "commit": "d4c08f2ac311a360230eef7e5395b0ec8d8f0670",
      "tree": "06e425b8153e076fbe43b037cf4497ac50afddb7",
      "parents": [
        "965a002b4f1a458c5dcb334ec29f48a0046faa25"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paul.mckenney@linaro.org",
        "time": "Sat Jun 25 06:36:56 2011 -0700"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Wed Sep 28 21:38:21 2011 -0700"
      },
      "message": "rcu: Add grace-period, quiescent-state, and call_rcu trace events\n\nAdd trace events to record grace-period start and end, quiescent states,\nCPUs noticing grace-period start and end, grace-period initialization,\ncall_rcu() invocation, tasks blocking in RCU read-side critical sections,\ntasks exiting those same critical sections, force_quiescent_state()\ndetection of dyntick-idle and offline CPUs, CPUs entering and leaving\ndyntick-idle mode (except from NMIs), CPUs coming online and going\noffline, and CPUs being kicked for staying in dyntick-idle mode for too\nlong (as in many weeks, even on 32-bit systems).\n\nSigned-off-by: Paul E. McKenney \u003cpaul.mckenney@linaro.org\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n\nrcu: Add the rcu flavor to callback trace events\n\nThe earlier trace events for registering RCU callbacks and for invoking\nthem did not include the RCU flavor (rcu_bh, rcu_preempt, or rcu_sched).\nThis commit adds the RCU flavor to those trace events.\n\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "385680a9487d2f85382ad6d74e2a15837e47bfd9",
      "tree": "68809ef9cdfeee43b7c08152bfdbc45d2c0d6489",
      "parents": [
        "eab0993c7ba5c7d9b3613d6037e0f31f0ccbe181"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paul.mckenney@linaro.org",
        "time": "Tue Jun 21 22:43:26 2011 -0700"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Wed Sep 28 21:38:19 2011 -0700"
      },
      "message": "rcu: Add event-trace markers to TREE_RCU kthreads\n\nAdd event-trace markers to TREE_RCU kthreads to allow including these\nkthread\u0027s CPU time in the utilization calculations.\n\nSigned-off-by: Paul E. McKenney \u003cpaul.mckenney@linaro.org\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "72fe701b70e6ced35d734b676c13efbc8fc769a9",
      "tree": "87bece8406b18e27409a33355c384c9f759915ae",
      "parents": [
        "e99033c5c160f1f247c665923a66acec693a967c"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paul.mckenney@linaro.org",
        "time": "Tue Jun 21 01:14:54 2011 -0700"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Wed Sep 28 21:38:15 2011 -0700"
      },
      "message": "rcu: Add RCU type to callback-invocation tracing\n\nAdd a string to the rcu_batch_start() and rcu_batch_end() trace\nmessages that indicates the RCU type (\"rcu_sched\", \"rcu_bh\", or\n\"rcu_preempt\").  The trace messages for the actual invocations\nthemselves are not marked, as it should be clear from the\nrcu_batch_start() and rcu_batch_end() events before and after.\n\nSigned-off-by: Paul E. McKenney \u003cpaul.mckenney@linaro.org\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "300df91ca9358f7f09298eec9503c12b32054ef7",
      "tree": "8917e0c2ee94a5385f4968094c0e1d9a7fdc0055",
      "parents": [
        "29c00b4a1d9e277786120032aa8364631820d863"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paul.mckenney@linaro.org",
        "time": "Sat Jun 18 22:26:31 2011 -0700"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Wed Sep 28 21:38:13 2011 -0700"
      },
      "message": "rcu: Event-trace markers for computing RCU CPU utilization\n\nThis commit adds the trace_rcu_utilization() marker that is to be\nused to allow postprocessing scripts compute RCU\u0027s CPU utilization,\ngive or take event-trace overhead.  Note that we do not include RCU\u0027s\ndyntick-idle interface because event tracing requires RCU protection,\nwhich is not available in dyntick-idle mode.\n\nSigned-off-by: Paul E. McKenney \u003cpaul.mckenney@linaro.org\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "29c00b4a1d9e277786120032aa8364631820d863",
      "tree": "23bf0c8cdb5268ef92ef9ed007639705e922b1b0",
      "parents": [
        "9d68197c05201d8edc70d58bd1d5dad05d8455e8"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paul.mckenney@linaro.org",
        "time": "Fri Jun 17 15:53:19 2011 -0700"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Wed Sep 28 21:38:12 2011 -0700"
      },
      "message": "rcu: Add event-tracing for RCU callback invocation\n\nThere was recently some controversy about the overhead of invoking RCU\ncallbacks.  Add TRACE_EVENT()s to obtain fine-grained timings for the\nstart and stop of a batch of callbacks and also for each callback invoked.\n\nSigned-off-by: Paul E. McKenney \u003cpaul.mckenney@linaro.org\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "53b615ccca567ada1931eb04ad0614ac150c14a3",
      "tree": "f09512d0dabaeff71b9ee66c26ca02cae2947873",
      "parents": [
        "ad3c36a534bc7b945d7bffdda1c62e13bf93489a"
      ],
      "author": {
        "name": "Ming Lei",
        "email": "ming.lei@canonical.com",
        "time": "Tue Sep 27 22:53:27 2011 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Tue Sep 27 22:53:27 2011 +0200"
      },
      "message": "PM / Runtime: Introduce trace points for tracing rpm_* functions\n\nThis patch introduces 3 trace points to prepare for tracing\nrpm_idle/rpm_suspend/rpm_resume functions, so we can use these\ntrace points to replace the current dev_dbg().\n\nSigned-off-by: Ming Lei \u003cming.lei@canonical.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "557ab425429a5123d37f412ce3e6d6137cb621f8",
      "tree": "2e1106b01ada425da6b2cd4f38fc59384cb031a5",
      "parents": [
        "f4cfb33ed980085b14a8f376281edb2e270f0244"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "peterz@infradead.org",
        "time": "Fri Sep 16 11:16:43 2011 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Sep 26 13:25:54 2011 +0200"
      },
      "message": "sched, tracing: Show PREEMPT_ACTIVE state in trace_sched_switch\n\nWe had need to see the difference between scheduling a runnable task and\na runnable task being involuntarily preempted.\n\nNo app should rely on the old string output (the binary\ntrace event record format is not changed).\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLink: http://lkml.kernel.org/r/1316164603.10174.11.camel@twins\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e56235e099d7290a2331b984a79f75bbe0865fe8",
      "tree": "7fdd1e4603b12a56502242f32e02c1d97fe23231",
      "parents": [
        "7aefb086c15fc44066e705e479d012d46476d8c5"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Wed Sep 21 18:19:14 2011 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Thu Sep 22 17:24:40 2011 +0100"
      },
      "message": "ASoC: Add another DAPM stat for neighbour checks\n\nThe number of times we look at a potentially connected neighbour is just\nas important as the number of times we actually recurse into looking at\nthat neighbour so also collect that statistic.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "de02d0786d4075091f5b1860474cd21d85ff5862",
      "tree": "5767c43edb3ee26429b7ce1dd2e42a9f96a28965",
      "parents": [
        "6d4baf084f4d8dc43cf5d5a3c182018604afa80c"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Tue Sep 20 21:43:24 2011 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Wed Sep 21 14:53:44 2011 +0100"
      },
      "message": "ASoC: Trace and collect statistics for DAPM graph walking\n\nOne of the longest standing areas for improvement in ASoC has been the\nDAPM algorithm - it repeats the same checks many times whenever it is run\nand makes no effort to limit the areas of the graph it checks meaning we\ndo an awful lot of walks over the full graph. This has never mattered too\nmuch as the size of the graph has generally been small in relation to the\nsize of the devices supported and the speed of CPUs but it is annoying.\n\nIn preparation for work on improving this insert a trace point after the\ngraph walk has been done. This gives us specific timing information for\nthe walk, and in order to give quantifiable (non-benchmark) numbers also\ncount every time we check a link or check the power for a widget and report\nthose numbers. Substantial changes in the algorithm may require tweaks to\nthe stats but they should be useful for simpler things.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "593600890110c02eb471cf844649dee213870416",
      "tree": "c696723995636b93ba7031d1ec7ad6169d7135f7",
      "parents": [
        "2cbbb579bcbe3e11baf1c59920dcd5a780b80447"
      ],
      "author": {
        "name": "Dimitris Papastamos",
        "email": "dp@opensource.wolfsonmicro.com",
        "time": "Mon Sep 19 14:34:04 2011 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Mon Sep 19 19:06:34 2011 +0100"
      },
      "message": "regmap: Add the regcache_sync trace event\n\nSigned-off-by: Dimitris Papastamos \u003cdp@opensource.wolfsonmicro.com\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "d8990240d8c911064447f8aa5a440f9345a6d692",
      "tree": "c12cda27583eb9616d91ec38fdfd79c6eb490bd5",
      "parents": [
        "df55c99dc8ee4c3c886a5edc8a4aa6b131c95afc"
      ],
      "author": {
        "name": "Aditya Kali",
        "email": "adityakali@google.com",
        "time": "Fri Sep 09 19:18:51 2011 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Fri Sep 09 19:18:51 2011 -0400"
      },
      "message": "ext4: add some tracepoints in ext4/extents.c\n\nThis patch adds some tracepoints in ext4/extents.c and updates a tracepoint in\next4/inode.c.\n\nTested: Built and ran the kernel and verified that these tracepoints work.\nAlso ran xfstests.\n\nSigned-off-by: Aditya Kali \u003cadityakali@google.com\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n    \n\n"
    },
    {
      "commit": "c8ad620638f97bdb7c8ef8cc788f08a04b14eadc",
      "tree": "9541b23f41a8240c6377658adeb580d04fa7a3e0",
      "parents": [
        "9e79e3e9dd9672b37ac9412e9a926714306551fe"
      ],
      "author": {
        "name": "Wu Fengguang",
        "email": "fengguang.wu@intel.com",
        "time": "Mon Aug 29 09:52:23 2011 -0600"
      },
      "committer": {
        "name": "Wu Fengguang",
        "email": "fengguang.wu@intel.com",
        "time": "Wed Aug 31 08:48:15 2011 +0800"
      },
      "message": "writeback: show raw dirtied_when in trace writeback_single_inode\n\nSave inode-\u003edirtied_when in the raw trace output for reliable scripting,\nand to also show in formatted output the relative age in seconds for\neasy human reading.\n\nCC: Jan Kara \u003cjack@suse.cz\u003e\nAcked-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Wu Fengguang \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "5ccc38740a283aba81a00e92941310d0c1aeb2ee",
      "tree": "ba7d725947975a9391e085bd1d5958b004bfdc3e",
      "parents": [
        "0c3bef612881ee6216a36952ffaabfc35b83545c",
        "b53d1ed734a2b9af8da115b836b658daa7d47a48"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 19 10:47:07 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 19 10:47:07 2011 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.dk/linux-block\n\n* \u0027for-linus\u0027 of git://git.kernel.dk/linux-block: (23 commits)\n  Revert \"cfq: Remove special treatment for metadata rqs.\"\n  block: fix flush machinery for stacking drivers with differring flush flags\n  block: improve rq_affinity placement\n  blktrace: add FLUSH/FUA support\n  Move some REQ flags to the common bio/request area\n  allow blk_flush_policy to return REQ_FSEQ_DATA independent of *FLUSH\n  xen/blkback: Make description more obvious.\n  cfq-iosched: Add documentation about idling\n  block: Make rq_affinity \u003d 1 work as expected\n  block: swim3: fix unterminated of_device_id table\n  block/genhd.c: remove useless cast in diskstats_show()\n  drivers/cdrom/cdrom.c: relax check on dvd manufacturer value\n  drivers/block/drbd/drbd_nl.c: use bitmap_parse instead of __bitmap_parse\n  bsg-lib: add module.h include\n  cfq-iosched: Reduce linked group count upon group destruction\n  blk-throttle: correctly determine sync bio\n  loop: fix deadlock when sysfs and LOOP_CLR_FD race against each other\n  loop: add BLK_DEV_LOOP_MIN_COUNT\u003d%i to allow distros 0 pre-allocated loop devices\n  loop: add management interface for on-demand device allocation\n  loop: replace linked list of allocated devices with an idr index\n  ...\n"
    },
    {
      "commit": "c09c47caedc9854d59378d6e34c989e51cfdd2b4",
      "tree": "ad7de20c08092cdf1cbbb83625a76acab3b0e2ce",
      "parents": [
        "8e4bf84474960e832b56293c9b0674c88b5b05ce"
      ],
      "author": {
        "name": "Namhyung Kim",
        "email": "namhyung@gmail.com",
        "time": "Thu Aug 11 10:36:05 2011 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Thu Aug 11 10:36:05 2011 +0200"
      },
      "message": "blktrace: add FLUSH/FUA support\n\nAdd FLUSH/FUA support to blktrace. As FLUSH precedes WRITE and/or\nFUA follows WRITE, use the same \u0027F\u0027 flag for both cases and\ndistinguish them by their (relative) position. The end results\nlook like (other flags might be shown also):\n\n - WRITE:            W\n - WRITE_FLUSH:      FW\n - WRITE_FUA:        WF\n - WRITE_FLUSH_FUA:  FWF\n\nNote that we reuse TC_BARRIER due to lack of bit space of act_mask\nso that the older versions of blktrace tools will report flush\nrequests as barriers from now on.\n\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nSigned-off-by: Namhyung Kim \u003cnamhyung@gmail.com\u003e\nReviewed-by: Jeff Moyer \u003cjmoyer@redhat.com\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "3d9ead7c06e51249a92eb710a892a66601bd7290",
      "tree": "49ec6fa8cdf1fb71106be1ceaeef38c0a1315d49",
      "parents": [
        "be2136e5c99fd5faa655e571b507362b27df1a28"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Tue Aug 09 16:42:27 2011 +0900"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Wed Aug 10 00:26:33 2011 +0900"
      },
      "message": "regmap: Use int rather than size_t for lengths when logging blocks\n\nx86_64 warns as size_t is not an int.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\nReported-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\n"
    },
    {
      "commit": "fb2736bbaee0e704a4f33912cf532597b2dc5b33",
      "tree": "409629ad28230acd153d4b07c3e39d7afb324175",
      "parents": [
        "555fedacc366c4aaf48270da2504dfa97c41a130"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Sun Jul 24 21:30:55 2011 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Mon Aug 08 15:56:16 2011 +0900"
      },
      "message": "regmap: Add basic tracepoints\n\nTrace single register reads and writes, plus start/stop tracepoints for\nthe actual I/O to see where we\u0027re spending time. This makes it easy to\nhave always on logging without overwhelming the logs and also lets us take\nadvantage of all the context and time information that the trace subsystem\ncollects for us.\n\nWe don\u0027t currently trace register values for bulk operations as this would\nadd complexity and overhead parsing the cooked data that\u0027s being worked\nwith.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "60ad4466821a96913a9b567115e194ed1087c2d7",
      "tree": "cd488ba72a60f856b85a467763fb633cbe7ef2d9",
      "parents": [
        "1b8e94993c4752d98c33903aa836acc15f7e6d5c",
        "79a77c5ac34cc27ccbfbdf7113b41cdd93534eab"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 01 13:56:03 2011 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 01 13:56:03 2011 -1000"
      },
      "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: (60 commits)\n  ext4: prevent memory leaks from ext4_mb_init_backend() on error path\n  ext4: use EXT4_BAD_INO for buddy cache to avoid colliding with valid inode #\n  ext4: use ext4_msg() instead of printk in mballoc\n  ext4: use ext4_kvzalloc()/ext4_kvmalloc() for s_group_desc and s_group_info\n  ext4: introduce ext4_kvmalloc(), ext4_kzalloc(), and ext4_kvfree()\n  ext4: use the correct error exit path in ext4_init_inode_table()\n  ext4: add missing kfree() on error return path in add_new_gdb()\n  ext4: change umode_t in tracepoint headers to be an explicit __u16\n  ext4: fix races in ext4_sync_parent()\n  ext4: Fix overflow caused by missing cast in ext4_fallocate()\n  ext4: add action of moving index in ext4_ext_rm_idx for Punch Hole\n  ext4: simplify parameters of reserve_backup_gdb()\n  ext4: simplify parameters of add_new_gdb()\n  ext4: remove lock_buffer in bclean() and setup_new_group_blocks()\n  ext4: simplify journal handling in setup_new_group_blocks()\n  ext4: let setup_new_group_blocks() set multiple bits at a time\n  ext4: fix a typo in ext4_group_extend()\n  ext4: let ext4_group_add_blocks() handle 0 blocks quickly\n  ext4: let ext4_group_add_blocks() return an error code\n  ext4: rename ext4_add_groupblocks() to ext4_group_add_blocks()\n  ...\n\nFix up conflict in fs/ext4/inode.c: commit aacfc19c626e (\"fs: simplify\nthe blockdev_direct_IO prototype\") had changed the ext4_ind_direct_IO()\nfunction for the new simplified calling convention, while commit\ndae1e52cb126 (\"ext4: move ext4_ind_* functions from inode.c to\nindirect.c\") moved the function to another file.\n"
    },
    {
      "commit": "59be8e7280c10fd8f078ba6dc2bcdc2b1453b6ab",
      "tree": "a740089c74c005869a0703c7fc0de664ea21cd33",
      "parents": [
        "d59729f4e794f814b25ccd2aebfbe606242c4544"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Sat Jul 30 12:38:46 2011 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Sat Jul 30 12:38:46 2011 -0400"
      },
      "message": "ext4: change umode_t in tracepoint headers to be an explicit __u16\n\nAs requested by Al Viro, since umode_t may be changing to a u32 for\nsome architectures.\n\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\nCc: Al Viro \u003cviro@ZenIV.linux.org.uk\u003e\n"
    },
    {
      "commit": "b993fdbc7fe26f96b59003a3552c418a71aa0a9f",
      "tree": "d5ffe93095c2111b7a68e1f0cc0b2f6e2388e990",
      "parents": [
        "8f57be8ee44d92ef161c5af685aedbb717db96e0",
        "b3c4b9825075b680817b9460184e7b576dc97597"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 29 23:33:40 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 29 23:33:40 2011 -0700"
      },
      "message": "Merge branch \u0027upstream/xen-tracing2\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jeremy/xen\n\n* \u0027upstream/xen-tracing2\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jeremy/xen:\n  xen/tracing: fix compile errors when tracing is disabled.\n"
    },
    {
      "commit": "2ac232f37fa0e8551856a575fe299c47b65b4d66",
      "tree": "58ff15ecdbc383415a82ea678e5191db16a479f3",
      "parents": [
        "fa8f53ace4af9470d8414427cb3dc3c0ffc4f182",
        "5cf49d763eb141d236e92be6d4a0dc94e31fa886"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 26 11:34:40 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 26 11:34:40 2011 -0700"
      },
      "message": "Merge branch \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs-2.6\n\n* \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs-2.6:\n  jbd: change the field \"b_cow_tid\" of struct journal_head from type unsigned to tid_t\n  ext3.txt: update the links in the section \"useful links\" to the latest ones\n  ext3: Fix data corruption in inodes with journalled data\n  ext2: check xattr name_len before acquiring xattr_sem in ext2_xattr_get\n  ext3: Fix compilation with -DDX_DEBUG\n  quota: Remove unused declaration\n  jbd: Use WRITE_SYNC in journal checkpoint.\n  jbd: Fix oops in journal_remove_journal_head()\n  ext3: Return -EINVAL when start is beyond the end of fs in ext3_trim_fs()\n  ext3/ioctl.c: silence sparse warnings about different address spaces\n  ext3/ext4 Documentation: remove bh/nobh since it has been deprecated\n  ext3: Improve truncate error handling\n  ext3: use proper little-endian bitops\n  ext2: include fs.h into ext2_fs.h\n  ext3: Fix oops in ext3_try_to_allocate_with_rsv()\n  jbd: fix a bug of leaking jh-\u003eb_jcount\n  jbd: remove dependency on __GFP_NOFAIL\n  ext3: Convert ext3 to new truncate calling convention\n  jbd: Add fixed tracepoints\n  ext3: Add fixed tracepoints\n\nResolve conflicts in fs/ext3/fsync.c due to fsync locking push-down and\nnew fixed tracepoints.\n"
    },
    {
      "commit": "f01ef569cddb1a8627b1c6b3a134998ad1cf4b22",
      "tree": "29ea1a0942c8549c24411e976cd6891c7e995e89",
      "parents": [
        "a93a1329271038f0e8337061d3b41b3b212a851e",
        "bcff25fc8aa47a13faff8b4b992589813f7b450a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 26 10:39:54 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 26 10:39:54 2011 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/wfg/writeback\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/wfg/writeback: (27 commits)\n  mm: properly reflect task dirty limits in dirty_exceeded logic\n  writeback: don\u0027t busy retry writeback on new/freeing inodes\n  writeback: scale IO chunk size up to half device bandwidth\n  writeback: trace global_dirty_state\n  writeback: introduce max-pause and pass-good dirty limits\n  writeback: introduce smoothed global dirty limit\n  writeback: consolidate variable names in balance_dirty_pages()\n  writeback: show bdi write bandwidth in debugfs\n  writeback: bdi write bandwidth estimation\n  writeback: account per-bdi accumulated written pages\n  writeback: make writeback_control.nr_to_write straight\n  writeback: skip tmpfs early in balance_dirty_pages_ratelimited_nr()\n  writeback: trace event writeback_queue_io\n  writeback: trace event writeback_single_inode\n  writeback: remove .nonblocking and .encountered_congestion\n  writeback: remove writeback_control.more_io\n  writeback: skip balance_dirty_pages() for in-memory fs\n  writeback: add bdi_dirty_limit() kernel-doc\n  writeback: avoid extra sync work at enqueue time\n  writeback: elevate queue_io() into wb_writeback()\n  ...\n\nFix up trivial conflicts in fs/fs-writeback.c and mm/filemap.c\n"
    },
    {
      "commit": "b3c4b9825075b680817b9460184e7b576dc97597",
      "tree": "88c6d1a7be1ed020d8447ece46fd44f74515e8df",
      "parents": [
        "bd9ddc875b6659f9f74dcfd285c472bc58041abd"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy.fitzhardinge@citrix.com",
        "time": "Mon Jul 25 15:51:02 2011 -0700"
      },
      "committer": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy.fitzhardinge@citrix.com",
        "time": "Mon Jul 25 15:51:02 2011 -0700"
      },
      "message": "xen/tracing: fix compile errors when tracing is disabled.\n\nWhen CONFIG_FUNCTION_TRACER is disabled, compilation fails as follows:\n  CC      arch/x86/xen/setup.o\nIn file included from arch/x86/include/asm/xen/hypercall.h:42,\n                 from arch/x86/xen/setup.c:19:\ninclude/trace/events/xen.h:31: warning: \u0027struct multicall_entry\u0027 declared inside parameter list\ninclude/trace/events/xen.h:31: warning: its scope is only this definition or declaration, which is probably not what you want\ninclude/trace/events/xen.h:31: warning: \u0027struct multicall_entry\u0027 declared inside parameter list\ninclude/trace/events/xen.h:31: warning: \u0027struct multicall_entry\u0027 declared inside parameter list\ninclude/trace/events/xen.h:31: warning: \u0027struct multicall_entry\u0027 declared inside parameter list\n[...]\narch/x86/xen/trace.c:5: error: \u0027__HYPERVISOR_set_trap_table\u0027 undeclared here (not in a function)\narch/x86/xen/trace.c:5: error: array index in initializer not of integer type\narch/x86/xen/trace.c:5: error: (near initialization for \u0027xen_hypercall_names\u0027)\narch/x86/xen/trace.c:6: error: \u0027__HYPERVISOR_mmu_update\u0027 undeclared here (not in a function)\narch/x86/xen/trace.c:6: error: array index in initializer not of integer type\narch/x86/xen/trace.c:6: error: (near initialization for \u0027xen_hypercall_names\u0027)\n\nFix this by making sure struct multicall_entry has a declaration in\nscope at all times, and don\u0027t bother compiling xen/trace.c when tracing\nis disabled.\n\nReported-by: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\n"
    },
    {
      "commit": "c61264f98c1a974ee6f545f61a4ab33b141d6bda",
      "tree": "490e82c3bbf1403098b582f589eec378be727d4c",
      "parents": [
        "a23a334bd547e9462d9ca4a74608519a1e928848",
        "bd9ddc875b6659f9f74dcfd285c472bc58041abd"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jul 24 09:06:47 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jul 24 09:06:47 2011 -0700"
      },
      "message": "Merge branch \u0027upstream/xen-tracing2\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jeremy/xen\n\n* \u0027upstream/xen-tracing2\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jeremy/xen:\n  xen/trace: use class for multicall trace\n  xen/trace: convert mmu events to use DECLARE_EVENT_CLASS()/DEFINE_EVENT()\n  xen/multicall: move *idx fields to start of mc_buffer\n  xen/multicall: special-case singleton hypercalls\n  xen/multicalls: add unlikely around slowpath in __xen_mc_entry()\n  xen/multicalls: disable MC_DEBUG\n  xen/mmu: tune pgtable alloc/release\n  xen/mmu: use extend_args for more mmuext updates\n  xen/trace: add tlb flush tracepoints\n  xen/trace: add segment desc tracing\n  xen/trace: add xen_pgd_(un)pin tracepoints\n  xen/trace: add ptpage alloc/release tracepoints\n  xen/trace: add mmu tracepoints\n  xen/trace: add multicall tracing\n  xen/trace: set up tracepoint skeleton\n  xen/multicalls: remove debugfs stats\n  trace/xen: add skeleton for Xen trace events\n"
    },
    {
      "commit": "e4980371059ca4a81ccdcb4381c41af8869ca711",
      "tree": "29758f7e8d66b5866d9d3897eff12f122000b4d7",
      "parents": [
        "9d1c02135516866cbbb2f80e20cfb65c63a3ce40",
        "76531d4166fb620375ff3c1ac24753265216d579"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 23 10:59:37 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 23 10:59:37 2011 -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: (297 commits)\n  ALSA: asihpi - Replace with snd_ctl_boolean_mono_info()\n  ALSA: asihpi - HPI version 4.08\n  ALSA: asihpi - Add volume mute controls\n  ALSA: asihpi - Control name updates\n  ALSA: asihpi - Use size_t for sizeof result\n  ALSA: asihpi - Explicitly include mutex.h\n  ALSA: asihpi - Add new node and message defines\n  ALSA: asihpi - Make local function static\n  ALSA: asihpi - Fix minor typos and spelling\n  ALSA: asihpi - Remove unused structures, macros and functions\n  ALSA: asihpi - Remove spurious adapter index check\n  ALSA: asihpi - Revise snd_pcm_debug_name, get rid of DEBUG_NAME macro\n  ALSA: asihpi - DSP code loader API now independent of OS\n  ALSA: asihpi - Remove controlex structs and associated special data transfer code\n  ALSA: asihpi - Increase request and response buffer sizes\n  ALSA: asihpi - Give more meaningful name to hpi request message type\n  ALSA: usb-audio - Add quirk for  Roland / BOSS BR-800\n  ALSA: hda - Remove a superfluous argument of via_auto_init_output()\n  ALSA: hda - Fix indep-HP path (de-)activation for VT1708* codecs\n  ALSA: hda - Add documentation for codec-specific mixer controls\n  ...\n"
    },
    {
      "commit": "bbd9d6f7fbb0305c9a592bf05a32e87eb364a4ff",
      "tree": "12b2bb4202b05f6ae6a43c6ce830a0472043dbe5",
      "parents": [
        "8e204874db000928e37199c2db82b7eb8966cc3c",
        "5a9a43646cf709312d71eca71cef90ad802f28f9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 22 19:02:39 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 22 19:02:39 2011 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6: (107 commits)\n  vfs: use ERR_CAST for err-ptr tossing in lookup_instantiate_filp\n  isofs: Remove global fs lock\n  jffs2: fix IN_DELETE_SELF on overwriting rename() killing a directory\n  fix IN_DELETE_SELF on overwriting rename() on ramfs et.al.\n  mm/truncate.c: fix build for CONFIG_BLOCK not enabled\n  fs:update the NOTE of the file_operations structure\n  Remove dead code in dget_parent()\n  AFS: Fix silly characters in a comment\n  switch d_add_ci() to d_splice_alias() in \"found negative\" case as well\n  simplify gfs2_lookup()\n  jfs_lookup(): don\u0027t bother with . or ..\n  get rid of useless dget_parent() in btrfs rename() and link()\n  get rid of useless dget_parent() in fs/btrfs/ioctl.c\n  fs: push i_mutex and filemap_write_and_wait down into -\u003efsync() handlers\n  drivers: fix up various -\u003ellseek() implementations\n  fs: handle SEEK_HOLE/SEEK_DATA properly in all fs\u0027s that define their own llseek\n  Ext4: handle SEEK_HOLE/SEEK_DATA generically\n  Btrfs: implement our own -\u003ellseek\n  fs: add SEEK_HOLE and SEEK_DATA flags\n  reiserfs: make reiserfs default to barrier\u003dflush\n  ...\n\nFix up trivial conflicts in fs/xfs/linux-2.6/xfs_super.c due to the new\nshrinker callout for the inode cache, that clashed with the xfs code to\nstart the periodic workers later.\n"
    },
    {
      "commit": "13b137ef0367237909bb2dc38babfb8305154676",
      "tree": "a5d756fcc6603da970ef8c5e263244c6166a2fba",
      "parents": [
        "e8fd86efaa09445ca1afc1aea08d4666c966ed03",
        "440085598672c0e3fde8a48495f61fea418b06d1"
      ],
      "author": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Fri Jul 22 08:43:19 2011 +0200"
      },
      "committer": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Fri Jul 22 08:43:19 2011 +0200"
      },
      "message": "Merge branch \u0027topic/asoc\u0027 into for-linus\n"
    },
    {
      "commit": "095760730c1047c69159ce88021a7fa3833502c8",
      "tree": "7cee34087a3e0d3d14691075b0ea614846c87d7c",
      "parents": [
        "a9049376ee05bf966bfe2b081b5071326856890a"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "dchinner@redhat.com",
        "time": "Fri Jul 08 14:14:34 2011 +1000"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Jul 20 01:44:27 2011 -0400"
      },
      "message": "vmscan: add shrink_slab tracepoints\n\nIt is impossible to understand what the shrinkers are actually doing\nwithout instrumenting the code, so add a some tracepoints to allow\ninsight to be gained.\n\nSigned-off-by: Dave Chinner \u003cdchinner@redhat.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "bd9ddc875b6659f9f74dcfd285c472bc58041abd",
      "tree": "432b29246be27e5ce76a9e5e5c0389525a5aac2a",
      "parents": [
        "c43ed60cbf3bd7d4bd6603258429361cffa09547"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy.fitzhardinge@citrix.com",
        "time": "Mon Jun 20 17:52:13 2011 -0700"
      },
      "committer": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy.fitzhardinge@citrix.com",
        "time": "Mon Jul 18 15:43:46 2011 -0700"
      },
      "message": "xen/trace: use class for multicall trace\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\n"
    },
    {
      "commit": "c43ed60cbf3bd7d4bd6603258429361cffa09547",
      "tree": "746e24363e80741167b1e878c1243be2446e8c19",
      "parents": [
        "2a6f6d095509c7dc6e9ff8d9fd9fba0b730ecce3"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy.fitzhardinge@citrix.com",
        "time": "Mon Jun 20 17:48:40 2011 -0700"
      },
      "committer": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy.fitzhardinge@citrix.com",
        "time": "Mon Jul 18 15:43:46 2011 -0700"
      },
      "message": "xen/trace: convert mmu events to use DECLARE_EVENT_CLASS()/DEFINE_EVENT()\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\n"
    },
    {
      "commit": "c8eed1719afb337472c5ef31ec590d549770b173",
      "tree": "ead8933db533218a1c8fbd11e0d68c1bac938b11",
      "parents": [
        "ab78f7ad2c78fb1b724b278479adec998933be36"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy.fitzhardinge@citrix.com",
        "time": "Mon Dec 20 13:15:04 2010 -0800"
      },
      "committer": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy.fitzhardinge@citrix.com",
        "time": "Mon Jul 18 15:43:27 2011 -0700"
      },
      "message": "xen/trace: add tlb flush tracepoints\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\n"
    },
    {
      "commit": "ab78f7ad2c78fb1b724b278479adec998933be36",
      "tree": "dc13a59184c0a2459d8675ffa860c9b65f3a3887",
      "parents": [
        "5f94fb5b8edf29bba06e2cd05f9d3a80a5dfb9bc"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy.fitzhardinge@citrix.com",
        "time": "Fri Dec 17 15:54:28 2010 -0800"
      },
      "committer": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy.fitzhardinge@citrix.com",
        "time": "Mon Jul 18 15:43:27 2011 -0700"
      },
      "message": "xen/trace: add segment desc tracing\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\n"
    },
    {
      "commit": "5f94fb5b8edf29bba06e2cd05f9d3a80a5dfb9bc",
      "tree": "180fb7320f840a51ec64d349bbeeaaba0cae8a7c",
      "parents": [
        "c2ba050d2e5638774571ea0ad0375a1c17c7b04e"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy.fitzhardinge@citrix.com",
        "time": "Fri Dec 17 15:31:23 2010 -0800"
      },
      "committer": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy.fitzhardinge@citrix.com",
        "time": "Mon Jul 18 15:43:27 2011 -0700"
      },
      "message": "xen/trace: add xen_pgd_(un)pin tracepoints\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\n"
    },
    {
      "commit": "c2ba050d2e5638774571ea0ad0375a1c17c7b04e",
      "tree": "3b90b1ee94de25e9d8a4ad2dab5fd7ca39db66ad",
      "parents": [
        "847088079162a5cf8ab0d1ad1ecf7fa60c057246"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy.fitzhardinge@citrix.com",
        "time": "Fri Dec 17 14:21:17 2010 -0800"
      },
      "committer": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy.fitzhardinge@citrix.com",
        "time": "Mon Jul 18 15:43:27 2011 -0700"
      },
      "message": "xen/trace: add ptpage alloc/release tracepoints\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\n"
    },
    {
      "commit": "847088079162a5cf8ab0d1ad1ecf7fa60c057246",
      "tree": "d4e3a7a2901bcdc67033b6912694e6f1c2f65f6e",
      "parents": [
        "c796f213a6934712ede728d9b53ef0e5066db23a"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy.fitzhardinge@citrix.com",
        "time": "Thu Dec 16 17:02:35 2010 -0800"
      },
      "committer": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy.fitzhardinge@citrix.com",
        "time": "Mon Jul 18 15:43:27 2011 -0700"
      },
      "message": "xen/trace: add mmu tracepoints\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\n"
    },
    {
      "commit": "c796f213a6934712ede728d9b53ef0e5066db23a",
      "tree": "30fffcabfad42297b2d4b1f455a5f88ccf91091b",
      "parents": [
        "f04e2ee41d3dbeb6eeb3685d1b4c208b898e278f"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy.fitzhardinge@citrix.com",
        "time": "Thu Dec 16 14:33:27 2010 -0800"
      },
      "committer": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy.fitzhardinge@citrix.com",
        "time": "Mon Jul 18 15:43:26 2011 -0700"
      },
      "message": "xen/trace: add multicall tracing\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\n"
    },
    {
      "commit": "634355d42be64f5ba934220d784bb32422ef3052",
      "tree": "ce284fad96be6ce5374184a197f1fdd0b7a1bd33",
      "parents": [
        "fe0d42203cb5616eeff68b14576a0f7e2dd56625"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy.fitzhardinge@citrix.com",
        "time": "Thu Dec 16 13:39:18 2010 -0800"
      },
      "committer": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy.fitzhardinge@citrix.com",
        "time": "Mon Jul 18 15:42:37 2011 -0700"
      },
      "message": "trace/xen: add skeleton for Xen trace events\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\n"
    },
    {
      "commit": "b3d4c2b10b68d205d3eb1b5c17dcb4649a502798",
      "tree": "bd03e3dc922f62b019d5b1b5a0eb089f36e0502e",
      "parents": [
        "169ddc3ec83b5f732e51d975befb191d50795844"
      ],
      "author": {
        "name": "Tao Ma",
        "email": "boyu.mt@taobao.com",
        "time": "Mon Jul 11 00:01:52 2011 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Mon Jul 11 00:01:52 2011 -0400"
      },
      "message": "ext4: Add new ext4 trim tracepoints\n\nAdd ext4_trim_extent and ext4_trim_all_free.\n\nReviewed-by: Lukas Czerner \u003clczerner@redhat.com\u003e\nSigned-off-by: Tao Ma \u003cboyu.mt@taobao.com\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "12706394bcaa48e3d5e19c97d7b4e5683ebb12fb",
      "tree": "d2a9effccf0162de6b783cf40fadd0f27c1bd22e",
      "parents": [
        "4862fd6047ed02e2726667c54d35f538eecc56aa"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Sun Jul 10 22:37:50 2011 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Sun Jul 10 22:37:50 2011 -0400"
      },
      "message": "ext4: add tracepoint for ext4_journal_start\n\nThis will help debug who is responsible for starting a jbd2 transaction.\n\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "4862fd6047ed02e2726667c54d35f538eecc56aa",
      "tree": "fc97f075946120157c63f48e283a5d753d22763a",
      "parents": [
        "575a1d4bdfa2ea9fc10733013136145b497e1be0"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Sun Jul 10 22:05:08 2011 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Sun Jul 10 22:05:08 2011 -0400"
      },
      "message": "jbd2: remove jbd2_dev_to_name() from jbd2 tracepoints\n\nUsing function calls in TP_printk causes perf heartburn, so print the\nMAJOR/MINOR device numbers instead.\n\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "e1cbe236013c82bcf9a156e98d7b47efb89d2674",
      "tree": "c2f1764a3d07fd01fdbe6fd7d6ecd647557808d5",
      "parents": [
        "ffd1f609ab10532e8137b4b981fdf903ef4d0b32"
      ],
      "author": {
        "name": "Wu Fengguang",
        "email": "fengguang.wu@intel.com",
        "time": "Mon Dec 06 22:34:29 2010 -0600"
      },
      "committer": {
        "name": "Wu Fengguang",
        "email": "fengguang.wu@intel.com",
        "time": "Sat Jul 09 22:09:03 2011 -0700"
      },
      "message": "writeback: trace global_dirty_state\n\nAdd trace event balance_dirty_state for showing the global dirty page\ncounts and thresholds at each global_dirty_limits() invocation.  This\nwill cover the callers throttle_vm_writeout(), over_bground_thresh()\nand each balance_dirty_pages() loop.\n\nSigned-off-by: Wu Fengguang \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "d46db3d58233be4be980eb1e42eebe7808bcabab",
      "tree": "6d813b33938d915f0c0633e8615d1ffdcc554c96",
      "parents": [
        "36715cef0770b7e2547892b7c3197fc024274630"
      ],
      "author": {
        "name": "Wu Fengguang",
        "email": "fengguang.wu@intel.com",
        "time": "Wed May 04 19:54:37 2011 -0600"
      },
      "committer": {
        "name": "Wu Fengguang",
        "email": "fengguang.wu@intel.com",
        "time": "Sat Jul 09 22:09:01 2011 -0700"
      },
      "message": "writeback: make writeback_control.nr_to_write straight\n\nPass struct wb_writeback_work all the way down to writeback_sb_inodes(),\nand initialize the struct writeback_control there.\n\nstruct writeback_control is basically designed to control writeback of a\nsingle file, but we keep abuse it for writing multiple files in\nwriteback_sb_inodes() and its callers.\n\nIt immediately clean things up, e.g. suddenly wbc.nr_to_write vs\nwork-\u003enr_pages starts to make sense, and instead of saving and restoring\npages_skipped in writeback_sb_inodes it can always start with a clean\nzero value.\n\nIt also makes a neat IO pattern change: large dirty files are now\nwritten in the full 4MB writeback chunk size, rather than whatever\nremained quota in wbc-\u003enr_to_write.\n\nAcked-by: Jan Kara \u003cjack@suse.cz\u003e\nProposed-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Wu Fengguang \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "e12fe68ce34d60c04bb1ddb1d3cc5c3022388fe4",
      "tree": "83c0e192ccaa4752c80b6131a7d0aa8272b5d0d0",
      "parents": [
        "7329f0d58de01878d9ce4f0be7a76e136f223eef",
        "712ae51afd55b20c04c5383d02ba5d10233313b1"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 05 23:23:37 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 05 23:23:37 2011 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n"
    },
    {
      "commit": "a82ce2ae0d91cfa261cbe6f27f4031963ace097c",
      "tree": "69cf6aa99c358dce1a1a2b6b9ced390068f59222",
      "parents": [
        "cb2cf612fbdf457291b6e47064fed24f0dfdd9a5"
      ],
      "author": {
        "name": "Liam Girdwood",
        "email": "lrg@ti.com",
        "time": "Mon Jul 04 22:10:50 2011 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Tue Jul 05 11:08:10 2011 -0700"
      },
      "message": "ASoC: core - Add platform IO tracing\n\nTrace platform IO just like CODEC IO.\n\nSigned-off-by: Liam Girdwood \u003clrg@ti.com\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "99cb1a318c37bf462c53d43f4dacb7b4896ce0c9",
      "tree": "32a9046649777e8cc589bbc8e0afb382642ba450",
      "parents": [
        "785c4bcc0d88ff006a0b2120815a71e86ecf21ce"
      ],
      "author": {
        "name": "Lukas Czerner",
        "email": "lczerner@redhat.com",
        "time": "Mon May 23 18:33:02 2011 +0200"
      },
      "committer": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Sat Jun 25 17:29:51 2011 +0200"
      },
      "message": "jbd: Add fixed tracepoints\n\nThis commit adds fixed tracepoint for jbd. It has been based on fixed\ntracepoints for jbd2, however there are missing those for collecting\nstatistics, since I think that it will require more intrusive patch so I\nshould have its own commit, if someone decide that it is needed. Also\nthere are new tracepoints in __journal_drop_transaction() and\njournal_update_superblock().\n\nThe list of jbd tracepoints:\n\njbd_checkpoint\njbd_start_commit\njbd_commit_locking\njbd_commit_flushing\njbd_commit_logging\njbd_drop_transaction\njbd_end_commit\njbd_do_submit_data\njbd_cleanup_journal_tail\njbd_update_superblock_end\n\nSigned-off-by: Lukas Czerner \u003clczerner@redhat.com\u003e\nCc: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\n"
    },
    {
      "commit": "785c4bcc0d88ff006a0b2120815a71e86ecf21ce",
      "tree": "573607ada555ca3d6136a9ec7f922ee6fef1eda3",
      "parents": [
        "5220cc9382e11ca955ce946ee6a5bac577bb14ff"
      ],
      "author": {
        "name": "Lukas Czerner",
        "email": "lczerner@redhat.com",
        "time": "Mon May 23 18:33:01 2011 +0200"
      },
      "committer": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Sat Jun 25 17:29:51 2011 +0200"
      },
      "message": "ext3: Add fixed tracepoints\n\nThis commit adds fixed tracepoints to the ext3 code. It is based on ext4\ntracepoints, however due to the differences of both file systems, there\nare some tracepoints missing (those for delaloc and for multi-block\nallocator) and there are some ext3 specific as well (for reservation\nwindows).\n\nHere is a list:\n\next3_free_inode\next3_request_inode\next3_allocate_inode\next3_evict_inode\next3_drop_inode\next3_mark_inode_dirty\next3_write_begin\next3_ordered_write_end\next3_writeback_write_end\next3_journalled_write_end\next3_ordered_writepage\next3_writeback_writepage\next3_journalled_writepage\next3_readpage\next3_releasepage\next3_invalidatepage\next3_discard_blocks\next3_request_blocks\next3_allocate_blocks\next3_free_blocks\next3_sync_file_enter\next3_sync_file_exit\next3_sync_fs\next3_rsv_window_add\next3_discard_reservation\next3_alloc_new_reservation\next3_reserved\next3_forget\next3_read_block_bitmap\next3_direct_IO_enter\next3_direct_IO_exit\next3_unlink_enter\next3_unlink_exit\next3_truncate_enter\next3_truncate_exit\next3_get_blocks_enter\next3_get_blocks_exit\next3_load_inode\n\nSigned-off-by: Lukas Czerner \u003clczerner@redhat.com\u003e\nCc: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\n"
    },
    {
      "commit": "3847ce32aea9fdf56022de132000e8cf139042eb",
      "tree": "02edbf97518be8af9a1ce978f7e9fcefdc7e0db1",
      "parents": [
        "296f7ea75b45913d5e2067baef0812087e0b6eb9"
      ],
      "author": {
        "name": "Satoru Moriya",
        "email": "satoru.moriya@hds.com",
        "time": "Fri Jun 17 12:00:03 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jun 21 16:06:10 2011 -0700"
      },
      "message": "core: add tracepoints for queueing skb to rcvbuf\n\nThis patch adds 2 tracepoints to get a status of a socket receive queue\nand related parameter.\n\nOne tracepoint is added to sock_queue_rcv_skb. It records rcvbuf size\nand its usage. The other tracepoint is added to __sk_mem_schedule and\nit records limitations of memory for sockets and current usage.\n\nBy using these tracepoints we\u0027re able to know detailed reason why kernel\ndrop the packet.\n\nSigned-off-by: Satoru Moriya \u003csatoru.moriya@hds.com\u003e\nAcked-by: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "296f7ea75b45913d5e2067baef0812087e0b6eb9",
      "tree": "94a5774a525ebb388306a4ae2aef90a0706031f4",
      "parents": [
        "dec17b74516bb780de75b41e7cfa0072df16bb82"
      ],
      "author": {
        "name": "Satoru Moriya",
        "email": "satoru.moriya@hds.com",
        "time": "Fri Jun 17 11:58:39 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jun 21 16:06:10 2011 -0700"
      },
      "message": "udp: add tracepoints for queueing skb to rcvbuf\n\nThis patch adds a tracepoint to __udp_queue_rcv_skb to get the\nreturn value of ip_queue_rcv_skb. It indicates why kernel drops\na packet at this point.\n\nip_queue_rcv_skb returns following values in the packet drop case:\n\nrcvbuf is full                 : -ENOMEM\nsk_filter returns error        : -EINVAL, -EACCESS, -ENOMEM, etc.\n__sk_mem_schedule returns error: -ENOBUF\n\nSigned-off-by: Satoru Moriya \u003csatoru.moriya@hds.com\u003e\nAcked-by: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "890879cfa08f5ceaa09810611f46e890f7d57ff6",
      "tree": "c8898ae7a5bf00f315cfaa13d58a08aafa5002f9",
      "parents": [
        "56299378726d5f2ba8d3c8cbbd13cb280ba45e4f",
        "de1b794130b130e77ffa975bb58cb843744f9ae5"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jun 21 10:22:35 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jun 21 10:22:35 2011 -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  jbd2: Fix oops in jbd2_journal_remove_journal_head()\n  jbd2: Remove obsolete parameters in the comments for some jbd2 functions\n  ext4: fixed tracepoints cleanup\n  ext4: use FIEMAP_EXTENT_LAST flag for last extent in fiemap\n  ext4: Fix max file size and logical block counting of extent format file\n  ext4: correct comments for ext4_free_blocks()\n"
    },
    {
      "commit": "357ed6b1a110048ff8106f99092d6c4a7aadb45a",
      "tree": "ff4eb7e809e547bc3c0680dfd51793a8f57b2063",
      "parents": [
        "de505e709ffb09a7382ca8e0d8c7dbb171ba5830",
        "f8b7fc6b514f34a51875dd48dff70d4d17a54f38"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jun 19 08:56:56 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jun 19 08:56:56 2011 -0700"
      },
      "message": "Merge branch \u0027core-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  rcu: Move RCU_BOOST #ifdefs to header file\n  rcu: use softirq instead of kthreads except when RCU_BOOST\u003dy\n  rcu: Use softirq to address performance regression\n  rcu: Simplify curing of load woes\n"
    },
    {
      "commit": "d7911ef30cb7bec52234c2b7a5c275ac8f07905a",
      "tree": "c3d9dc8ffc5d9478da434faecc27759ee34edf83",
      "parents": [
        "83cd81a34357a632509f7491eec81e62e71d65f7"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Wed Jun 15 15:08:15 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jun 15 20:03:59 2011 -0700"
      },
      "message": "vmscan: implement swap token priority aging\n\nWhile testing for memcg aware swap token, I observed a swap token was\noften grabbed an intermittent running process (eg init, auditd) and they\nnever release a token.\n\nWhy?\n\nSome processes (eg init, auditd, audispd) wake up when a process exiting.\nAnd swap token can be get first page-in process when a process exiting\nmakes no swap token owner.  Thus such above intermittent running process\noften get a token.\n\nAnd currently, swap token priority is only decreased at page fault path.\nThen, if the process sleep immediately after to grab swap token, the swap\ntoken priority never be decreased.  That\u0027s obviously undesirable.\n\nThis patch implement very poor (and lightweight) priority aging.  It only\nbe affect to the above corner case and doesn\u0027t change swap tendency\nworkload performance (eg multi process qsbench load)\n\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nReviewed-by: Rik van Riel \u003criel@redhat.com\u003e\nReviewed-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "83cd81a34357a632509f7491eec81e62e71d65f7",
      "tree": "cc96e65bd3000fd9090dacfabdd8810e9c66e0c9",
      "parents": [
        "a433658c30974fc87ba3ff52d7e4e6299762aa3d"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Wed Jun 15 15:08:14 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jun 15 20:03:59 2011 -0700"
      },
      "message": "vmscan: implement swap token trace\n\nThis is useful for observing swap token activity.\n\nexample output:\n\n             zsh-1845  [000]   598.962716: update_swap_token_priority:\nmm\u003dffff88015eaf7700 old_prio\u003d1 new_prio\u003d0\n          memtoy-1830  [001]   602.033900: update_swap_token_priority:\nmm\u003dffff880037a45880 old_prio\u003d947 new_prio\u003d949\n          memtoy-1830  [000]   602.041509: update_swap_token_priority:\nmm\u003dffff880037a45880 old_prio\u003d949 new_prio\u003d951\n          memtoy-1830  [000]   602.051959: update_swap_token_priority:\nmm\u003dffff880037a45880 old_prio\u003d951 new_prio\u003d953\n          memtoy-1830  [000]   602.052188: update_swap_token_priority:\nmm\u003dffff880037a45880 old_prio\u003d953 new_prio\u003d955\n          memtoy-1830  [001]   602.427184: put_swap_token:\ntoken_mm\u003dffff880037a45880\n             zsh-1789  [000]   602.427281: replace_swap_token:\nold_token_mm\u003d          (null) old_prio\u003d0 new_token_mm\u003dffff88015eaf7018\nnew_prio\u003d2\n             zsh-1789  [001]   602.433456: update_swap_token_priority:\nmm\u003dffff88015eaf7018 old_prio\u003d2 new_prio\u003d4\n             zsh-1789  [000]   602.437613: update_swap_token_priority:\nmm\u003dffff88015eaf7018 old_prio\u003d4 new_prio\u003d6\n             zsh-1789  [000]   602.443924: update_swap_token_priority:\nmm\u003dffff88015eaf7018 old_prio\u003d6 new_prio\u003d8\n             zsh-1789  [000]   602.451873: update_swap_token_priority:\nmm\u003dffff88015eaf7018 old_prio\u003d8 new_prio\u003d10\n             zsh-1789  [001]   602.462639: update_swap_token_priority:\nmm\u003dffff88015eaf7018 old_prio\u003d10 new_prio\u003d12\n\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nAcked-by: Rik van Riel\u003criel@redhat.com\u003e\nReviewed-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "09223371deac67d08ca0b70bd18787920284c967",
      "tree": "0ad0354a93ac209c8cfd2b79d03d0462aa3c5c58",
      "parents": [
        "9a432736904d386cda28b987b38ba14dae960ecc"
      ],
      "author": {
        "name": "Shaohua Li",
        "email": "shaohua.li@intel.com",
        "time": "Tue Jun 14 13:26:25 2011 +0800"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Tue Jun 14 15:25:39 2011 -0700"
      },
      "message": "rcu: Use softirq to address performance regression\n\nCommit a26ac2455ffcf3(rcu: move TREE_RCU from softirq to kthread)\nintroduced performance regression. In an AIM7 test, this commit degraded\nperformance by about 40%.\n\nThe commit runs rcu callbacks in a kthread instead of softirq. We observed\nhigh rate of context switch which is caused by this. Out test system has\n64 CPUs and HZ is 1000, so we saw more than 64k context switch per second\nwhich is caused by RCU\u0027s per-CPU kthread.  A trace showed that most of\nthe time the RCU per-CPU kthread doesn\u0027t actually handle any callbacks,\nbut instead just does a very small amount of work handling grace periods.\nThis means that RCU\u0027s per-CPU kthreads are making the scheduler do quite\na bit of work in order to allow a very small amount of RCU-related\nprocessing to be done.\n\nAlex Shi\u0027s analysis determined that this slowdown is due to lock\ncontention within the scheduler.  Unfortunately, as Peter Zijlstra points\nout, the scheduler\u0027s real-time semantics require global action, which\nmeans that this contention is inherent in real-time scheduling.  (Yes,\nperhaps someone will come up with a workaround -- otherwise, -rt is not\ngoing to do well on large SMP systems -- but this patch will work around\nthis issue in the meantime.  And \"the meantime\" might well be forever.)\n\nThis patch therefore re-introduces softirq processing to RCU, but only\nfor core RCU work.  RCU callbacks are still executed in kthread context,\nso that only a small amount of RCU work runs in softirq context in the\ncommon case.  This should minimize ksoftirqd execution, allowing us to\nskip boosting of ksoftirqd for CONFIG_RCU_BOOST\u003dy kernels.\n\nSigned-off-by: Shaohua Li \u003cshaohua.li@intel.com\u003e\nTested-by: \"Alex,Shi\" \u003calex.shi@intel.com\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "e84d0a4f8e39a73003a6ec9a11b07702745f4c1f",
      "tree": "2319765d78502d13101ac50bafb0ba5577133092",
      "parents": [
        "251d6a471c831e22880b3c146bb4556ddfb1dc82"
      ],
      "author": {
        "name": "Wu Fengguang",
        "email": "fengguang.wu@intel.com",
        "time": "Sat Apr 23 12:27:27 2011 -0600"
      },
      "committer": {
        "name": "Wu Fengguang",
        "email": "fengguang.wu@intel.com",
        "time": "Wed Jun 08 08:25:23 2011 +0800"
      },
      "message": "writeback: trace event writeback_queue_io\n\nNote that it adds a little overheads to account the moved/enqueued\ninodes from b_dirty to b_io. The \"moved\" accounting may be later used to\nlimit the number of inodes that can be moved in one shot, in order to\nkeep spinlock hold time under control.\n\nSigned-off-by: Wu Fengguang \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "251d6a471c831e22880b3c146bb4556ddfb1dc82",
      "tree": "5ea61b9153866eda9f4164bf316c03786e1a7840",
      "parents": [
        "846d5a091b0506b75489577cde27f39b37a192a4"
      ],
      "author": {
        "name": "Wu Fengguang",
        "email": "fengguang.wu@intel.com",
        "time": "Wed Dec 01 17:33:37 2010 -0600"
      },
      "committer": {
        "name": "Wu Fengguang",
        "email": "fengguang.wu@intel.com",
        "time": "Wed Jun 08 08:25:23 2011 +0800"
      },
      "message": "writeback: trace event writeback_single_inode\n\nIt is valuable to know how the dirty inodes are iterated and their IO size.\n\n\"writeback_single_inode: bdi 8:0: ino\u003d134246746 state\u003dI_DIRTY_SYNC|I_SYNC age\u003d414 index\u003d0 to_write\u003d1024 wrote\u003d0\"\n\n- \"state\" reflects inode-\u003ei_state at the end of writeback_single_inode()\n- \"index\" reflects mapping-\u003ewriteback_index after the -\u003ewritepages() call\n- \"to_write\" is the wbc-\u003enr_to_write at entrance of writeback_single_inode()\n- \"wrote\" is the number of pages actually written\n\nv2: add trace event writeback_single_inode_requeue as proposed by Dave.\n\nCC: Dave Chinner \u003cdavid@fromorbit.com\u003e\nSigned-off-by: Wu Fengguang \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "846d5a091b0506b75489577cde27f39b37a192a4",
      "tree": "739bd1e28f86d4620b55401d0cc4b5ab4e44eb91",
      "parents": [
        "b7a2441f9966fe3e1be960a876ab52e6029ea005"
      ],
      "author": {
        "name": "Wu Fengguang",
        "email": "fengguang.wu@intel.com",
        "time": "Thu May 05 21:10:38 2011 -0600"
      },
      "committer": {
        "name": "Wu Fengguang",
        "email": "fengguang.wu@intel.com",
        "time": "Wed Jun 08 08:25:23 2011 +0800"
      },
      "message": "writeback: remove .nonblocking and .encountered_congestion\n\nRemove two unused struct writeback_control fields:\n\n\t.encountered_congestion\t(completely unused)\n\t.nonblocking\t\t(never set, checked/showed in XFS,NFS/btrfs)\n\nThe .for_background check in nfs_write_inode() is also removed btw,\nas .for_background implies WB_SYNC_NONE.\n\nReviewed-by: Jan Kara \u003cjack@suse.cz\u003e\nProposed-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Wu Fengguang \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "b7a2441f9966fe3e1be960a876ab52e6029ea005",
      "tree": "f3e4373e6434bc21a4be983c3174aeb3298bf329",
      "parents": [
        "3efaf0faba6793cd91298c76315e15de59c13ae0"
      ],
      "author": {
        "name": "Wu Fengguang",
        "email": "fengguang.wu@intel.com",
        "time": "Wed Jul 21 22:19:51 2010 -0600"
      },
      "committer": {
        "name": "Wu Fengguang",
        "email": "fengguang.wu@intel.com",
        "time": "Wed Jun 08 08:25:23 2011 +0800"
      },
      "message": "writeback: remove writeback_control.more_io\n\nWhen wbc.more_io was first introduced, it indicates whether there are\nat least one superblock whose s_more_io contains more IO work. Now with\nthe per-bdi writeback, it can be replaced with a simple b_more_io test.\n\nAcked-by: Jan Kara \u003cjack@suse.cz\u003e\nAcked-by: Mel Gorman \u003cmel@csn.ul.ie\u003e\nReviewed-by: Minchan Kim \u003cminchan.kim@gmail.com\u003e\nSigned-off-by: Wu Fengguang \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "a9c667f8f0656631ee5438baaf21bf30d5f67375",
      "tree": "eb92465fcb50126802b66fb509ed51a1fe966ad5",
      "parents": [
        "c03f8aa9abdd517477c2021ea1251939b4da49e6"
      ],
      "author": {
        "name": "Lukas Czerner",
        "email": "lczerner@redhat.com",
        "time": "Mon Jun 06 09:51:52 2011 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Mon Jun 06 09:51:52 2011 -0400"
      },
      "message": "ext4: fixed tracepoints cleanup\n\nWhile creating fixed tracepoints for ext3, basically by porting them\nfrom ext4, I found a lot of useless retyping, wrong type usage, useless\nvariable passing and other inconsistencies in the ext4 fixed tracepoint\ncode.\n\nThis patch cleans the fixed tracepoint code for ext4 and also simplify\nsome of them.\n\nSigned-off-by: Lukas Czerner \u003clczerner@redhat.com\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "0e833d8cfcb52b5ee3ead22cabbab81dea32c3f0",
      "tree": "0c64533ba9181c014a4b2dcda75c273ae0437dd6",
      "parents": [
        "4f1ba49efafccbc73017f824efa2505c81b247cd",
        "7b29dc21ea084be7ddfb536994a9cfae95337690"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jun 04 23:16:00 2011 +0900"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jun 04 23:16:00 2011 +0900"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (40 commits)\n  tg3: Fix tg3_skb_error_unmap()\n  net: tracepoint of net_dev_xmit sees freed skb and causes panic\n  drivers/net/can/flexcan.c: add missing clk_put\n  net: dm9000: Get the chip in a known good state before enabling interrupts\n  drivers/net/davinci_emac.c: add missing clk_put\n  af-packet: Add flag to distinguish VID 0 from no-vlan.\n  caif: Fix race when conditionally taking rtnl lock\n  usbnet/cdc_ncm: add missing .reset_resume hook\n  vlan: fix typo in vlan_dev_hard_start_xmit()\n  net/ipv4: Check for mistakenly passed in non-IPv4 address\n  iwl4965: correctly validate temperature value\n  bluetooth l2cap: fix locking in l2cap_global_chan_by_psm\n  ath9k: fix two more bugs in tx power\n  cfg80211: don\u0027t drop p2p probe responses\n  Revert \"net: fix section mismatches\"\n  drivers/net/usb/catc.c: Fix potential deadlock in catc_ctrl_run()\n  sctp: stop pending timers and purge queues when peer restart asoc\n  drivers/net: ks8842 Fix crash on received packet when in PIO mode.\n  ip_options_compile: properly handle unaligned pointer\n  iwlagn: fix incorrect PCI subsystem id for 6150 devices\n  ...\n"
    },
    {
      "commit": "ec764bf083a6ff396234351b51fd236f53c903bf",
      "tree": "30c0f8232fe10c76651114dea999b93fa2c8ade5",
      "parents": [
        "2e4ceec4edaef6e903422792de4f7f37de98cec6"
      ],
      "author": {
        "name": "Koki Sanagi",
        "email": "sanagi.koki@jp.fujitsu.com",
        "time": "Mon May 30 21:48:34 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 02 14:06:31 2011 -0700"
      },
      "message": "net: tracepoint of net_dev_xmit sees freed skb and causes panic\n\nBecause there is a possibility that skb is kfree_skb()ed and zero cleared\nafter ndo_start_xmit, we should not see the contents of skb like skb-\u003elen and\nskb-\u003edev-\u003ename after ndo_start_xmit. But trace_net_dev_xmit does that\nand causes panic by NULL pointer dereference.\nThis patch fixes trace_net_dev_xmit not to see the contents of skb directly.\n\nIf you want to reproduce this panic,\n\n1. Get tracepoint of net_dev_xmit on\n2. Create 2 guests on KVM\n2. Make 2 guests use virtio_net\n4. Execute netperf from one to another for a long time as a network burden\n5. host will panic(It takes about 30 minutes)\n\nSigned-off-by: Koki Sanagi \u003csanagi.koki@jp.fujitsu.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c4a227d89f758e582fd167bb15245f2704de99ef",
      "tree": "f5b6e0091e6543c14d1cd7cf1f93e097a96bbd64",
      "parents": [
        "87367a0b71a5188e34a913c05673b5078f71a64d",
        "f506b3dc0ec454a16d40cab9ee5d75435b39dc50"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat May 28 12:55:55 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat May 28 12:55:55 2011 -0700"
      },
      "message": "Merge branch \u0027perf-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027perf-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (25 commits)\n  perf: Fix SIGIO handling\n  perf top: Don\u0027t stop if no kernel symtab is found\n  perf top: Handle kptr_restrict\n  perf top: Remove unused macro\n  perf events: initialize fd array to -1 instead of 0\n  perf tools: Make sure kptr_restrict warnings fit 80 col terms\n  perf tools: Fix build on older systems\n  perf symbols: Handle /proc/sys/kernel/kptr_restrict\n  perf: Remove duplicate headers\n  ftrace: Add internal recursive checks\n  tracing: Update btrfs\u0027s tracepoints to use u64 interface\n  tracing: Add __print_symbolic_u64 to avoid warnings on 32bit machine\n  ftrace: Set ops-\u003eflag to enabled even on static function tracing\n  tracing: Have event with function tracer check error return\n  ftrace: Have ftrace_startup() return failure code\n  jump_label: Check entries limit in __jump_label_update\n  ftrace/recordmcount: Avoid STT_FUNC symbols as base on ARM\n  scripts/tags.sh: Add magic for trace-events for etags too\n  scripts/tags.sh: Fix ctags for DEFINE_EVENT()\n  x86/ftrace: Fix compiler warning in ftrace.c\n  ...\n"
    },
    {
      "commit": "8b29336fe01dab3541ebb283daddf9d0168c3f05",
      "tree": "d64c1a3e00bf66c9ea9b50085f22662871cb5696",
      "parents": [
        "9f1912c48ce829d24789e3e5d499de0d44d3306a",
        "1adb656e52e1159b0187bf6590df94c7ff44d389"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 12:14:41 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 12:14:41 2011 -0700"
      },
      "message": "Merge branch \u0027gpio/next\u0027 of git://git.secretlab.ca/git/linux-2.6\n\n* \u0027gpio/next\u0027 of git://git.secretlab.ca/git/linux-2.6:\n  gpio/via: rename VIA local config struct\n  basic_mmio_gpio: split into a gpio library and platform device\n  gpio: remove some legacy comments in build files\n  gpio: add trace events for setting direction and value\n  gpio/pca953x: Use handle_simple_irq instead of handle_edge_irq\n  gpiolib: export gpiochip_find\n  gpio: remove redundant Kconfig depends on GPIOLIB\n  basic_mmio_gpio: convert to non-__raw* accessors\n  basic_mmio_gpio: support direction registers\n  basic_mmio_gpio: support different input/output registers\n  basic_mmio_gpio: detect output method at probe time\n  basic_mmio_gpio: request register regions\n  basic_mmio_gpio: allow overriding number of gpio\n  basic_mmio_gpio: convert to platform_{get,set}_drvdata()\n  basic_mmio_gpio: remove runtime width/endianness evaluation\n"
    },
    {
      "commit": "7f34b746f79c1e1f8fd6d09799d133263ae7a504",
      "tree": "f79b9dac245c04dbb4793cdc281f9c695a98fbb7",
      "parents": [
        "2fc1b6f0d0a719e1e2a30bf076a3a799feaf6af2"
      ],
      "author": {
        "name": "liubo",
        "email": "liubo2009@cn.fujitsu.com",
        "time": "Tue Apr 19 09:35:31 2011 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed May 25 22:13:47 2011 -0400"
      },
      "message": "tracing: Update btrfs\u0027s tracepoints to use u64 interface\n\nTo avoid 64-\u003e32 truncating WARNING, update btrfs\u0027s tracepoints.\n\nSigned-off-by: Liu Bo \u003cliubo2009@cn.fujitsu.com\u003e\nLink: http://lkml.kernel.org/r/4DACE6E3.8080200@cn.fujitsu.com\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "2fc1b6f0d0a719e1e2a30bf076a3a799feaf6af2",
      "tree": "3101c47095ef438b6657b7e0dbb57b2f7188666f",
      "parents": [
        "3b6cfdb1714a33ae4d2ca9fbc818a42cf7adee69"
      ],
      "author": {
        "name": "liubo",
        "email": "liubo2009@cn.fujitsu.com",
        "time": "Tue Apr 19 09:35:28 2011 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed May 25 22:13:44 2011 -0400"
      },
      "message": "tracing: Add __print_symbolic_u64 to avoid warnings on 32bit machine\n\nFilesystem, like Btrfs, has some \"ULL\" macros, and when these macros are passed\nto tracepoints\u0027__print_symbolic(), there will be 64-\u003e32 truncate WARNINGS during\ncompiling on 32bit box.\n\nSigned-off-by: Liu Bo \u003cliubo2009@cn.fujitsu.com\u003e\nLink: http://lkml.kernel.org/r/4DACE6E0.7000507@cn.fujitsu.com\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "3f397c2144e46d9127662fdb6314f21960d8563d",
      "tree": "ef3401a6ac7e3b394ec10a1c586f5c1949b23edb",
      "parents": [
        "cc300d9ead66235e23c674babb8a4ae4ad4c9db8"
      ],
      "author": {
        "name": "Uwe Kleine-König",
        "email": "u.kleine-koenig@pengutronix.de",
        "time": "Fri May 20 00:40:19 2011 -0600"
      },
      "committer": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Fri May 20 00:40:19 2011 -0600"
      },
      "message": "gpio: add trace events for setting direction and value\n\nThis patch allows to trace gpio operations using ftrace\n\nSigned-off-by: Uwe Kleine-König \u003cu.kleine-koenig@pengutronix.de\u003e\nSigned-off-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\n"
    },
    {
      "commit": "eb04f2f04ed1227c266b3219c0aaeda525639718",
      "tree": "7f224483a3cd0e439cd64a8666ec9dc5ed178a3d",
      "parents": [
        "5765040ebfc9a28d9dcfaaaaf3d25840d922de96",
        "80d02085d99039b3b7f3a73c8896226b0cb1ba07"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 19 18:14:34 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 19 18:14:34 2011 -0700"
      },
      "message": "Merge branch \u0027core-rcu-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core-rcu-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (78 commits)\n  Revert \"rcu: Decrease memory-barrier usage based on semi-formal proof\"\n  net,rcu: convert call_rcu(prl_entry_destroy_rcu) to kfree\n  batman,rcu: convert call_rcu(softif_neigh_free_rcu) to kfree_rcu\n  batman,rcu: convert call_rcu(neigh_node_free_rcu) to kfree()\n  batman,rcu: convert call_rcu(gw_node_free_rcu) to kfree_rcu\n  net,rcu: convert call_rcu(kfree_tid_tx) to kfree_rcu()\n  net,rcu: convert call_rcu(xt_osf_finger_free_rcu) to kfree_rcu()\n  net/mac80211,rcu: convert call_rcu(work_free_rcu) to kfree_rcu()\n  net,rcu: convert call_rcu(wq_free_rcu) to kfree_rcu()\n  net,rcu: convert call_rcu(phonet_device_rcu_free) to kfree_rcu()\n  perf,rcu: convert call_rcu(swevent_hlist_release_rcu) to kfree_rcu()\n  perf,rcu: convert call_rcu(free_ctx) to kfree_rcu()\n  net,rcu: convert call_rcu(__nf_ct_ext_free_rcu) to kfree_rcu()\n  net,rcu: convert call_rcu(net_generic_release) to kfree_rcu()\n  net,rcu: convert call_rcu(netlbl_unlhsh_free_addr6) to kfree_rcu()\n  net,rcu: convert call_rcu(netlbl_unlhsh_free_addr4) to kfree_rcu()\n  security,rcu: convert call_rcu(sel_netif_free) to kfree_rcu()\n  net,rcu: convert call_rcu(xps_dev_maps_release) to kfree_rcu()\n  net,rcu: convert call_rcu(xps_map_release) to kfree_rcu()\n  net,rcu: convert call_rcu(rps_map_release) to kfree_rcu()\n  ...\n"
    },
    {
      "commit": "1d929b7a84438ad9012c5826f5617d79a3efcef1",
      "tree": "e8052fe083bc7cb33302bfa8cdc1b1b6f2fc782b",
      "parents": [
        "59a16ead572330deb38e5848151d30ed1af754bc"
      ],
      "author": {
        "name": "Mel Gorman",
        "email": "mgorman@suse.de",
        "time": "Wed May 11 15:13:39 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 11 18:50:45 2011 -0700"
      },
      "message": "mm: tracing: add missing GFP flags to tracing\n\ninclude/linux/gfp.h and include/trace/events/gfpflags.h are out of sync.\nWhen tracing is enabled, certain flags are not recognised and the text\noutput is less useful as a result.  Add the missing flags.\n\nSigned-off-by: Mel Gorman \u003cmgorman@suse.de\u003e\nCc: Andrea Arcangeli \u003caarcange@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a26ac2455ffcf3be5c6ef92bc6df7182700f2114",
      "tree": "601697c7c3fd152a1b3f29f43d3a028fc8fefd5f",
      "parents": [
        "12f5f524cafef3ab689929b118f2dfb8bf2be321"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paul.mckenney@linaro.org",
        "time": "Wed Jan 12 14:10:23 2011 -0800"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Thu May 05 23:16:54 2011 -0700"
      },
      "message": "rcu: move TREE_RCU from softirq to kthread\n\nIf RCU priority boosting is to be meaningful, callback invocation must\nbe boosted in addition to preempted RCU readers.  Otherwise, in presence\nof CPU real-time threads, the grace period ends, but the callbacks don\u0027t\nget invoked.  If the callbacks don\u0027t get invoked, the associated memory\ndoesn\u0027t get freed, so the system is still subject to OOM.\n\nBut it is not reasonable to priority-boost RCU_SOFTIRQ, so this commit\nmoves the callback invocations to a kthread, which can be boosted easily.\n\nAlso add comments and properly synchronized all accesses to\nrcu_cpu_kthread_task, as suggested by Lai Jiangshan.\n\nSigned-off-by: Paul E. McKenney \u003cpaul.mckenney@linaro.org\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nReviewed-by: Josh Triplett \u003cjosh@joshtriplett.org\u003e\n"
    },
    {
      "commit": "49cac01e1fa74174d72adb0e872504a7fefd7c01",
      "tree": "a1ab1974eceea3179a604413955ad8369ba715d7",
      "parents": [
        "a237c1c5bc5dc5c76a21be922dca4826f3eca8ca"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Sat Apr 16 13:51:05 2011 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Sat Apr 16 13:51:05 2011 +0200"
      },
      "message": "block: make unplug timer trace event correspond to the schedule() unplug\n\nIt\u0027s a pretty close match to what we had before - the timer triggering\nwould mean that nobody unplugged the plug in due time, in the new\nscheme this matches very closely what the schedule() unplug now is.\nIt\u0027s essentially the difference between an explicit unplug (IO unplug)\nor an implicit unplug (timer unplug, we scheduled with pending IO\nqueued).\n\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "94b5eb28b41cc79d9713696e0005ae167b5afd1b",
      "tree": "404680c86a360bfe623b5a287ee87dd5263b5a8e",
      "parents": [
        "d9c97833179036408e53ef5f3f5c7eaf781769bc"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Tue Apr 12 10:12:19 2011 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Tue Apr 12 10:12:19 2011 +0200"
      },
      "message": "block: fixup block IO unplug trace call\n\nIt was removed with the on-stack plugging, readd it and track the\ndepth of requests added when flushing the plug.\n\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "d9c97833179036408e53ef5f3f5c7eaf781769bc",
      "tree": "3c0a6d7942f61fcdbeb029664400c3a9b7d65494",
      "parents": [
        "109b81296c63228578d4760794d8dd46e02eddfb"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Tue Apr 12 10:06:33 2011 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Tue Apr 12 10:06:33 2011 +0200"
      },
      "message": "block: remove block_unplug_timer() trace point\n\nWe no longer have an unplug timer running, so no point in keeping\nthe trace point.\n\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "212a17ab878305600e607f637d2d8a49d9f7ef25",
      "tree": "64ad97fcc3d5c49ebd735f5508643c798aeecddf",
      "parents": [
        "baaca1a61497d97cec595fedce03b0a23b983e64",
        "d9d04879321af570ea7285c6dad92d9c3cd108a1"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Mar 28 15:31:05 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Mar 28 15:31:05 2011 -0700"
      },
      "message": "Merge branch \u0027for-linus-unmerged\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable\n\n* \u0027for-linus-unmerged\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable: (45 commits)\n  Btrfs: fix __btrfs_map_block on 32 bit machines\n  btrfs: fix possible deadlock by clearing __GFP_FS flag\n  btrfs: check link counter overflow in link(2)\n  btrfs: don\u0027t mess with i_nlink of unlocked inode in rename()\n  Btrfs: check return value of btrfs_alloc_path()\n  Btrfs: fix OOPS of empty filesystem after balance\n  Btrfs: fix memory leak of empty filesystem after balance\n  Btrfs: fix return value of setflags ioctl\n  Btrfs: fix uncheck memory allocations\n  btrfs: make inode ref log recovery faster\n  Btrfs: add btrfs_trim_fs() to handle FITRIM\n  Btrfs: adjust btrfs_discard_extent() return errors and trimmed bytes\n  Btrfs: make btrfs_map_block() return entire free extent for each device of RAID0/1/10/DUP\n  Btrfs: make update_reserved_bytes() public\n  btrfs: return EXDEV when linking from different subvolumes\n  Btrfs: Per file/directory controls for COW and compression\n  Btrfs: add datacow flag in inode flag\n  btrfs: use GFP_NOFS instead of GFP_KERNEL\n  Btrfs: check return value of read_tree_block()\n  btrfs: properly access unaligned checksum buffer\n  ...\n\nFix up trivial conflicts in fs/btrfs/volumes.c due to plug removal in\nthe block layer.\n"
    },
    {
      "commit": "1abe9b8a138c9988ba8f7bfded6453649a31541f",
      "tree": "9fe0c181e78b075b65f6b1802f0a5092e7afbc6a",
      "parents": [
        "240f62c8756df285da11469259b3900f32883168"
      ],
      "author": {
        "name": "liubo",
        "email": "liubo2009@cn.fujitsu.com",
        "time": "Thu Mar 24 11:18:59 2011 +0000"
      },
      "committer": {
        "name": "root",
        "email": "Chris Mason chris.mason@oracle.com",
        "time": "Mon Mar 28 05:37:33 2011 -0400"
      },
      "message": "Btrfs: add initial tracepoint support for btrfs\n\nTracepoints can provide insight into why btrfs hits bugs and be greatly\nhelpful for debugging, e.g\n              dd-7822  [000]  2121.641088: btrfs_inode_request: root \u003d 5(FS_TREE), gen \u003d 4, ino \u003d 256, blocks \u003d 8, disk_i_size \u003d 0, last_trans \u003d 8, logged_trans \u003d 0\n              dd-7822  [000]  2121.641100: btrfs_inode_new: root \u003d 5(FS_TREE), gen \u003d 8, ino \u003d 257, blocks \u003d 0, disk_i_size \u003d 0, last_trans \u003d 0, logged_trans \u003d 0\n btrfs-transacti-7804  [001]  2146.935420: btrfs_cow_block: root \u003d 2(EXTENT_TREE), refs \u003d 2, orig_buf \u003d 29368320 (orig_level \u003d 0), cow_buf \u003d 29388800 (cow_level \u003d 0)\n btrfs-transacti-7804  [001]  2146.935473: btrfs_cow_block: root \u003d 1(ROOT_TREE), refs \u003d 2, orig_buf \u003d 29364224 (orig_level \u003d 0), cow_buf \u003d 29392896 (cow_level \u003d 0)\n btrfs-transacti-7804  [001]  2146.972221: btrfs_transaction_commit: root \u003d 1(ROOT_TREE), gen \u003d 8\n   flush-btrfs-2-7821  [001]  2155.824210: btrfs_chunk_alloc: root \u003d 3(CHUNK_TREE), offset \u003d 1103101952, size \u003d 1073741824, num_stripes \u003d 1, sub_stripes \u003d 0, type \u003d DATA\n   flush-btrfs-2-7821  [001]  2155.824241: btrfs_cow_block: root \u003d 2(EXTENT_TREE), refs \u003d 2, orig_buf \u003d 29388800 (orig_level \u003d 0), cow_buf \u003d 29396992 (cow_level \u003d 0)\n   flush-btrfs-2-7821  [001]  2155.824255: btrfs_cow_block: root \u003d 4(DEV_TREE), refs \u003d 2, orig_buf \u003d 29372416 (orig_level \u003d 0), cow_buf \u003d 29401088 (cow_level \u003d 0)\n   flush-btrfs-2-7821  [000]  2155.824329: btrfs_cow_block: root \u003d 3(CHUNK_TREE), refs \u003d 2, orig_buf \u003d 20971520 (orig_level \u003d 0), cow_buf \u003d 20975616 (cow_level \u003d 0)\n btrfs-endio-wri-7800  [001]  2155.898019: btrfs_cow_block: root \u003d 5(FS_TREE), refs \u003d 2, orig_buf \u003d 29384704 (orig_level \u003d 0), cow_buf \u003d 29405184 (cow_level \u003d 0)\n btrfs-endio-wri-7800  [001]  2155.898043: btrfs_cow_block: root \u003d 7(CSUM_TREE), refs \u003d 2, orig_buf \u003d 29376512 (orig_level \u003d 0), cow_buf \u003d 29409280 (cow_level \u003d 0)\n\nHere is what I have added:\n\n1) ordere_extent:\n        btrfs_ordered_extent_add\n        btrfs_ordered_extent_remove\n        btrfs_ordered_extent_start\n        btrfs_ordered_extent_put\n\nThese provide critical information to understand how ordered_extents are\nupdated.\n\n2) extent_map:\n        btrfs_get_extent\n\nextent_map is used in both read and write cases, and it is useful for tracking\nhow btrfs specific IO is running.\n\n3) writepage:\n        __extent_writepage\n        btrfs_writepage_end_io_hook\n\nPages are cirtical resourses and produce a lot of corner cases during writeback,\nso it is valuable to know how page is written to disk.\n\n4) inode:\n        btrfs_inode_new\n        btrfs_inode_request\n        btrfs_inode_evict\n\nThese can show where and when a inode is created, when a inode is evicted.\n\n5) sync:\n        btrfs_sync_file\n        btrfs_sync_fs\n\nThese show sync arguments.\n\n6) transaction:\n        btrfs_transaction_commit\n\nIn transaction based filesystem, it will be useful to know the generation and\nwho does commit.\n\n7) back reference and cow:\n\tbtrfs_delayed_tree_ref\n\tbtrfs_delayed_data_ref\n\tbtrfs_delayed_ref_head\n\tbtrfs_cow_block\n\nBtrfs natively supports back references, these tracepoints are helpful on\nunderstanding btrfs\u0027s COW mechanism.\n\n8) chunk:\n\tbtrfs_chunk_alloc\n\tbtrfs_chunk_free\n\nChunk is a link between physical offset and logical offset, and stands for space\ninfomation in btrfs, and these are helpful on tracing space things.\n\n9) reserved_extent:\n\tbtrfs_reserved_extent_alloc\n\tbtrfs_reserved_extent_free\n\nThese can show how btrfs uses its space.\n\nSigned-off-by: Liu Bo \u003cliubo2009@cn.fujitsu.com\u003e\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n"
    },
    {
      "commit": "ae005cbed12d0b340b04b59d6f5c56e710b3895d",
      "tree": "d464865bcc97bea05eab4eba0d10bcad4ec89b93",
      "parents": [
        "3961cdf85b749f6bab50ad31ee97e9277e7a3b70",
        "0ba0851714beebb800992e5105a79dc3a4c504b0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 25 09:57:40 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 25 09:57:41 2011 -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: (43 commits)\n  ext4: fix a BUG in mb_mark_used during trim.\n  ext4: unused variables cleanup in fs/ext4/extents.c\n  ext4: remove redundant set_buffer_mapped() in ext4_da_get_block_prep()\n  ext4: add more tracepoints and use dev_t in the trace buffer\n  ext4: don\u0027t kfree uninitialized s_group_info members\n  ext4: add missing space in printk\u0027s in __ext4_grp_locked_error()\n  ext4: add FITRIM to compat_ioctl.\n  ext4: handle errors in ext4_clear_blocks()\n  ext4: unify the ext4_handle_release_buffer() api\n  ext4: handle errors in ext4_rename\n  jbd2: add COW fields to struct jbd2_journal_handle\n  jbd2: add the b_cow_tid field to journal_head struct\n  ext4: Initialize fsync transaction ids in ext4_new_inode()\n  ext4: Use single thread to perform DIO unwritten convertion\n  ext4: optimize ext4_bio_write_page() when no extent conversion is needed\n  ext4: skip orphan cleanup if fs has unknown ROCOMPAT features\n  ext4: use the nblocks arg to ext4_truncate_restart_trans()\n  ext4: fix missing iput of root inode for some mount error paths\n  ext4: make FIEMAP and delayed allocation play well together\n  ext4: suppress verbose debugging information if malloc-debug is off\n  ...\n\nFi up conflicts in fs/ext4/super.c due to workqueue changes\n"
    },
    {
      "commit": "0562e0bad483d10e9651fbb8f21dc3d0bad57374",
      "tree": "19f6597f92c028badcb6df360ccac22240378e25",
      "parents": [
        "4596fe07679ff0fae904515691ea747467614871"
      ],
      "author": {
        "name": "Jiaying Zhang",
        "email": "jiayingz@google.com",
        "time": "Mon Mar 21 21:38:05 2011 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Mon Mar 21 21:38:05 2011 -0400"
      },
      "message": "ext4: add more tracepoints and use dev_t in the trace buffer\n\n- Add more ext4 tracepoints.\n- Change ext4 tracepoints to use dev_t field with MAJOR/MINOR macros\nso that we can save 4 bytes in the ring buffer on some platforms.\n- Add sync_mode to ext4_da_writepages, ext4_da_write_pages, and\next4_da_writepages_result tracepoints. Also remove for_reclaim\nfield from ext4_da_writepages since it is usually not very useful.\n\nSigned-off-by: Jiaying Zhang \u003cjiayingz@google.com\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "d3e458d78167102cc961237cfceef6fffc80c0b3",
      "tree": "e9195c1294daf053614e63ac52b0b44a28479017",
      "parents": [
        "f2e1fbb5f2177227f71c4fc0491e531dd7acd385",
        "d351cf4603edb2a5bfa9a48d06c425511c63f2a3"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 18 10:46:37 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 18 10:46:37 2011 -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: (308 commits)\n  ALSA: sound/pci/asihpi: check adapter index in hpi_ioctl\n  ALSA: aloop - Fix possible IRQ lock inversion\n  ALSA: sound/core: merge list_del()/list_add_tail() to list_move_tail()\n  ALSA: ctxfi - use list_move() instead of list_del()/list_add() combination\n  ALSA: firewire - msleep needs delay.h\n  ALSA: firewire-lib, firewire-speakers: handle packet queueing errors\n  ALSA: firewire-lib: allocate DMA buffer separately\n  ALSA: firewire-lib: use no-info SYT for packets without SYT sample\n  ALSA: add LaCie FireWire Speakers/Griffin FireWave Surround driver\n  ALSA: hda - Remove an unused variable in patch_realtek.c\n  ALSA: hda - pin-adc-mux-dmic auto-configuration of 92HD8X codecs\n  ALSA: hda - fix digital mic selection in mixer on 92HD8X codecs\n  ALSA: hda - Move default input-src selection to init part\n  ALSA: hda - Initialize special cases for input src in init phase\n  ALSA: ctxfi - Clear input settings before initialization\n  ALSA: ctxfi - Fix SPDIF status retrieval\n  ALSA: ctxfi - Fix incorrect SPDIF status bit mask\n  ALSA: ctxfi - Fix microphone boost codes/comments\n  ALSA: atiixp - Fix wrong time-out checks during ac-link reset\n  ALSA: intel8x0m: append \u0027m\u0027 to \"r_intel8x0\"\n  ...\n"
    }
  ],
  "next": "c55d267de274d308927b60c3e740c1a826832317"
}
