)]}'
{
  "log": [
    {
      "commit": "4d4abdcb1dee03a4f9d6d2021622ed07e14dfd17",
      "tree": "4ed4c74b70240451065165fda5fb2059f8c6b1e5",
      "parents": [
        "0342cbcfced2ee937d7c8e1c63f3d3082da7c7dc",
        "7fcfd1abd6480d3b9ef17f5759c175e036e835cf"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 22 16:44:39 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 22 16:44:39 2011 -0700"
      },
      "message": "Merge branch \u0027perf-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027perf-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (123 commits)\n  perf: Remove the nmi parameter from the oprofile_perf backend\n  x86, perf: Make copy_from_user_nmi() a library function\n  perf: Remove perf_event_attr::type check\n  x86, perf: P4 PMU - Fix typos in comments and style cleanup\n  perf tools: Make test use the preset debugfs path\n  perf tools: Add automated tests for events parsing\n  perf tools: De-opt the parse_events function\n  perf script: Fix display of IP address for non-callchain path\n  perf tools: Fix endian conversion reading event attr from file header\n  perf tools: Add missing \u0027node\u0027 alias to the hw_cache[] array\n  perf probe: Support adding probes on offline kernel modules\n  perf probe: Add probed module in front of function\n  perf probe: Introduce debuginfo to encapsulate dwarf information\n  perf-probe: Move dwarf library routines to dwarf-aux.{c, h}\n  perf probe: Remove redundant dwarf functions\n  perf probe: Move strtailcmp to string.c\n  perf probe: Rename DIE_FIND_CB_FOUND to DIE_FIND_CB_END\n  tracing/kprobe: Update symbol reference when loading module\n  tracing/kprobes: Support module init function probing\n  kprobes: Return -ENOENT if probe point doesn\u0027t exist\n  ...\n"
    },
    {
      "commit": "0342cbcfced2ee937d7c8e1c63f3d3082da7c7dc",
      "tree": "fb98291d321a50de2dfd99f9bcaa33274f0c3952",
      "parents": [
        "391d6276db9fbdedfbc30e1b56390414f0e55988",
        "7f70893173b056df691b2ee7546bb44fd9abae6a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 22 16:44:08 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 22 16:44:08 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:\n  rcu: Fix wrong check in list_splice_init_rcu()\n  net,rcu: Convert call_rcu(xt_rateest_free_rcu) to kfree_rcu()\n  sysctl,rcu: Convert call_rcu(free_head) to kfree\n  vmalloc,rcu: Convert call_rcu(rcu_free_vb) to kfree_rcu()\n  vmalloc,rcu: Convert call_rcu(rcu_free_va) to kfree_rcu()\n  ipc,rcu: Convert call_rcu(ipc_immediate_free) to kfree_rcu()\n  ipc,rcu: Convert call_rcu(free_un) to kfree_rcu()\n  security,rcu: Convert call_rcu(sel_netport_free) to kfree_rcu()\n  security,rcu: Convert call_rcu(sel_netnode_free) to kfree_rcu()\n  ia64,rcu: Convert call_rcu(sn_irq_info_free) to kfree_rcu()\n  block,rcu: Convert call_rcu(disk_free_ptbl_rcu_cb) to kfree_rcu()\n  scsi,rcu: Convert call_rcu(fc_rport_free_rcu) to kfree_rcu()\n  audit_tree,rcu: Convert call_rcu(__put_tree) to kfree_rcu()\n  security,rcu: Convert call_rcu(whitelist_item_free) to kfree_rcu()\n  md,rcu: Convert call_rcu(free_conf) to kfree_rcu()\n"
    },
    {
      "commit": "75b56ec294b074d70f8a676ab02611a3fea76cab",
      "tree": "d5299adb43ac6fc8dcc50c3e438c7f0cdd452b1c",
      "parents": [
        "6d16d6d9bb6f93e6f8506cfb3e91795d6443d54f",
        "efbe2eee6dc0f179be84292bf269528b3ec365e9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 22 16:43:21 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 22 16:43:21 2011 -0700"
      },
      "message": "Merge branch \u0027core-locking-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core-locking-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  lockdep: Fix lockdep_no_validate against IRQ states\n  mutex: Make mutex_destroy() an inline function\n  plist: Remove the need to supply locks to plist heads\n  lockup detector: Fix reference to the non-existent CONFIG_DETECT_SOFTLOCKUP option\n"
    },
    {
      "commit": "6d16d6d9bb6f93e6f8506cfb3e91795d6443d54f",
      "tree": "92a1c9e4b645fa6d1fffedaeb56141b66f847320",
      "parents": [
        "431bf99d26157d56689e5de65bd27ce9f077fc3f",
        "b395fb36d59e17b9335805c10fa30fc51c8a94c6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 22 16:39:42 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 22 16:39:42 2011 -0700"
      },
      "message": "Merge branch \u0027core-iommu-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core-iommu-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  iommu/core: Fix build with INTR_REMAP\u003dy \u0026\u0026 CONFIG_DMAR\u003dn\n  iommu/amd: Don\u0027t use MSI address range for DMA addresses\n  iommu/amd: Move missing parts to drivers/iommu\n  iommu: Move iommu Kconfig entries to submenu\n  x86/ia64: intel-iommu: move to drivers/iommu/\n  x86: amd_iommu: move to drivers/iommu/\n  msm: iommu: move to drivers/iommu/\n  drivers: iommu: move to a dedicated folder\n  x86/amd-iommu: Store device alias as dev_data pointer\n  x86/amd-iommu: Search for existind dev_data before allocting a new one\n  x86/amd-iommu: Allow dev_data-\u003ealias to be NULL\n  x86/amd-iommu: Use only dev_data in low-level domain attach/detach functions\n  x86/amd-iommu: Use only dev_data for dte and iotlb flushing routines\n  x86/amd-iommu: Store ATS state in dev_data\n  x86/amd-iommu: Store devid in dev_data\n  x86/amd-iommu: Introduce global dev_data_list\n  x86/amd-iommu: Remove redundant device_flush_dte() calls\n  iommu-api: Add missing header file\n\nFix up trivial conflicts (independent additions close to each other) in\ndrivers/Makefile and include/linux/pci.h\n"
    },
    {
      "commit": "431bf99d26157d56689e5de65bd27ce9f077fc3f",
      "tree": "b15e357039956fcdd0e0e6177d2fc99bb3cfa822",
      "parents": [
        "72f96e0e38d7e29ba16dcfd824ecaebe38b8293e",
        "7ae033cc0dfce68d8e0c83aca60837cf2bf0d2e6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 22 16:01:57 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 22 16:01:57 2011 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/suspend-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/suspend-2.6: (51 commits)\n  PM: Improve error code of pm_notifier_call_chain()\n  PM: Add \"RTC\" to PM trace time stamps to avoid confusion\n  PM / Suspend: Export suspend_set_ops, suspend_valid_only_mem\n  PM / Suspend: Add .suspend_again() callback to suspend_ops\n  PM / OPP: Introduce function to free cpufreq table\n  ARM / shmobile: Return -EBUSY from A4LC power off if A3RV is active\n  PM / Domains: Take .power_off() error code into account\n  ARM / shmobile: Use genpd_queue_power_off_work()\n  ARM / shmobile: Use pm_genpd_poweroff_unused()\n  PM / Domains: Introduce function to power off all unused PM domains\n  OMAP: PM: disable idle on suspend for GPIO and UART\n  OMAP: PM: omap_device: add API to disable idle on suspend\n  OMAP: PM: omap_device: add system PM methods for PM domain handling\n  OMAP: PM: omap_device: conditionally use PM domain runtime helpers\n  PM / Runtime: Add new helper function: pm_runtime_status_suspended()\n  PM / Domains: Queue up power off work only if it is not pending\n  PM / Domains: Improve handling of wakeup devices during system suspend\n  PM / Domains: Do not restore all devices on power off error\n  PM / Domains: Allow callbacks to execute all runtime PM helpers\n  PM / Domains: Do not execute device callbacks under locks\n  ...\n"
    },
    {
      "commit": "5a791ea4fa4495f7136679cb5366f6544148e613",
      "tree": "dc27644add7d5f1165db19c28c25ae842e5f96b2",
      "parents": [
        "8209f53d79444747782a28520187abaf689761f2",
        "9c5a2ba70251ecaab18c7a83e38b3c620223476c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 22 15:07:15 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 22 15:07:15 2011 -0700"
      },
      "message": "Merge branch \u0027for-3.1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq\n\n* \u0027for-3.1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq:\n  workqueue: separate out drain_workqueue() from destroy_workqueue()\n  workqueue: remove cancel_rearming_delayed_work[queue]()\n"
    },
    {
      "commit": "8209f53d79444747782a28520187abaf689761f2",
      "tree": "726270ea29e037f026d77a99787b9d844531ac42",
      "parents": [
        "22a3b9771117d566def0150ea787fcc95f16e724",
        "eac1b5e57d7abc836e78fd3fbcf77dbeed01edc9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 22 15:06:50 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 22 15:06:50 2011 -0700"
      },
      "message": "Merge branch \u0027ptrace\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/oleg/misc\n\n* \u0027ptrace\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/oleg/misc: (39 commits)\n  ptrace: do_wait(traced_leader_killed_by_mt_exec) can block forever\n  ptrace: fix ptrace_signal() \u0026\u0026 STOP_DEQUEUED interaction\n  connector: add an event for monitoring process tracers\n  ptrace: dont send SIGSTOP on auto-attach if PT_SEIZED\n  ptrace: mv send-SIGSTOP from do_fork() to ptrace_init_task()\n  ptrace_init_task: initialize child-\u003ejobctl explicitly\n  has_stopped_jobs: s/task_is_stopped/SIGNAL_STOP_STOPPED/\n  ptrace: make former thread ID available via PTRACE_GETEVENTMSG after PTRACE_EVENT_EXEC stop\n  ptrace: wait_consider_task: s/same_thread_group/ptrace_reparented/\n  ptrace: kill real_parent_is_ptracer() in in favor of ptrace_reparented()\n  ptrace: ptrace_reparented() should check same_thread_group()\n  redefine thread_group_leader() as exit_signal \u003e\u003d 0\n  do not change dead_task-\u003eexit_signal\n  kill task_detached()\n  reparent_leader: check EXIT_DEAD instead of task_detached()\n  make do_notify_parent() __must_check, update the callers\n  __ptrace_detach: avoid task_detached(), check do_notify_parent()\n  kill tracehook_notify_death()\n  make do_notify_parent() return bool\n  ptrace: s/tracehook_tracer_task()/ptrace_parent()/\n  ...\n"
    },
    {
      "commit": "22a3b9771117d566def0150ea787fcc95f16e724",
      "tree": "20e24aa4df50cde8d28211531e893a7be61d1dfe",
      "parents": [
        "acb41c0f928fdb84a1c3753ac92c534a2a0f08d2",
        "a91f423e598912ab301592c7759cfd89e10682a1"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 22 15:02:58 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 22 15:02:58 2011 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid: (31 commits)\n  HID: fix support for Microsoft comfort mouse 4500\n  HID: hid-multitouch: add one new multitouch device\u0027s VID/PID\n  HID: prodikeys: remove a redundant forward declaration of struct pcmidi_snd\n  HID: prodikeys: make needlessly global symbols static\n  HID: emsff: properly handle emsff_init failure\n  HID: ACRUX - add missing hid_hw_stop() in ax_probe() error path\n  HID: fix horizontal wheel for ms comfort mouse 4500\n  HID: uclogic: Add support for UC-Logic WP1062\n  HID: wiimote: Add sysfs support to wiimote driver\n  HID: wiimote: Cache wiimote led state\n  HID: wiimote: Add wiimote led request\n  HID: wiimote: Add wiimote input button parser\n  HID: wiimote: Add wiimote event handler\n  HID: wiimote: Add output queue for wiimote driver\n  HID: wiimote: Add wiimote send function\n  HID: wiimote: Synchronize wiimote input and hid event handling\n  HID: wiimote: Register input device in wiimote hid driver\n  HID: wiimote: Add wiimote device structure\n  HID: wiimote: Register wiimote hid driver stub\n  HID: wiimote: Add Nintendo Wii Remote driver stub\n  ...\n"
    },
    {
      "commit": "acb41c0f928fdb84a1c3753ac92c534a2a0f08d2",
      "tree": "4bf92f1c2b1f36fa68d3e77d646b04b863e1a7e4",
      "parents": [
        "8181780c163e7111f15619067cfa044172d532e1",
        "ef3b4f8cc20e80c767e47b848fb7512770ab80d7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 22 14:54:02 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 22 14:54:02 2011 -0700"
      },
      "message": "Merge branch \u0027of-pci\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc\n\n* \u0027of-pci\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc:\n  pci/of: Consolidate pci_bus_to_OF_node()\n  pci/of: Consolidate pci_device_to_OF_node()\n  x86/devicetree: Use generic PCI \u003c-\u003e OF matching\n  microblaze/pci: Move the remains of pci_32.c to pci-common.c\n  microblaze/pci: Remove powermac originated cruft\n  pci/of: Match PCI devices to OF nodes dynamically\n"
    },
    {
      "commit": "8181780c163e7111f15619067cfa044172d532e1",
      "tree": "7eec99ddd1b20e9018edfba5c05a179b317c27fe",
      "parents": [
        "7235dd74a4733d4b3651349b5261d2e06996427d",
        "99ce39e359fa29e4b609a6a13485e7573eda5dfb"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 22 14:53:38 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 22 14:53:38 2011 -0700"
      },
      "message": "Merge branch \u0027devicetree/next\u0027 of git://git.secretlab.ca/git/linux-2.6\n\n* \u0027devicetree/next\u0027 of git://git.secretlab.ca/git/linux-2.6:\n  dt: include linux/errno.h in linux/of_address.h\n  of/address: Add of_find_matching_node_by_address helper\n  dt: remove extra xsysace platform_driver registration\n  tty/serial: Add devicetree support for nVidia Tegra serial ports\n  dt: add empty of_property_read_u32[_array] for non-dt\n  dt: bindings: move SEC node under new crypto/\n  dt: add helper function to read u32 arrays\n  tty/serial: change of_serial to use new of_property_read_u32() api\n  dt: add \u0027const\u0027 for of_property_read_string parameter **out_string\n  dt: add helper functions to read u32 and string property values\n  tty: of_serial: support for 32 bit accesses\n  dt: document the of_serial bindings\n  dt/platform: allow device name to be overridden\n  drivers/amba: create devices from device tree\n  dt: add of_platform_populate() for creating device from the device tree\n  dt: Add default match table for bus ids\n"
    },
    {
      "commit": "c7c8518498e82591d7784452f5674c3aeb4d079c",
      "tree": "790ff7e6b6741daf32ec686b9a302b957b07c0f4",
      "parents": [
        "ece236ce2fad9c27a6fd2530f899289025194bce",
        "591567a5ea25852f20b7ef2953f6f72020121199"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 22 14:50:57 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 22 14:50:57 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: (61 commits)\n  gpio/mxc/mxs: fix build error introduced by the irq_gc_ack() renaming\n  mcp23s08: add i2c support\n  mcp23s08: isolate spi specific parts\n  mcp23s08: get rid of setup/teardown callbacks\n  gpio/tegra: dt: add binding for gpio polarity\n  mcp23s08: remove unused work queue\n  gpio/da9052: remove a redundant assignment for gpio-\u003eda9052\n  gpio/mxc: add device tree probe support\n  ARM: mxc: use ARCH_NR_GPIOS to define gpio number\n  gpio/mxc: get rid of the uses of cpu_is_mx()\n  gpio/mxc: add missing initialization of basic_mmio_gpio shadow variables\n  gpio: Move mpc5200 gpio driver to drivers/gpio\n  GPIO: DA9052 GPIO module v3\n  gpio/tegra: Use engineering names in DT compatible property\n  of/gpio: Add new method for getting gpios under different property names\n  gpio/dt: Refine GPIO device tree binding\n  gpio/ml-ioh: fix off-by-one for displaying variable i in dev_err\n  gpio/pca953x: Deprecate meaningless device-tree bindings\n  gpio/pca953x: Remove dynamic platform data pointer\n  gpio/pca953x: Fix IRQ support.\n  ...\n"
    },
    {
      "commit": "ece236ce2fad9c27a6fd2530f899289025194bce",
      "tree": "474b793205872206a2a3f7d409ff9b1f81f3a9a8",
      "parents": [
        "441c196e84b11aad3123baa9320eee7abc6b5c98",
        "4460207561290c3be7e6c7538f22690028170c1d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 22 14:50:12 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 22 14:50:12 2011 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband: (26 commits)\n  IB/qib: Defer HCA error events to tasklet\n  mlx4_core: Bump the driver version to 1.0\n  RDMA/cxgb4: Use printk_ratelimited() instead of printk_ratelimit()\n  IB/mlx4: Support PMA counters for IBoE\n  IB/mlx4: Use flow counters on IBoE ports\n  IB/pma: Add include file for IBA performance counters definitions\n  mlx4_core: Add network flow counters\n  mlx4_core: Fix location of counter index in QP context struct\n  mlx4_core: Read extended capabilities into the flags field\n  mlx4_core: Extend capability flags to 64 bits\n  IB/mlx4: Generate GID change events in IBoE code\n  IB/core: Add GID change event\n  RDMA/cma: Don\u0027t allow IPoIB port space for IBoE\n  RDMA: Allow for NULL .modify_device() and .modify_port() methods\n  IB/qib: Update active link width\n  IB/qib: Fix potential deadlock with link down interrupt\n  IB/qib: Add sysfs interface to read free contexts\n  IB/mthca: Remove unnecessary read of PCI_CAP_ID_EXP\n  IB/qib: Remove double define\n  IB/qib: Remove unnecessary read of PCI_CAP_ID_EXP\n  ...\n"
    },
    {
      "commit": "441c196e84b11aad3123baa9320eee7abc6b5c98",
      "tree": "ea51d689c9ac09cce10a5758f19d6adbd8a7a9d7",
      "parents": [
        "951cc93a7493a81a47e20231441bc6cf17c98a37",
        "9a00c24ae7cb08dcd46edf1327a47871e8466444"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 22 14:49:48 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 22 14:49:48 2011 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6:\n  firewire: document the sysfs ABIs\n  firewire: cdev: ABI documentation enhancements\n  firewire: cdev: prevent race between first get_info ioctl and bus reset event queuing\n  firewire: cdev: return -ENOTTY for unimplemented ioctls, not -EINVAL\n  firewire: ohci: skip soft reset retries after card ejection\n  firewire: ohci: fix PHY reg access after card ejection\n  firewire: ohci: add a comment on PHY reg access serialization\n  firewire: ohci: reduce potential context_stop latency\n  firewire: ohci: remove superfluous posted write flushes\n  firewire: net: replacing deprecated __attribute__((packed)) with __packed\n"
    },
    {
      "commit": "951cc93a7493a81a47e20231441bc6cf17c98a37",
      "tree": "f53934f0f225e0215a85c8c59af4c6513e89e3f1",
      "parents": [
        "a7e1aabb28e8154ce987b622fd78d80a1ca39361",
        "415b3334a21aa67806c52d1acf4e72e14f7f402f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 22 14:43:13 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 22 14:43:13 2011 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next: (1287 commits)\n  icmp: Fix regression in nexthop resolution during replies.\n  net: Fix ppc64 BPF JIT dependencies.\n  acenic: include NET_SKB_PAD headroom to incoming skbs\n  ixgbe: convert to ndo_fix_features\n  ixgbe: only enable WoL for magic packet by default\n  ixgbe: remove ifdef check for non-existent define\n  ixgbe: Pass staterr instead of re-reading status and error bits from descriptor\n  ixgbe: Move interrupt related values out of ring and into q_vector\n  ixgbe: add structure for containing RX/TX rings to q_vector\n  ixgbe: inline the ixgbe_maybe_stop_tx function\n  ixgbe: Update ATR to use recorded TX queues instead of CPU for routing\n  igb: Fix for DH89xxCC near end loopback test\n  e1000: always call e1000_check_for_link() on e1000_ce4100 MACs.\n  netxen: add fw version compatibility check\n  be2net: request native mode each time the card is reset\n  ipv4: Constrain UFO fragment sizes to multiples of 8 bytes\n  virtio_net: Fix panic in virtnet_remove\n  ipv6: make fragment identifications less predictable\n  ipv6: unshare inetpeers\n  can: make function can_get_bittiming static\n  ...\n"
    },
    {
      "commit": "a91f423e598912ab301592c7759cfd89e10682a1",
      "tree": "e6519241f27f4b3ea237121730f2b50984ec2c67",
      "parents": [
        "901e64dbdb5998b9248c372a401c921bbdf662f6",
        "b580169affd7ccc9347cbf4d5f4db1480ee7ee06",
        "3c1c2fce64fdfa2f0c0ff4fffb3bb171ea6361ca"
      ],
      "author": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Fri Jul 22 22:47:08 2011 +0200"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Fri Jul 22 22:47:08 2011 +0200"
      },
      "message": "Merge branches \u0027roccat\u0027, \u0027upstream\u0027 and \u0027wiimote\u0027 into for-linus\n"
    },
    {
      "commit": "a7e1aabb28e8154ce987b622fd78d80a1ca39361",
      "tree": "8671d8faf51d43665045b7362a177a23dc88921b",
      "parents": [
        "111ad119d1765b1bbef2629a5f2bd825caeb7e74",
        "996ba96a97f7406052486682846d68935a60e986"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 22 13:45:50 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 22 13:45:50 2011 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus:\n  lguest: Fix in/out emulation\n  lguest: Fix translation count about wikipedia\u0027s cpuid page\n  lguest: Fix three simple typos in comments\n  lguest: update comments\n  lguest: Simplify device initialization.\n  lguest: don\u0027t rewrite vmcall instructions\n  lguest: remove remaining vmcall\n  lguest: use a special 1:1 linear pagetable mode until first switch.\n  lguest: Do not exit on non-fatal errors\n"
    },
    {
      "commit": "0df55ea55bf1f4827115af4740899980b4fce77f",
      "tree": "1392b2c4b8d6758af933cc56586bb1396db7f3f3",
      "parents": [
        "c1f792a5bfebcf7ee1d739c3cb9baeaede0160e7",
        "d1057c40682990d29d4ee93d6ffd9836043552e6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 22 13:44:18 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 22 13:44:18 2011 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc: (78 commits)\n  mmc: MAINTAINERS: add myself as a tmio-mmc maintainer\n  mmc: print debug messages for runtime PM actions\n  mmc: fix runtime PM with -ENOSYS suspend case\n  mmc: at91_mci: move register header from include/ to drivers/\n  mmc: mxs-mmc: fix clock rate setting\n  mmc: tmio: fix a deadlock\n  mmc: tmio: fix a recently introduced bug in DMA code\n  mmc: sh_mmcif: maximize power saving\n  mmc: tmio: maximize power saving\n  mmc: tmio: fix recursive spinlock, don\u0027t schedule with interrupts disabled\n  mmc: Added quirks for Ricoh 1180:e823 lower base clock frequency\n  mmc: omap_hsmmc: fix oops in omap_hsmmc_dma_cb()\n  mmc: omap_hsmmc: refactor duplicated code\n  mmc: omap_hsmmc: fix a few bugs when setting the clock divisor\n  mmc: omap_hsmmc: introduce start_clock and re-use stop_clock\n  mmc: omap_hsmmc: split duplicate code to calc_divisor() function\n  mmc: omap_hsmmc: move hardcoded frequency constants to defines\n  mmc: omap_hsmmc: correct debug report error status mnemonics\n  mmc: block: fixed NULL pointer dereference\n  mmc: documentation of mmc non-blocking request usage and design.\n  ...\n"
    },
    {
      "commit": "eadc3875ebb724bc749bf604c92c6577d06158d1",
      "tree": "c9c080849a0ba421c5ba1741543f83443ad72b62",
      "parents": [
        "59a7ac12110f27951c6f754b4e451a9df686aea9",
        "01dc9cc314ad1009f5b7356399b386015fdb0400"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 22 13:09:55 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 22 13:09:55 2011 -0700"
      },
      "message": "Merge branch \u0027linux-next\u0027 of git://git.infradead.org/ubi-2.6\n\n* \u0027linux-next\u0027 of git://git.infradead.org/ubi-2.6:\n  UBI: clarify the volume notification types\u0027 doc\n  UBI: remove dead code\n  UBI: dump stack when switching to R/O mode\n  UBI: fix oops in error path\n  UBI: switch debugging tests knobs to debugfs\n  UBI: make it possible to use struct ubi_device in debug.h\n  UBI: prepare debugging stuff to further debugfs conversion\n  UBI: use debugfs for the extra checks knobs\n  UBI: change the interface of a debugging check function\n"
    },
    {
      "commit": "f99b7880cb9863e11441bd8b2f31d4f556ef1a44",
      "tree": "6f3dc6e33e847b431dd899bd968d799f0d4a8fff",
      "parents": [
        "02f8c6aee8df3cdc935e9bdd4f2d020306035dbe",
        "7ea466f2256b02a7047dfd47d76a2f6c1e427e3e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 22 12:44:30 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 22 12:44:30 2011 -0700"
      },
      "message": "Merge branch \u0027slab-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/penberg/slab-2.6\n\n* \u0027slab-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/penberg/slab-2.6:\n  slab: fix DEBUG_SLAB warning\n  slab: shrink sizeof(struct kmem_cache)\n  slab: fix DEBUG_SLAB build\n  SLUB: Fix missing \u003clinux/stacktrace.h\u003e include\n  slub: reduce overhead of slub_debug\n  slub: Add method to verify memory is not freed\n  slub: Enable backtrace for create/delete points\n  slab allocators: Provide generic description of alignment defines\n  slab, slub, slob: Unify alignment definition\n  slob/lockdep: Fix gfp flags passed to lockdep\n"
    },
    {
      "commit": "5dea1c88ed11a1221581c4b202f053c4fc138704",
      "tree": "59e15d3c696712e26ffb229ff987f33bcc72affe",
      "parents": [
        "e0377e25206328998d036cafddcd00a7c3252e3e"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Fri Jul 22 14:39:48 2011 +0930"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Fri Jul 22 14:39:48 2011 +0930"
      },
      "message": "lguest: use a special 1:1 linear pagetable mode until first switch.\n\nThe Host used to create some page tables for the Guest to use at the\ntop of Guest memory; it would then tell the Guest where this was.  In\nparticular, it created linear mappings for 0 and 0xC0000000 addresses\nbecause lguest used to switch to its real page tables quite late in\nboot.\n\nHowever, since d50d8fe19 Linux initialized boot page tables in\nhead_32.S even before the \"are we lguest?\" boot jump.  So, now we can\nsimplify things: the Host pagetable code assumes 1:1 linear mapping\nuntil it first calls the LHCALL_NEW_PGTABLE hypercall, which we now do\nbefore we reach C code.\n\nThis also means that the Host doesn\u0027t need to know anything about the\nGuest\u0027s PAGE_OFFSET.  (Non-Linux guests might not even have such a\nthing).\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "87c48fa3b4630905f98268dde838ee43626a060c",
      "tree": "1374b52ed0514682f836cfa0a6a683eb549c9613",
      "parents": [
        "21efcfa0ff27776902a8a15e810147be4d937d69"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Thu Jul 21 21:25:58 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 21 21:25:58 2011 -0700"
      },
      "message": "ipv6: make fragment identifications less predictable\n\nIPv6 fragment identification generation is way beyond what we use for\nIPv4 : It uses a single generator. Its not scalable and allows DOS\nattacks.\n\nNow inetpeer is IPv6 aware, we can use it to provide a more secure and\nscalable frag ident generator (per destination, instead of system wide)\n\nThis patch :\n1) defines a new secure_ipv6_id() helper\n2) extends inet_getid() to provide 32bit results\n3) extends ipv6_select_ident() with a new dest parameter\n\nReported-by: Fernando Gont \u003cfernando@gont.com.ar\u003e\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e3dbc46c2a62688d1aaa1f7291a054fb2b502849",
      "tree": "adae15d02aeba9c3f2430702a4161be01c4046b5",
      "parents": [
        "ebbf9295b17ed605f31f45d9269adb216be3a181"
      ],
      "author": {
        "name": "Choi, Jong-Hwan",
        "email": "jhbird.choi@samsung.com",
        "time": "Wed Jul 20 20:33:03 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 21 20:39:47 2011 -0700"
      },
      "message": "net: Kobj and queues_kset should be used when CONFIG_XPS is enabled\n\nKobj and queues_kset are used with CONFIG_XPS\u003dy.\n\nSigned-off-by: Choi, Jong-Hwan \u003cjhbird.choi@samsung.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "36bcfe7d74782c07f601edc4831f6b1ef40e9e43",
      "tree": "381a9fdcc936309a7198b608f61e6b9b1e45bf01",
      "parents": [
        "f3240e2811f05f11126b0947ff9bb411b692b2aa"
      ],
      "author": {
        "name": "Giuseppe CAVALLARO",
        "email": "peppe.cavallaro@st.com",
        "time": "Wed Jul 20 00:05:23 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 21 15:29:16 2011 -0700"
      },
      "message": "stmmac: unify MAC and PHY configuration parameters (V2)\n\nPrior to this change, most PHY configuration parameters were passed\ninto the STMMAC device as a separate PHY device. As well as being\nunusual, this made it difficult to make changes to the MAC/PHY\nrelationship.\n\nThis patch moves all the PHY parameters into the MAC configuration\nstructure, mainly as a separate structure. This allows us to completely\nignore the MDIO bus attached to a stmmac if desired, and not create\nthe PHY bus. It also allows the stmmac driver to use a different PHY\nfrom the one it is connected to, for example a fixed PHY or bit banging\nPHY.\n\nAlso derive the stmmac/PHY connection type (MII/RMII etc) from the\nmode can be passed into \u003cplatf\u003e_configure_ethernet.\nSTLinux kernel at git://git.stlinux.com/stm/linux-sh4-2.6.32.y.git\nprovides several examples how to use this new infrastructure (that\nactually is easier to maintain and clearer).\n\nSigned-off-by: Stuart Menefy \u003cstuart.menefy@st.com\u003e\nSigned-off-by: Giuseppe Cavallaro \u003cpeppe.cavallaro@st.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "536d1d4a076210f763b60d7c3823f2edbddf3a9c",
      "tree": "90ba9b06e9ab31005903eee8e8e84492be6eba32",
      "parents": [
        "7890a5b9cbfd159c81ffd7866b5b2d4425886e7f"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Wed Jul 20 04:54:49 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 21 13:47:58 2011 -0700"
      },
      "message": "vlan: move vlan_group_[gs]et_device to public header\n\nthere are no users outside vlan code\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7890a5b9cbfd159c81ffd7866b5b2d4425886e7f",
      "tree": "cd8167fd420387af1144c4ae0920175c741ea46a",
      "parents": [
        "4f7a4505f8356a739b13e55e964a7f4dc43a1633"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Wed Jul 20 04:54:48 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 21 13:47:58 2011 -0700"
      },
      "message": "vlan: kill ndo_vlan_rx_register\n\nhas no users so remove it\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ffcf9b767293ebc3e59e639cd4ec0dff5ca39798",
      "tree": "b97e59ff1210a6fe15bac715f091612f320e1e55",
      "parents": [
        "7ff0bcf676f7ed224ce21b58c7858c8e527068b2"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Wed Jul 20 04:54:42 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 21 13:47:57 2011 -0700"
      },
      "message": "vlan: kill vlan_gro_frags and vlan_gro_receive\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a4aeb26628b5184386f99cf202ac837b0e56c975",
      "tree": "45c99ff239308f6860ae85c9ad6a88525df3fbdf",
      "parents": [
        "892ef5d85259e193505d553c10237fd5dc9a3d0d"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Wed Jul 20 04:54:36 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 21 13:47:56 2011 -0700"
      },
      "message": "vlan: kill __vlan_hwaccel_rx and vlan_hwaccel_rx\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6dacaddd4850cbd6390d4f87548262b5ed79b4a5",
      "tree": "65e2705ade6035c35f24a5980410ba0fa4403f84",
      "parents": [
        "312cd51353a4f5940eea963570b8b14b7d9290c4"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Wed Jul 20 04:54:27 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 21 13:47:56 2011 -0700"
      },
      "message": "vlan: kill vlan_hwaccel_receive_skb\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9fea03302ada3291fb3066a3c276e3f43556548b",
      "tree": "bee0c10a54c5f54485eeeaff3de52e715099d97f",
      "parents": [
        "0f7257281dcbc9bcb46b882c23fa57b6738fce5e"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Wed Jul 20 04:54:10 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 21 13:47:54 2011 -0700"
      },
      "message": "lro: do vlan cleanup\n\n- remove useless vlan parameters and pointers\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0f7257281dcbc9bcb46b882c23fa57b6738fce5e",
      "tree": "5513a8e41e85a3582a774f4e9b06cbaf4c8bd2a7",
      "parents": [
        "7756a96e1925addedc87db21ca6646e03b3c674f"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Wed Jul 20 04:54:09 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 21 13:47:54 2011 -0700"
      },
      "message": "lro: kill lro_vlan_hwaccel_receive_frags\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7756a96e1925addedc87db21ca6646e03b3c674f",
      "tree": "d2e3e51b8f9f81d4a41d0edae50d1bff7ebcf770",
      "parents": [
        "b49500957a2c90a559dd91f0dcfeb83d84458664"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Wed Jul 20 04:54:08 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 21 13:47:54 2011 -0700"
      },
      "message": "lro: kill lro_vlan_hwaccel_receive_skb\n\nno longer used\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "cec9c133631039f82e4a5ff3bf47b3eba14ff1aa",
      "tree": "073fa703b248a8546a5b14f13998785834736a97",
      "parents": [
        "f605234066852b11096ab071124e3fe415e94420"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Wed Jul 20 04:54:05 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 21 13:47:53 2011 -0700"
      },
      "message": "vlan: introduce __vlan_find_dev_deep()\n\nSince vlan_group_get_device and vlan_group is not going to be accessible\nfrom device drivers, introduce function which substitutes it.\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f605234066852b11096ab071124e3fe415e94420",
      "tree": "873c636a859b80e89eefd487a7558241a27f6a02",
      "parents": [
        "033b1142f4bd44a116d1356fe4a0510437ceddf9"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Wed Jul 20 04:54:04 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 21 13:47:53 2011 -0700"
      },
      "message": "vlan: finish removing vlan_find_dev from public header\n\nelse case remained forgotten.\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "033b1142f4bd44a116d1356fe4a0510437ceddf9",
      "tree": "d2a971a7dc9f3a1af8035e38419c4c4ad8c22632",
      "parents": [
        "f5caadbb3d8fc0b71533e880c684b2230bdb76ac",
        "e6625fa48e6580a74b7e700efd7e6463e282810b"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 21 13:38:42 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 21 13:38:42 2011 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tnet/bluetooth/l2cap_core.c\n"
    },
    {
      "commit": "f5caadbb3d8fc0b71533e880c684b2230bdb76ac",
      "tree": "7a23a2b44f6e043d9cb6ad4245b78da4bd2e14b0",
      "parents": [
        "0ca87f05ba8bdc6791c14878464efc901ad71e99",
        "0f598f0b4c3b2259366cfa8adc01bd8e714c82d0"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 21 12:39:35 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 21 12:39:35 2011 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/kaber/nf-next-2.6\n"
    },
    {
      "commit": "0f598f0b4c3b2259366cfa8adc01bd8e714c82d0",
      "tree": "40af6a1d8805919970f149e4728f47fe4d7fb931",
      "parents": [
        "89dc79b787d20e4b6c4077dcee1c5b1be4ab55b8"
      ],
      "author": {
        "name": "Chris Friesen",
        "email": "chris.friesen@genband.com",
        "time": "Thu Jul 21 12:07:10 2011 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Thu Jul 21 12:07:10 2011 +0200"
      },
      "message": "netfilter: ipset: fix compiler warnings \"\u0027hash_ip4_data_next\u0027 declared inline after being called\"\n\nSome gcc versions warn about prototypes without \"inline\" when the declaration\nincludes the \"inline\" keyword. The fix generates a false error message\n\"marked inline, but without a definition\" with sparse below 0.4.2.\n\nSigned-off-by: Chris Friesen \u003cchris.friesen@genband.com\u003e\nSigned-off-by: Jozsef Kadlecsik \u003ckadlec@blackhole.kfki.hu\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "89dc79b787d20e4b6c4077dcee1c5b1be4ab55b8",
      "tree": "24ebd4da0fe7e239e45cbc5a4ec599ee1abba94d",
      "parents": [
        "a6a7b759ba62e62542308e091f7fc9cfac4f978e"
      ],
      "author": {
        "name": "Jozsef Kadlecsik",
        "email": "kadlec@blackhole.kfki.hu",
        "time": "Thu Jul 21 12:06:18 2011 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Thu Jul 21 12:06:18 2011 +0200"
      },
      "message": "netfilter: ipset: hash:net,iface fixed to handle overlapping nets behind different interfaces\n\nIf overlapping networks with different interfaces was added to\nthe set, the type did not handle it properly. Example\n\n    ipset create test hash:net,iface\n    ipset add test 192.168.0.0/16,eth0\n    ipset add test 192.168.0.0/24,eth1\n\nNow, if a packet was sent from 192.168.0.0/24,eth0, the type returned\na match.\n\nIn the patch the algorithm is fixed in order to correctly handle\noverlapping networks.\n\nLimitation: the same network cannot be stored with more than 64 different\ninterfaces in a single set.\n\nSigned-off-by: Jozsef Kadlecsik \u003ckadlec@blackhole.kfki.hu\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "a6a7b759ba62e62542308e091f7fc9cfac4f978e",
      "tree": "f7d2adb889431abb4e72ced602fdc693144ce8f2",
      "parents": [
        "97d32cf9440d2111a12471740446d4d63231b79a"
      ],
      "author": {
        "name": "Jozsef Kadlecsik",
        "email": "kadlec@blackhole.kfki.hu",
        "time": "Thu Jul 21 12:05:31 2011 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Thu Jul 21 12:05:31 2011 +0200"
      },
      "message": "netfilter: ipset: make possible to hash some part of the data element only\n\nSigned-off-by: Jozsef Kadlecsik \u003ckadlec@blackhole.kfki.hu\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "4582c0a4866ea70c35aa9279e1f91834d3348a93",
      "tree": "e180e664a88a996512a98a69098ef59f92e18c0a",
      "parents": [
        "732375c6a5a4cc825b676c922d547aba96b8ce15"
      ],
      "author": {
        "name": "Jean Delvare",
        "email": "khali@linux-fr.org",
        "time": "Sat Jul 16 17:42:00 2011 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jul 21 09:36:09 2011 +0200"
      },
      "message": "mutex: Make mutex_destroy() an inline function\n\nThe non-debug variant of mutex_destroy is a no-op, currently\nimplemented as a macro which does nothing. This approach fails\nto check the type of the parameter, so an error would only show\nwhen debugging gets enabled. Using an inline function instead,\noffers type checking for earlier bug catching.\n\nSigned-off-by: Jean Delvare \u003ckhali@linux-fr.org\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/20110716174200.41002352@endymion.delvare\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "40bcea7bbe8fe452a2d272e2ffd3dea281eec9ff",
      "tree": "aedb6d02e53e3cf84cc32fd81db84032cee205e1",
      "parents": [
        "492f73a303b488ffd67097b2351d54aa6e6c7c73",
        "14a8fd7ceea6915c613746203d6e9a2bf273f16c"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jul 21 09:32:40 2011 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jul 21 09:32:40 2011 +0200"
      },
      "message": "Merge branch \u0027tip/perf/core\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into perf/core\n"
    },
    {
      "commit": "492f73a303b488ffd67097b2351d54aa6e6c7c73",
      "tree": "6e6c16fbd628bb5eb577cfc70a488ca286563e58",
      "parents": [
        "e08fbb78f03fe2c4f88824faf6f51ce6af185e11",
        "f7bc8b61f65726ff98f52e286b28e294499d7a08"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jul 21 09:29:14 2011 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jul 21 09:29:21 2011 +0200"
      },
      "message": "Merge branch \u0027perf/urgent\u0027 into perf/core\n\nMerge reason: pick up the latest fixes - they won\u0027t make v3.0.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "cf6ace16a3cd8b728fb0afa68368fd40bbeae19f",
      "tree": "489c64380668e8c5a29d3f36f37554e4b081a647",
      "parents": [
        "acc11eab70591744369722280c9ce162a6193494",
        "d1e9ae47a0285d3f1699e8219ce50f656243b93f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 20 15:56:25 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 20 15:56:25 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  signal: align __lock_task_sighand() irq disabling and RCU\n  softirq,rcu: Inform RCU of irq_exit() activity\n  sched: Add irq_{enter,exit}() to scheduler_ipi()\n  rcu: protect __rcu_read_unlock() against scheduler-using irq handlers\n  rcu: Streamline code produced by __rcu_read_unlock()\n  rcu: Fix RCU_BOOST race handling current-\u003ercu_read_unlock_special\n  rcu: decrease rcu_report_exp_rnp coupling with scheduler\n"
    },
    {
      "commit": "ca8e99b32e3863c98ac958617cc157a00bf445b8",
      "tree": "2e8b5d9fc5577ef2c795c9cd4ca40ae21e508699",
      "parents": [
        "ee8a43a51c7681f19fe23b6b936e1d8094a8b7d1"
      ],
      "author": {
        "name": "Philip Rakity",
        "email": "prakity@marvell.com",
        "time": "Wed Jul 06 08:51:32 2011 -0700"
      },
      "committer": {
        "name": "Chris Ball",
        "email": "cjb@laptop.org",
        "time": "Wed Jul 20 17:21:16 2011 -0400"
      },
      "message": "mmc: core: Set non-default Drive Strength via platform hook\n\nNon default Drive Strength cannot be set automatically.  It is a function\nof the board design and only if there is a specific platform handler can\nit be set.  The platform handler needs to take into account the board\ndesign.  Pass to the platform code the necessary information.\n\nFor example:  The card and host controller may indicate they support HIGH\nand LOW drive strength.  There is no way to know what should be chosen\nwithout specific board knowledge.  Setting HIGH may lead to reflections\nand setting LOW may not suffice.  There is no mechanism (like ethernet\nduplex or speed pulses) to determine what should be done automatically.\n\nIf no platform handler is defined -- use the default value.\n\nSigned-off-by: Philip Rakity \u003cprakity@marvell.com\u003e\nReviewed-by: Arindam Nath \u003carindam.nath@amd.com\u003e\nSigned-off-by: Chris Ball \u003ccjb@laptop.org\u003e\n"
    },
    {
      "commit": "aa8b683a7d392271ed349c6ab9f36b8c313794b7",
      "tree": "82c97c089844a03492be55968c1d3cc993aaafa6",
      "parents": [
        "0500f10cc2d624034f350edae2529975c0f1c1f8"
      ],
      "author": {
        "name": "Per Forlin",
        "email": "per.forlin@linaro.org",
        "time": "Fri Jul 01 18:55:22 2011 +0200"
      },
      "committer": {
        "name": "Chris Ball",
        "email": "cjb@laptop.org",
        "time": "Wed Jul 20 17:21:10 2011 -0400"
      },
      "message": "mmc: core: add non-blocking mmc request function\n\nPreviously there has only been one function mmc_wait_for_req()\nto start and wait for a request. This patch adds:\n\n * mmc_start_req() - starts a request wihtout waiting\n   If there is on ongoing request wait for completion\n   of that request and start the new one and return.\n   Does not wait for the new command to complete.\n\nThis patch also adds new function members in struct mmc_host_ops\nonly called from core.c:\n\n * pre_req - asks the host driver to prepare for the next job\n * post_req - asks the host driver to clean up after a completed job\n\nThe intention is to use pre_req() and post_req() to do cache maintenance\nwhile a request is active. pre_req() can be called while a request is\nactive to minimize latency to start next job. post_req() can be used after\nthe next job is started to clean up the request. This will minimize the\nhost driver request end latency. post_req() is typically used before\nending the block request and handing over the buffer to the block layer.\n\nAdd a host-private member in mmc_data to be used by pre_req to mark the\ndata. The host driver will then check this mark to see if the data is\nprepared or not.\n\nSigned-off-by: Per Forlin \u003cper.forlin@linaro.org\u003e\nAcked-by: Kyungmin Park \u003ckyungmin.park@samsung.com\u003e\nAcked-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nReviewed-by: Venkatraman S \u003csvenkatr@ti.com\u003e\nTested-by: Sourav Poddar \u003csourav.poddar@ti.com\u003e\nTested-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\nSigned-off-by: Chris Ball \u003ccjb@laptop.org\u003e\n"
    },
    {
      "commit": "03e8cb534e7cc3f71a07528a44da7ce68e5b5708",
      "tree": "989d0a96a03d8838de7617f6eb0062ed2a7065e6",
      "parents": [
        "65d13516b2358c38ac56a5f83e989a6837dcf825"
      ],
      "author": {
        "name": "James Hogan",
        "email": "james.hogan@imgtec.com",
        "time": "Wed Jun 29 09:28:43 2011 +0100"
      },
      "committer": {
        "name": "Chris Ball",
        "email": "cjb@laptop.org",
        "time": "Wed Jul 20 17:21:05 2011 -0400"
      },
      "message": "mmc: dw_mmc: fix stop when fallen back to PIO\n\nThere are several situations when dw_mci_submit_data_dma() decides to\nfall back to PIO mode instead of using DMA, due to a short (to avoid\noverhead) or \"complex\" (e.g. with unaligned buffers) transaction, even\nthough host-\u003euse_dma is set. However dw_mci_stop_dma() decides whether\nto stop DMA or set the EVENT_XFER_COMPLETE event based on host-\u003euse_dma.\nWhen falling back to PIO mode this results in data timeout errors\ngetting missed and the driver locking up.\n\nTherefore add host-\u003eusing_dma to indicate whether the current\ntransaction is using dma or not, and adjust dw_mci_stop_dma() to use\nthat instead.\n\nSigned-off-by: James Hogan \u003cjames.hogan@imgtec.com\u003e\nAcked-by: Will Newton \u003cwill.newton@imgtec.com\u003e\nTested-by: Jaehoon Chung \u003cjh80.chung@samsung.com\u003e\nSigned-off-by: Chris Ball \u003ccjb@laptop.org\u003e\n"
    },
    {
      "commit": "e056a1b5b67b4e4bfad00bf143ab14f634777705",
      "tree": "c9cd3a6144787bcb434e52a4a32dec3c37e9f343",
      "parents": [
        "e8cd77e467f7bb1d4b942037c47b087334a484d4"
      ],
      "author": {
        "name": "Adrian Hunter",
        "email": "adrian.hunter@intel.com",
        "time": "Tue Jun 28 17:16:02 2011 +0300"
      },
      "committer": {
        "name": "Chris Ball",
        "email": "cjb@laptop.org",
        "time": "Wed Jul 20 17:21:03 2011 -0400"
      },
      "message": "mmc: queue: let host controllers specify maximum discard timeout\n\nSome host controllers will not operate without a hardware\ntimeout that is limited in value.  However large discards\nrequire large timeouts, so there needs to be a way to\nspecify the maximum discard size.\n\nA host controller driver may now specify the maximum discard\ntimeout possible so that max_discard_sectors can be calculated.\n\nHowever, for eMMC when the High Capacity Erase Group Size\nis not in use, the timeout calculation depends on clock\nrate which may change.  For that case Preferred Erase Size\nis used instead.\n\nSigned-off-by: Adrian Hunter \u003cadrian.hunter@intel.com\u003e\nSigned-off-by: Chris Ball \u003ccjb@laptop.org\u003e\n"
    },
    {
      "commit": "34b664a20e2664de0d0d7990ca60276b96c08c75",
      "tree": "15d2d1ef438f9418bf1ccfadb5ec30bad772d6d1",
      "parents": [
        "b86d825323b4c5d0c406e5b1a85af614acf0cf5a"
      ],
      "author": {
        "name": "James Hogan",
        "email": "james.hogan@imgtec.com",
        "time": "Fri Jun 24 13:57:56 2011 +0100"
      },
      "committer": {
        "name": "Chris Ball",
        "email": "cjb@laptop.org",
        "time": "Wed Jul 20 17:21:00 2011 -0400"
      },
      "message": "mmc: dw_mmc: handle unaligned buffers and sizes\n\nUpdate functions for PIO pushing and pulling data to and from the FIFO\nso that they can handle unaligned output buffers and unaligned buffer\nlengths. This makes more of the tests in mmc_test pass.\n\nUnaligned lengths in pulls are handled by reading the full FIFO item,\nand storing the remaining bytes in a small internal buffer (part_buf).\nThe next data pull will copy data out of this buffer first before\naccessing the FIFO again. Similarly, for pushes the final bytes that\ndon\u0027t fill a FIFO item are stored in the part_buf (or sent anyway if\nit\u0027s the last transfer), and then the part_buf is included at the\nbeginning of the next buffer pushed.\n\nUnaligned buffers in pulls are handled specially if the architecture\ncannot do efficient unaligned accesses, by reading FIFO items into a\naligned local buffer, and memcpy\u0027ing them into the output buffer, again\nstoring any remaining bytes in the internal buffer. Similarly for pushes\nthe buffer is memcpy\u0027d into an aligned local buffer then written to the\nFIFO.\n\nSigned-off-by: James Hogan \u003cjames.hogan@imgtec.com\u003e\nAcked-by: Will Newton \u003cwill.newton@imgtec.com\u003e\nSigned-off-by: Chris Ball \u003ccjb@laptop.org\u003e\n"
    },
    {
      "commit": "b86d825323b4c5d0c406e5b1a85af614acf0cf5a",
      "tree": "15d9f279e07948eb0649bafa0c14d9a785afda0a",
      "parents": [
        "892b1e312b179139026e366a9d70065a7f897dbc"
      ],
      "author": {
        "name": "James Hogan",
        "email": "james.hogan@imgtec.com",
        "time": "Fri Jun 24 13:57:18 2011 +0100"
      },
      "committer": {
        "name": "Chris Ball",
        "email": "cjb@laptop.org",
        "time": "Wed Jul 20 17:20:59 2011 -0400"
      },
      "message": "mmc: dw_mmc: don\u0027t hard code fifo depth, fix usage\n\nThe FIFO_DEPTH hardware configuration parameter can be found from the\npower-on value of RX_WMark in the FIFOTH register. This is used to\ninitialise the watermarks, but when calculating the number of free fifo\nspaces a preprocessor definition is used which is hard coded to 32.\n\nFix reading the value out of FIFOTH (the default value in the RX_WMark\nfield is FIFO_DEPTH-1 not FIFO_DEPTH). Allow the fifo depth to be\noverriden by platform data (since a bootloader may have changed FIFOTH\nmaking auto-detection unreliable). Store the fifo_depth for later use.\nAlso fix the calculation to find the number of free bytes in the fifo to\ninclude the fifo depth in the left shift by the data shift, since the\nfifo depth is measured in fifo items not bytes.\n\nSigned-off-by: James Hogan \u003cjames.hogan@imgtec.com\u003e\nAcked-by: Will Newton \u003cwill.newton@imgtec.com\u003e\nSigned-off-by: Chris Ball \u003ccjb@laptop.org\u003e\n"
    },
    {
      "commit": "1791b13ea4d97a6a7c162edd54485e932ad92f1b",
      "tree": "0012ece1a9b0bf403f759d5f552fc34c6d8c82d1",
      "parents": [
        "7456caae37396fc1bc6f8e9461d07664b8c2f280"
      ],
      "author": {
        "name": "James Hogan",
        "email": "james.hogan@imgtec.com",
        "time": "Fri Jun 24 13:55:55 2011 +0100"
      },
      "committer": {
        "name": "Chris Ball",
        "email": "cjb@laptop.org",
        "time": "Wed Jul 20 17:20:58 2011 -0400"
      },
      "message": "mmc: dw_mmc: convert card tasklet to workqueue\n\nConvert the card insert/remove tasklet to a workqueue, and call the\nsetpower platform specific callback without the spinlock held. This\nmeans neither of the setpower or get_cd callbacks are called from atomic\ncontext which allows them to sleep.\n\nSigned-off-by: James Hogan \u003cjames.hogan@imgtec.com\u003e\nAcked-by: Will Newton \u003cwill.newton@imgtec.com\u003e\nSigned-off-by: Chris Ball \u003ccjb@laptop.org\u003e\n"
    },
    {
      "commit": "973ed3af1a570612771ed10dec6506c757767668",
      "tree": "db993034cacfcc3f3388c43d96459a123adc32a2",
      "parents": [
        "a11862d3389d4304211eed0758f510d5e573f93c"
      ],
      "author": {
        "name": "Simon Horman",
        "email": "horms@verge.net.au",
        "time": "Tue Jun 21 08:00:10 2011 +0900"
      },
      "committer": {
        "name": "Chris Ball",
        "email": "cjb@laptop.org",
        "time": "Wed Jul 20 17:20:57 2011 -0400"
      },
      "message": "mmc: sdhi: Add write16_hook\n\nSome controllers require waiting for the bus to become idle\nbefore writing to some registers. I have implemented this\nby adding a hook to sd_ctrl_write16() and implementing\na hook for SDHI which waits for the bus to become idle.\n\nCc: Guennadi Liakhovetski \u003cg.liakhovetski@gmx.de\u003e\nCc: Magnus Damm \u003cmagnus.damm@gmail.com\u003e\nSigned-off-by: Simon Horman \u003chorms@verge.net.au\u003e\nSigned-off-by: Chris Ball \u003ccjb@laptop.org\u003e\n"
    },
    {
      "commit": "95c7348d948dc4832434ddfaeba804ac14732f02",
      "tree": "f1795c7d0ad42672d0884430f070f2cdaeed07f2",
      "parents": [
        "4c2b8f26eb8b54203e0e7834e0f7a11a7ae15ef1"
      ],
      "author": {
        "name": "Simon Horman",
        "email": "horms@verge.net.au",
        "time": "Tue Jun 21 08:00:08 2011 +0900"
      },
      "committer": {
        "name": "Chris Ball",
        "email": "cjb@laptop.org",
        "time": "Wed Jul 20 17:20:55 2011 -0400"
      },
      "message": "mmc: tmio: name 0xd8 as CTL_DMA_ENABLE\n\nThis reflects at least the current usage of this register\nand I think it improves the readability of the code ever so slightly.\n\nCc: Guennadi Liakhovetski \u003cg.liakhovetski@gmx.de\u003e\nCc: Magnus Damm \u003cmagnus.damm@gmail.com\u003e\nSigned-off-by: Simon Horman \u003chorms@verge.net.au\u003e\nSigned-off-by: Chris Ball \u003ccjb@laptop.org\u003e\n"
    },
    {
      "commit": "0a2d4048a22079d7e79d6654bbacbef57bd5728a",
      "tree": "3de4e928e43786b215271d467e77cf6e20a2e724",
      "parents": [
        "6e83e10d92e12fa0181766a1fbb00d857bfab779"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Mon Jun 20 20:10:08 2011 +0100"
      },
      "committer": {
        "name": "Chris Ball",
        "email": "cjb@laptop.org",
        "time": "Wed Jul 20 17:20:54 2011 -0400"
      },
      "message": "mmc: block: allow get_card_status() to return error status\n\nIf the MMC_SEND_STATUS command is not successful, we should not return\na zero status word, but instead allow the caller to know positively\nthat an error occurred.\n\nConvert the open-coded get_card_status() to use the helper function,\nand provide definitions for the card state field.\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\nTested-by: Pawel Moll \u003cpawel.moll@arm.com\u003e\nSigned-off-by: Chris Ball \u003ccjb@laptop.org\u003e\n"
    },
    {
      "commit": "bfed345edfe05b291f7e5d396d4b447b6e8e66fa",
      "tree": "b0d2c26465b60be1d47bb2b36b7aebd742ea885a",
      "parents": [
        "c984c2638501e9bdb23438e61b922e3234959fac"
      ],
      "author": {
        "name": "Zhangfei Gao",
        "email": "zhangfei.gao@marvell.com",
        "time": "Mon Jun 20 22:11:52 2011 +0800"
      },
      "committer": {
        "name": "Chris Ball",
        "email": "cjb@laptop.org",
        "time": "Wed Jul 20 17:20:52 2011 -0400"
      },
      "message": "mmc: sdhci-pxa: move platform data to include/linux/platform_data\n\nAs suggested by Arnd, move platform data to include/linux/platform_data\nin order to improve build coverage for the driver.\n\nSigned-off-by: Zhangfei Gao \u003czhangfei.gao@marvell.com\u003e\nAcked-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nSigned-off-by: Chris Ball \u003ccjb@laptop.org\u003e\n"
    },
    {
      "commit": "100e918610b7487fa18db97b3879cd8d1fdd5974",
      "tree": "ff0d7e3b47af34db77da21f0954c3461918b1ee3",
      "parents": [
        "94cc6a86567cb3c2234807081a46ce5400c36b31"
      ],
      "author": {
        "name": "Robert P. J. Day",
        "email": "rpjday@crashcourse.ca",
        "time": "Fri May 27 16:04:03 2011 -0400"
      },
      "committer": {
        "name": "Chris Ball",
        "email": "cjb@laptop.org",
        "time": "Wed Jul 20 17:20:48 2011 -0400"
      },
      "message": "mmc: Standardize header file inclusion checks.\n\nStandardize the checks for multiple MMC header file inclusion,\nincluding adding comments to terminating #endif\u0027s, and fixing\none incorrect comment.\n\nSigned-off-by: Robert P. J. Day \u003crpjday@crashcourse.ca\u003e\nSigned-off-by: Chris Ball \u003ccjb@laptop.org\u003e\n"
    },
    {
      "commit": "94cc6a86567cb3c2234807081a46ce5400c36b31",
      "tree": "41d7253d5bc7f05a901277c3f2631ff2da31268b",
      "parents": [
        "38576af1f8cad48446df47dcf404b197c9206dba"
      ],
      "author": {
        "name": "Shawn Guo",
        "email": "shawn.guo@linaro.org",
        "time": "Fri May 27 23:48:15 2011 +0800"
      },
      "committer": {
        "name": "Chris Ball",
        "email": "cjb@laptop.org",
        "time": "Wed Jul 20 17:20:48 2011 -0400"
      },
      "message": "mmc: sdhci: merge two sdhci-pltfm.h into one\n\nThe structure sdhci_pltfm_data is not necessarily to be in a public\nheader like include/linux/mmc/sdhci-pltfm.h, so the patch moves it\ninto drivers/mmc/host/sdhci-pltfm.h and eliminates the former one.\n\nSigned-off-by: Shawn Guo \u003cshawn.guo@linaro.org\u003e\nReviewed-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nReviewed-by: Wolfram Sang \u003cw.sang@pengutronix.de\u003e\nSigned-off-by: Chris Ball \u003ccjb@laptop.org\u003e\n"
    },
    {
      "commit": "85d6509dc8ca24b2b652863ef7a75622ddca17d6",
      "tree": "e564c2d4f80478027abc96cb7d87da952b38409e",
      "parents": [
        "3a5c3743f15f27237ab025736a981e2d0c9fdfed"
      ],
      "author": {
        "name": "Shawn Guo",
        "email": "shawn.guo@linaro.org",
        "time": "Fri May 27 23:48:12 2011 +0800"
      },
      "committer": {
        "name": "Chris Ball",
        "email": "cjb@laptop.org",
        "time": "Wed Jul 20 17:16:06 2011 -0400"
      },
      "message": "mmc: sdhci: make sdhci-pltfm device drivers self registered\n\nThe patch turns the common stuff in sdhci-pltfm.c into functions, and\nadd device drivers their own .probe and .remove which in turn call\ninto the common functions, so that those sdhci-pltfm device drivers\nregister itself and keep all device specific things away from common\nsdhci-pltfm file.\n\nSigned-off-by: Shawn Guo \u003cshawn.guo@linaro.org\u003e\nReviewed-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nAcked-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nAcked-by: Anton Vorontsov \u003ccbouatmailru@gmail.com\u003e\nSigned-off-by: Chris Ball \u003ccjb@laptop.org\u003e\n"
    },
    {
      "commit": "7f70893173b056df691b2ee7546bb44fd9abae6a",
      "tree": "5ac9a61694116b0743b3f407ee935bb07e9271e2",
      "parents": [
        "cefcb602012482003ca2ccc44fcba628d006e4bd"
      ],
      "author": {
        "name": "Jan H. Schönherr",
        "email": "schnhrr@cs.tu-berlin.de",
        "time": "Tue Jul 19 21:10:26 2011 +0200"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Wed Jul 20 14:10:20 2011 -0700"
      },
      "message": "rcu: Fix wrong check in list_splice_init_rcu()\n\nIf the list to be spliced is empty, then list_splice_init_rcu() has\nnothing to do.  Unfortunately, list_splice_init_rcu() does not check\nthe list to be spliced; it instead checks the list to be spliced into.\nThis results in memory leaks given current usage.  This commit\ntherefore fixes the empty-list check.\n\nSigned-off-by: Jan H. Schönherr \u003cschnhrr@cs.tu-berlin.de\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "d1e9ae47a0285d3f1699e8219ce50f656243b93f",
      "tree": "2f5a68b5ba1677bcd49ee759f09ffc5ccccb1455",
      "parents": [
        "e6625fa48e6580a74b7e700efd7e6463e282810b",
        "a841796f11c90d53dbac773be56b04fbee8af272"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jul 20 20:59:26 2011 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jul 20 20:59:26 2011 +0200"
      },
      "message": "Merge branch \u0027rcu/urgent\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-2.6-rcu into core/urgent\n"
    },
    {
      "commit": "b56efcf0a45aa7fc32de90d5f9838541082fbc19",
      "tree": "e1de7ba007c79042d30454c11b78aa942e2666b3",
      "parents": [
        "c225150b86fef9f7663219b6e9f7606ea1607312"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Wed Jul 20 19:04:23 2011 +0200"
      },
      "committer": {
        "name": "Pekka Enberg",
        "email": "penberg@kernel.org",
        "time": "Wed Jul 20 20:27:56 2011 +0300"
      },
      "message": "slab: shrink sizeof(struct kmem_cache)\n\nReduce high order allocations for some setups.\n(NR_CPUS\u003d4096 -\u003e we need 64KB per kmem_cache struct)\n\nWe now allocate exact needed size (using nr_cpu_ids and nr_node_ids)\n\nThis also makes code a bit smaller on x86_64, since some field offsets\nare less than the 127 limit :\n\nBefore patch :\n# size mm/slab.o\n   text    data     bss     dec     hex filename\n  22605  361665      32  384302   5dd2e mm/slab.o\n\nAfter patch :\n# size mm/slab.o\n   text    data     bss     dec     hex filename\n  22349\t 353473\t   8224\t 384046\t  5dc2e\tmm/slab.o\n\nCC: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nReported-by: Konstantin Khlebnikov \u003ckhlebnikov@openvz.org\u003e\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nAcked-by: Christoph Lameter \u003ccl@linux.com\u003e\nSigned-off-by: Pekka Enberg \u003cpenberg@kernel.org\u003e\n"
    },
    {
      "commit": "e3589f6c81e4764d32a25d2a2a0afe54fa344f5c",
      "tree": "414bf6bdbad3f04f629fa2a72254ea85acf723f4",
      "parents": [
        "9c3f75cbd144014bea6af866a154cc2e73ab2287"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri Jul 15 10:35:52 2011 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jul 20 18:32:41 2011 +0200"
      },
      "message": "sched: Allow for overlapping sched_domain spans\n\nAllow for sched_domain spans that overlap by giving such domains their\nown sched_group list instead of sharing the sched_groups amongst\neach-other.\n\nThis is needed for machines with more than 16 nodes, because\nsched_domain_node_span() will generate a node mask from the\n16 nearest nodes without regard if these masks have any overlap.\n\nCurrently sched_domains have a sched_group that maps to their child\nsched_domain span, and since there is no overlap we share the\nsched_group between the sched_domains of the various CPUs. If however\nthere is overlap, we would need to link the sched_group list in\ndifferent ways for each cpu, and hence sharing isn\u0027t possible.\n\nIn order to solve this, allocate private sched_groups for each CPU\u0027s\nsched_domain but have the sched_groups share a sched_group_power\nstructure such that we can uniquely track the power.\n\nReported-and-tested-by: Anton Blanchard \u003canton@samba.org\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nLink: http://lkml.kernel.org/n/tip-08bxqw9wis3qti9u5inifh3y@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "9c3f75cbd144014bea6af866a154cc2e73ab2287",
      "tree": "2a565f7ff0820269973415c5605e313cfff903b4",
      "parents": [
        "e6625fa48e6580a74b7e700efd7e6463e282810b"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Thu Jul 14 13:00:06 2011 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jul 20 18:32:40 2011 +0200"
      },
      "message": "sched: Break out cpu_power from the sched_group structure\n\nIn order to prepare for non-unique sched_groups per domain, we need to\ncarry the cpu_power elsewhere, so put a level of indirection in.\n\nReported-and-tested-by: Anton Blanchard \u003canton@samba.org\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nLink: http://lkml.kernel.org/n/tip-qkho2byuhe4482fuknss40ad@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "7765be2fec0f476fcd61812d5f9406b04c765020",
      "tree": "e89ccb3fbd5655090b05f608f8e1d39924f23a9a",
      "parents": [
        "131906b0062ddde7f85bbe67754983c754648bd8"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paul.mckenney@linaro.org",
        "time": "Thu Jul 14 12:24:11 2011 -0700"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Tue Jul 19 21:38:52 2011 -0700"
      },
      "message": "rcu: Fix RCU_BOOST race handling current-\u003ercu_read_unlock_special\n\nThe RCU_BOOST commits for TREE_PREEMPT_RCU introduced an other-task\nwrite to a new RCU_READ_UNLOCK_BOOSTED bit in the task_struct structure\u0027s\n-\u003ercu_read_unlock_special field, but, as noted by Steven Rostedt, without\ncorrectly synchronizing all accesses to -\u003ercu_read_unlock_special.\nThis could result in bits in -\u003ercu_read_unlock_special being spuriously\nset and cleared due to conflicting accesses, which in turn could result\nin deadlocks between the rcu_node structure\u0027s -\u003elock and the scheduler\u0027s\nrq and pi locks.  These deadlocks would result from RCU incorrectly\nbelieving that the just-ended RCU read-side critical section had been\npreempted and/or boosted.  If that RCU read-side critical section was\nexecuted with either rq or pi locks held, RCU\u0027s ensuing (incorrect)\ncalls to the scheduler would cause the scheduler to attempt to once\nagain acquire the rq and pi locks, resulting in deadlock.  More complex\ndeadlock cycles are also possible, involving multiple rq and pi locks\nas well as locks from multiple rcu_node structures.\n\nThis commit fixes synchronization by creating -\u003ercu_boosted field in\ntask_struct that is accessed and modified only when holding the -\u003elock\nin the rcu_node structure on which the task is queued (on that rcu_node\nstructure\u0027s -\u003eblkd_tasks list).  This results in tasks accessing only\ntheir own current-\u003ercu_read_unlock_special fields, making unsynchronized\naccess once again legal, and keeping the rcu_read_unlock() fastpath free\nof atomic instructions and memory barriers.\n\nThe reason that the rcu_read_unlock() fastpath does not need to access\nthe new current-\u003ercu_boosted field is that this new field cannot\nbe non-zero unless the RCU_READ_UNLOCK_BLOCKED bit is set in the\ncurrent-\u003ercu_read_unlock_special field.  Therefore, rcu_read_unlock()\nneed only test current-\u003ercu_read_unlock_special: if that is zero, then\ncurrent-\u003ercu_boosted must also be zero.\n\nThis bug does not affect TINY_PREEMPT_RCU because this implementation\nof RCU accesses current-\u003ercu_read_unlock_special with irqs disabled,\nthus preventing races on the !SMP systems that TINY_PREEMPT_RCU runs on.\n\nMaybe-reported-by: Dave Jones \u003cdavej@redhat.com\u003e\nMaybe-reported-by: Sergey Senozhatsky \u003csergey.senozhatsky@gmail.com\u003e\nReported-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\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: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "97d32cf9440d2111a12471740446d4d63231b79a",
      "tree": "13b33df5f7a3faf8e765761b823620d234317937",
      "parents": [
        "5863702a3421b0d2a63a473cf96afeb9fe09070d"
      ],
      "author": {
        "name": "Florian Westphal",
        "email": "fw@strlen.de",
        "time": "Tue Jul 19 11:46:33 2011 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Tue Jul 19 11:46:33 2011 +0200"
      },
      "message": "netfilter: nfnetlink_queue: batch verdict support\n\nIntroduces a new nfnetlink type that applies a given\nverdict to all queued packets with an id \u003c\u003d the id in the verdict\nmessage.\n\nIf a mark is provided it is applied to all matched packets.\n\nThis reduces the number of verdicts that have to be sent.\nApplications that make use of this feature need to maintain\na timeout to send a batchverdict periodically to avoid starvation.\n\nSigned-off-by: Florian Westphal \u003cfw@strlen.de\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "cfcde11c3d7ae175f49280bb6f913478c2f1bd8c",
      "tree": "1d6bc41c59035f791bd27f8d34fb95eb667a691f",
      "parents": [
        "6aea213a62122701891fe55cc3405d31b927cfde"
      ],
      "author": {
        "name": "Or Gerlitz",
        "email": "ogerlitz@mellanox.com",
        "time": "Wed Jun 15 14:49:57 2011 +0000"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Mon Jul 18 21:04:36 2011 -0700"
      },
      "message": "IB/mlx4: Use flow counters on IBoE ports\n\nAllocate flow counter per Ethernet/IBoE port, and attach this counter\nto all the QPs created on that port.  Based on patch by Eli Cohen\n\u003celi@mellanox.co.il\u003e.\n\nSigned-off-by: Or Gerlitz \u003cogerlitz@mellanox.co.il\u003e\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\n"
    },
    {
      "commit": "f2a3f6a32cf64db1495b5ced8625b9a80bde44e5",
      "tree": "68508cf4a5f67e2380b6b6fa158bb776e3b69a91",
      "parents": [
        "98a13e487a3bdac8508e4dcb98d63385fabe6767"
      ],
      "author": {
        "name": "Or Gerlitz",
        "email": "ogerlitz@mellanox.com",
        "time": "Wed Jun 15 14:47:14 2011 +0000"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Mon Jul 18 21:04:34 2011 -0700"
      },
      "message": "mlx4_core: Add network flow counters\n\nConnectX devices support a set of flow counters that can be attached\nto a set containing one or more QPs.  Each such counter tracks receive\nand transmit packets and bytes of these QPs.  This patch queries the\ndevice to check support for counters, handles initialization of the\nHCA to enable counters, and initializes a bitmap allocator to control\ncounter allocations.  Derived from patch by Eli Cohen \u003celi@mellanox.co.il\u003e.\n\nSigned-off-by: Or Gerlitz \u003cogerlitz@mellanox.co.il\u003e\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\n"
    },
    {
      "commit": "98a13e487a3bdac8508e4dcb98d63385fabe6767",
      "tree": "3f1abd2d7711e2ba2c7369aebca4f99b729ab7ee",
      "parents": [
        "ccf863219675aa86bebdd6a2806acb8176478e37"
      ],
      "author": {
        "name": "Or Gerlitz",
        "email": "ogerlitz@mellanox.com",
        "time": "Wed Jun 15 14:43:43 2011 +0000"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Mon Jul 18 21:04:33 2011 -0700"
      },
      "message": "mlx4_core: Fix location of counter index in QP context struct\n\nFix the address handle portion of the QP context structure to have the\ncorrect bit location for the counter index field.\n\nSigned-off-by: Eli Cohen \u003celi@mellanox.co.il\u003e\nSigned-off-by: Or Gerlitz \u003cogerlitz@mellanox.co.il\u003e\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\n"
    },
    {
      "commit": "ccf863219675aa86bebdd6a2806acb8176478e37",
      "tree": "3ef252eb9b51ae6beb0ce0fbe1babdada8ceefb3",
      "parents": [
        "52eafc68d601afd699b023201b0c6be5209f39ce"
      ],
      "author": {
        "name": "Or Gerlitz",
        "email": "ogerlitz@mellanox.com",
        "time": "Thu Jul 07 19:19:29 2011 +0000"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Mon Jul 18 21:04:32 2011 -0700"
      },
      "message": "mlx4_core: Read extended capabilities into the flags field\n\nQuery another dword containing up to 32 extended device capabilities\nand merge it into struct mlx4_caps.flags.  Update the code that\nhandles the current extended device capabilities (e.g UDP RSS, WoL,\nvep steering, etc) to use the extended device cap flags field instead\nof a field per extended capability.  Initial patch done by Eli Cohen\n\u003celi@mellanox.co.il\u003e.\n\nSigned-off-by: Or Gerlitz \u003cogerlitz@mellanox.co.il\u003e\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\n"
    },
    {
      "commit": "52eafc68d601afd699b023201b0c6be5209f39ce",
      "tree": "01a65357f2f39b07836c44f8b2cd490e5cd62853",
      "parents": [
        "6451c712fef3b13bb3fc5a41adadc539e0d06a42"
      ],
      "author": {
        "name": "Or Gerlitz",
        "email": "ogerlitz@mellanox.com",
        "time": "Wed Jun 15 14:41:42 2011 +0000"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Mon Jul 18 21:04:32 2011 -0700"
      },
      "message": "mlx4_core: Extend capability flags to 64 bits\n\nThe latest firmware adds a second dword containing more device flags,\nso extend the device capabilities flags field from 32 to 64 bits.\nDerived from patch by Eli Cohen \u003celi@mellanox.co.il\u003e\n\nSigned-off-by: Or Gerlitz \u003cogerlitz@mellanox.co.il\u003e\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\n"
    },
    {
      "commit": "99ce39e359fa29e4b609a6a13485e7573eda5dfb",
      "tree": "16ef77877ebc3027ed68fb4672e16a0d8a50668b",
      "parents": [
        "90e33f62e027d330485d03598e1b2d8db3ff031c"
      ],
      "author": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Tue Jul 05 23:42:37 2011 -0600"
      },
      "committer": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Mon Jul 18 16:37:45 2011 -0600"
      },
      "message": "dt: include linux/errno.h in linux/of_address.h\n\nof_address.h makes reference to some of the error code #defines, so it\nneeds to include errno.h.  If CONFIG_PCI is not selected, then some files\nwill fail to compile.\n\nSigned-off-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\n"
    },
    {
      "commit": "90e33f62e027d330485d03598e1b2d8db3ff031c",
      "tree": "8dea43baa65a88ba28771a945f126a511024f804",
      "parents": [
        "8c11642a50555e584774737f7c296f9aece310cf"
      ],
      "author": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Tue Jul 05 23:42:28 2011 -0600"
      },
      "committer": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Mon Jul 18 16:32:26 2011 -0600"
      },
      "message": "of/address: Add of_find_matching_node_by_address helper\n\nof_find_matching_node_by_address() can be used to find a device tree\nnode for a device at a specific address.\n\nSigned-off-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\n"
    },
    {
      "commit": "f701e5b73a1a79ea62ffd45d9e2bed4c7d5c1fd2",
      "tree": "10940ea680a1c8c69cbd9f9aa9aca23a1199aa0e",
      "parents": [
        "d184d6eb1dc3c9869e25a8e422be5c55ab0db4ac"
      ],
      "author": {
        "name": "Vladimir Zapolskiy",
        "email": "vzapolskiy@gmail.com",
        "time": "Fri Jul 15 20:45:18 2011 +0300"
      },
      "committer": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Mon Jul 18 21:38:33 2011 +0200"
      },
      "message": "connector: add an event for monitoring process tracers\n\nThis change adds a procfs connector event, which is emitted on every\nsuccessful process tracer attach or detach.\n\nIf some process connects to other one, kernelspace connector reports\nprocess id and thread group id of both these involved processes. On\ndisconnection null process id is returned.\n\nSuch an event allows to create a simple automated userspace mechanism\nto be aware about processes connecting to others, therefore predefined\nprocess policies can be applied to them if needed.\n\nNote, a detach signal is emitted only in case, if a tracer process\nexplicitly executes PTRACE_DETACH request. In other cases like tracee\nor tracer exit detach event from proc connector is not reported.\n\nSigned-off-by: Vladimir Zapolskiy \u003cvzapolskiy@gmail.com\u003e\nAcked-by: Evgeniy Polyakov \u003czbr@ioremap.net\u003e\nCc: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\n"
    },
    {
      "commit": "a07c7964a29b6dc515b120f1e1c223ac2f8666f5",
      "tree": "cf45e084be0437ca921c0623569932bf1d142c1d",
      "parents": [
        "0b8f6273eb6fd0611849d6fb432151f04e042434"
      ],
      "author": {
        "name": "WANG Cong",
        "email": "xiyou.wangcong@gmail.com",
        "time": "Sat Jul 16 22:22:20 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 18 11:06:03 2011 -0700"
      },
      "message": "include/linux/sdla.h: remove the prototype of sdla()\n\n`make headers_check` complains that\n\nlinux-2.6/usr/include/linux/sdla.h:116: userspace cannot reference\nfunction or variable defined in the kernel\n\nthis is due to that there is no such a kernel function,\n\nvoid sdla(void *cfg_info, char *dev, struct frad_conf *conf, int quiet);\n\nI don\u0027t know why we have it in a kernel header, so remove it.\n\nSigned-off-by: WANG Cong \u003cxiyou.wangcong@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "61b8013a114cb041db2c56f747953cac69637f26",
      "tree": "adc39f580015301e9be3e74bef360de8145512fd",
      "parents": [
        "eb0dc4bb2e22c04964d6e9545e86f629f117108b"
      ],
      "author": {
        "name": "Srinivas Kandagatla",
        "email": "srinivas.kandagatla@st.com",
        "time": "Sun Jul 17 20:54:09 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 18 10:47:24 2011 -0700"
      },
      "message": "stmmac: Allow SOCs to use Store forward mode eventhough tx_coe is 0. (V2)\n\nThis patch adds new field \u0027force_sf_dma_mode\u0027 to plat_stmmacenet_data\nstruct to allow users to specify if they want to use force store forward\neventhough tx_coe is not available in hw.\nwithout this flag stmmac driver will use cut-thru mode not use\nstore-forward mode.\n\nSigned-off-by: Srinivas Kandagatla \u003csrinivas.kandagatla@st.com\u003e\nSigned-off-by: Giuseppe Cavallaro \u003cpeppe.cavallaro@st.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6b75e3e8d664a9a1b99d31a7f4976ae70d1d090a",
      "tree": "940d95c340df22db092062bdaea599e9afc4fcf9",
      "parents": [
        "131ad62d8fc06d9d0a5c61d9526876352c2f2bbd"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Mon Jul 18 16:08:07 2011 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Jul 18 16:08:07 2011 +0200"
      },
      "message": "netfilter: nfnetlink: add RCU in nfnetlink_rcv_msg()\n\nGoal of this patch is to permit nfnetlink providers not mandate\nnfnl_mutex being held while nfnetlink_rcv_msg() calls them.\n\nIf struct nfnl_callback contains a non NULL call_rcu(), then\nnfnetlink_rcv_msg() will use it instead of call() field, holding\nrcu_read_lock instead of nfnl_mutex\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCC: Florian Westphal \u003cfw@strlen.de\u003e\nCC: Eric Leblond \u003ceric@regit.org\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "69ecca86da4890c13a5e29c51b4ac76a1a8a62c9",
      "tree": "3a0084284ef48af692f7471a5736b0099912a77a",
      "parents": [
        "178edcbc6b539dfc21062fed9bf31701a8952e1c"
      ],
      "author": {
        "name": "David Lamparter",
        "email": "equinox@diac24.net",
        "time": "Sun Jul 17 08:53:12 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jul 17 12:33:22 2011 -0700"
      },
      "message": "net: vlan, qlcnic: make vlan_find_dev private\n\nthere is only one user of vlan_find_dev outside of the actual vlan code:\nqlcnic uses it to iterate over some VLANs it knows.\n\nlet\u0027s just make vlan_find_dev private to the VLAN code and have the\niteration in qlcnic be a bit more direct. (a few rcu dereferences less\ntoo)\n\nSigned-off-by: David Lamparter \u003cequinox@diac24.net\u003e\nCc: Patrick McHardy \u003ckaber@trash.net\u003e\nCc: Amit Kumar Salecha \u003camit.salecha@qlogic.com\u003e\nCc: Anirban Chakraborty \u003canirban.chakraborty@qlogic.com\u003e\nCc: linux-driver@qlogic.com\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "178edcbc6b539dfc21062fed9bf31701a8952e1c",
      "tree": "2d94496564e79273eb5ab99974332df1fa459665",
      "parents": [
        "542d4d685febf3110d1a08d0bcb9f6ef060b76f7"
      ],
      "author": {
        "name": "David Lamparter",
        "email": "equinox@diac24.net",
        "time": "Sun Jul 17 08:32:12 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jul 17 12:33:22 2011 -0700"
      },
      "message": "net: add 802.1ad / 802.1ah / QinQ ethertypes\n\ndefine ETH_P_8021AD to 88a8 (assigned by IEEE) and add ETH_P_QINQ{1,2,3}\nfor the pre-standard 9{1,2,3}00 types. all of them use 802.1q frame\nformat, with 1 bit used differently in some cases.\n\nalso define ETH_P_8021AH to 88e7 (assigned by IEEE). this is Mac-in-Mac\nand uses a different, 16-byte header.\n\nSigned-off-by: David Lamparter \u003cequinox@diac24.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d184d6eb1dc3c9869e25a8e422be5c55ab0db4ac",
      "tree": "efb6fbc6339ba1ce3905e3343299a4d5141da3c6",
      "parents": [
        "dcace06cc29df927a74a6bc0e57b9bef87704377"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Fri Jul 08 19:14:17 2011 +0200"
      },
      "committer": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Sun Jul 17 20:23:52 2011 +0200"
      },
      "message": "ptrace: dont send SIGSTOP on auto-attach if PT_SEIZED\n\nThe fake SIGSTOP during attach has numerous problems. PTRACE_SEIZE\nis already fine, but we have basically the same problems is SIGSTOP\nis sent on auto-attach, the tracer can\u0027t know if this signal signal\nshould be cancelled or not.\n\nChange ptrace_event() to set JOBCTL_TRAP_STOP if the new child is\nPT_SEIZED, this triggers the PTRACE_EVENT_STOP report.\n\nThereafter a PT_SEIZED task can never report the bogus SIGSTOP.\n\nTest-case:\n\n\t#define PTRACE_SEIZE\t\t0x4206\n\t#define PTRACE_SEIZE_DEVEL\t0x80000000\n\t#define PTRACE_EVENT_STOP\t7\n\t#define WEVENT(s)\t\t((s \u0026 0xFF0000) \u003e\u003e 16)\n\n\tint main(void)\n\t{\n\t\tint child, grand_child, status;\n\t\tlong message;\n\n\t\tchild \u003d fork();\n\t\tif (!child) {\n\t\t\tkill(getpid(), SIGSTOP);\n\t\t\tfork();\n\t\t\tassert(0);\n\t\t\treturn 0x23;\n\t\t}\n\n\t\tassert(ptrace(PTRACE_SEIZE, child, 0,PTRACE_SEIZE_DEVEL) \u003d\u003d 0);\n\t\tassert(wait(\u0026status) \u003d\u003d child);\n\t\tassert(WIFSTOPPED(status) \u0026\u0026 WSTOPSIG(status) \u003d\u003d SIGSTOP);\n\n\t\tassert(ptrace(PTRACE_SETOPTIONS, child, 0, PTRACE_O_TRACEFORK) \u003d\u003d 0);\n\n\t\tassert(ptrace(PTRACE_CONT, child, 0,0) \u003d\u003d 0);\n\t\tassert(waitpid(child, \u0026status, 0) \u003d\u003d child);\n\t\tassert(WIFSTOPPED(status) \u0026\u0026 WSTOPSIG(status) \u003d\u003d SIGTRAP);\n\t\tassert(WEVENT(status) \u003d\u003d PTRACE_EVENT_FORK);\n\n\t\tassert(ptrace(PTRACE_GETEVENTMSG, child, 0, \u0026message) \u003d\u003d 0);\n\t\tgrand_child \u003d message;\n\n\t\tassert(waitpid(grand_child, \u0026status, 0) \u003d\u003d grand_child);\n\t\tassert(WIFSTOPPED(status) \u0026\u0026 WSTOPSIG(status) \u003d\u003d SIGTRAP);\n\t\tassert(WEVENT(status) \u003d\u003d PTRACE_EVENT_STOP);\n\n\t\tkill(child, SIGKILL);\n\t\tkill(grand_child, SIGKILL);\n\t\treturn 0;\n\t}\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nAcked-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "dcace06cc29df927a74a6bc0e57b9bef87704377",
      "tree": "9a04518032869b1ed79933026379ea0d7081e43a",
      "parents": [
        "6634ae1033ceaeca5877dd75723210f8c2648c17"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Fri Jul 08 19:13:54 2011 +0200"
      },
      "committer": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Sun Jul 17 20:23:51 2011 +0200"
      },
      "message": "ptrace: mv send-SIGSTOP from do_fork() to ptrace_init_task()\n\nIf the new child is traced, do_fork() adds the pending SIGSTOP.\nIt assumes that either it is traced because of auto-attach or the\ntracer attached later, in both cases sigaddset/set_thread_flag is\ncorrect even if SIGSTOP is already pending.\n\nNow that we have PTRACE_SEIZE this is no longer right in the latter\ncase. If the tracer does PTRACE_SEIZE after copy_process() makes the\nchild visible the queued SIGSTOP is wrong.\n\nWe could check PT_SEIZED bit and change ptrace_attach() to set both\nPT_PTRACED and PT_SEIZED bits simultaneously but see the next patch,\nwe need to know whether this child was auto-attached or not anyway.\n\nSo this patch simply moves this code to ptrace_init_task(), this\nway we can never race with ptrace_attach().\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nAcked-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "6634ae1033ceaeca5877dd75723210f8c2648c17",
      "tree": "2ddf9200593934ac0776bb1d3e3646f448dc38fe",
      "parents": [
        "961c4675c75112717705fa5c0c53cb9664051479"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Fri Jul 08 19:13:39 2011 +0200"
      },
      "committer": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Sun Jul 17 20:23:51 2011 +0200"
      },
      "message": "ptrace_init_task: initialize child-\u003ejobctl explicitly\n\nnew_child-\u003ejobctl is not initialized during the fork, it is copied\nfrom parent-\u003ejobctl. Currently this is harmless, the forking task\nis running and copy_process() can\u0027t succeed if signal_pending() is\ntrue, so only JOBCTL_STOP_DEQUEUED can be copied. Still this is a\nbit fragile, it would be more clean to set -\u003ejobctl \u003d 0 explicitly.\n\nAlso, check -\u003eptrace !\u003d 0 instead of PT_PTRACED, move the\nCONFIG_HAVE_HW_BREAKPOINT code up.\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nAcked-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "b23b5455b6458920179a1f27513ce42e70d11f37",
      "tree": "d7bd2c13199485c2504d6b315d451cebba6978ae",
      "parents": [
        "47ec132a40d788d45e2f088545dea68798034dab"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jul 16 17:45:02 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jul 16 17:45:02 2011 -0700"
      },
      "message": "neigh: Kill hh_cache-\u003ehh_output\n\nIt\u0027s just taking on one of two possible values, either\nneigh_ops-\u003eoutput or dev_queue_xmit().  And this is purely depending\nupon whether nud_state has NUD_CONNECTED set or not.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f6a7cd0212c359f7b55414aeee364ee7cac363cc",
      "tree": "f7d75b8040c69f21b8b1ffcbbde762c5636cac37",
      "parents": [
        "93b37905f70083d6143f5f4dba0a45cc64379a62"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Thu Jul 14 21:08:39 2011 +0200"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sat Jul 16 07:24:32 2011 +0200"
      },
      "message": "firewire: cdev: ABI documentation enhancements\n\nAdd overview documentation in Documentation/ABI/stable/firewire-cdev.\n\nImprove the inline reference documentation in firewire-cdev.h:\n\n  - Add /* available since kernel... */ comments to event numbers\n    consistent with the comments on ioctl numbers.\n\n  - Shorten some documentation on an event and an ioctl that are\n    less interesting to current programming because there are newer\n    preferable variants.\n\n  - Spell Configuration ROM (name of an IEEE 1212 register) in\n    upper case.\n\n  - Move the dummy FW_CDEV_VERSION out of the reader\u0027s field of\n    vision.  We should remove it from the header next year or so.\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "93b37905f70083d6143f5f4dba0a45cc64379a62",
      "tree": "b6917581cd390ed9967e1df9922940362ad4309e",
      "parents": [
        "d873d794235efa590ab3c94d5ee22bb1fab19ac4"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sat Jul 09 16:43:22 2011 +0200"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sat Jul 16 07:24:32 2011 +0200"
      },
      "message": "firewire: cdev: prevent race between first get_info ioctl and bus reset event queuing\n\nBetween open(2) of a /dev/fw* and the first FW_CDEV_IOC_GET_INFO\nioctl(2) on it, the kernel already queues FW_CDEV_EVENT_BUS_RESET events\nto be read(2) by the client.  The get_info ioctl is practically always\nissued right away after open, hence this condition only occurs if the\nclient opens during a bus reset, especially during a rapid series of bus\nresets.\n\nThe problem with this condition is twofold:\n\n  - These bus reset events carry the (as yet undocumented) @closure\n    value of 0.  But it is not the kernel\u0027s place to choose closures;\n    they are privat to the client.  E.g., this 0 value forced from the\n    kernel makes it unsafe for clients to dereference it as a pointer to\n    a closure object without NULL pointer check.\n\n  - It is impossible for clients to determine the relative order of bus\n    reset events from get_info ioctl(2) versus those from read(2),\n    except in one way:  By comparison of closure values.  Again, such a\n    procedure imposes complexity on clients and reduces freedom in use\n    of the bus reset closure.\n\nSo, change the ABI to suppress queuing of bus reset events before the\nfirst FW_CDEV_IOC_GET_INFO ioctl was issued by the client.\n\nNote, this ABI change cannot be version-controlled.  The kernel cannot\ndistinguish old from new clients before the first FW_CDEV_IOC_GET_INFO\nioctl.\n\nWe will try to back-merge this change into currently maintained stable/\nlongterm series, and we only document the new behaviour.  The old\nbehavior is now considered a kernel bug, which it basically is.\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\nCc: \u003cstable@kernel.org\u003e\n"
    },
    {
      "commit": "8c11642a50555e584774737f7c296f9aece310cf",
      "tree": "1ff8dfaf05479593ef2c50378a68dfc6aec495a5",
      "parents": [
        "5d10302f46df1d9a85c34ea97f9b6c29e414482e",
        "620917de59eeb934b9f8cf35cc2d95c1ac8ed0fc"
      ],
      "author": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Fri Jul 15 20:11:34 2011 -0600"
      },
      "committer": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Fri Jul 15 20:11:34 2011 -0600"
      },
      "message": "Merge commit \u0027v3.0-rc7\u0027 into devicetree/next\n"
    },
    {
      "commit": "7ae033cc0dfce68d8e0c83aca60837cf2bf0d2e6",
      "tree": "91bb3b8ae2790c7fef06b1832a7df61ae496a77a",
      "parents": [
        "ba1389d74f34c0c6e95cc135a332cd29c29d9c20",
        "c8c9fda5069456eb9e0e403c19764b2e257802e1"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Jul 15 23:59:25 2011 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Jul 15 23:59:25 2011 +0200"
      },
      "message": "Merge branch \u0027pm-runtime\u0027 into for-linus\n\n* pm-runtime:\n  OMAP: PM: disable idle on suspend for GPIO and UART\n  OMAP: PM: omap_device: add API to disable idle on suspend\n  OMAP: PM: omap_device: add system PM methods for PM domain handling\n  OMAP: PM: omap_device: conditionally use PM domain runtime helpers\n  PM / Runtime: Add new helper function: pm_runtime_status_suspended()\n  PM / Runtime: Consistent utilization of deferred_resume\n  PM / Runtime: Prevent runtime_resume from racing with probe\n  PM / Runtime: Replace \"run-time\" with \"runtime\" in documentation\n  PM / Runtime: Improve documentation of enable, disable and barrier\n  PM: Limit race conditions between runtime PM and system sleep (v2)\n  PCI / PM: Detect early wakeup in pci_pm_prepare()\n  PM / Runtime: Return special error code if runtime PM is disabled\n  PM / Runtime: Update documentation of interactions with system sleep\n"
    },
    {
      "commit": "ba1389d74f34c0c6e95cc135a332cd29c29d9c20",
      "tree": "53813843d22cfcfe6d466a5daa44c646f8157980",
      "parents": [
        "f0c077a8b7f9dce590c760a7b2f3c417dffa52d1",
        "5ca80817e231723f1399bff495854ba2171103ca"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Jul 15 23:59:09 2011 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Jul 15 23:59:09 2011 +0200"
      },
      "message": "Merge branch \u0027pm-domains\u0027 into for-linus\n\n* pm-domains: (33 commits)\n  ARM / shmobile: Return -EBUSY from A4LC power off if A3RV is active\n  PM / Domains: Take .power_off() error code into account\n  ARM / shmobile: Use genpd_queue_power_off_work()\n  ARM / shmobile: Use pm_genpd_poweroff_unused()\n  PM / Domains: Introduce function to power off all unused PM domains\n  PM / Domains: Queue up power off work only if it is not pending\n  PM / Domains: Improve handling of wakeup devices during system suspend\n  PM / Domains: Do not restore all devices on power off error\n  PM / Domains: Allow callbacks to execute all runtime PM helpers\n  PM / Domains: Do not execute device callbacks under locks\n  PM / Domains: Make failing pm_genpd_prepare() clean up properly\n  PM / Domains: Set device state to \"active\" during system resume\n  ARM: mach-shmobile: sh7372 A3RV requires A4LC\n  PM / Domains: Export pm_genpd_poweron() in header\n  ARM: mach-shmobile: sh7372 late pm domain off\n  ARM: mach-shmobile: Runtime PM late init callback\n  ARM: mach-shmobile: sh7372 D4 support\n  ARM: mach-shmobile: sh7372 A4MP support\n  ARM: mach-shmobile: sh7372: make sure that fsi is peripheral of spu2\n  ARM: mach-shmobile: sh7372 A3SG support\n  ...\n"
    },
    {
      "commit": "3b5fe85252326217cd96f24a7bda4460d8f71bee",
      "tree": "cfcf577a53b88109d36f73577a8177279444a09f",
      "parents": [
        "99f381d3549432a250fe846a2a82d61a032804b0"
      ],
      "author": {
        "name": "MyungJoo Ham",
        "email": "myungjoo.ham@samsung.com",
        "time": "Sun Jun 12 15:57:05 2011 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Jul 15 23:58:19 2011 +0200"
      },
      "message": "PM / Suspend: Add .suspend_again() callback to suspend_ops\n\nA system or a device may need to control suspend/wakeup events. It may\nwant to wakeup the system after a predefined amount of time or at a\npredefined event decided while entering suspend for polling or delayed\nwork. Then, it may want to enter suspend again if its predefined wakeup\ncondition is the only wakeup reason and there is no outstanding events;\nthus, it does not wakeup the userspace unnecessary or unnecessary\ndevices and keeps suspended as long as possible (saving the power).\n\nEnabling a system to wakeup after a specified time can be easily\nachieved by using RTC. However, to enter suspend again immediately\nwithout invoking userland and unrelated devices, we need additional\nfeatures in the suspend framework.\n\nSuch need comes from:\n\n 1. Monitoring a critical device status without interrupts that can\nwakeup the system. (in-suspend polling)\n An example is ambient temperature monitoring that needs to shut down\nthe system or a specific device function if it is too hot or cold. The\ntemperature of a specific device may be needed to be monitored as well;\ne.g., a charger monitors battery temperature in order to stop charging\nif overheated.\n\n 2. Execute critical \"delayed work\" at suspend.\n A driver or a system/board may have a delayed work (or any similar\nthings) that it wants to execute at the requested time.\n For example, some chargers want to check the battery voltage some\ntime (e.g., 30 seconds) after the battery is fully charged and the\ncharger has stopped. Then, the charger restarts charging if the voltage\nhas dropped more than a threshold, which is smaller than \"restart-charger\"\nvoltage, which is a threshold to restart charging regardless of the\ntime passed.\n\nThis patch allows to add \"suspend_again\" callback at struct\nplatform_suspend_ops and let the \"suspend_again\" callback return true if\nthe system is required to enter suspend again after the current instance\nof wakeup. Device-wise suspend_again implemented at dev_pm_ops or\nsyscore is not done because: a) suspend_again feature is usually under\nplatform-wise decision and controls the behavior of the whole platform\nand b) There are very limited devices related to the usage cases of\nsuspend_again; chargers and temperature sensors are mentioned so far.\n\nWith suspend_again callback registered at struct platform_suspend_ops\nsuspend_ops in kernel/power/suspend.c with suspend_set_ops by the\nplatform, the suspend framework tries to enter suspend again by\nlooping suspend_enter() if suspend_again has returned true and there has\nbeen no errors in the suspending sequence or pending wakeups (by\npm_wakeup_pending).\n\nTested at Exynos4-NURI.\n\n[rjw: Fixed up kerneldoc comment for suspend_enter().]\n\nSigned-off-by: MyungJoo Ham \u003cmyungjoo.ham@samsung.com\u003e\nSigned-off-by: Kyungmin Park \u003ckyungmin.park@samsung.com\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "99f381d3549432a250fe846a2a82d61a032804b0",
      "tree": "c267e27c99d0609732e54fb7e7fda9fef2a7e8c0",
      "parents": [
        "3110df800c4de2724624d46e6bed27efc5e9a707"
      ],
      "author": {
        "name": "Nishanth Menon",
        "email": "nm@ti.com",
        "time": "Fri Jun 10 20:24:57 2011 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Jul 15 23:58:18 2011 +0200"
      },
      "message": "PM / OPP: Introduce function to free cpufreq table\n\ncpufreq table allocated by opp_init_cpufreq_table is better\nfreed by OPP layer itself. This allows future modifications to\nthe table handling to be transparent to the users.\n\nSigned-off-by: Nishanth Menon \u003cnm@ti.com\u003e\nAcked-by: Kevin Hilman \u003ckhilman@ti.com\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "1bb6f9b042eb1428ba927d2e851a00df6308877a",
      "tree": "6f9c2a14b9b852ad99cfbba775370aae89461c71",
      "parents": [
        "eb5064db408eaffa332f93ddcc19c0b653849093"
      ],
      "author": {
        "name": "Peter Korsgaard",
        "email": "jacmet@sunsite.dk",
        "time": "Fri Jul 15 10:25:30 2011 +0200"
      },
      "committer": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Fri Jul 15 13:54:17 2011 -0600"
      },
      "message": "mcp23s08: get rid of setup/teardown callbacks\n\nThere\u0027s no in-tree users, and bus notifiers are more generic anyway.\n\nSigned-off-by: Peter Korsgaard \u003cjacmet@sunsite.dk\u003e\nSigned-off-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\n"
    },
    {
      "commit": "95a943c162d74b20d869917bdf5df11293c35b63",
      "tree": "c69d5cb97a4d97b6062a276ecdfa8582535193af",
      "parents": [
        "ecae42d37045ec71831d0e0e493e00b0e0732edd",
        "95acac61ba66c4abd40e038dae8c1ed2e176c7b1"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jul 15 10:05:24 2011 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jul 15 10:05:24 2011 -0400"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 into for-davem\n\nConflicts:\n\tnet/bluetooth/l2cap_core.c\n"
    },
    {
      "commit": "62f2a3a48bdc99822a24356e667e52c30df287c9",
      "tree": "acad792fc90ac7d55974729f3b591e75b0f591dd",
      "parents": [
        "b73c43f884b1b26ef8e824a33f3924f92e493c11"
      ],
      "author": {
        "name": "Michał Mirosław",
        "email": "mirq-linux@rere.qmqm.pl",
        "time": "Wed Jul 13 14:10:29 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 14 15:18:49 2011 -0700"
      },
      "message": "net: remove NETIF_F_ALL_TX_OFFLOADS\n\nThere is no software fallback implemented for SCTP or FCoE checksumming,\nand so it should not be passed on by software devices like bridge or bonding.\n\nFor VLAN devices, this is different. First, the driver for underlying device\nshould be prepared to get offloaded packets even when the feature is disabled\n(especially if it advertises it in vlan_features). Second, devices under\nVLANs do not get replaced without tearing down the VLAN first.\n\nThis fixes a mess I accidentally introduced while converting bonding to\nndo_fix_features.\n\nNETIF_F_SOFT_FEATURES are removed from BOND_VLAN_FEATURES because they\nare unused as of commit 712ae51afd.\n\nSigned-off-by: Michał Mirosław \u003cmirq-linux@rere.qmqm.pl\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e20e6940736fb7b4dd024933f7456b9da4c44118",
      "tree": "61cf6126b92dcfa3c203ecddefdbac08f73a32c2",
      "parents": [
        "974151e6119f20d2af4acb97526c780ae0f18ccb"
      ],
      "author": {
        "name": "Michał Mirosław",
        "email": "mirq-linux@rere.qmqm.pl",
        "time": "Thu Jul 14 14:45:59 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 14 14:45:59 2011 -0700"
      },
      "message": "net: remove SK_ROUTE_CAPS from meta ematch\n\nRemove it, as it indirectly exposes netdev features. It\u0027s not used in\niproute2 (2.6.38) - is anything else using its interface?\n\nSigned-off-by: Michał Mirosław \u003cmirq-linux@rere.qmqm.pl\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n\n"
    },
    {
      "commit": "fec30c33819b442fd618b10f405248ee7cbb51d8",
      "tree": "df331b34b872ba3a9d0619bf09181306872f0917",
      "parents": [
        "1180e7d6599c1fb0c56a23a649a3eb37d877b9d0"
      ],
      "author": {
        "name": "Michał Mirosław",
        "email": "mirq-linux@rere.qmqm.pl",
        "time": "Wed Jul 13 14:10:30 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 14 14:44:32 2011 -0700"
      },
      "message": "net: unexport netdev_fix_features()\n\nIt is not used anywhere except net/core/dev.c now.\n\nSigned-off-by: Michał Mirosław \u003cmirq-linux@rere.qmqm.pl\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4a9bd3f134decd6d16ead8d288342d57aad486be",
      "tree": "ca9eca5fcbe93dc8a433d839221505ad8fba5296",
      "parents": [
        "259032bfe379281bf7cba512b7705bdb4ce41db5"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Jul 14 16:36:53 2011 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Jul 14 16:36:53 2011 -0400"
      },
      "message": "tracing: Have dynamic size event stack traces\n\nCurrently the stack trace per event in ftace is only 8 frames.\nThis can be quite limiting and sometimes useless. Especially when\nthe \"ignore frames\" is wrong and we also use up stack frames for\nthe event processing itself.\n\nChange this to be dynamic by adding a percpu buffer that we can\nwrite a large stack frame into and then copy into the ring buffer.\n\nFor interrupts and NMIs that come in while another event is being\nprocess, will only get to use the 8 frame stack. That should be enough\nas the task that it interrupted will have the full stack frame anyway.\n\nRequested-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "0bc5b2debb832191a42baea7ff59d2ca6ce9f7d5",
      "tree": "cb7f1f7a20fb9a9d2483714a8e9f0a3a84862245",
      "parents": [
        "796204142a98b6e0e71b494e808d1b6ee62cc75f"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Thu Jul 14 20:59:07 2011 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Thu Jul 14 20:59:07 2011 +0200"
      },
      "message": "ARM / shmobile: Use genpd_queue_power_off_work()\n\nMake pd_power_down_a3rv() use genpd_queue_power_off_work() to queue\nup the powering off of the A4LC domain to avoid queuing it up when\nit is pending.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Magnus Damm \u003cdamm@opensource.se\u003e\n"
    },
    {
      "commit": "6a7ebdf2fd15417e87b4fd02ff411aeaca34da5f",
      "tree": "86b15d8cd3e25c97b348b5a61bdb16c02726a480",
      "parents": [
        "f6b72b6217f8c24f2a54988e58af858b4e66024d",
        "51414d41084496aaefd06d7f19eb8206e8bfac2d"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 14 07:56:40 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 14 07:56:40 2011 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tnet/bluetooth/l2cap_core.c\n"
    },
    {
      "commit": "f6b72b6217f8c24f2a54988e58af858b4e66024d",
      "tree": "c59d5adcf9bb226db6f602c5078106052524cfea",
      "parents": [
        "390fd0b388e4f85549e5d60bdeb21364b344d9b9"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 14 07:53:20 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 14 07:53:20 2011 -0700"
      },
      "message": "net: Embed hh_cache inside of struct neighbour.\n\nNow that there is a one-to-one correspondance between neighbour\nand hh_cache entries, we no longer need:\n\n1) dynamic allocation\n2) attachment to dst-\u003ehh\n3) refcounting\n\nInitialization of the hh_cache entry is indicated by hh_len\nbeing non-zero, and such initialization is always done with\nthe neighbour\u0027s lock held as a writer.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "51414d41084496aaefd06d7f19eb8206e8bfac2d",
      "tree": "31c7624d28a564e1cc918a30b8570a3c001a9c7c",
      "parents": [
        "201f92e2ca789d529418da8fa027d5457f0df024",
        "f39b2dd9d065151a04f5996656d1f27a7eb32d45"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 13 16:47:31 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 13 16:47:31 2011 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc:\n  mmc: core: Bus width testing needs to handle suspend/resume\n"
    },
    {
      "commit": "f39b2dd9d065151a04f5996656d1f27a7eb32d45",
      "tree": "3801f7d6793529d737fcbfd6af05b6900ef2cd06",
      "parents": [
        "c31b55cd4eaf050bb5a15bd8251da1b3c7edeb1c"
      ],
      "author": {
        "name": "Philip Rakity",
        "email": "prakity@marvell.com",
        "time": "Thu Jul 07 09:04:55 2011 -0700"
      },
      "committer": {
        "name": "Chris Ball",
        "email": "cjb@laptop.org",
        "time": "Wed Jul 13 14:54:37 2011 -0400"
      },
      "message": "mmc: core: Bus width testing needs to handle suspend/resume\n\nOn reading the ext_csd for the first time (in 1 bit mode), save the\next_csd information needed for bus width compare.\n\nOn every pass we make re-reading the ext_csd, compare the data\nagainst the saved ext_csd data.\n\nThis fixes a regression introduced in 3.0-rc1 by 08ee80cc397ac1a3\n(\"mmc: core: eMMC bus width may not work on all platforms\"), which\nincorrectly assumed we would be re-reading the ext_csd at resume-\ntime.\n\nSigned-off-by: Philip Rakity \u003cprakity@marvell.com\u003e\nTested-by: Jaehoon Chung \u003cjh80.chung@samsung.com\u003e\nSigned-off-by: Chris Ball \u003ccjb@laptop.org\u003e\n"
    },
    {
      "commit": "5125bbf3880755419eff68672623cde49c4f31e8",
      "tree": "50c4bfa1745e6d30ca16652a4d2ea848c568eb31",
      "parents": [
        "56375fd420f851944960bd53dbb08d674f4d9406"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Jul 13 12:31:52 2011 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Jul 13 12:31:52 2011 +0200"
      },
      "message": "PM / Domains: Introduce function to power off all unused PM domains\n\nAdd a new function pm_genpd_poweroff_unused() queuing up the\nexecution of pm_genpd_poweroff() for every initialized generic PM\ndomain.  Calling it will cause every generic PM domain without\ndevices in use to be powered off.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Magnus Damm \u003cdamm@opensource.se\u003e\n"
    },
    {
      "commit": "5c25f686db352082eef8daa21b760192351a023a",
      "tree": "20b1d6797b0d9d6757e2e367ceb6cc4fe866acbe",
      "parents": [
        "e69dd336ee3a05a589629b505b18ba5e7a5b4c54"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 13 00:51:10 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 13 02:29:59 2011 -0700"
      },
      "message": "net: Kill support for multiple hh_cache entries per neighbour\n\nThis never, ever, happens.\n\nNeighbour entries are always tied to one address family, and therefore\none set of dst_ops, and therefore one dst_ops-\u003eprotocol \"hh_type\"\nvalue.\n\nThis capability was blindly imported by Alexey Kuznetsov when he wrote\nthe neighbour layer.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    }
  ],
  "next": "e69dd336ee3a05a589629b505b18ba5e7a5b4c54"
}
