)]}'
{
  "log": [
    {
      "commit": "229aebb873e29726b91e076161649cf45154b0bf",
      "tree": "acc02a3702215bce8d914f4c8cc3d7a1382b1c67",
      "parents": [
        "8de547e1824437f3c6af180d3ed2162fa4b3f389",
        "50a23e6eec6f20d55a3a920e47adb455bff6046e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Oct 24 13:41:39 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Oct 24 13:41:39 2010 -0700"
      },
      "message": "Merge branch \u0027for-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial\n\n* \u0027for-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (39 commits)\n  Update broken web addresses in arch directory.\n  Update broken web addresses in the kernel.\n  Revert \"drivers/usb: Remove unnecessary return\u0027s from void functions\" for musb gadget\n  Revert \"Fix typo: configuation \u003d\u003e configuration\" partially\n  ida: document IDA_BITMAP_LONGS calculation\n  ext2: fix a typo on comment in ext2/inode.c\n  drivers/scsi: Remove unnecessary casts of private_data\n  drivers/s390: Remove unnecessary casts of private_data\n  net/sunrpc/rpc_pipe.c: Remove unnecessary casts of private_data\n  drivers/infiniband: Remove unnecessary casts of private_data\n  drivers/gpu/drm: Remove unnecessary casts of private_data\n  kernel/pm_qos_params.c: Remove unnecessary casts of private_data\n  fs/ecryptfs: Remove unnecessary casts of private_data\n  fs/seq_file.c: Remove unnecessary casts of private_data\n  arm: uengine.c: remove C99 comments\n  arm: scoop.c: remove C99 comments\n  Fix typo configue \u003d\u003e configure in comments\n  Fix typo: configuation \u003d\u003e configuration\n  Fix typo interrest[ing|ed] \u003d\u003e interest[ing|ed]\n  Fix various typos of valid in comments\n  ...\n\nFix up trivial conflicts in:\n\tdrivers/char/ipmi/ipmi_si_intf.c\n\tdrivers/usb/gadget/rndis.c\n\tnet/irda/irnet/irnet_ppp.c\n"
    },
    {
      "commit": "6d4121f6c20a0e86231d52f535f1c82423b3326f",
      "tree": "5c235cac699ca86b504850aa663ddadde0455a61",
      "parents": [
        "92a5bbc11ff2442a54b2f1d313088c245828ef4e",
        "35da7a307c535f9c2929cae277f3df425c9f9b1e"
      ],
      "author": {
        "name": "Pekka Enberg",
        "email": "penberg@kernel.org",
        "time": "Sun Oct 24 19:57:05 2010 +0300"
      },
      "committer": {
        "name": "Pekka Enberg",
        "email": "penberg@kernel.org",
        "time": "Sun Oct 24 19:57:05 2010 +0300"
      },
      "message": "Merge branch \u0027master\u0027 into for-linus\n\nConflicts:\n\tinclude/linux/percpu.h\n\tmm/percpu.c\n"
    },
    {
      "commit": "b9da0571050c09863e59f94d0b8594a290d61b88",
      "tree": "3632c4fee768db9a27a5c872bd42133692e2f3d0",
      "parents": [
        "f8cae0f03f75adb54b1d48ddbc90f84a1f5de186",
        "5abd935661e01289ba143c3b2c1ba300c65bcc5f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 22 19:36:42 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 22 19:36:42 2010 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6: (31 commits)\n  driver core: Display error codes when class suspend fails\n  Driver core: Add section count to memory_block struct\n  Driver core: Add mutex for adding/removing memory blocks\n  Driver core: Move find_memory_block routine\n  hpilo: Despecificate driver from iLO generation\n  driver core: Convert link_mem_sections to use find_memory_block_hinted.\n  driver core: Introduce find_memory_block_hinted which utilizes kset_find_obj_hinted.\n  kobject: Introduce kset_find_obj_hinted.\n  driver core: fix build for CONFIG_BLOCK not enabled\n  driver-core: base: change to new flag variable\n  sysfs: only access bin file vm_ops with the active lock\n  sysfs: Fail bin file mmap if vma close is implemented.\n  FW_LOADER: fix kconfig dependency warning on HOTPLUG\n  uio: Statically allocate uio_class and use class .dev_attrs.\n  uio: Support 2^MINOR_BITS minors\n  uio: Cleanup irq handling.\n  uio: Don\u0027t clear driver data\n  uio: Fix lack of locking in init_uio_class\n  SYSFS: Allow boot time switching between deprecated and modern sysfs layout\n  driver core: remove CONFIG_SYSFS_DEPRECATED_V2 but keep it for block devices\n  ...\n"
    },
    {
      "commit": "092e0e7e520a1fca03e13c9f2d157432a8657ff2",
      "tree": "451897252c4c08c4b5a8ef535da156f1e817e80b",
      "parents": [
        "79f14b7c56d3b3ba58f8b43d1f70b9b71477a800",
        "776c163b1b93c8dfa5edba885bc2bfbc2d228a5f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 22 10:52:56 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 22 10:52:56 2010 -0700"
      },
      "message": "Merge branch \u0027llseek\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/bkl\n\n* \u0027llseek\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/bkl:\n  vfs: make no_llseek the default\n  vfs: don\u0027t use BKL in default_llseek\n  llseek: automatically add .llseek fop\n  libfs: use generic_file_llseek for simple_attr\n  mac80211: disallow seeks in minstrel debug code\n  lirc: make chardev nonseekable\n  viotape: use noop_llseek\n  raw: use explicit llseek file operations\n  ibmasmfs: use generic_file_llseek\n  spufs: use llseek in all file operations\n  arm/omap: use generic_file_llseek in iommu_debug\n  lkdtm: use generic_file_llseek in debugfs\n  net/wireless: use generic_file_llseek in debugfs\n  drm: use noop_llseek\n"
    },
    {
      "commit": "5704e44d283e907623e3775c1262f206a2c48cf3",
      "tree": "0a981b24173e90854e7b7d812b35859e1e5f0174",
      "parents": [
        "91151240ed8e97cc4457dae4094153c2744f1eb8",
        "6de5bd128d381ad88ac6d419a5e597048eb468cf"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 22 10:43:11 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 22 10:43:11 2010 -0700"
      },
      "message": "Merge branch \u0027config\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/bkl\n\n* \u0027config\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/bkl:\n  BKL: introduce CONFIG_BKL.\n  dabusb: remove the BKL\n  sunrpc: remove the big kernel lock\n  init/main.c: remove BKL notations\n  blktrace: remove the big kernel lock\n  rtmutex-tester: make it build without BKL\n  dvb-core: kill the big kernel lock\n  dvb/bt8xx: kill the big kernel lock\n  tlclk: remove big kernel lock\n  fix rawctl compat ioctls breakage on amd64 and itanic\n  uml: kill big kernel lock\n  parisc: remove big kernel lock\n  cris: autoconvert trivial BKL users\n  alpha: kill big kernel lock\n  isapnp: BKL removal\n  s390/block: kill the big kernel lock\n  hpet: kill BKL, add compat_ioctl\n"
    },
    {
      "commit": "c25d1dfbd403209025df41a737f82ce8f43d93f5",
      "tree": "35110a432101ff146bae3656137d9ba6f37b38fd",
      "parents": [
        "ead454feb6cbfe0fa6a1eeb30aa9abc338dacf62"
      ],
      "author": {
        "name": "Robin Holt",
        "email": "holt@sgi.com",
        "time": "Wed Sep 29 14:00:54 2010 -0500"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Oct 22 10:16:44 2010 -0700"
      },
      "message": "kobject: Introduce kset_find_obj_hinted.\n\nOne call chain getting to kset_find_obj is:\n  link_mem_sections()\n    find_mem_section()\n      kset_find_obj()\n\nThis is done during boot.  The memory sections were added in a linearly\nincreasing order and link_mem_sections tends to utilize them in that\nsame linear order.\n\nIntroduce a kset_find_obj_hinted which is passed the result of the\nprevious kset_find_obj which it uses for a quick \"is the next object\nour desired object\" check before falling back to the old behavior.\n\nSigned-off-by: Robin Holt \u003cholt@sgi.com\u003e\nTo: Robert P. J. Day \u003crpjday@crashcourse.ca\u003e\nReviewed-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "6a5c083de2f5fbf89a4b0a251be2c2205434d7ea",
      "tree": "72f738d63e35749da1d79f534494cff10e644208",
      "parents": [
        "a648ec05bb950fae2f35d0490ddd6cf15010af72"
      ],
      "author": {
        "name": "Thomas Renninger",
        "email": "trenn@suse.de",
        "time": "Fri Aug 06 16:11:03 2010 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Oct 22 10:16:42 2010 -0700"
      },
      "message": "Dynamic Debug: Initialize dynamic debug earlier via arch_initcall\n\nHaving the ddebug_query\u003d boot parameter it makes sense to set up\ndynamic debug as soon as possible.\n\nI expect sysfs files cannot be set up via an arch_initcall, because\nthis one is even before fs_initcall. Therefore I splitted the\ndynamic_debug_init function into an early one and a later one providing\n/sys/../dynamic_debug/control file.\n\nPossibly dynamic_debug can be initialized even earlier, not sure whether\nthis still makes sense then. I picked up arch_initcall as it covers\nquite a lot already.\n\nDynamic debug needs to allocate memory, therefore it\u0027s not easily possible to\nset it up even before the command line gets parsed.\nTherefore the boot param query string is stored in a temp string which is\napplied when dynamic debug gets set up.\n\nThis has been tested with ddebug_query\u003d\"file ec.c +p\"\nand I could retrieve pr_debug() messages early at boot during ACPI setup:\nACPI: EC: Look up EC in DSDT\nACPI: EC: ---\u003e status \u003d 0x08\nACPI: EC: transaction start\nACPI: EC: \u003c--- command \u003d 0x80\nACPI: EC: ~~~\u003e interrupt\nACPI: EC: ---\u003e status \u003d 0x08\nACPI: EC: \u003c--- data \u003d 0xa4\n...\nACPI: Interpreter enabled\nACPI: (supports S0 S3 S4 S5)\nACPI: Using IOAPIC for interrupt routing\nACPI: EC: ---\u003e status \u003d 0x00\nACPI: EC: transaction start\nACPI: EC: \u003c--- command \u003d 0x80\n\n\nSigned-off-by: Thomas Renninger \u003ctrenn@suse.de\u003e\nAcked-by: jbaron@redhat.com\nAcked-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCC: linux-acpi@vger.kernel.org\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "a648ec05bb950fae2f35d0490ddd6cf15010af72",
      "tree": "cde3ca36db486e51d85c31619bf67f8d60215179",
      "parents": [
        "fd89cfb8718753459fcea3fe6103d19de5e86c9b"
      ],
      "author": {
        "name": "Thomas Renninger",
        "email": "trenn@suse.de",
        "time": "Fri Aug 06 16:11:02 2010 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Oct 22 10:16:42 2010 -0700"
      },
      "message": "Dynamic Debug: Introduce ddebug_query\u003d boot parameter\n\nDynamic debug lacks the ability to enable debug messages at boot time.\nOne could patch initramfs or service startup scripts to write to\n/sys/../dynamic_debug/control, but this sucks.\n\nThis patch makes it possible to pass a query in the same format one can\nwrite to /sys/../dynamic_debug/control via boot param.\nWhen dynamic debug gets initialized, this query will automatically be\napplied.\n\n\nSigned-off-by: Thomas Renninger \u003ctrenn@suse.de\u003e\nAcked-by: jbaron@redhat.com\nAcked-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "fd89cfb8718753459fcea3fe6103d19de5e86c9b",
      "tree": "8e05f06fc4954d55b75ec8c8dfeacce3c198f264",
      "parents": [
        "f6f94e2ab1b33f0082ac22d71f66385a60d8157f"
      ],
      "author": {
        "name": "Thomas Renninger",
        "email": "trenn@suse.de",
        "time": "Fri Aug 06 16:11:01 2010 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Oct 22 10:16:42 2010 -0700"
      },
      "message": "Dynamic Debug: Split out query string parsing/setup from proc_write\n\nThe parsing and applying of dynamic debug strings is not only useful for\n/sys/../dynamic_debug/control write access, but can also be used for\nboot parameter parsing.\nThe boot parameter is introduced in a follow up patch.\n\nSigned-off-by: Thomas Renninger \u003ctrenn@suse.de\u003e\nAcked-by: jbaron@redhat.com\nAcked-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "a9ccd80aadadef8c424142d41fddea7c0880f0e9",
      "tree": "d8f1078b9154ce4b4046d4fa2d744e22e260b0eb",
      "parents": [
        "81d1c3a52cd78fdbb9f0d80214fc9e7d49bf22c0",
        "e79f86b2ef9c0a8c47225217c1018b7d3d90101c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 21 14:04:25 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 21 14:04:25 2010 -0700"
      },
      "message": "Merge branch \u0027stable/swiotlb-0.9\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/swiotlb-2.6\n\n* \u0027stable/swiotlb-0.9\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/swiotlb-2.6:\n  swiotlb: Use page alignment for early buffer allocation\n  swiotlb: make io_tlb_overflow static\n"
    },
    {
      "commit": "5d70f79b5ef6ea2de4f72a37b2d96e2601e40a22",
      "tree": "a0d6de0930ba83ecf4629c2e2e261f5eaa2d8f33",
      "parents": [
        "888a6f77e0418b049f83d37547c209b904d30af4",
        "750ed158bf6c782d2813da1bca2c824365a0b777"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 21 12:54:49 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 21 12:54:49 2010 -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: (163 commits)\n  tracing: Fix compile issue for trace_sched_wakeup.c\n  [S390] hardirq: remove pointless header file includes\n  [IA64] Move local_softirq_pending() definition\n  perf, powerpc: Fix power_pmu_event_init to not use event-\u003ectx\n  ftrace: Remove recursion between recordmcount and scripts/mod/empty\n  jump_label: Add COND_STMT(), reducer wrappery\n  perf: Optimize sw events\n  perf: Use jump_labels to optimize the scheduler hooks\n  jump_label: Add atomic_t interface\n  jump_label: Use more consistent naming\n  perf, hw_breakpoint: Fix crash in hw_breakpoint creation\n  perf: Find task before event alloc\n  perf: Fix task refcount bugs\n  perf: Fix group moving\n  irq_work: Add generic hardirq context callbacks\n  perf_events: Fix transaction recovery in group_sched_in()\n  perf_events: Fix bogus AMD64 generic TLB events\n  perf_events: Fix bogus context time tracking\n  tracing: Remove parent recording in latency tracer graph options\n  tracing: Use one prologue for the preempt irqs off tracer function tracers\n  ...\n"
    },
    {
      "commit": "6de5bd128d381ad88ac6d419a5e597048eb468cf",
      "tree": "7b3a0440f645c6e98367a87b1ca0ed1e0df204dd",
      "parents": [
        "7ff52efdca367d4bfe2449bd3d4a1f8172c5953a"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Sat Sep 11 18:00:57 2010 +0200"
      },
      "committer": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Thu Oct 21 15:44:13 2010 +0200"
      },
      "message": "BKL: introduce CONFIG_BKL.\n\nWith all the patches we have queued in the BKL removal tree, only a\nfew dozen modules are left that actually rely on the BKL, and even\nthere are lots of low-hanging fruit. We need to decide what to do\nabout them, this patch illustrates one of the options:\n\nEvery user of the BKL is marked as \u0027depends on BKL\u0027 in Kconfig,\nand the CONFIG_BKL becomes a user-visible option. If it gets\ndisabled, no BKL using module can be built any more and the BKL\ncode itself is compiled out.\n\nThe one exception is file locking, which is practically always\nenabled and does a \u0027select BKL\u0027 instead. This effectively forces\nCONFIG_BKL to be enabled until we have solved the fs/lockd\nmess and can apply the patch that removes the BKL from fs/locks.c.\n\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\n"
    },
    {
      "commit": "3b6e901f839f42afb40f614418df82c08b01320a",
      "tree": "04056f3347b926e9623c225acd496e39b9d1b85a",
      "parents": [
        "d580ff8699e8811a9af37e9de4dea375401bdeec"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Thu Oct 14 21:10:38 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Oct 18 19:58:56 2010 +0200"
      },
      "message": "jump_label: Use more consistent naming\n\nNow that there\u0027s still only a few users around, rename things to make\nthem more consistent.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c20101014203625.448565169@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6038f373a3dc1f1c26496e60b6c40b164716f07e",
      "tree": "a0d3bbd026eea41b9fc36b8c722cbaf56cd9f825",
      "parents": [
        "1ec5584e3edf9c4bf2c88c846534d19cf986ba11"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Sun Aug 15 18:52:59 2010 +0200"
      },
      "committer": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Fri Oct 15 15:53:27 2010 +0200"
      },
      "message": "llseek: automatically add .llseek fop\n\nAll file_operations should get a .llseek operation so we can make\nnonseekable_open the default for future file operations without a\n.llseek pointer.\n\nThe three cases that we can automatically detect are no_llseek, seq_lseek\nand default_llseek. For cases where we can we can automatically prove that\nthe file offset is always ignored, we use noop_llseek, which maintains\nthe current behavior of not returning an error from a seek.\n\nNew drivers should normally not use noop_llseek but instead use no_llseek\nand call nonseekable_open at open time.  Existing drivers can be converted\nto do the same when the maintainer knows for certain that no user code\nrelies on calling seek on the device file.\n\nThe generated code is often incorrectly indented and right now contains\ncomments that clarify for each added line why a specific variant was\nchosen. In the version that gets submitted upstream, the comments will\nbe gone and I will manually fix the indentation, because there does not\nseem to be a way to do that using coccinelle.\n\nSome amount of new code is currently sitting in linux-next that should get\nthe same modifications, which I will do at the end of the merge window.\n\nMany thanks to Julia Lawall for helping me learn to write a semantic\npatch that does all this.\n\n\u003d\u003d\u003d\u003d\u003d begin semantic patch \u003d\u003d\u003d\u003d\u003d\n// This adds an llseek\u003d method to all file operations,\n// as a preparation for making no_llseek the default.\n//\n// The rules are\n// - use no_llseek explicitly if we do nonseekable_open\n// - use seq_lseek for sequential files\n// - use default_llseek if we know we access f_pos\n// - use noop_llseek if we know we don\u0027t access f_pos,\n//   but we still want to allow users to call lseek\n//\n@ open1 exists @\nidentifier nested_open;\n@@\nnested_open(...)\n{\n\u003c+...\nnonseekable_open(...)\n...+\u003e\n}\n\n@ open exists@\nidentifier open_f;\nidentifier i, f;\nidentifier open1.nested_open;\n@@\nint open_f(struct inode *i, struct file *f)\n{\n\u003c+...\n(\nnonseekable_open(...)\n|\nnested_open(...)\n)\n...+\u003e\n}\n\n@ read disable optional_qualifier exists @\nidentifier read_f;\nidentifier f, p, s, off;\ntype ssize_t, size_t, loff_t;\nexpression E;\nidentifier func;\n@@\nssize_t read_f(struct file *f, char *p, size_t s, loff_t *off)\n{\n\u003c+...\n(\n   *off \u003d E\n|\n   *off +\u003d E\n|\n   func(..., off, ...)\n|\n   E \u003d *off\n)\n...+\u003e\n}\n\n@ read_no_fpos disable optional_qualifier exists @\nidentifier read_f;\nidentifier f, p, s, off;\ntype ssize_t, size_t, loff_t;\n@@\nssize_t read_f(struct file *f, char *p, size_t s, loff_t *off)\n{\n... when !\u003d off\n}\n\n@ write @\nidentifier write_f;\nidentifier f, p, s, off;\ntype ssize_t, size_t, loff_t;\nexpression E;\nidentifier func;\n@@\nssize_t write_f(struct file *f, const char *p, size_t s, loff_t *off)\n{\n\u003c+...\n(\n  *off \u003d E\n|\n  *off +\u003d E\n|\n  func(..., off, ...)\n|\n  E \u003d *off\n)\n...+\u003e\n}\n\n@ write_no_fpos @\nidentifier write_f;\nidentifier f, p, s, off;\ntype ssize_t, size_t, loff_t;\n@@\nssize_t write_f(struct file *f, const char *p, size_t s, loff_t *off)\n{\n... when !\u003d off\n}\n\n@ fops0 @\nidentifier fops;\n@@\nstruct file_operations fops \u003d {\n ...\n};\n\n@ has_llseek depends on fops0 @\nidentifier fops0.fops;\nidentifier llseek_f;\n@@\nstruct file_operations fops \u003d {\n...\n .llseek \u003d llseek_f,\n...\n};\n\n@ has_read depends on fops0 @\nidentifier fops0.fops;\nidentifier read_f;\n@@\nstruct file_operations fops \u003d {\n...\n .read \u003d read_f,\n...\n};\n\n@ has_write depends on fops0 @\nidentifier fops0.fops;\nidentifier write_f;\n@@\nstruct file_operations fops \u003d {\n...\n .write \u003d write_f,\n...\n};\n\n@ has_open depends on fops0 @\nidentifier fops0.fops;\nidentifier open_f;\n@@\nstruct file_operations fops \u003d {\n...\n .open \u003d open_f,\n...\n};\n\n// use no_llseek if we call nonseekable_open\n////////////////////////////////////////////\n@ nonseekable1 depends on !has_llseek \u0026\u0026 has_open @\nidentifier fops0.fops;\nidentifier nso ~\u003d \"nonseekable_open\";\n@@\nstruct file_operations fops \u003d {\n...  .open \u003d nso, ...\n+.llseek \u003d no_llseek, /* nonseekable */\n};\n\n@ nonseekable2 depends on !has_llseek @\nidentifier fops0.fops;\nidentifier open.open_f;\n@@\nstruct file_operations fops \u003d {\n...  .open \u003d open_f, ...\n+.llseek \u003d no_llseek, /* open uses nonseekable */\n};\n\n// use seq_lseek for sequential files\n/////////////////////////////////////\n@ seq depends on !has_llseek @\nidentifier fops0.fops;\nidentifier sr ~\u003d \"seq_read\";\n@@\nstruct file_operations fops \u003d {\n...  .read \u003d sr, ...\n+.llseek \u003d seq_lseek, /* we have seq_read */\n};\n\n// use default_llseek if there is a readdir\n///////////////////////////////////////////\n@ fops1 depends on !has_llseek \u0026\u0026 !nonseekable1 \u0026\u0026 !nonseekable2 \u0026\u0026 !seq @\nidentifier fops0.fops;\nidentifier readdir_e;\n@@\n// any other fop is used that changes pos\nstruct file_operations fops \u003d {\n... .readdir \u003d readdir_e, ...\n+.llseek \u003d default_llseek, /* readdir is present */\n};\n\n// use default_llseek if at least one of read/write touches f_pos\n/////////////////////////////////////////////////////////////////\n@ fops2 depends on !fops1 \u0026\u0026 !has_llseek \u0026\u0026 !nonseekable1 \u0026\u0026 !nonseekable2 \u0026\u0026 !seq @\nidentifier fops0.fops;\nidentifier read.read_f;\n@@\n// read fops use offset\nstruct file_operations fops \u003d {\n... .read \u003d read_f, ...\n+.llseek \u003d default_llseek, /* read accesses f_pos */\n};\n\n@ fops3 depends on !fops1 \u0026\u0026 !fops2 \u0026\u0026 !has_llseek \u0026\u0026 !nonseekable1 \u0026\u0026 !nonseekable2 \u0026\u0026 !seq @\nidentifier fops0.fops;\nidentifier write.write_f;\n@@\n// write fops use offset\nstruct file_operations fops \u003d {\n... .write \u003d write_f, ...\n+\t.llseek \u003d default_llseek, /* write accesses f_pos */\n};\n\n// Use noop_llseek if neither read nor write accesses f_pos\n///////////////////////////////////////////////////////////\n\n@ fops4 depends on !fops1 \u0026\u0026 !fops2 \u0026\u0026 !fops3 \u0026\u0026 !has_llseek \u0026\u0026 !nonseekable1 \u0026\u0026 !nonseekable2 \u0026\u0026 !seq @\nidentifier fops0.fops;\nidentifier read_no_fpos.read_f;\nidentifier write_no_fpos.write_f;\n@@\n// write fops use offset\nstruct file_operations fops \u003d {\n...\n .write \u003d write_f,\n .read \u003d read_f,\n...\n+.llseek \u003d noop_llseek, /* read and write both use no f_pos */\n};\n\n@ depends on has_write \u0026\u0026 !has_read \u0026\u0026 !fops1 \u0026\u0026 !fops2 \u0026\u0026 !has_llseek \u0026\u0026 !nonseekable1 \u0026\u0026 !nonseekable2 \u0026\u0026 !seq @\nidentifier fops0.fops;\nidentifier write_no_fpos.write_f;\n@@\nstruct file_operations fops \u003d {\n... .write \u003d write_f, ...\n+.llseek \u003d noop_llseek, /* write uses no f_pos */\n};\n\n@ depends on has_read \u0026\u0026 !has_write \u0026\u0026 !fops1 \u0026\u0026 !fops2 \u0026\u0026 !has_llseek \u0026\u0026 !nonseekable1 \u0026\u0026 !nonseekable2 \u0026\u0026 !seq @\nidentifier fops0.fops;\nidentifier read_no_fpos.read_f;\n@@\nstruct file_operations fops \u003d {\n... .read \u003d read_f, ...\n+.llseek \u003d noop_llseek, /* read uses no f_pos */\n};\n\n@ depends on !has_read \u0026\u0026 !has_write \u0026\u0026 !fops1 \u0026\u0026 !fops2 \u0026\u0026 !has_llseek \u0026\u0026 !nonseekable1 \u0026\u0026 !nonseekable2 \u0026\u0026 !seq @\nidentifier fops0.fops;\n@@\nstruct file_operations fops \u003d {\n...\n+.llseek \u003d noop_llseek, /* no read or write fn */\n};\n\u003d\u003d\u003d\u003d\u003d End semantic patch \u003d\u003d\u003d\u003d\u003d\n\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nCc: Julia Lawall \u003cjulia@diku.dk\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\n"
    },
    {
      "commit": "e79f86b2ef9c0a8c47225217c1018b7d3d90101c",
      "tree": "53ba03cad303a566831fa03ebbfc408ab36ae36c",
      "parents": [
        "03620b2d7545fee29ecd3bb270f206b9cff75e58"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Mon Oct 11 10:40:25 2010 -0700"
      },
      "committer": {
        "name": "Konrad Rzeszutek Wilk",
        "email": "konrad.wilk@oracle.com",
        "time": "Mon Oct 11 17:08:36 2010 -0400"
      },
      "message": "swiotlb: Use page alignment for early buffer allocation\n\nWe could call free_bootmem_late() if swiotlb is not used, and\nit will shrink to page alignment.\n\nSo alloc them with page alignment at first, to avoid lose two pages\n\nbefore patch:\n[    0.000000]     memblock_x86_reserve_range: [00d3600000, 00d7600000]   swiotlb buffer\n[    0.000000]     memblock_x86_reserve_range: [00d7e7ef40, 00d7e9ef40]     swiotlb list\n[    0.000000]     memblock_x86_reserve_range: [00d7e3ef40, 00d7e7ef40]  swiotlb orig_ad\n[    0.000000]     memblock_x86_reserve_range: [000008a000, 0000092000]  swiotlb overflo\n\nafter patch will get\n[    0.000000]     memblock_x86_reserve_range: [00d3600000, 00d7600000]   swiotlb buffer\n[    0.000000]     memblock_x86_reserve_range: [00d7e7e000, 00d7e9e000]     swiotlb list\n[    0.000000]     memblock_x86_reserve_range: [00d7e3e000, 00d7e7e000]  swiotlb orig_ad\n[    0.000000]     memblock_x86_reserve_range: [000008a000, 0000092000]  swiotlb overflo\n\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nAcked-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nCc: Becky Bruce \u003cbeckyb@kernel.crashing.org\u003e\nSigned-off-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\n"
    },
    {
      "commit": "03620b2d7545fee29ecd3bb270f206b9cff75e58",
      "tree": "1f768d8f00ab55b810a29eed086684ff6c7e8743",
      "parents": [
        "cb655d0f3d57c23db51b981648e452988c0223f9"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Mon Aug 02 23:48:06 2010 +0900"
      },
      "committer": {
        "name": "Konrad Rzeszutek Wilk",
        "email": "konrad.wilk@oracle.com",
        "time": "Mon Oct 11 14:54:27 2010 -0400"
      },
      "message": "swiotlb: make io_tlb_overflow static\n\nWe don\u0027t need to export io_tlb_overflow_buffer. I\u0027ll remove\nio_tlb_overflow_buffer completely in the long term though.\n\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nSigned-off-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\n"
    },
    {
      "commit": "7cd2541cf2395962daf98ec32a141aba3398a9b2",
      "tree": "3c8bebb277462ba0de9d44233a970d34056dc45e",
      "parents": [
        "c62f981f9309486ba5546edbb5925f71e441fa65",
        "cb655d0f3d57c23db51b981648e452988c0223f9"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Oct 08 10:46:27 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Oct 08 10:46:27 2010 +0200"
      },
      "message": "Merge commit \u0027v2.6.36-rc7\u0027 into perf/core\n\nConflicts:\n\tarch/x86/kernel/module.c\n\nMerge reason: Resolve the conflict, pick up fixes.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "556ef63255f1a6f82910a637c4164dbf7d3d1af2",
      "tree": "ae209fe4959e0837bf4eb72abc6e02c8a82179a1",
      "parents": [
        "d4f8f217b8a5d5bd02af979650418dca4caec472",
        "cb655d0f3d57c23db51b981648e452988c0223f9"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Oct 07 09:43:38 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Oct 07 09:43:45 2010 +0200"
      },
      "message": "Merge commit \u0027v2.6.36-rc7\u0027 into core/rcu\n\nMerge reason: Update from -rc3 to -rc7.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "d4f8f217b8a5d5bd02af979650418dca4caec472",
      "tree": "af047bfa9729c975e24cb7624107574e884d3a57",
      "parents": [
        "2dfbf4dfbe47a484bae20456c12b40763b9b6af7",
        "773e3f93577ffb493fb7c39b1a6ecf39b5748e87"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Oct 07 09:43:11 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Oct 07 09:43:11 2010 +0200"
      },
      "message": "Merge branch \u0027rcu/urgent\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-2.6-rcu into core/rcu\n"
    },
    {
      "commit": "ab4d5ed5eeda4f57c50d14131ce1b1da75d0c938",
      "tree": "e0c574c802138d9b6514dae4f2c46fcc6365b951",
      "parents": [
        "15b7c5142049e7efc3071280e1370dc3b8add6f5"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "cl@linux.com",
        "time": "Tue Oct 05 13:57:26 2010 -0500"
      },
      "committer": {
        "name": "Pekka Enberg",
        "email": "penberg@kernel.org",
        "time": "Wed Oct 06 16:54:36 2010 +0300"
      },
      "message": "slub: Enable sysfs support for !CONFIG_SLUB_DEBUG\n\nCurrently disabling CONFIG_SLUB_DEBUG also disabled SYSFS support meaning\nthat the slabs cannot be tuned without DEBUG.\n\nMake SYSFS support independent of CONFIG_SLUB_DEBUG\n\nSigned-off-by: Christoph Lameter \u003ccl@linux.com\u003e\nSigned-off-by: Pekka Enberg \u003cpenberg@kernel.org\u003e\n"
    },
    {
      "commit": "5336377d6225959624146629ce3fc88ee8ecda3d",
      "tree": "571b9db75d1ba50faa1e399509563f367fd5694f",
      "parents": [
        "2f6b3aa7a563d05453c4d73ccf88191aee84333f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 05 11:29:27 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 05 11:29:27 2010 -0700"
      },
      "message": "modules: Fix module_bug_list list corruption race\n\nWith all the recent module loading cleanups, we\u0027ve minimized the code\nthat sits under module_mutex, fixing various deadlocks and making it\npossible to do most of the module loading in parallel.\n\nHowever, that whole conversion totally missed the rather obscure code\nthat adds a new module to the list for BUG() handling.  That code was\ndoubly obscure because (a) the code itself lives in lib/bugs.c (for\ndubious reasons) and (b) it gets called from the architecture-specific\n\"module_finalize()\" rather than from generic code.\n\nCalling it from arch-specific code makes no sense what-so-ever to begin\nwith, and is now actively wrong since that code isn\u0027t protected by the\nmodule loading lock any more.\n\nSo this commit moves the \"module_bug_{finalize,cleanup}()\" calls away\nfrom the arch-specific code, and into the generic code - and in the\nprocess protects it with the module_mutex so that the list operations\nare now safe.\n\nFuture fixups:\n - move the module list handling code into kernel/module.c where it\n   belongs.\n - get rid of \u0027module_bug_list\u0027 and just use the regular list of modules\n   (called \u0027modules\u0027 - imagine that) that we already create and maintain\n   for other reasons.\n\nReported-and-tested-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Adrian Bunk \u003cbunk@kernel.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: stable@kernel.org\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f015ac3edd84ad72f88e08a4d83c56c360aae404",
      "tree": "87f88c4e502d69752776dd36451d0ece5416f9f1",
      "parents": [
        "982f7c2b2e6a28f8f266e075d92e19c0dd4c6e56"
      ],
      "author": {
        "name": "Don Mullis",
        "email": "don.mullis@gmail.com",
        "time": "Thu Sep 30 15:15:32 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 01 10:50:58 2010 -0700"
      },
      "message": "lib/list_sort: do not pass bad pointers to cmp callback\n\nIf the original list is a POT in length, the first callback from line 73\nwill pass a\u003d\u003db both pointing to the original list_head.  This is dangerous\nbecause the \u0027list_sort()\u0027 user can use \u0027container_of()\u0027 and accesses the\n\"containing\" object, which does not necessary exist for the list head.  So\nthe user can access RAM which does not belong to him.  If this is a write\naccess, we can end up with memory corruption.\n\nSigned-off-by: Don Mullis \u003cdon.mullis@gmail.com\u003e\nTested-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2dfbf4dfbe47a484bae20456c12b40763b9b6af7",
      "tree": "466a7dcef708a96c419083d587b00313cf7b3785",
      "parents": [
        "269dcc1c2ec25864308ee03a3fa26ea819d9f5d0"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Wed Sep 15 23:30:48 2010 -0700"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Thu Sep 23 09:16:54 2010 -0700"
      },
      "message": "rcu: Add advice to PROVE_RCU_REPEATEDLY kernel config parameter\n\nThe PROVE_RCU_REPEATEDLY has no \"Say Y\"/\"Say N\" advice, so this commit\nadds it.\n\nReported-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "52159d98be6f26c48f5e02c7ab3c9848a85979b5",
      "tree": "29ba759acd0a9fd82b796b9e965dab5ed9d30ce6",
      "parents": [
        "8f7b50c514206211cc282a4247f7b12f18dee674"
      ],
      "author": {
        "name": "Jason Baron",
        "email": "jbaron@redhat.com",
        "time": "Fri Sep 17 11:09:17 2010 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Sep 22 16:31:19 2010 -0400"
      },
      "message": "jump label: Convert dynamic debug to use jump labels\n\nConvert the \u0027dynamic debug\u0027 infrastructure to use jump labels.\n\nSigned-off-by: Jason Baron \u003cjbaron@redhat.com\u003e\nLKML-Reference: \u003cb77627358cea3e27d7be4386f45f66219afb8452.1284733808.git.jbaron@redhat.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "3aabae7d9dfaed60effe93662f02c19bafc18537",
      "tree": "af94cdd69add07601d9f3f5988dfc1dc255e3886",
      "parents": [
        "79e406d7b00ab2b261ae32a59f266fd3b7af6f29",
        "57c072c7113f54f9512624d6c665db6184448782"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Sep 15 10:27:31 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Sep 15 10:27:31 2010 +0200"
      },
      "message": "Merge branch \u0027tip/perf/core\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into perf/core\n"
    },
    {
      "commit": "ff3cb3fec3c5bbb5110e652bbdd410bc99a47e9f",
      "tree": "5b6834a3a4ecd479d544f8cc8cd10811c1ae13e1",
      "parents": [
        "6ccaa3172941c0a97c7f1c5155b1d32ecd27ec2f",
        "be14eb619108fa8b7120eb2c42d66d5f623ae10e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Sep 10 07:26:27 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Sep 10 07:26:27 2010 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.dk/linux-2.6-block\n\n* \u0027for-linus\u0027 of git://git.kernel.dk/linux-2.6-block:\n  block: Range check cpu in blk_cpu_to_group\n  scatterlist: prevent invalid free when alloc fails\n  writeback: Fix lost wake-up shutting down writeback thread\n  writeback: do not lose wakeup events when forking bdi threads\n  cciss: fix reporting of max queue depth since init\n  block: switch s390 tape_block and mg_disk to elevator_change()\n  block: add function call to switch the IO scheduler from a driver\n  fs/bio-integrity.c: return -ENOMEM on kmalloc failure\n  bio-integrity.c: remove dependency on __GFP_NOFAIL\n  BLOCK: fix bio.bi_rw handling\n  block: put dev-\u003ekobj in blk_register_queue fail path\n  cciss: handle allocation failure\n  cfq-iosched: Documentation help for new tunables\n  cfq-iosched: blktrace print per slice sector stats\n  cfq-iosched: Implement tunable group_idle\n  cfq-iosched: Do group share accounting in IOPS when slice_idle\u003d0\n  cfq-iosched: Do not idle if slice_idle\u003d0\n  cciss: disable doorbell reset on reset_devices\n  blkio: Fix return code for mkdir calls\n"
    },
    {
      "commit": "46b93b74fc022885ab69dfc8e2af0562dd626638",
      "tree": "43596f815dd0210df9985ae64e7ef3c9ca160eab",
      "parents": [
        "3449dafaf514f83de8d9a41f2c437a8803eea24d"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Aug 31 16:35:20 2010 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Aug 31 16:35:20 2010 -0400"
      },
      "message": "tracing/lockdep: Fix dependency of TRACE_IRQFLAGS\n\nWhen CONFIG_IRQSOFF_TRACER is set and CONFIG_PROVE_LOCKING is not, we\nget the following error:\n\n$  make oldconfig\nscripts/kconfig/conf --oldconfig arch/x86/Kconfig\nwarning: (IRQSOFF_TRACER \u0026\u0026 TRACING_SUPPORT \u0026\u0026 FTRACE \u0026\u0026 TRACE_IRQFLAGS_SUPPORT \u0026\u0026 !ARCH_USES_GETTIMEOFFSET) selects TRACE_IRQFLAGS which has unmet direct dependencies (DEBUG_KERNEL \u0026\u0026 TRACE_IRQFLAGS_SUPPORT \u0026\u0026 PROVE_LOCKING)\nwarning: (IRQSOFF_TRACER \u0026\u0026 TRACING_SUPPORT \u0026\u0026 FTRACE \u0026\u0026 TRACE_IRQFLAGS_SUPPORT \u0026\u0026 !ARCH_USES_GETTIMEOFFSET) selects TRACE_IRQFLAGS which has unmet direct dependencies (DEBUG_KERNEL \u0026\u0026 TRACE_IRQFLAGS_SUPPORT \u0026\u0026 PROVE_LOCKING)\n\nThis is because IRQSOFF_TRACER selects TRACE_IRQFLAGS but TRACE_IRQFLAGS\nhas PROVE_LOCKING as a dependency. This code is incorrect, and\nthis patch changes the TRACE_IRQFLAGS to be just a simple bool that\ndoes not depend or select anything. Instead both IRQSOFF_TRACER and\nPROVE_LOCKING select it.\n\nReported-by: Richard Kennedy \u003crichard@rsk.demon.co.uk\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "1458ce166c1b333ecbaf8caa9f4f54eab3a522a7",
      "tree": "3375dc429c3c637a05f1c185d767bf911d4e92ee",
      "parents": [
        "ea24ea850bcd7dd5f0994de2cf99ace10c4484cc"
      ],
      "author": {
        "name": "Naohiro Aota",
        "email": "naota@elisp.net",
        "time": "Fri Aug 27 17:43:46 2010 +0900"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Tue Aug 31 09:43:59 2010 +0200"
      },
      "message": "idr: describe how nextidp works in idr_get_next().\n\nIt was unclear in original kernel-doc how nextidp worked in\nidr_get_next(). Let\u0027s describe it.\n\nSigned-off-by: Naohiro Aota \u003cnaota@elisp.net\u003e\nAcked-by: Tejun Heo \u003ctj@kernel.org\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "ea24ea850bcd7dd5f0994de2cf99ace10c4484cc",
      "tree": "e7380a9077841a8a7ed7246cd85a3d55c1d2929a",
      "parents": [
        "10466f5ae36074bb620e4add1247fbf78ee564c0"
      ],
      "author": {
        "name": "Naohiro Aota",
        "email": "naota@elisp.net",
        "time": "Tue Aug 31 00:37:03 2010 +0900"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Tue Aug 31 09:32:02 2010 +0200"
      },
      "message": "idr: fix kernel-doc warnings.\n\nFix the following kernel-doc warnings.\n\n% perl scripts/kernel-doc lib/idr.c \u003e /dev/null\nWarning(lib/idr.c:300): No description found for parameter \u0027starting_id\u0027\nWarning(lib/idr.c:300): Excess function parameter \u0027start_id\u0027 description in \u0027idr_get_new_above\u0027\nWarning(lib/idr.c:485): No description found for parameter \u0027idp\u0027\nWarning(lib/idr.c:596): No description found for parameter \u0027nextidp\u0027\nWarning(lib/idr.c:596): Excess function parameter \u0027id\u0027 description in \u0027idr_get_next\u0027\nWarning(lib/idr.c:774): No description found for parameter \u0027starting_id\u0027\nWarning(lib/idr.c:774): Excess function parameter \u0027staring_id\u0027 description in \u0027ida_get_new_above\u0027\nWarning(lib/idr.c:918): No description found for parameter \u0027ida\u0027\n\nSigned-off-by: Naohiro Aota \u003cnaota@elisp.net\u003e\nAcked-by: Tejun Heo \u003ctj@kernel.org\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "edce6820a9fdda85521211cb334a183e34cc455e",
      "tree": "c2944c0a6e175cd089dde7b808398763ae5c50dd",
      "parents": [
        "b76b4014f9d988d2412b873e4d4c13c7f9afc4e4"
      ],
      "author": {
        "name": "Jeffrey Carlyle",
        "email": "jeff.carlyle@motorola.com",
        "time": "Mon Aug 30 19:55:09 2010 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Mon Aug 30 19:55:09 2010 +0200"
      },
      "message": "scatterlist: prevent invalid free when alloc fails\n\nWhen alloc fails, free_table is being called. Depending on the number of\nbytes requested, we determine if we are going to call _get_free_page()\nor kmalloc(). When alloc fails, our math is wrong (due to sg_size - 1),\nand the last buffer is wrongfully assumed to have been allocated by\nkmalloc. Hence, kfree gets called and a panic occurs.\n\nSigned-off-by: Jeffrey Carlyle \u003cjeff.carlyle@motorola.com\u003e\nSigned-off-by: Olusanya Soyannwo \u003cc23746@motorola.com\u003e\nAcked-by: Tejun Heo \u003ctj@kernel.org\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "7c44ece988a3419e51c833cf14be186a22224dd1",
      "tree": "914239dd8f2ce809caf94f6fa7b73cc302f679c4",
      "parents": [
        "2bfc96a127bc1cc94d26bfaa40159966064f9c8c"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Mon Aug 30 17:35:52 2010 +1000"
      },
      "committer": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Mon Aug 30 17:35:52 2010 +1000"
      },
      "message": "Move .gitignore from drivers/md to lib/raid6\n\nAnother missing bit of the raid6 -\u003e /lib move.\n\nReported-by: Andreas Schwab \u003cschwab@linux-m68k.org\u003e\nSigned-off-by: NeilBrown \u003cneilb@suse.de\u003e\n"
    },
    {
      "commit": "f6e6e7799ebcad40fa15e4015beca2d776554302",
      "tree": "7d6c211016663cb5182f72f5d5e747326f417a9e",
      "parents": [
        "f45f3c1f3f616ca1d1e1eb5e7a720ca63cb59550"
      ],
      "author": {
        "name": "Xiaotian Feng",
        "email": "xtfeng@gmail.com",
        "time": "Fri Aug 13 18:58:10 2010 +0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Aug 23 18:12:46 2010 -0700"
      },
      "message": "kobject_uevent: fix typo in comments\n\ns/ending/sending, s/kobject_uevent()/kobject_uevent_env() in the comments.\n\nSigned-off-by: Xiaotian Feng \u003cxtfeng@gmail.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "a6b9b4d50f492630443b38404d1f436b3b748c14",
      "tree": "f3512389c42cecfae50b6a315ec6ab1fa470e30d",
      "parents": [
        "e36c886a0f9d624377977fa6cae309cfd7f362fa",
        "28457ee69c473a903e51e26c7bcd6f1e9eceb93e"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Aug 23 11:32:34 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Aug 23 11:32:34 2010 +0200"
      },
      "message": "Merge branch \u0027rcu/next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-2.6-rcu into core/rcu\n"
    },
    {
      "commit": "9ee47476d6734c9deb9ae9ab05d963302f6b6150",
      "tree": "d6d5a54831322628427eb54cb3edc2f78a6125f4",
      "parents": [
        "76be97c1fc945db08aae1f1b746012662d643e97",
        "144dcfc01221e1a79fa47ca897df7d5e3ab298e6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Aug 22 19:55:14 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Aug 22 19:55:14 2010 -0700"
      },
      "message": "Merge branch \u0027radix-tree\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/dgc/xfsdev\n\n* \u0027radix-tree\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/dgc/xfsdev:\n  radix-tree: radix_tree_range_tag_if_tagged() can set incorrect tags\n  radix-tree: clear all tags in radix_tree_node_rcu_free\n"
    },
    {
      "commit": "144dcfc01221e1a79fa47ca897df7d5e3ab298e6",
      "tree": "70b0d0bf73815fb242502a562da3a8c7667843ba",
      "parents": [
        "b6dd08652e2b70e73661c4975ae46398066c06f8"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "dchinner@redhat.com",
        "time": "Mon Aug 23 10:33:53 2010 +1000"
      },
      "committer": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Mon Aug 23 10:33:53 2010 +1000"
      },
      "message": "radix-tree: radix_tree_range_tag_if_tagged() can set incorrect tags\n\nCommit ebf8aa44beed48cd17893a83d92a4403e5f9d9e2 (\"radix-tree:\nomplement function radix_tree_range_tag_if_tagged\") does not safely\nset tags on on intermediate tree nodes. The code walks down the tree\nsetting tags before it has fully resolved the path to the leaf under\nthe assumption there will be a leaf slot with the tag set in the\nrange it is searching.\n\nUnfortunately, this is not a valid assumption - we can abort after\nsetting a tag on an intermediate node if we overrun the number of\ntags we are allowed to set in a batch, or stop scanning because we\nwe have passed the last scan index before we reach a leaf slot with\nthe tag we are searching for set.\n\nAs a result, we can leave the function with tags set on intemediate\nnodes which can be tripped over later by tag-based lookups. The\nresult of these stale tags is that lookup may end prematurely or\nlivelock because the lookup cannot make progress.\n\nThe fix for the problem involves reocrding the traversal path we\ntake to the leaf nodes, and only propagating the tags back up the\ntree once the tag is set in the leaf node slot. We are already\nrecording the path for efficient traversal, so there is no\nadditional overhead to do the intermediately node tag setting in\nthis manner.\n\nThis fixes a radix tree lookup livelock triggered by the new\nwriteback sync livelock avoidance code introduced in commit\nf446daaea9d4a420d16c606f755f3689dcb2d0ce (\"mm: implement writeback\nlivelock avoidance using page tagging\").\n\nSigned-off-by: Dave Chinner \u003cdchinner@redhat.com\u003e\nAcked-by: Jan Kara \u003cjack@suse.cz\u003e\n"
    },
    {
      "commit": "b6dd08652e2b70e73661c4975ae46398066c06f8",
      "tree": "fa70f295a5074627a6b6dba11a8c8cf90d4e4b95",
      "parents": [
        "da5cabf80e2433131bf0ed8993abc0f7ea618c73"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "dchinner@redhat.com",
        "time": "Mon Aug 23 10:33:19 2010 +1000"
      },
      "committer": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Mon Aug 23 10:33:19 2010 +1000"
      },
      "message": "radix-tree: clear all tags in radix_tree_node_rcu_free\n\nCommit f446daaea9d4a420d16c606f755f3689dcb2d0ce (\"mm: implement\nwriteback livelock avoidance using page tagging\") introduced a new\nradix tree tag, increasing the number of tags in each node from 2 to\n3. It did not, however, fix up the code in\nradix_tree_node_rcu_free() that cleans up after radix_tree_shrink()\nand hence could leave stray tags set in the new tag array.\n\nThe result is that the livelock avoidance code added in the the\nabove commit would hit stale tags when doing tag based lookups,\nresulting in livelocks when trying to traverse the tree.\n\nFix this problem in radix_tree_node_rcu_free() so it doesn\u0027t happen\nagain in the future by using a loop to walk all the tags up to\nRADIX_TREE_MAX_TAGS to clear the stray tags radix_tree_shrink()\nleaves behind.\n\nSigned-off-by: Dave Chinner \u003cdchinner@redhat.com\u003e\nAcked-by: Nick Piggin \u003cnpiggin@kernel.dk\u003e\nAcked-by: Jan Kara \u003cjack@suse.cz\u003e\n"
    },
    {
      "commit": "d5ed3a4af77b851b6271ad3d9abc4c57fa3ce0f5",
      "tree": "f06894404e4af25051e8918bfd3fdac95974fc97",
      "parents": [
        "f2e41e910320197d55b52e28d99a07130f2ae738"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Thu Aug 19 14:13:33 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 20 09:34:55 2010 -0700"
      },
      "message": "lib/radix-tree.c: fix overflow in radix_tree_range_tag_if_tagged()\n\nWhen radix_tree_maxindex() is ~0UL, it can happen that scanning overflows\nindex and tree traversal code goes astray reading memory until it hits\nunreadable memory.  Check for overflow and exit in that case.\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "910b1b7e19a292ff685001caf1bf1a9775b771a1",
      "tree": "7ec42bf018ab62c3c2180fbe168cd6130556cb80",
      "parents": [
        "687d7a960aea46e016182c7ce346d62c4dbd0366"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Wed Jul 21 08:05:56 2010 -0700"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Thu Aug 19 17:18:04 2010 -0700"
      },
      "message": "rcu: Allow RCU CPU stall warnings to be off at boot, but manually enablable\n\nCurrently, if RCU CPU stall warnings are enabled, they are enabled\nimmediately upon boot.  They can be manually disabled via /sys (and\nalso re-enabled via /sys), and are automatically disabled upon panic.\nHowever, some users need RCU CPU stalls to be disabled at boot time,\nbut to be enabled without rebuilding/rebooting.  For example, someone\nrunning a real-time application in production might not want the\nadditional latency of RCU CPU stall detection in normal operation, but\nmight need to enable it at any point for fault isolation purposes.\n\nThis commit therefore provides a new CONFIG_RCU_CPU_STALL_DETECTOR_RUNNABLE\nkernel configuration parameter that maintains the current behavior\n(enable at boot) by default, but allows a kernel to be configured\nwith RCU CPU stall detection built into the kernel, but disabled at\nboot time.\n\nRequested-by: Clark Williams \u003cwilliams@redhat.com\u003e\nRequested-by: John Kacur \u003cjkacur@redhat.com\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "a1115570b31091f3e3ab9e6cf7ee8d320a42be84",
      "tree": "1253b42dd3348fb733fdf51bcf30f1abf1388b19",
      "parents": [
        "374a8e0dc33c984fac284de7d57d77af3cfdbfb7"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Thu Feb 25 23:43:52 2010 +0100"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Thu Aug 19 17:18:03 2010 -0700"
      },
      "message": "radix-tree: __rcu annotations\n\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nCc: Nick Piggin \u003cnpiggin@suse.de\u003e\nReviewed-by: Josh Triplett \u003cjosh@joshtriplett.org\u003e\n"
    },
    {
      "commit": "b163760e37047781b37c412cde54d146ac4b651f",
      "tree": "5b447a210c81b78e20393472f4b53623c8fed28b",
      "parents": [
        "4221a9918e38b7494cee341dda7b7b4bb8c04bde"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Wed Jun 02 16:21:38 2010 -0700"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Thu Aug 19 17:18:02 2010 -0700"
      },
      "message": "rcu: make CPU stall warning timeout configurable\n\nAlso set the default to 60 seconds, up from the previous hard-coded timeout\nof 10 seconds.  This allows people who care to set short timeouts, while\navoiding people with unusual configurations (make randconfig!!!) from being\nbothered with spurious CPU stall warnings.\n\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nReviewed-by: Josh Triplett \u003cjosh@joshtriplett.org\u003e\n"
    },
    {
      "commit": "ca5ecddfa8fcbd948c95530e7e817cee9fb43a3d",
      "tree": "0ad1c320c2e6612a9a230a58d8588850701c048c",
      "parents": [
        "d34a16661ed0fed433c9469d7cfa3ca4d30ca42e"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Wed Apr 28 14:39:09 2010 -0700"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Thu Aug 19 17:17:59 2010 -0700"
      },
      "message": "rcu: define __rcu address space modifier for sparse\n\nThis commit provides definitions for the __rcu annotation defined earlier.\nThis annotation permits sparse to check for correct use of RCU-protected\npointers.  If a pointer that is annotated with __rcu is accessed\ndirectly (as opposed to via rcu_dereference(), rcu_assign_pointer(),\nor one of their variants), sparse can be made to complain.  To enable\nsuch complaints, use the new default-disabled CONFIG_SPARSE_RCU_POINTER\nkernel configuration option.  Please note that these sparse complaints are\nintended to be a debugging aid, -not- a code-style-enforcement mechanism.\n\nThere are special rcu_dereference_protected() and rcu_access_pointer()\naccessors for use when RCU read-side protection is not required, for\nexample, when no other CPU has access to the data structure in question\nor while the current CPU hold the update-side lock.\n\nThis patch also updates a number of docbook comments that were showing\ntheir age.\n\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nCc: Christopher Li \u003csparse@chrisli.org\u003e\nReviewed-by: Josh Triplett \u003cjosh@joshtriplett.org\u003e\n"
    },
    {
      "commit": "625fdcaa6d2a3db6a922bbd833450424e906111c",
      "tree": "187a6b40d5cb40e082449f0810b89d5b5a96180c",
      "parents": [
        "f24645a991e6758a4544ed7667cf919fea328a95"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Thu Aug 12 12:31:21 2010 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Aug 17 09:09:03 2010 +0200"
      },
      "message": "latencytop: Fix kconfig dependency warnings\n\nwarning: (LATENCYTOP \u0026\u0026 HAVE_LATENCYTOP_SUPPORT) selects\nSCHED_DEBUG which has unmet direct dependencies (DEBUG_KERNEL \u0026\u0026\nPROC_FS) warning: (LATENCYTOP \u0026\u0026 HAVE_LATENCYTOP_SUPPORT) selects\nSCHEDSTATS which has unmet direct dependencies (DEBUG_KERNEL \u0026\u0026 PROC_FS)\n\nAdd depends on STACKTRACE_SUPPORT for \u0027select STACKTRACE\u0027.\nAdd depends on PROC_FS since that is where the output goes.\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nCc: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nLKML-Reference: \u003c20100812123121.a7c99cde.randy.dunlap@oracle.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "7367f5b013fee33f7d40a5a10a39d5134f529ec8",
      "tree": "aaf1366025364174d93c1ad33c79da4fd58aa917",
      "parents": [
        "ce4327d372af7e2f2d403286e9904ab012e72827",
        "a8e026c785b3fecef0ef5c00c15223542c4db8f5"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Aug 12 10:08:10 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Aug 12 10:08:10 2010 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://neil.brown.name/md\n\n* \u0027for-linus\u0027 of git://neil.brown.name/md:\n  Further tidyup of raid6 naming in lib/raid6\n  Make lib/raid6/test build correctly.\n  Rename raid6 files now they\u0027re in a \u0027raid6\u0027 directory.\n"
    },
    {
      "commit": "1490cf5f0cb07dd49cdab4bceb769d7f711d7ca6",
      "tree": "368983c4a0e92467368bb41c2cc326611aa0f31e",
      "parents": [
        "019fca84e7c4b94817abc77df9081ba208fcc46a"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Thu Aug 12 16:54:52 2010 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Aug 12 09:51:35 2010 -0700"
      },
      "message": "MN10300: Don\u0027t try and #include \u003clinux/slab.h\u003e in lib/inflate.c from bootloader\n\nDon\u0027t try and #include \u003clinux/slab.h\u003e in lib/inflate.c from the bootloader code\nas linux/slab.h hauls in function defs that aren\u0027t available in the bootloader\ncode and may also haul in conflicting functions.\n\nTo fix this, make the inclusion of linux/slab.h contingent on NO_INFLATE_MALLOC\nas are the usages of kmalloc() and kfree().\n\nIn MN10300, this causes the following errors:\n\nIn file included from include/linux/string.h:21,\n                 from include/linux/bitmap.h:8,\n                 from include/linux/nodemask.h:93,\n                 from include/linux/mmzone.h:16,\n                 from include/linux/gfp.h:4,\n                 from include/linux/slab.h:12,\n                 from arch/mn10300/boot/compressed/../../../../lib/inflate.c:106,\n                 from arch/mn10300/boot/compressed/misc.c:170:\n/warthog/am33/linux-2.6-mn10300/arch/mn10300/include/asm/string.h:19: error: conflicting types for \u0027memset\u0027\narch/mn10300/boot/compressed/misc.c:59: error: previous definition of \u0027memset\u0027 was here\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a8e026c785b3fecef0ef5c00c15223542c4db8f5",
      "tree": "580baa4e5a3e5bed4cef74a4e9a523b8010f6020",
      "parents": [
        "d5302fe41ffb28d0a48be6a71becba36d3453ae0"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Thu Aug 12 06:44:54 2010 +1000"
      },
      "committer": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Thu Aug 12 06:44:54 2010 +1000"
      },
      "message": "Further tidyup of raid6 naming in lib/raid6\n\nRename raid6/raid6x86.h to raid6/x86.h\nand modify some comments.\n\nSigned-off-by: NeilBrown \u003cneilb@suse.de\u003e\n"
    },
    {
      "commit": "d5302fe41ffb28d0a48be6a71becba36d3453ae0",
      "tree": "02414f0dc4ad18b6a6a096efb69046281248dd2b",
      "parents": [
        "cc4589ebfae6f8dbb5cf880a0a67eedab3416492"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Thu Aug 12 06:38:24 2010 +1000"
      },
      "committer": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Thu Aug 12 06:38:24 2010 +1000"
      },
      "message": "Make lib/raid6/test build correctly.\n\nSome bit-rot needs to be cleaned out.\n\nSigned-off-by: NeilBrown \u003cneilb@suse.de\u003e\n"
    },
    {
      "commit": "dd21e9bdff14a9882f2c485fe533c6ce64ea2675",
      "tree": "3731ef6f08fbc98e49a36372e4b73e4c8ab8de27",
      "parents": [
        "5bf2b19320ec31d094d7370fdf536f7fd91fd799"
      ],
      "author": {
        "name": "Prarit Bhargava",
        "email": "prarit@redhat.com",
        "time": "Tue Aug 10 18:03:40 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 11 08:59:23 2010 -0700"
      },
      "message": "lib/decompress_bunzip2.c: fix checkstack warning\n\nFix checkstack error:\n\nlib/decompress_bunzip2.c: In function `get_next_block\u0027:\nlib/decompress_bunzip2.c:511: warning: the frame size of 1932 bytes is larger than 1024 bytes\n\nbyteCount, symToByte, and mtfSymbol cannot be declared static or allocated\ndynamically so place them in the bunzip_data struct.\n\nSigned-off-by: Prarit Bhargava \u003cprarit@redhat.com\u003e\nCc: Phillip Lougher \u003cphillip@lougher.demon.co.uk\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "863a6049202412a6d655d052eb1c45ca7dd74a83",
      "tree": "9550c1f6c484460cb646f4472558512ac8a9f149",
      "parents": [
        "e2e7e093259d4c6b73b432122974393d6fcdfc2a"
      ],
      "author": {
        "name": "Anton Blanchard",
        "email": "anton@samba.org",
        "time": "Tue Aug 10 18:03:30 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 11 08:59:22 2010 -0700"
      },
      "message": "lib/bug.c: add oops end marker to WARN implementation\n\nWe are missing the oops end marker for the exception based WARN implementation\nin lib/bug.c. This is useful for logfile analysis tools.\n\nSigned-off-by: Anton Blanchard \u003canton@samba.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Arjan van de Ven \u003carjan@infradead.org\u003e\nCc: \"Kirill A. Shutemov\" \u003ckirill@shutemov.name\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e2e7e093259d4c6b73b432122974393d6fcdfc2a",
      "tree": "d8a5ff294a21c074724539f4fc8f9b7783ae96b4",
      "parents": [
        "c7ff0d9c92435e836e13aaa8d0e56d4000424bcc"
      ],
      "author": {
        "name": "Anton Blanchard",
        "email": "anton@samba.org",
        "time": "Tue Aug 10 18:03:29 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 11 08:59:22 2010 -0700"
      },
      "message": "lib/bug.c: make WARN implementation match the kernel/panic.c one\n\nThere are a few issues with the exception based WARN implementation in\nlib/bug.c:\n\n- Inconsistent printk flags. The \"cut here\" line is printed at KERN_EMERG, so\n  the console and all logged in users see the single line:\n\n------------[ cut here ]------------\n\n  for each WARN. Fix this so we print everything at KERN_WARNING to match the\n  kernel/panic.c version.\n\n- The lib/bug.c WARN would print \"Badness at\". Change it to match the\n  kernel/panic.c version which prints \"WARNING: at\".\n\n- Print the list of modules, similar to kernel/panic.c of modules, similar to\n  kernel/panic.c\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Anton Blanchard \u003canton@samba.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Arjan van de Ven \u003carjan@infradead.org\u003e\nCc: \"Kirill A. Shutemov\" \u003ckirill@shutemov.name\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cc4589ebfae6f8dbb5cf880a0a67eedab3416492",
      "tree": "404335e6dec9d79351f537de58979a8b964e2b0c",
      "parents": [
        "3d30701b58970425e1d45994d6cb82f828924fdd"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Wed Aug 11 00:19:05 2010 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Wed Aug 11 00:19:05 2010 +0100"
      },
      "message": "Rename raid6 files now they\u0027re in a \u0027raid6\u0027 directory.\n\nLinus asks \u0027why \"raid6\" twice?\u0027. No reason.\n\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "3d30701b58970425e1d45994d6cb82f828924fdd",
      "tree": "8b14cf462628bebf8548c1b8c205a674564052d1",
      "parents": [
        "8cbd84f2dd4e52a8771b191030c374ba3e56d291",
        "fd8aa2c1811bf60ccb2d5de0579c6f62aec1772d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 10 15:38:19 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 10 15:38:19 2010 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://neil.brown.name/md\n\n* \u0027for-linus\u0027 of git://neil.brown.name/md: (24 commits)\n  md: clean up do_md_stop\n  md: fix another deadlock with removing sysfs attributes.\n  md: move revalidate_disk() back outside open_mutex\n  md/raid10: fix deadlock with unaligned read during resync\n  md/bitmap:  separate out loading a bitmap from initialising the structures.\n  md/bitmap: prepare for storing write-intent-bitmap via dm-dirty-log.\n  md/bitmap: optimise scanning of empty bitmaps.\n  md/bitmap: clean up plugging calls.\n  md/bitmap: reduce dependence on sysfs.\n  md/bitmap: white space clean up and similar.\n  md/raid5: export raid5 unplugging interface.\n  md/plug: optionally use plugger to unplug an array during resync/recovery.\n  md/raid5: add simple plugging infrastructure.\n  md/raid5: export is_congested test\n  raid5: Don\u0027t set read-ahead when there is no queue\n  md: add support for raising dm events.\n  md: export various start/stop interfaces\n  md: split out md_rdev_init\n  md: be more careful setting MD_CHANGE_CLEAN\n  md/raid5: ensure we create a unique name for kmem_cache when mddev has no gendisk\n  ...\n"
    },
    {
      "commit": "4c619407b0439c59c20398b9459020c0d297f424",
      "tree": "17d5401aebd5fe00a4878353353e29fc8c569b89",
      "parents": [
        "26b55633a891a28bf04f42882de145eb8e9cb9ad",
        "145b64b9588c123d2bd00981c5ce8e03215ed2ee"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 10 13:58:11 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 10 13:58:11 2010 -0700"
      },
      "message": "Merge branch \u0027kmemleak\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/cmarinas/linux-2.6-cm\n\n* \u0027kmemleak\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/cmarinas/linux-2.6-cm:\n  kmemleak: Fix typo in the comment\n  lib/scatterlist: Hook sg_kmalloc into kmemleak (v2)\n  kmemleak: Add DocBook style comments to kmemleak.c\n  kmemleak: Introduce a default off mode for kmemleak\n  kmemleak: Show more information for objects found by alias\n"
    },
    {
      "commit": "a8618a0e8a06f75c6efec2a5477861d704d48b28",
      "tree": "02679a316c5dea69e337ff65219d7c116f5a59aa",
      "parents": [
        "424acaaeb3a3932d64a9b4bd59df6cf72c22d8f3"
      ],
      "author": {
        "name": "Michel Lespinasse",
        "email": "walken@google.com",
        "time": "Mon Aug 09 17:21:20 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:11 2010 -0700"
      },
      "message": "rwsem: smaller wrappers around rwsem_down_failed_common\n\nMore code can be pushed from rwsem_down_read_failed and\nrwsem_down_write_failed into rwsem_down_failed_common.\n\nFollowing change adding down_read_critical infrastructure support also\nenjoys having flags available in a register rather than having to fish it\nout in the struct rwsem_waiter...\n\nSigned-off-by: Michel Lespinasse \u003cwalken@google.com\u003e\nAcked-by: David Howells \u003cdhowells@redhat.com\u003e\nCc: Mike Waychison \u003cmikew@google.com\u003e\nCc: Suleiman Souhlal \u003csuleiman@google.com\u003e\nCc: Ying Han \u003cyinghan@google.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "424acaaeb3a3932d64a9b4bd59df6cf72c22d8f3",
      "tree": "c3c55028aa6eff578bc6d4d984796c7ea1379061",
      "parents": [
        "fd41b33435ada87323cc86b50959fbffe35192c8"
      ],
      "author": {
        "name": "Michel Lespinasse",
        "email": "walken@google.com",
        "time": "Mon Aug 09 17:21:19 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:11 2010 -0700"
      },
      "message": "rwsem: wake queued readers when writer blocks on active read lock\n\nThis change addresses the following situation:\n\n- Thread A acquires the rwsem for read\n- Thread B tries to acquire the rwsem for write, notices there is already\n  an active owner for the rwsem.\n- Thread C tries to acquire the rwsem for read, notices that thread B already\n  tried to acquire it.\n- Thread C grabs the spinlock and queues itself on the wait queue.\n- Thread B grabs the spinlock and queues itself behind C. At this point A is\n  the only remaining active owner on the rwsem.\n\nIn this situation thread B could notice that it was the last active writer\non the rwsem, and decide to wake C to let it proceed in parallel with A\nsince they both only want the rwsem for read.\n\nSigned-off-by: Michel Lespinasse \u003cwalken@google.com\u003e\nAcked-by: David Howells \u003cdhowells@redhat.com\u003e\nCc: Mike Waychison \u003cmikew@google.com\u003e\nCc: Suleiman Souhlal \u003csuleiman@google.com\u003e\nCc: Ying Han \u003cyinghan@google.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "fd41b33435ada87323cc86b50959fbffe35192c8",
      "tree": "6d2a7e79557e5de21bc91fce5b939c1f7dc1355c",
      "parents": [
        "70bdc6e0644f3535e93bac5c364ca199397e507e"
      ],
      "author": {
        "name": "Michel Lespinasse",
        "email": "walken@google.com",
        "time": "Mon Aug 09 17:21:18 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:11 2010 -0700"
      },
      "message": "rwsem: let RWSEM_WAITING_BIAS represent any number of waiting threads\n\nPreviously each waiting thread added a bias of RWSEM_WAITING_BIAS.  With\nthis change, the bias is added only once to indicate that the wait list is\nnon-empty.\n\nThis has a few nice properties which will be used in following changes:\n- when the spinlock is held and the waiter list is known to be non-empty,\n  count \u003c RWSEM_WAITING_BIAS  \u003c\u003d\u003e  there is an active writer on that sem\n- count \u003d\u003d RWSEM_WAITING_BIAS  \u003c\u003d\u003e  there are waiting threads and no\n                                     active readers/writers on that sem\n\nSigned-off-by: Michel Lespinasse \u003cwalken@google.com\u003e\nAcked-by: David Howells \u003cdhowells@redhat.com\u003e\nCc: Mike Waychison \u003cmikew@google.com\u003e\nCc: Suleiman Souhlal \u003csuleiman@google.com\u003e\nCc: Ying Han \u003cyinghan@google.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "70bdc6e0644f3535e93bac5c364ca199397e507e",
      "tree": "af5264cc57fcd69deae10fdd67cb62461111aa4c",
      "parents": [
        "345af7bf3304410634c21ada4664fda83d4d9a16"
      ],
      "author": {
        "name": "Michel Lespinasse",
        "email": "walken@google.com",
        "time": "Mon Aug 09 17:21:17 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:10 2010 -0700"
      },
      "message": "rwsem: lighter active count checks when waking up readers\n\nIn __rwsem_do_wake(), we can skip the active count check unless we come\nthere from up_xxxx().  Also when checking the active count, it is not\nactually necessary to increment it; this allows us to get rid of the read\nside undo code and simplify the calculation of the final rwsem count\nadjustment once we\u0027ve counted the reader threads to wake.\n\nThe basic observation is the following.  When there are waiter threads on\na rwsem and the spinlock is held, other threads can only increment the\nactive count by trying to grab the rwsem in down_xxxx().  However\ndown_xxxx() will notice there are waiter threads and take the down_failed\npath, blocking to acquire the spinlock on the way there.  Therefore, a\nthread observing an active count of zero with waiters queued and the\nspinlock held, is protected against other threads acquiring the rwsem\nuntil it wakes the last waiter or releases the spinlock.\n\nSigned-off-by: Michel Lespinasse \u003cwalken@google.com\u003e\nAcked-by: David Howells \u003cdhowells@redhat.com\u003e\nCc: Mike Waychison \u003cmikew@google.com\u003e\nCc: Suleiman Souhlal \u003csuleiman@google.com\u003e\nCc: Ying Han \u003cyinghan@google.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "345af7bf3304410634c21ada4664fda83d4d9a16",
      "tree": "1fd8b49ef79796e561cce19794af371099f5e7ca",
      "parents": [
        "7721fea3d0fd93fb4d000eb737b444369358d6d3"
      ],
      "author": {
        "name": "Michel Lespinasse",
        "email": "walken@google.com",
        "time": "Mon Aug 09 17:21:15 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:10 2010 -0700"
      },
      "message": "rwsem: fully separate code paths to wake writers vs readers\n\nThis is in preparation for later changes in the series.\n\nIn __rwsem_do_wake(), the first queued waiter is checked first in order to\ndetermine whether it\u0027s a writer or a reader.  The code paths diverge at\nthis point.  The code that checks and increments the rwsem active count is\nduplicated on both sides - the point is that later changes in the series\nwill be able to independently modify both sides.\n\nSigned-off-by: Michel Lespinasse \u003cwalken@google.com\u003e\nAcked-by: David Howells \u003cdhowells@redhat.com\u003e\nCc: Mike Waychison \u003cmikew@google.com\u003e\nCc: Suleiman Souhlal \u003csuleiman@google.com\u003e\nCc: Ying Han \u003cyinghan@google.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ea98eed9bcb62d1319db8b1210712c6a110a886c",
      "tree": "fa394336975862de7a1ca99f890eac4d3098356f",
      "parents": [
        "559b140a36613bb5b63f258b2ad833dad8cd11d9"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Mon Aug 09 17:20:56 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:09 2010 -0700"
      },
      "message": "flex_array: add helpers to get and put to make pointers easy to use\n\nGetting and putting arrays of pointers with flex arrays is a PITA.  You\nhave to remember to pass \u0026ptr to the _put and you have to do weird and\nwacky casting to get the ptr back from the _get.  Add two functions\nflex_array_get_ptr() and flex_array_put_ptr() to handle all of the magic.\n\n[akpm@linux-foundation.org: simplification suggested by Joe]\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: Dave Hansen \u003cdave@linux.vnet.ibm.com\u003e\nCc: Joe Perches \u003cjoe@perches.com\u003e\nCc: James Morris \u003cjmorris@namei.org\u003e\nCc: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "559b140a36613bb5b63f258b2ad833dad8cd11d9",
      "tree": "5059f8a551b1cfb11f3a72f00b5f3ee584dd0a61",
      "parents": [
        "e3f76e3386ee38e3654e81c2f3933ccca1f2d639"
      ],
      "author": {
        "name": "Michal Nazarewicz",
        "email": "mina86@mina86.com",
        "time": "Mon Aug 09 17:20:54 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:09 2010 -0700"
      },
      "message": "lib: vsprintf: useless strlen() removed\n\nThe strict_strtoul() and strict_strtoull() functions used strlen() to\ncheck argument\u0027s length in a situation where it wasn\u0027t strictly necessary\n\nSigned-off-by: Michal Nazarewicz \u003cmina86@mina86.com\u003e\nCc: \"Yi Yang\" \u003cyi.y.yang@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e3f76e3386ee38e3654e81c2f3933ccca1f2d639",
      "tree": "180f192f01aca166b30a1f1a119e9d0e9fb3714b",
      "parents": [
        "55817d3d5c480f96589359c10ad93fa2e707a029"
      ],
      "author": {
        "name": "Baruch Siach",
        "email": "baruch@tkos.co.il",
        "time": "Mon Aug 09 17:20:53 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:08 2010 -0700"
      },
      "message": "list debugging: warn when deleting a deleted entry\n\nUse the magic LIST_POISON* values to detect an incorrect use of list_del\non a deleted entry.  This DEBUG_LIST specific warning is easier to\nunderstand than the generic Oops message caused by LIST_POISON\ndereference.\n\nSigned-off-by: Baruch Siach \u003cbaruch@tkos.co.il\u003e\nCc: Dave Jones \u003cdavej@codemonkey.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e269b085175acf03fc687a7416b9fd84aa9c6c23",
      "tree": "4f07bf03153450695a1e34073413879173cdb2b4",
      "parents": [
        "85c9fe8fcaf630225b26047b3a7cc5167739eced"
      ],
      "author": {
        "name": "Anton Blanchard",
        "email": "anton@samba.org",
        "time": "Mon Aug 09 17:20:23 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:05 2010 -0700"
      },
      "message": "iommu: inline iommu_num_pages\n\nA profile of a network benchmark showed iommu_num_pages rather high up:\n\n     0.52%  iommu_num_pages\n\nLooking at the profile, an integer divide is taking almost all of the time:\n\n      %\n         :      c000000000376ea4 \u003c.iommu_num_pages\u003e:\n    1.93 :      c000000000376ea4:       fb e1 ff f8     std     r31,-8(r1)\n    0.00 :      c000000000376ea8:       f8 21 ff c1     stdu    r1,-64(r1)\n    0.00 :      c000000000376eac:       7c 3f 0b 78     mr      r31,r1\n    3.86 :      c000000000376eb0:       38 84 ff ff     addi    r4,r4,-1\n    0.00 :      c000000000376eb4:       38 05 ff ff     addi    r0,r5,-1\n    0.00 :      c000000000376eb8:       7c 84 2a 14     add     r4,r4,r5\n   46.95 :      c000000000376ebc:       7c 00 18 38     and     r0,r0,r3\n   45.66 :      c000000000376ec0:       7c 84 02 14     add     r4,r4,r0\n    0.00 :      c000000000376ec4:       7c 64 2b 92     divdu   r3,r4,r5\n    0.00 :      c000000000376ec8:       38 3f 00 40     addi    r1,r31,64\n    0.00 :      c000000000376ecc:       eb e1 ff f8     ld      r31,-8(r1)\n    1.61 :      c000000000376ed0:       4e 80 00 20     blr\n\nSince every caller of iommu_num_pages passes in a constant power of two\nwe can inline this such that the divide is replaced by a shift. The\nentire function is only a few instructions once optimised, so it is\na good candidate for inlining overall.\n\nSigned-off-by: Anton Blanchard \u003canton@samba.org\u003e\nCc: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ebf8aa44beed48cd17893a83d92a4403e5f9d9e2",
      "tree": "03607aa1cdbbb7fda935edb28bb3ad06423852ac",
      "parents": [
        "44ab57a06ded284db6ccdefc6b76eddb1c34d7ed"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Mon Aug 09 17:19:11 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:44:59 2010 -0700"
      },
      "message": "radix-tree: omplement function radix_tree_range_tag_if_tagged\n\nImplement function for setting one tag if another tag is set for each item\nin given range.\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nCc: Dave Chinner \u003cdavid@fromorbit.com\u003e\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nCc: Chris Mason \u003cchris.mason@oracle.com\u003e\nCc: Theodore Ts\u0027o \u003ctytso@mit.edu\u003e\nCc: Jens Axboe \u003caxboe@kernel.dk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "27f5e0f694fd0600274a76854636c0749e3bb1f6",
      "tree": "0d3a0387b42eb0a830fa5ba896a205b2a3807b8b",
      "parents": [
        "4e60c86bd9e5a7110ed28874d0b6592186550ae8"
      ],
      "author": {
        "name": "Tim Chen",
        "email": "tim.c.chen@linux.intel.com",
        "time": "Mon Aug 09 17:19:04 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:44:58 2010 -0700"
      },
      "message": "tmpfs: add accurate compare function to percpu_counter library\n\nAdd percpu_counter_compare that allows for a quick but accurate comparison\nof percpu_counter with a given value.\n\nA rough count is provided by the count field in percpu_counter structure,\nwithout accounting for the other values stored in individual cpu counters.\n\nThe actual count is a sum of count and the cpu counters.  However, count\nfield is never different from the actual value by a factor of\nbatch*num_online_cpu.  We do not need to get actual count for comparison\nif count is different from the given value by this factor and allows for\nquick comparison without summing up all the per cpu counters.\n\nSigned-off-by: Tim Chen \u003ctim.c.chen@linux.intel.com\u003e\nCc: Hugh Dickins \u003chughd@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2144381da478cc4aa3a29ee29b0c5e6ddaaced14",
      "tree": "380a29fec86b537ed602d12f4050654b1c66c27c",
      "parents": [
        "45d7f32c7a43cbb9592886d38190e379e2eb2226",
        "e5d84970a554d5c0072043a7b9f0f5b88b5fdfe1"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Mon Aug 09 10:36:44 2010 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Mon Aug 09 10:36:44 2010 +0100"
      },
      "message": "Merge branch \u0027async\u0027 of macbook:git/btrfs-unstable\n\nConflicts:\n\tdrivers/md/Makefile\n\tlib/raid6/unroll.pl\n"
    },
    {
      "commit": "ab69bcd66fb4be64edfc767365cb9eb084961246",
      "tree": "f7623585aee58978fc7814460fff517ec39138f2",
      "parents": [
        "c513b67e68787eceafeede32bcd0edbee45c0006",
        "6937e8f8c0135f2325194c372ada6dc655499992"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 06 11:36:30 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 06 11:36:30 2010 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6: (28 commits)\n  driver core: device_rename\u0027s new_name can be const\n  sysfs: Remove owner field from sysfs struct attribute\n  powerpc/pci: Remove owner field from attribute initialization in PCI bridge init\n  regulator: Remove owner field from attribute initialization in regulator core driver\n  leds: Remove owner field from attribute initialization in bd2802 driver\n  scsi: Remove owner field from attribute initialization in ARCMSR driver\n  scsi: Remove owner field from attribute initialization in LPFC driver\n  cgroupfs: create /sys/fs/cgroup to mount cgroupfs on\n  Driver core: Add BUS_NOTIFY_BIND_DRIVER\n  driver core: fix memory leak on one error path in bus_register()\n  debugfs: no longer needs to depend on SYSFS\n  sysfs: Fix one more signature discrepancy between sysfs implementation and docs.\n  sysfs: fix discrepancies between implementation and documentation\n  dcdbas: remove a redundant smi_data_buf_free in dcdbas_exit\n  dmi-id: fix a memory leak in dmi_id_init error path\n  sysfs: sysfs_chmod_file\u0027s attr can be const\n  firmware: Update hotplug script\n  Driver core: move platform device creation helpers to .init.text (if MODULE\u003dn)\n  Driver core: reduce duplicated code for platform_device creation\n  Driver core: use kmemdup in platform_device_add_resources\n  ...\n"
    },
    {
      "commit": "9faa1e5942fd647b0dd2fbbdcc04988841cacaf3",
      "tree": "3a2e467b04b7e66c9ef233e8c8b286278ef79adf",
      "parents": [
        "d9a73c00161f3eaa4c8c035c62f45afd1549e38a",
        "3709c857350976408953831f0cf89d19951394a1"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 06 10:17:52 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 06 10:17:52 2010 -0700"
      },
      "message": "Merge branch \u0027x86-mm-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027x86-mm-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  x86: Ioremap: fix wrong physical address handling in PAT code\n  x86, tlb: Clean up and correct used type\n  x86, iomap: Fix wrong page aligned size calculation in ioremapping code\n  x86, mm: Create symbolic index into address_markers array\n  x86, ioremap: Fix normal ram range check\n  x86, ioremap: Fix incorrect physical address handling in PAE mode\n  x86-64, mm: Initialize VDSO earlier on 64 bits\n  x86, kmmio/mmiotrace: Fix double free of kmmio_fault_pages\n"
    },
    {
      "commit": "4aed2fd8e3181fea7c09ba79cf64e7e3f4413bf9",
      "tree": "1f69733e5daab4915a76a41de0e4d1dc61e12cfb",
      "parents": [
        "3a3527b6461b1298cc53ce72f336346739297ac8",
        "fc9ea5a1e53ee54f681e226d735008e2a6f8f470"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 06 09:30:52 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 06 09:30:52 2010 -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: (162 commits)\n  tracing/kprobes: unregister_trace_probe needs to be called under mutex\n  perf: expose event__process function\n  perf events: Fix mmap offset determination\n  perf, powerpc: fsl_emb: Restore setting perf_sample_data.period\n  perf, powerpc: Convert the FSL driver to use local64_t\n  perf tools: Don\u0027t keep unreferenced maps when unmaps are detected\n  perf session: Invalidate last_match when removing threads from rb_tree\n  perf session: Free the ref_reloc_sym memory at the right place\n  x86,mmiotrace: Add support for tracing STOS instruction\n  perf, sched migration: Librarize task states and event headers helpers\n  perf, sched migration: Librarize the GUI class\n  perf, sched migration: Make the GUI class client agnostic\n  perf, sched migration: Make it vertically scrollable\n  perf, sched migration: Parameterize cpu height and spacing\n  perf, sched migration: Fix key bindings\n  perf, sched migration: Ignore unhandled task states\n  perf, sched migration: Handle ignored migrate out events\n  perf: New migration tool overview\n  tracing: Drop cpparg() macro\n  perf: Use tracepoint_synchronize_unregister() to flush any pending tracepoint call\n  ...\n\nFix up trivial conflicts in Makefile and drivers/cpufreq/cpufreq.c\n"
    },
    {
      "commit": "3a3527b6461b1298cc53ce72f336346739297ac8",
      "tree": "30bea5dd7163f13d6c962888feaf53f50ead4cce",
      "parents": [
        "cc77b4db0017dab014ad7ea3d297e10f5b5bf028",
        "a53f4b61a76a7e95139b8e8abba02e9bfe87a58a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 06 09:23:07 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 06 09:23:07 2010 -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  Revert \"net: Make accesses to -\u003ebr_port safe for sparse RCU\"\n  mce: convert to rcu_dereference_index_check()\n  net: Make accesses to -\u003ebr_port safe for sparse RCU\n  vfs: add fs.h to define struct file\n  lockdep: Add an in_workqueue_context() lockdep-based test function\n  rcu: add __rcu API for later sparse checking\n  rcu: add an rcu_dereference_index_check()\n  tree/tiny rcu: Add debug RCU head objects\n  mm: remove all rcu head initializations\n  fs: remove all rcu head initializations, except on_stack initializations\n  powerpc: remove all rcu head initializations\n"
    },
    {
      "commit": "da9e82b3b8989fc09e2a4c45b9da604ba2b4c46d",
      "tree": "7355d2afe95be27fddb8fa4baa46476c76aeb8ee",
      "parents": [
        "90d3417a3a4e810d67081dd106f0e603a856978f",
        "772320e84588dcbe1600ffb83e5f328f2209ac2a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Aug 05 14:10:07 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Aug 05 14:10:07 2010 -0700"
      },
      "message": "Merge branch \u0027kbuild\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6\n\n* \u0027kbuild\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6:\n  modpost: support objects with more than 64k sections\n  trivial: fix a typo in a filename\n  frv: clean up arch/frv/Makefile\n  kbuild: allow assignment to {A,C}FLAGS_KERNEL on the command line\n  kbuild: allow assignment to {A,C,LD}FLAGS_MODULE on the command line\n  Kbuild: Add option to set -femit-struct-debug-baseonly\n  Makefile: \"make kernelrelease\" should show the correct full kernel version\n  Makefile.build: make KBUILD_SYMTYPES work again\n"
    },
    {
      "commit": "c462e8cd57869a81223c5cad2d5a61b491634229",
      "tree": "5036d1dd721f11bd4b839c9b272ba6dcce89f446",
      "parents": [
        "a5307032718b1e90e6d07008d7fd44d1446db7d7"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Tue Jul 20 16:04:51 2010 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Aug 05 13:53:34 2010 -0700"
      },
      "message": "debugfs: no longer needs to depend on SYSFS\n\ndebugfs no longer uses \u0027kernel_subsys\u0027 (which is gone), and other\nkernel/ksysfs.c code is always built, so DEBUG_FS does not need\nto depend on SYSFS.\n\nFixes this kconfig warning:\n\nwarning: (TREE_RCU_TRACE || AMD_IOMMU_STATS \u0026\u0026 AMD_IOMMU || MTD_UBI_DEBUG \u0026\u0026 MTD \u0026\u0026 SYSFS \u0026\u0026 MTD_UBI || UBIFS_FS_DEBUG \u0026\u0026 MISC_FILESYSTEMS \u0026\u0026 UBIFS_FS || DEBUG_KMEMLEAK \u0026\u0026 DEBUG_KERNEL \u0026\u0026 EXPERIMENTAL \u0026\u0026 !MEMORY_HOTPLUG \u0026\u0026 (X86 || ARM || PPC || S390 || SPARC64 || SUPERH || MICROBLAZE) \u0026\u0026 SYSFS || TRACING || X86_PTDUMP \u0026\u0026 DEBUG_KERNEL || BLK_DEV_IO_TRACE \u0026\u0026 TRACING_SUPPORT \u0026\u0026 FTRACE \u0026\u0026 SYSFS \u0026\u0026 BLOCK) selects DEBUG_FS which has unmet direct dependencies (SYSFS)\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "bbc4fd12a635492ad9d12bb418124fa2d5f0d734",
      "tree": "fe245d350db180d499a9e9d6dc84bbb308f33dc2",
      "parents": [
        "673b864fd76a29031aa0b4b08fc80886d527b3b7",
        "2d5973cb5ac5d04662f86e19a06a4c52fa4c4ae3"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Aug 05 08:59:22 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Aug 05 08:59:22 2010 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.monstr.eu/linux-2.6-microblaze\n\n* \u0027for-linus\u0027 of git://git.monstr.eu/linux-2.6-microblaze: (49 commits)\n  microblaze: Add KGDB support\n  microblaze: Support brki rX, 0x18 for user application debugging\n  microblaze: Remove nop after MSRCLR/SET, MTS, MFS instructions\n  microblaze: Simplify syscall rutine\n  microblaze: Move PT_MODE saving to delay slot\n  microblaze: Fix _interrupt function\n  microblaze: Fix _user_exception function\n  microblaze: Put together addik instructions\n  microblaze: Use delay slot in syscall macros\n  microblaze: Save kernel mode in delay slot\n  microblaze: Do not mix register saving and mode setting\n  microblaze: Move SAVE_STATE upward\n  microblaze: entry.S: Macro optimization\n  microblaze: Optimize hw exception rutine\n  microblaze: Implement clear_ums macro and fix SAVE_STATE macro\n  microblaze: Remove additional setup for kernel_mode\n  microblaze: Optimize SAVE_STATE macro\n  microblaze: Remove additional loading\n  microblaze: Completely remove working with R11 register\n  microblaze: Do not setup BIP in _debug_exception\n  ...\n"
    },
    {
      "commit": "61be7fdec2f51b99570cd5dcc30c7848c8e56513",
      "tree": "4a73ee635bc3e35dc54f75caddd26ffb6238bb5c",
      "parents": [
        "12a81c8df13c60904febcafcf6b90ca1acb67122",
        "eb703f98191a505f78d0066712ad67d5dedc4c90"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Aug 05 08:45:05 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Aug 05 08:45:05 2010 +0200"
      },
      "message": "Merge branch \u0027perf/nmi\u0027 into perf/core\n\nConflicts:\n\tkernel/Makefile\n\nMerge reason: Add the now complete topic, fix the conflict.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "3cfc2c42c1cbc8e238bb9c0612c0df4565e3a8b4",
      "tree": "5adc1ff2eaf64d450bf28bb6b2ce890db2567288",
      "parents": [
        "5cf65713f87775c548e3eb48dbafa32e12f28000",
        "0ea6e61122196509af82cc4f36cbdaacbefb8227"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 04 15:31:02 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 04 15:31:02 2010 -0700"
      },
      "message": "Merge branch \u0027for-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial\n\n* \u0027for-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (48 commits)\n  Documentation: update broken web addresses.\n  fix comment typo \"choosed\" -\u003e \"chosen\"\n  hostap:hostap_hw.c Fix typo in comment\n  Fix spelling contorller -\u003e controller in comments\n  Kconfig.debug: FAIL_IO_TIMEOUT: typo Faul -\u003e Fault\n  fs/Kconfig: Fix typo Userpace -\u003e Userspace\n  Removing dead MACH_U300_BS26\n  drivers/infiniband: Remove unnecessary casts of private_data\n  fs/ocfs2: Remove unnecessary casts of private_data\n  libfc: use ARRAY_SIZE\n  scsi: bfa: use ARRAY_SIZE\n  drm: i915: use ARRAY_SIZE\n  drm: drm_edid: use ARRAY_SIZE\n  synclink: use ARRAY_SIZE\n  block: cciss: use ARRAY_SIZE\n  comment typo fixes: charater \u003d\u003e character\n  fix comment typos concerning \"challenge\"\n  arm: plat-spear: fix typo in kerneldoc\n  reiserfs: typo comment fix\n  update email address\n  ...\n"
    },
    {
      "commit": "6ba74014c1ab0e37af7de6f64b4eccbbae3cb9e7",
      "tree": "8f3892fc44f1e403675a6d7e88fda5c70e56ee4c",
      "parents": [
        "5abd9ccced7a726c817dd6b5b96bc933859138d1",
        "3ff1c25927e3af61c6bf0e4ed959504058ae4565"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 04 11:47:58 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 04 11:47:58 2010 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6: (1443 commits)\n  phy/marvell: add 88ec048 support\n  igb: Program MDICNFG register prior to PHY init\n  e1000e: correct MAC-PHY interconnect register offset for 82579\n  hso: Add new product ID\n  can: Add driver for esd CAN-USB/2 device\n  l2tp: fix export of header file for userspace\n  can-raw: Fix skb_orphan_try handling\n  Revert \"net: remove zap_completion_queue\"\n  net: cleanup inclusion\n  phy/marvell: add 88e1121 interface mode support\n  u32: negative offset fix\n  net: Fix a typo from \"dev\" to \"ndev\"\n  igb: Use irq_synchronize per vector when using MSI-X\n  ixgbevf: fix null pointer dereference due to filter being set for VLAN 0\n  e1000e: Fix irq_synchronize in MSI-X case\n  e1000e: register pm_qos request on hardware activation\n  ip_fragment: fix subtracting PPPOE_SES_HLEN from mtu twice\n  net: Add getsockopt support for TCP thin-streams\n  cxgb4: update driver version\n  cxgb4: add new PCI IDs\n  ...\n\nManually fix up conflicts in:\n - drivers/net/e1000e/netdev.c: due to pm_qos registration\n   infrastructure changes\n - drivers/net/phy/marvell.c: conflict between adding 88ec048 support\n   and cleaning up the IDs\n - drivers/net/wireless/ipw2x00/ipw2100.c: trivial ipw2100_pm_qos_req\n   conflict (registration change vs marking it static)\n"
    },
    {
      "commit": "4a35cee066df1b1958e25e71595b3845d06b192e",
      "tree": "0d6c9de77da09a6d42d1bf03983f620615cc6f24",
      "parents": [
        "7e6880951da86928c7f6cecf26dcb8e8d9f826da",
        "d7ef1533a90f432615d25729c2477bac9e72051d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 04 10:36:39 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 04 10:36:39 2010 -0700"
      },
      "message": "Merge branch \u0027stable/swiotlb-0.8.3\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/swiotlb-2.6\n\n* \u0027stable/swiotlb-0.8.3\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/swiotlb-2.6:\n  swiotlb: Make swiotlb bookkeeping functions visible in the header file.\n  swiotlb: search and replace \"int dir\" with \"enum dma_data_direction dir\"\n  swiotlb: Make internal bookkeeping functions have \u0027swiotlb_tbl\u0027 prefix.\n  swiotlb: add the swiotlb initialization function with iotlb memory\n  swiotlb: add swiotlb_tbl_map_single library function\n"
    },
    {
      "commit": "d790d4d583aeaed9fc6f8a9f4d9f8ce6b1c15c7f",
      "tree": "854ab394486288d40fa8179cbfaf66e8bdc44b0f",
      "parents": [
        "73b2c7165b76b20eb1290e7efebc33cfd21db1ca",
        "3a09b1be53d23df780a0cd0e4087a05e2ca4a00c"
      ],
      "author": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Wed Aug 04 15:14:38 2010 +0200"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Wed Aug 04 15:14:38 2010 +0200"
      },
      "message": "Merge branch \u0027master\u0027 into for-next\n"
    },
    {
      "commit": "772320e84588dcbe1600ffb83e5f328f2209ac2a",
      "tree": "a7de21b79340aeaa17c58126f6b801b82c77b53a",
      "parents": [
        "1ce53adf13a54375d2a5c7cdbe341b2558389615",
        "9fe6206f400646a2322096b56c59891d530e8d51"
      ],
      "author": {
        "name": "Michal Marek",
        "email": "mmarek@suse.cz",
        "time": "Wed Aug 04 13:59:13 2010 +0200"
      },
      "committer": {
        "name": "Michal Marek",
        "email": "mmarek@suse.cz",
        "time": "Wed Aug 04 13:59:13 2010 +0200"
      },
      "message": "Merge commit \u0027v2.6.35\u0027 into kbuild/kbuild\n\nConflicts:\n\tarch/powerpc/Makefile\n"
    },
    {
      "commit": "79aac889037027bebf7fcfc4cf9f2eb25f4f8075",
      "tree": "55b1744d9fe200dfecb98d76735a626225cac30b",
      "parents": [
        "6847ba91a190fe41d21779d6b382b47b2f4c50f4"
      ],
      "author": {
        "name": "Michal Simek",
        "email": "monstr@monstr.eu",
        "time": "Tue May 25 11:33:26 2010 +0200"
      },
      "committer": {
        "name": "Michal Simek",
        "email": "monstr@monstr.eu",
        "time": "Wed Aug 04 10:22:32 2010 +0200"
      },
      "message": "microblaze: Disable FRAME_POINTER selection\n\nMicroblaze doesn\u0027t support frame pointers. Ftrace code\nuses CALLER_ADDR1 which is defined in linux/ftrace.h. For Microblaze\nis 0.\n\nSigned-off-by: Michal Simek \u003cmonstr@monstr.eu\u003e\n"
    },
    {
      "commit": "b94de9bb7519f597a3aed521d5eaeb5b02a7cbc0",
      "tree": "1c2771372fc23c55dd678080aa6529c98f8de371",
      "parents": [
        "a2b6bf63cb7a3e34bd2e753a6f2c2776b5c8496f"
      ],
      "author": {
        "name": "Chris Wilson",
        "email": "chris@chris-wilson.co.uk",
        "time": "Wed Jul 28 22:59:02 2010 +0100"
      },
      "committer": {
        "name": "Catalin Marinas",
        "email": "catalin.marinas@arm.com",
        "time": "Wed Jul 28 22:59:02 2010 +0100"
      },
      "message": "lib/scatterlist: Hook sg_kmalloc into kmemleak (v2)\n\nkmemleak ignores page_alloc() and so believes the final sub-page\nallocation using the plain kmalloc is decoupled and lost. This leads to\nlots of false-positives with code that uses scatterlists.\n\nThe options seem to be either to tell kmemleak that the kmalloc is not\nleaked or to notify kmemleak of the page allocations. The danger of the\nfirst approach is that we may hide a real leak, so choose the latter\napproach (of which I am not sure of the downsides).\n\nv2: Added comments on the suggestion of Catalin.\n\nSigned-off-by: Chris Wilson \u003cchris@chris-wilson.co.uk\u003e\nCc: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Jens Axboe \u003cjaxboe@fusionio.com\u003e\nSigned-off-by: Catalin Marinas \u003ccatalin.marinas@arm.com\u003e\n"
    },
    {
      "commit": "c58bbd39f876955be6e072748fdfe2b671f9d939",
      "tree": "dc40f165bc6afd3587696beec811298119a257d9",
      "parents": [
        "4708ac49305bbcd511600d4af71a4c6dca15af65"
      ],
      "author": {
        "name": "Will Deacon",
        "email": "will.deacon@arm.com",
        "time": "Thu Jul 08 10:59:59 2010 +0100"
      },
      "committer": {
        "name": "Russell King",
        "email": "rmk+kernel@arm.linux.org.uk",
        "time": "Tue Jul 27 10:43:46 2010 +0100"
      },
      "message": "ARM: 6213/1: atomic64_test: add ARM as supported architecture\n\nARM has support for the atomic64_dec_if_positive operation\nso ensure that it is tested by the atomic64_test routine.\n\nAcked-by: Nicolas Pitre \u003cnicolas.pitre@linaro.org\u003e\nSigned-off-by: Will Deacon \u003cwill.deacon@arm.com\u003e\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\n"
    },
    {
      "commit": "f4d01439515acd5d9a09de1d1e02ca40403dda49",
      "tree": "27f22e3df87681bcf7ade64c901f63b02341a533",
      "parents": [
        "59b48568312a262cbba814c683a320fb4e0dccae"
      ],
      "author": {
        "name": "Takuya Yoshikawa",
        "email": "yoshikawa.takuya@oss.ntt.co.jp",
        "time": "Wed Jul 21 16:05:53 2010 +0900"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Wed Jul 21 10:36:50 2010 +0200"
      },
      "message": "Kconfig.debug: FAIL_IO_TIMEOUT: typo Faul -\u003e Fault\n\nThe last \u0027t\u0027 of \u0027fault\u0027 is missing in the description of FAIL_IO_TIMEOUT.\n\nSigned-off-by: Takuya Yoshikawa \u003cyoshikawa.takuya@oss.ntt.co.jp\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "ab0155a22ad5bda3a6dbfbbecc416cbe92619755",
      "tree": "0a8b2caea650cc31f61bc8723b0da275382701af",
      "parents": [
        "a7686a45c07462b78df5ac15fc696a86e57ccf91"
      ],
      "author": {
        "name": "Jason Baron",
        "email": "jbaron@redhat.com",
        "time": "Mon Jul 19 11:54:17 2010 +0100"
      },
      "committer": {
        "name": "Catalin Marinas",
        "email": "catalin.marinas@arm.com",
        "time": "Mon Jul 19 11:54:17 2010 +0100"
      },
      "message": "kmemleak: Introduce a default off mode for kmemleak\n\nIntroduce a new DEBUG_KMEMLEAK_DEFAULT_OFF config parameter that allows\nkmemleak to be disabled by default, but enabled on the command line\nvia: kmemleak\u003don. Although a reboot is required to turn it on, its still\nuseful to not require a re-compile.\n\nSigned-off-by: Jason Baron \u003cjbaron@redhat.com\u003e\nSigned-off-by: Catalin Marinas \u003ccatalin.marinas@arm.com\u003e\nAcked-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\n"
    },
    {
      "commit": "d6f4ceb796ebf1a8c8a9ad4a8ea0d181aaec7de6",
      "tree": "8fa46f7bab29be7ffd7108de3a2c0e5d0616ff07",
      "parents": [
        "01ab17887f4cdcb8bb5a5d1bc3b160d186e6e99b"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "andi@firstfloor.org",
        "time": "Wed Jul 14 15:43:52 2010 +0200"
      },
      "committer": {
        "name": "Michal Marek",
        "email": "mmarek@suse.cz",
        "time": "Wed Jul 14 17:21:28 2010 +0200"
      },
      "message": "Kbuild: Add option to set -femit-struct-debug-baseonly\n\nNewer gcc has a -femit-struct-debug-baseonly option that dramatically\nreduces the size of object files with debug info. What it does\nis to only emit type information for structures when the structures\nare defined in the same file or in a header file.\n\nThis means the type information for most headers are not included.\nThis is not good when the type information is actually\nneeded (e.g. with kgdb or systemtap)\n\nBut often kernel hackers only care about line numbers and don\u0027t\nneed all the type information anyways. In this case setting\nthe option can be a big win:\n\nA build dir for a specific x86-64 configuration with gcc 4.5\nshrunk from 2.3G to 1.2G. The compilation was also nearly a minute\nfaster.\n\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\n[mmarek: reformatted help text]\nSigned-off-by: Michal Marek \u003cmmarek@suse.cz\u003e\n"
    },
    {
      "commit": "95f72d1ed41a66f1c1c29c24d479de81a0bea36f",
      "tree": "bd92b3804ff0bea083d69af0ede52f99ab34c0af",
      "parents": [
        "1c5474a65bf15a4cb162dfff86d6d0b5a08a740c"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Mon Jul 12 14:36:09 2010 +1000"
      },
      "committer": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Wed Jul 14 17:14:00 2010 +1000"
      },
      "message": "lmb: rename to memblock\n\nvia following scripts\n\n      FILES\u003d$(find * -type f | grep -vE \u0027oprofile|[^K]config\u0027)\n\n      sed -i \\\n        -e \u0027s/lmb/memblock/g\u0027 \\\n        -e \u0027s/LMB/MEMBLOCK/g\u0027 \\\n        $FILES\n\n      for N in $(find . -name lmb.[ch]); do\n        M\u003d$(echo $N | sed \u0027s/lmb/memblock/g\u0027)\n        mv $N $M\n      done\n\nand remove some wrong change like lmbench and dlmb etc.\n\nalso move memblock.c from lib/ to mm/\n\nSuggested-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nAcked-by: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nAcked-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nAcked-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nSigned-off-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\n"
    },
    {
      "commit": "4d45ada36b36a52383042f86a9c320286550daf1",
      "tree": "aa3a297cad523c2d561763a7a9f84b86bd74e8ac",
      "parents": [
        "a6557737584457c8d202cb164585973e8d15a29c"
      ],
      "author": {
        "name": "Kulikov Vasiliy",
        "email": "segooon@gmail.com",
        "time": "Sat Jul 10 14:07:41 2010 +0400"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Sun Jul 11 22:16:32 2010 +0200"
      },
      "message": "lib/devres.c: fix comment typo\n\n\u0027Unamp\u0027 should be \u0027Unmap\u0027.\n\nSigned-off-by: Kulikov Vasiliy \u003csegooon@gmail.com\u003e\nAcked-by: Tejun Heo \u003ctj@kernel.org\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "ffa71f33a820d1ab3f2fc5723819ac60fb76080b",
      "tree": "fb7fb08c43a773f771a49ac765e9330e07d32eef",
      "parents": [
        "d7a0380dc3e6607d30ccdfc3cfc2ccee0d966716"
      ],
      "author": {
        "name": "Kenji Kaneshige",
        "email": "kaneshige.kenji@jp.fujitsu.com",
        "time": "Fri Jun 18 12:22:40 2010 +0900"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Fri Jul 09 11:42:03 2010 -0700"
      },
      "message": "x86, ioremap: Fix incorrect physical address handling in PAE mode\n\nCurrent x86 ioremap() doesn\u0027t handle physical address higher than\n32-bit properly in X86_32 PAE mode. When physical address higher than\n32-bit is passed to ioremap(), higher 32-bits in physical address is\ncleared wrongly. Due to this bug, ioremap() can map wrong address to\nlinear address space.\n\nIn my case, 64-bit MMIO region was assigned to a PCI device (ioat\ndevice) on my system. Because of the ioremap()\u0027s bug, wrong physical\naddress (instead of MMIO region) was mapped to linear address space.\nBecause of this, loading ioatdma driver caused unexpected behavior\n(kernel panic, kernel hangup, ...).\n\nSigned-off-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nLKML-Reference: \u003c4C1AE680.7090408@jp.fujitsu.com\u003e\nSigned-off-by: H. Peter Anvin \u003chpa@linux.intel.com\u003e\n"
    },
    {
      "commit": "47a716cf0ca981b9549ec9815122ada7a0ff707c",
      "tree": "9b949cce3f111c41478b6bbe404b7fdf525ef45f",
      "parents": [
        "1cc9629402b1eba0d4e21b2cc43eec9bd737f9bd",
        "b945d6b2554d550fe95caadc61e521c0ad71fb9c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 06 17:16:09 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 06 17:16:09 2010 -0700"
      },
      "message": "Merge branch \u0027x86-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027x86-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  rbtree: Undo augmented trees performance damage and regression\n  x86, Calgary: Limit the max PHB number to 256\n"
    },
    {
      "commit": "b945d6b2554d550fe95caadc61e521c0ad71fb9c",
      "tree": "0b76cdb978bead82188de40cae6d24bd88d71b7d",
      "parents": [
        "d596043d71ff0d7b3d0bead19b1d68c55f003093"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "peterz@infradead.org",
        "time": "Sat May 29 15:31:43 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 05 14:43:50 2010 +0200"
      },
      "message": "rbtree: Undo augmented trees performance damage and regression\n\nReimplement augmented RB-trees without sprinkling extra branches\nall over the RB-tree code (which lives in the scheduler hot path).\n\nThis approach is \u0027borrowed\u0027 from Fabio\u0027s BFQ implementation and\nrelies on traversing the rebalance path after the RB-tree-op to\ncorrect the heap property for insertion/removal and make up for\nthe damage done by the tree rotations.\n\nFor insertion the rebalance path is trivially that from the new\nnode upwards to the root, for removal it is that from the deepest\nnode in the path from the to be removed node that will still\nbe around after the removal.\n\n[ This patch also fixes a video driver regression reported by\n  Ali Gholami Rudi - the memtype-\u003esubtree_max_end was updated\n  incorrectly. ]\n\nAcked-by: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nAcked-by: Venkatesh Pallipadi \u003cvenki@google.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nTested-by: Ali Gholami Rudi \u003cali@rudi.ir\u003e\nCc: Fabio Checconi \u003cfabio@gandalf.sssup.it\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nLKML-Reference: \u003c1275414172.27810.27961.camel@twins\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ff49d74ad383f54041378144ca1a229ee9aeaa59",
      "tree": "6f37335e313c9a680db8d4e4ce00d17aa11a099b",
      "parents": [
        "e3668dd83ba5958429984286efbc3055be5344c4"
      ],
      "author": {
        "name": "Yehuda Sadeh",
        "email": "yehuda@hq.newdream.net",
        "time": "Sat Jul 03 13:07:35 2010 +1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jul 04 20:17:22 2010 -0700"
      },
      "message": "module: initialize module dynamic debug later\n\nWe should initialize the module dynamic debug datastructures\nonly after determining that the module is not loaded yet. This\nfixes a bug that introduced in 2.6.35-rc2, where when a trying\nto load a module twice, we also load it\u0027s dynamic printing data\ntwice which causes all sorts of nasty issues. Also handle\nthe dynamic debug cleanup later on failure.\n\nSigned-off-by: Yehuda Sadeh \u003cyehuda@hq.newdream.net\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e (removed a #ifdef)\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7db6f5fb65a82af03229eef104dc9899c5eecf33",
      "tree": "fb7a83297d8bf2680df9616ebf58bec89229ff3b",
      "parents": [
        "e490c1defec4236a6a131fe2d13bf7ba787c02f8"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Sun Jun 27 01:02:33 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jul 04 10:40:17 2010 -0700"
      },
      "message": "vsprintf: Recursive vsnprintf: Add \"%pV\", struct va_format\n\nAdd the ability to print a format and va_list from a structure pointer\n\nAllows __dev_printk to be implemented as a single printk while\nminimizing string space duplication.\n\n%pV should not be used without some mechanism to verify the\nformat and argument use ala __attribute__(format (printf(...))).\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0a54cec0c25cc49e3b68b14c205f1f6cff13f5e1",
      "tree": "eb4e63ee9ae1fcaf9aa53a1668e55c09516052d9",
      "parents": [
        "ec8c27e04f89a7575ca2c4facb99152e03d6a99c",
        "980019d74e4b2428362b36a0506519d6d9460800"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jul 01 08:49:28 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jul 01 09:31:25 2010 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into core/rcu\n\nConflicts:\n\tfs/fs-writeback.c\n\nMerge reason: Resolve the conflict\n\nNote, i picked the version from Linus\u0027s tree, which effectively reverts\nthe fs-writeback.c bits of:\n\n  b97181f: fs: remove all rcu head initializations, except on_stack initializations\n\nAs the upstream changes to this file changed this code heavily and the\nfirst attempt to resolve the conflict resulted in a non-booting kernel.\nIt\u0027s safer to re-try this portion of the commit cleanly.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e621ba9932aa0a90e47c12c958b3a3104915f3b9",
      "tree": "2481974f86f41cb47322fe52e6390f9db5d97968",
      "parents": [
        "984bc9601f64fd341b8573021d7c999f1f1499a9"
      ],
      "author": {
        "name": "Imre Deak",
        "email": "imre.deak@nokia.com",
        "time": "Tue Jun 29 15:05:15 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jun 29 15:29:30 2010 -0700"
      },
      "message": "genalloc: fix allocation from end of pool\n\nbitmap_find_next_zero_area requires the size of the bitmap, we instead\npassed the last suitable position.  This made it impossible to allocate\nfrom the end of the pool.\n\nFixes a regression introduced by 243797f59b748f679ab88d456fcc4f92236d724b\n(\"genalloc: use bitmap_find_next_zero_area\").\n\nSigned-off-by: Imre Deak \u003cimre.deak@nokia.com\u003e\nCc: Zygo Blaxell \u003czygo.blaxell@xandros.com\u003e\nCc: Tejun Heo \u003ctj@kernel.org\u003e\nAcked-by: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "94bfa3b6692c7a3f6f119596724204ec975d3ef0",
      "tree": "4c59cc890ed6fa0f1922416e6cbb7c87ecc8c3dc",
      "parents": [
        "f3b577dec1f2ce32d2db6d2ca6badff7002512af"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Mon Jun 07 17:09:45 2010 -0700"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Wed Jun 23 06:50:45 2010 -0700"
      },
      "message": "idr: fix RCU lockdep splat in idr_get_next()\n\nConvert to rcu_dereference_raw() given that many callers may have many\ndifferent locking models.\n\nLocated-by: Miles Lane \u003cmiles.lane@gmail.com\u003e\nTested-by: Miles Lane \u003cmiles.lane@gmail.com\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "f1bbbb6912662b9f6070c5bfc4ca9eb1f06a9d5b",
      "tree": "c2c130a74be25b0b2dff992e1a195e2728bdaadd",
      "parents": [
        "fd0961ff67727482bb20ca7e8ea97b83e9de2ddb",
        "7e27d6e778cd87b6f2415515d7127eba53fe5d02"
      ],
      "author": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Wed Jun 16 18:08:13 2010 +0200"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Wed Jun 16 18:08:13 2010 +0200"
      },
      "message": "Merge branch \u0027master\u0027 into for-next\n"
    },
    {
      "commit": "421f91d21ad6f799dc7b489bb33cc560ccc56f98",
      "tree": "aaf9f6385233fdf9277e634603156c89ede7f770",
      "parents": [
        "65155b3708137fabee865dc4da822763c0c41208"
      ],
      "author": {
        "name": "Uwe Kleine-König",
        "email": "u.kleine-koenig@pengutronix.de",
        "time": "Fri Jun 11 12:17:00 2010 +0200"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Wed Jun 16 18:05:05 2010 +0200"
      },
      "message": "fix typos concerning \"initiali[zs]e\"\n\nSigned-off-by: Uwe Kleine-König \u003cu.kleine-koenig@pengutronix.de\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "551d55a944b143ef26fbd482d1c463199d6f65cf",
      "tree": "6911d3f8e8719ba5ca43c83acdf87cbc8276d7d1",
      "parents": [
        "875352c94224c88f5aa28cb77206f993bd31b7a2"
      ],
      "author": {
        "name": "Mathieu Desnoyers",
        "email": "mathieu.desnoyers@efficios.com",
        "time": "Sat Apr 17 08:48:42 2010 -0400"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Mon Jun 14 16:37:26 2010 -0700"
      },
      "message": "tree/tiny rcu: Add debug RCU head objects\n\nHelps finding racy users of call_rcu(), which results in hangs because list\nentries are overwritten and/or skipped.\n\nChangelog since v4:\n- Bissectability is now OK\n- Now generate a WARN_ON_ONCE() for non-initialized rcu_head passed to\n  call_rcu(). Statically initialized objects are detected with\n  object_is_static().\n- Rename rcu_head_init_on_stack to init_rcu_head_on_stack.\n- Remove init_rcu_head() completely.\n\nChangelog since v3:\n- Include comments from Lai Jiangshan\n\nThis new patch version is based on the debugobjects with the newly introduced\n\"active state\" tracker.\n\nNon-initialized entries are all considered as \"statically initialized\". An\nactivation fixup (triggered by call_rcu()) takes care of performing the debug\nobject initialization without issuing any warning. Since we cannot increase the\nsize of struct rcu_head, I don\u0027t see much room to put an identifier for\nstatically initialized rcu_head structures. So for now, we have to live without\n\"activation without explicit init\" detection. But the main purpose of this debug\noption is to detect double-activations (double call_rcu() use of a rcu_head\nbefore the callback is executed), which is correctly addressed here.\n\nThis also detects potential internal RCU callback corruption, which would cause\nthe callbacks to be executed twice.\n\nSigned-off-by: Mathieu Desnoyers \u003cmathieu.desnoyers@efficios.com\u003e\nCC: David S. Miller \u003cdavem@davemloft.net\u003e\nCC: \"Paul E. McKenney\" \u003cpaulmck@linux.vnet.ibm.com\u003e\nCC: akpm@linux-foundation.org\nCC: mingo@elte.hu\nCC: laijs@cn.fujitsu.com\nCC: dipankar@in.ibm.com\nCC: josh@joshtriplett.org\nCC: dvhltc@us.ibm.com\nCC: niv@us.ibm.com\nCC: tglx@linutronix.de\nCC: peterz@infradead.org\nCC: rostedt@goodmis.org\nCC: Valdis.Kletnieks@vt.edu\nCC: dhowells@redhat.com\nCC: eric.dumazet@gmail.com\nCC: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nReviewed-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\n"
    },
    {
      "commit": "d7ef1533a90f432615d25729c2477bac9e72051d",
      "tree": "1cb27e7e3e7341b870ca94bcd38e9da1115ef11b",
      "parents": [
        "22d48269984fc93a71f65a54aa422aacf5fdb926"
      ],
      "author": {
        "name": "Konrad Rzeszutek Wilk",
        "email": "konrad.wilk@oracle.com",
        "time": "Fri May 28 11:37:10 2010 -0400"
      },
      "committer": {
        "name": "Konrad Rzeszutek Wilk",
        "email": "konrad.wilk@oracle.com",
        "time": "Mon Jun 07 11:59:27 2010 -0400"
      },
      "message": "swiotlb: Make swiotlb bookkeeping functions visible in the header file.\n\nWe put the functions dealing with the operations on\nthe SWIOTLB buffer in the header and make those functions non-static.\nAnd also make the functions exported via EXPORT_SYMBOL_GPL.\n\nSee \"swiotlb: swiotlb: add swiotlb_tbl_map_single library function\" for\nfull description of patchset.\n\n[v2: swiotlb_sync_single_range_for_* no more. Remove usage.]\n\nSigned-off-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\nAcked-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nTested-by: Albert Herranz \u003calbert_herranz@yahoo.es\u003e\n"
    },
    {
      "commit": "22d48269984fc93a71f65a54aa422aacf5fdb926",
      "tree": "0258830a93632bba7831d990cef04b01c7dd9e63",
      "parents": [
        "bfc5501f6d816082274e10cd45a2d5f32603b328"
      ],
      "author": {
        "name": "Konrad Rzeszutek Wilk",
        "email": "konrad.wilk@oracle.com",
        "time": "Mon May 10 15:01:15 2010 -0500"
      },
      "committer": {
        "name": "Konrad Rzeszutek Wilk",
        "email": "konrad.wilk@oracle.com",
        "time": "Mon Jun 07 11:59:26 2010 -0400"
      },
      "message": "swiotlb: search and replace \"int dir\" with \"enum dma_data_direction dir\"\n\n.. to catch anybody doing something funky.\n\nSee \"swiotlb: swiotlb: add swiotlb_tbl_map_single library function\" for\nfull description of patchset.\n\n[v2: swiotlb_sync_single_range_* no more - removed usage]\n[v3: enum dma_data_direction direction -\u003e enum dma_data_direction dir]\n\nSigned-off-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\nAcked-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nTested-by: Albert Herranz \u003calbert_herranz@yahoo.es\u003e\n"
    },
    {
      "commit": "bfc5501f6d816082274e10cd45a2d5f32603b328",
      "tree": "c7b0e2cdfd8b98562c4090bbc63f41aeaed098d3",
      "parents": [
        "abbceff7d7a884968e876e52578da1db4a4f6b54"
      ],
      "author": {
        "name": "Konrad Rzeszutek Wilk",
        "email": "konrad.wilk@oracle.com",
        "time": "Mon May 10 15:54:20 2010 -0400"
      },
      "committer": {
        "name": "Konrad Rzeszutek Wilk",
        "email": "konrad.wilk@oracle.com",
        "time": "Mon Jun 07 11:59:26 2010 -0400"
      },
      "message": "swiotlb: Make internal bookkeeping functions have \u0027swiotlb_tbl\u0027 prefix.\n\nThe functions that operate on io_tlb_list/io_tlb_start/io_tlb_orig_addr\nhave the prefix \u0027swiotlb_tbl\u0027 now.\n\nSee \"swiotlb: swiotlb: add swiotlb_tbl_map_single library function\" for\nfull description of patchset.\n\nSigned-off-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\nAcked-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nTested-by: Albert Herranz \u003calbert_herranz@yahoo.es\u003e\n"
    },
    {
      "commit": "abbceff7d7a884968e876e52578da1db4a4f6b54",
      "tree": "9a78609a90866a3a5313b35208e2e761ce4f3a77",
      "parents": [
        "eb605a5754d050a25a9f00d718fb173f24c486ef"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Mon May 10 15:15:12 2010 -0400"
      },
      "committer": {
        "name": "Konrad Rzeszutek Wilk",
        "email": "konrad.wilk@oracle.com",
        "time": "Mon Jun 07 11:59:25 2010 -0400"
      },
      "message": "swiotlb: add the swiotlb initialization function with iotlb memory\n\nThis enables the caller to initialize swiotlb with its own iotlb\nmemory.\n\nSee \"swiotlb: swiotlb: add swiotlb_tbl_map_single library function\" for\nfull description of patchset.\n\n[v2: changed ..with_tlb to ..with_tbl]\n\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nReviewed-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\nTested-by: Albert Herranz \u003calbert_herranz@yahoo.es\u003e\n"
    }
  ],
  "next": "eb605a5754d050a25a9f00d718fb173f24c486ef"
}
