)]}'
{
  "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": "91b745016c12d440386c40fb76ab69c8e08cbc06",
      "tree": "881a26a43b3ee924c0979a54b38c7a87d79d7f1a",
      "parents": [
        "04cc69768e7d1f40d98b79d23d203674553b4da2",
        "daaae6b010ac0f60c9c35e481589966f9f1fcc22"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 22 17:13:10 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 22 17:13:10 2010 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq:\n  workqueue: remove in_workqueue_context()\n  workqueue: Clarify that schedule_on_each_cpu is synchronous\n  memory_hotplug: drop spurious calls to flush_scheduled_work()\n  shpchp: update workqueue usage\n  pciehp: update workqueue usage\n  isdn/eicon: don\u0027t call flush_scheduled_work() from diva_os_remove_soft_isr()\n  workqueue: add and use WQ_MEM_RECLAIM flag\n  workqueue: fix HIGHPRI handling in keep_working()\n  workqueue: add queue_work and activate_work trace points\n  workqueue: prepare for more tracepoints\n  workqueue: implement flush[_delayed]_work_sync()\n  workqueue: factor out start_flush_work()\n  workqueue: cleanup flush/cancel functions\n  workqueue: implement alloc_ordered_workqueue()\n\nFix up trivial conflict in fs/gfs2/main.c as per Tejun\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": "c37927d4359e81b85de644f8fb08878717cf5f3f",
      "tree": "25dabf2d905e1410819d1bdaba0bf5f779100d3c",
      "parents": [
        "5704e44d283e907623e3775c1262f206a2c48cf3",
        "2a48fc0ab24241755dc93bfd4f01d68efab47f5a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 22 10:49:54 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 22 10:49:54 2010 -0700"
      },
      "message": "Merge branch \u0027trivial\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/bkl\n\n* \u0027trivial\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/bkl:\n  block: autoconvert trivial BKL users to private mutex\n  drivers: autoconvert trivial BKL users to private mutex\n  ipmi: autoconvert trivial BKL users to private mutex\n  mac: autoconvert trivial BKL users to private mutex\n  mtd: autoconvert trivial BKL users to private mutex\n  scsi: autoconvert trivial BKL users to private mutex\n\nFix up trivial conflicts (due to addition of private mutex right next to\ndeletion of a version string) in drivers/char/pcmcia/cm40[04]0_cs.c\n"
    },
    {
      "commit": "157b6ceb13e4b4148ee03dd517dbe88748943125",
      "tree": "f0f0f50bef7ce0be2e86465881c518fbb5ddb0de",
      "parents": [
        "4a60cfa9457749f7987fd4f3c956dbba5a281129",
        "6e9636693373d938aa3b13427be3d212f172ac06"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 21 14:23:48 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 21 14:23:48 2010 -0700"
      },
      "message": "Merge branch \u0027x86-iommu-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027x86-iommu-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  x86, iommu: Update header comments with appropriate naming\n  ia64, iommu: Add a dummy iommu_table.h file in IA64.\n  x86, iommu: Fix IOMMU_INIT alignment rules\n  x86, doc: Adding comments about .iommu_table and its neighbors.\n  x86, iommu: Utilize the IOMMU_INIT macros functionality.\n  x86, VT-d: Make Intel VT-d IOMMU use IOMMU_INIT_* macros.\n  x86, GART/AMD-VI: Make AMD GART and IOMMU use IOMMU_INIT_* macros.\n  x86, calgary: Make Calgary IOMMU use IOMMU_INIT_* macros.\n  x86, xen-swiotlb: Make Xen-SWIOTLB use IOMMU_INIT_* macros.\n  x86, swiotlb: Make SWIOTLB use IOMMU_INIT_* macros.\n  x86, swiotlb: Simplify SWIOTLB pci_swiotlb_detect routine.\n  x86, iommu: Add proper dependency sort routine (and sanity check).\n  x86, iommu: Make all IOMMU\u0027s detection routines return a value.\n  x86, iommu: Add IOMMU_INIT macros, .iommu_table section, and iommu_table_entry structure\n"
    },
    {
      "commit": "14d4962dc863ab42e898d66d4837aa6c3afedc3b",
      "tree": "780cb53645b781dfd33b6d0ad21e0596f2ad1a1a",
      "parents": [
        "9717967c4b704ce344c954afb5bb160aa9c01c34",
        "2b666ca4a68cbc22483b0f2e1ba3c0e59b01ae9e"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Oct 20 04:38:56 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Oct 20 04:38:59 2010 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into irq/core\n\nMerge reason: update to almost-final-.36\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "631dd1a885b6d7e9f6f51b4e5b311c2bb04c323c",
      "tree": "c431fa3479c1d35842fb5635ed7ccd487d063a62",
      "parents": [
        "d7eccbbae84b2ee7dbb756e60287c4b47071444e"
      ],
      "author": {
        "name": "Justin P. Mattock",
        "email": "justinmattock@gmail.com",
        "time": "Mon Oct 18 11:03:14 2010 +0200"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Mon Oct 18 11:03:14 2010 +0200"
      },
      "message": "Update broken web addresses in the kernel.\n\nThe patch below updates broken web addresses in the kernel\n\nSigned-off-by: Justin P. Mattock \u003cjustinmattock@gmail.com\u003e\nCc: Maciej W. Rozycki \u003cmacro@linux-mips.org\u003e\nCc: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nCc: Finn Thain \u003cfthain@telegraphics.com.au\u003e\nCc: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nCc: Matt Turner \u003cmattst88@gmail.com\u003e\nCc: Dimitry Torokhov \u003cdmitry.torokhov@gmail.com\u003e\nCc: Mike Frysinger \u003cvapier.adi@gmail.com\u003e\nAcked-by: Ben Pfaff \u003cblp@cs.stanford.edu\u003e\nAcked-by: Hans J. Koch \u003chjk@linutronix.de\u003e\nReviewed-by: Finn Thain \u003cfthain@telegraphics.com.au\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "e24dcbef93dbbf529fbedfc6ce8ab22d2cef35f0",
      "tree": "6ab3a2004ed8d21a48ce2eeda6c5b733b76599e4",
      "parents": [
        "a827ea307b147aeb050803433b3f6842582c6ced"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Mon Oct 18 08:33:02 2010 +0200"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Mon Oct 18 08:33:02 2010 +0200"
      },
      "message": "shpchp: update workqueue usage\n\n* Rename shpchp_wq to shpchp_ordered_wq and add non-ordered shpchp_wq\n  which is used instead of the system workqueue.  This is to remove\n  the use of flush_scheduled_work() which is deprecated and scheduled\n  for removal.\n\n* With cmwq in place, there\u0027s no point in creating workqueues lazily.\n  Create both shpchp_wq and shpchp_ordered_wq upfront.\n\n* Include workqueue.h from shpchp.h.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nAcked-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "a827ea307b147aeb050803433b3f6842582c6ced",
      "tree": "d87c0e0b2acd5a966d402597e9d94af5c527118e",
      "parents": [
        "7bf4a5ddc9fbff52855cad8d4d74bf5344fe8093"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Mon Oct 18 08:31:02 2010 +0200"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Mon Oct 18 08:31:02 2010 +0200"
      },
      "message": "pciehp: update workqueue usage\n\n* Rename pciehp_wq to pciehp_ordered_wq and add non-ordered pciehp_wq\n  which is used instead of the system workqueue.  This is to remove\n  the use of flush_scheduled_work() which is deprecated and scheduled\n  for removal.\n\n* With cmwq in place, there\u0027s no point in creating workqueues lazily.\n  Create both pciehp_wq and pciehp_ordered_wq upfront.\n\n* Include workqueue.h from pciehp.h.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nAcked-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\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": "1a0730d6649113c820217387a011a17dd4aff3ad",
      "tree": "3b5240cb87605a72179885d1503f8f7297e4e224",
      "parents": [
        "d585d060b42bd36f6f0b23ff327d3b91f80c7139"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Oct 11 11:55:37 2010 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Oct 12 16:53:42 2010 +0200"
      },
      "message": "x86: Speed up the irq_remapped check in hot pathes\n\nirq_2_iommu is in struct irq_cfg, so we can do the irq_remapped check\nbased on irq_cfg instead of going through a lookup function. That\u0027s\nespecially interesting in the eoi_ioapic_irq() hotpath.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nReviewed-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nAcked-by: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nCc: David Woodhouse \u003cdwmw2@infradead.org\u003e\nCc: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "d585d060b42bd36f6f0b23ff327d3b91f80c7139",
      "tree": "0fc66dae7c0c9dd8b9c4498c03a158fd3ce71e9b",
      "parents": [
        "349d67673c08cbc299a69086b0f5447cf1094e9b"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sun Oct 10 12:34:27 2010 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Oct 12 16:53:42 2010 +0200"
      },
      "message": "intr_remap: Simplify the code further\n\nHaving irq_2_iommu in struct irq_cfg allows further simplifications.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nReviewed-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nAcked-by: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nCc: David Woodhouse \u003cdwmw2@infradead.org\u003e\nCc: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "349d67673c08cbc299a69086b0f5447cf1094e9b",
      "tree": "6598e36307508626d8c8e6661787f6b9e842cdaf",
      "parents": [
        "423f085952fd7253407cb92984cc2d495a564481"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sun Oct 10 12:29:27 2010 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Oct 12 16:53:41 2010 +0200"
      },
      "message": "intr_remap: Use irq_2_iommu in struct irq_cfg\n\nSwitch the intr_remapping code to use the irq_2_iommu struct in\nirg_cfg.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nReviewed-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nAcked-by: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nCc: David Woodhouse \u003cdwmw2@infradead.org\u003e\nCc: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "423f085952fd7253407cb92984cc2d495a564481",
      "tree": "3cd1d0d986d2136a5a4083cdf72c424881ca754f",
      "parents": [
        "d0ad63927c6d4d511e172c78ba4a623539ef6901"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sun Oct 10 11:39:09 2010 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Oct 12 16:53:41 2010 +0200"
      },
      "message": "x86: Embedd irq_2_iommu into irq_cfg\n\nThat interrupt remapping code is x86 specific and tied to the io_apic\ncode. No need for separate allocator functions in the interrupt\nremapping code. This allows to simplify the code and irq_2_iommu is\nsmall (13 bytes on 64bit) so it\u0027s not a real problem even if interrupt\nremapping is runtime disabled. If it\u0027s compile time disabled the\nimpact is zero.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nReviewed-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nAcked-by: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nCc: David Woodhouse \u003cdwmw2@infradead.org\u003e\nCc: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "d0ad63927c6d4d511e172c78ba4a623539ef6901",
      "tree": "f82d2f5b27f5c260c5e2cb3b2cb7b31be5c0f7c4",
      "parents": [
        "a8ef54aeb4308d3730ff31807c495390b98de16a"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Oct 04 18:41:37 2010 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Oct 12 16:53:41 2010 +0200"
      },
      "message": "pci: intr_remap: Remove unused functions\n\nNo users.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nReviewed-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nAcked-by: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nCc: David Woodhouse \u003cdwmw2@infradead.org\u003e\nCc: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "a8ef54aeb4308d3730ff31807c495390b98de16a",
      "tree": "09e6af4cb4af33edf141585f539be6a6e787b9ba",
      "parents": [
        "0e1e367aab873becf3e21d9b0cf46d11154ebc3f"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Oct 04 16:51:27 2010 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Oct 12 16:53:41 2010 +0200"
      },
      "message": "pci: intr_remap: Use irq_data\n\nNo need to dereference irq_desc.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nReviewed-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nAcked-by: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nCc: David Woodhouse \u003cdwmw2@infradead.org\u003e\nCc: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "0e1e367aab873becf3e21d9b0cf46d11154ebc3f",
      "tree": "b7a5e766ed9325dca8c0e62708fb082c7d10107a",
      "parents": [
        "bc5fdf9f3aad37406b3c8d635a7940cd65de0c12"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Oct 04 16:20:16 2010 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Oct 12 16:53:41 2010 +0200"
      },
      "message": "pci: intr-remap: Free irte memory if SPARSE_IRQ\u003dy\n\nWith SPARSE_IRQ\u003dy the irte descriptors are dynamically allocated, but not\nfreed in free_irte().\n\nThat was ok as long as the sparse irq core was not freeing irq descriptors on\ndestroy_irq(). Now we leak the irte descriptor. Free it in free_irte().\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nReviewed-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nAcked-by: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nCc: David Woodhouse \u003cdwmw2@infradead.org\u003e\nCc: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "e9f7ac664bfc36685a8eb3315ec21c067d0cee36",
      "tree": "91d89ce151996d8a1e508a17f9b8a461ef545afd",
      "parents": [
        "5c2837fbaa609e615ef9a1c58a4cd26ce90be35b"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Sep 28 17:22:09 2010 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Oct 12 16:53:37 2010 +0200"
      },
      "message": "ht: Convert to new irq_chip functions\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nReviewed-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "5c2837fbaa609e615ef9a1c58a4cd26ce90be35b",
      "tree": "0284a243fce7607a8f01ed0189e2164efdaa5bc8",
      "parents": [
        "d0fbca8f9304d1760fdc906b35b06e89fbdbb51f"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Sep 28 17:15:11 2010 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Oct 12 16:53:37 2010 +0200"
      },
      "message": "dmar: Convert to new irq chip functions\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nReviewed-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nAcked-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "39431acb1a4c464e62471cb3058b8ffffb9244db",
      "tree": "ae655b4763f5a801b67b98d9131df534bcdd58d8",
      "parents": [
        "1c9db52534a2c0e9776788cd34ccc193289fc18c"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Sep 28 19:09:51 2010 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Oct 12 16:53:34 2010 +0200"
      },
      "message": "pci: Cleanup the irq_desc mess in msi\n\nHanding down irq_desc to msi just so that msi can access\nirq_desc.irq_data.msi_desc is a pretty stupid idea. The calling code\ncan hand down a pointer to msi_desc so msi code does not need to know\nabout the irq descriptor at all.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nReviewed-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nAcked-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "1c9db52534a2c0e9776788cd34ccc193289fc18c",
      "tree": "5cca6ab7d72bee784c425879a5f17b4c6fe1c5d8",
      "parents": [
        "7c5f13519a67aa7ba3a99155f128d4bdef87d087"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Sep 28 16:46:51 2010 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Oct 12 16:53:34 2010 +0200"
      },
      "message": "pci: Convert msi to new irq_chip functions\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nReviewed-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nAcked-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Tony Luck \u003ctony.luck@intel.com\u003e\nCc: Russell King \u003clinux@arm.linux.org.uk\u003e\n"
    },
    {
      "commit": "613655fa39ff6957754fa8ceb8559980920eb8ee",
      "tree": "ad19600cb81207b24188683d7fc4ae88013339d1",
      "parents": [
        "609146fdb319cebce93be550938ab852f7bade90"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Wed Jun 02 14:28:52 2010 +0200"
      },
      "committer": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Tue Oct 05 15:01:04 2010 +0200"
      },
      "message": "drivers: autoconvert trivial BKL users to private mutex\n\nAll these files use the big kernel lock in a trivial\nway to serialize their private file operations,\ntypically resulting from an earlier semi-automatic\npushdown from VFS.\n\nNone of these drivers appears to want to lock against\nother code, and they all use the BKL as the top-level\nlock in their file operations, meaning that there\nis no lock-order inversion problem.\n\nConsequently, we can remove the BKL completely,\nreplacing it with a per-file mutex in every case.\nUsing a scripted approach means we can avoid\ntypos.\n\nThese drivers do not seem to be under active\nmaintainance from my brief investigation. Apologies\nto those maintainers that I have missed.\n\nfile\u003d$1\nname\u003d$2\nif grep -q lock_kernel ${file} ; then\n    if grep -q \u0027include.*linux.mutex.h\u0027 ${file} ; then\n            sed -i \u0027/include.*\u003clinux\\/smp_lock.h\u003e/d\u0027 ${file}\n    else\n            sed -i \u0027s/include.*\u003clinux\\/smp_lock.h\u003e.*$/include \u003clinux\\/mutex.h\u003e/g\u0027 ${file}\n    fi\n    sed -i ${file} \\\n        -e \"/^#include.*linux.mutex.h/,$ {\n                1,/^\\(static\\|int\\|long\\)/ {\n                     /^\\(static\\|int\\|long\\)/istatic DEFINE_MUTEX(${name}_mutex);\n\n} }\"  \\\n    -e \"s/\\(un\\)*lock_kernel\\\u003e[ ]*()/mutex_\\1lock(\\\u0026${name}_mutex)/g\" \\\n    -e \u0027/[      ]*cycle_kernel_lock();/d\u0027\nelse\n    sed -i -e \u0027/include.*\\\u003csmp_lock.h\\\u003e/d\u0027 ${file}  \\\n                -e \u0027/cycle_kernel_lock()/d\u0027\nfi\n\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\n"
    },
    {
      "commit": "9587a678fa56ea6d7f39b048f24f5d03a89bf9b3",
      "tree": "5d56bd510b235188fc7243cce23b48211dd30777",
      "parents": [
        "e9a64ed4994db04c9963495b03d8a86538e3ad55",
        "4731fdcf6f7bdab3e369a3f844d4ea4d4017284d"
      ],
      "author": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Tue Sep 28 23:30:58 2010 -0400"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Tue Sep 28 23:30:58 2010 -0400"
      },
      "message": "Merge branch \u0027meego-7093\u0027 into idle-release\n"
    },
    {
      "commit": "0d70397bc72f2122f9702093cce3039ec3ae7575",
      "tree": "777ed3793d6fa999cbe700ae09181efec8d076a4",
      "parents": [
        "a2724f28d9f99b7b42e800b528902f0e3321873b",
        "0e52247a2ed1f211f0c4f682dc999610a368903f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 28 12:02:22 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 28 12:02:22 2010 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6:\n  PCI: fix pci_resource_alignment prototype\n"
    },
    {
      "commit": "bc5fbd9cc8b72ea591557c1277237a43c65ce775",
      "tree": "804e63e1ac08c4e3324cc1b456f71cf286db98e4",
      "parents": [
        "6a6aa2b7e47c725b5256ff0f7462fe1247cabf5a",
        "eecfd57f6429d9d8e10be186566ef99fced55163"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 27 12:25:10 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 27 12:25:10 2010 -0700"
      },
      "message": "Merge git://git.infradead.org/iommu-2.6\n\n* git://git.infradead.org/iommu-2.6:\n  intel-iommu: Use symbolic values instead of magic numbers in Lenovo w/a\n  intel-iommu: Abort IOMMU setup for igfx if BIOS gave no shadow GTT space\n"
    },
    {
      "commit": "4731fdcf6f7bdab3e369a3f844d4ea4d4017284d",
      "tree": "0073886d3be72f38143f9d1909cc4204dd64c03f",
      "parents": [
        "2422084a94fcd5038406261b331672a13c92c050"
      ],
      "author": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Sep 24 21:02:27 2010 -0400"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Sep 24 21:09:19 2010 -0400"
      },
      "message": "intel_idle: PCI quirk to prevent Lenovo Ideapad s10-3 boot hang\n\nWhen the Lenovo Ideapad S10-3 is booted with HT enabled,\nit hits a boot hang in the intel_idle driver.\n\nThis occurs when entering ATM-C4 for the first time,\nunless BM_STS is first cleared.\n\nacpi_idle doesn\u0027t see this because it first checks\nand clears BM_STS, but it would hit the same hang\nif that check were disabled.\n\nhttp://bugs.meego.com/show_bug.cgi?id\u003d7093\nhttps://bugs.launchpad.net/ubuntu/+source/linux/+bug/634702\n\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "df08cdc7ef606509debe7677c439be0ca48790e4",
      "tree": "f97031deaba02e5c464871568604e908df7fe209",
      "parents": [
        "e85bfd3aa7a34fa963bb268a676b41694e6dcf96"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Wed Sep 22 13:05:11 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 22 17:22:39 2010 -0700"
      },
      "message": "drivers/pci/intel-iommu.c: fix build with older gcc\u0027s\n\ndrivers/pci/intel-iommu.c: In function `__iommu_calculate_agaw\u0027:\ndrivers/pci/intel-iommu.c:437: sorry, unimplemented: inlining failed in call to \u0027width_to_agaw\u0027: function body not available\ndrivers/pci/intel-iommu.c:445: sorry, unimplemented: called from here\n\nMove the offending function (and its siblings) to top-of-file, remove the\nforward declaration.\n\nAddresses https://bugzilla.kernel.org/show_bug.cgi?id\u003d17441\n\nReported-by: Martin Mokrejs \u003cmmokrejs@ribosome.natur.cuni.cz\u003e\nCc: David Woodhouse \u003cdwmw2@infradead.org\u003e\nCc: Jesse Barnes \u003cjbarnes@virtuousgeek.org\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": "eecfd57f6429d9d8e10be186566ef99fced55163",
      "tree": "35551f0505dbd39820ffd618d225efa058882f3e",
      "parents": [
        "9eecabcb9a924f1e11ba670365fd4babe423045c"
      ],
      "author": {
        "name": "Adam Jackson",
        "email": "ajax@redhat.com",
        "time": "Wed Aug 25 21:17:34 2010 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Tue Sep 21 22:35:28 2010 +0100"
      },
      "message": "intel-iommu: Use symbolic values instead of magic numbers in Lenovo w/a\n\nCommit 9eecabcb9a924f1e11ba670365fd4babe423045c (\"intel-iommu: Abort \nIOMMU setup for igfx if BIOS gave no shadow GTT space\") uses a bunch of \nmagic numbers. Provide #defines for those to make it look slightly saner.\n\nSigned-off-by: Adam Jackson \u003cajax@redhat.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "9eecabcb9a924f1e11ba670365fd4babe423045c",
      "tree": "860699db6130f062fdbb94da94e352029c145e40",
      "parents": [
        "b30a3f6257ed2105259b404d419b4964e363928c"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Tue Sep 21 22:28:23 2010 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Tue Sep 21 22:28:23 2010 +0100"
      },
      "message": "intel-iommu: Abort IOMMU setup for igfx if BIOS gave no shadow GTT space\n\nYet another BIOS bug; Lenovo this time (X201). Red Hat bug #593516.\n\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "0e52247a2ed1f211f0c4f682dc999610a368903f",
      "tree": "32fcfe3f8590856c5a3d994604890412b164b3c6",
      "parents": [
        "d56557af19867edb8c0e96f8e26399698a08857f"
      ],
      "author": {
        "name": "Cam Macdonell",
        "email": "cam@cs.ualberta.ca",
        "time": "Tue Sep 07 17:25:20 2010 -0700"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Thu Sep 09 13:41:25 2010 -0700"
      },
      "message": "PCI: fix pci_resource_alignment prototype\n\nThis fixes the prototype for both pci_resource_alignment() and\npci_sriov_resource_alignment().\n\nPatch started as debugging effort from Cam Macdonell.\n\nCc: Cam Macdonell \u003ccam@cs.ualberta.ca\u003e\nCc: Avi Kivity \u003cavi@redhat.com\u003e\n[chrisw: add iov bits]\nSigned-off-by: Chris Wright \u003cchrisw@sous-sol.org\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "d56557af19867edb8c0e96f8e26399698a08857f",
      "tree": "2d98f87962a5a08839371ed90b9eaa7f256bea36",
      "parents": [
        "fa2925cf90e612cb9c10c45d0cb8a7c7332e56a7",
        "17134d96735115644cc2f0e2b1bab51ca6e3ab95"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 07 16:00:17 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 07 16:00:17 2010 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6:\n  PCI: bus speed strings should be const\n  PCI hotplug: Fix build with CONFIG_ACPI unset\n  PCI: PCIe: Remove the port driver module exit routine\n  PCI: PCIe: Move PCIe PME code to the pcie directory\n  PCI: PCIe: Disable PCIe port services during port initialization\n  PCI: PCIe: Ask BIOS for control of all native services at once\n  ACPI/PCI: Negotiate _OSC control bits before requesting them\n  ACPI/PCI: Do not preserve _OSC control bits returned by a query\n  ACPI/PCI: Make acpi_pci_query_osc() return control bits\n  ACPI/PCI: Reorder checks in acpi_pci_osc_control_set()\n  PCI: PCIe: Introduce commad line switch for disabling port services\n  PCI: PCIe AER: Introduce pci_aer_available()\n  x86/PCI: only define pci_domain_nr if PCI and PCI_DOMAINS are set\n  PCI: provide stub pci_domain_nr function for !CONFIG_PCI configs\n"
    },
    {
      "commit": "17134d96735115644cc2f0e2b1bab51ca6e3ab95",
      "tree": "887e91efc6f9618c8fad82a5ecb9d0820ad233dc",
      "parents": [
        "6e63e80d88521a176989ed14b420f42dc418e46a"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Tue Aug 31 15:25:55 2010 -0700"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Tue Aug 31 15:28:00 2010 -0700"
      },
      "message": "PCI: bus speed strings should be const\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "4db77ff3237a88ea74f691dd776e92b2f86a8f3f",
      "tree": "eeafdd3213e4a54674c241ea57bb0a4431755ea5",
      "parents": [
        "22e6daf41ba28ddc06295e42859b266f737b3e99"
      ],
      "author": {
        "name": "Konrad Rzeszutek Wilk",
        "email": "konrad.wilk@oracle.com",
        "time": "Thu Aug 26 13:58:04 2010 -0400"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Thu Aug 26 15:14:40 2010 -0700"
      },
      "message": "x86, VT-d: Make Intel VT-d IOMMU use IOMMU_INIT_* macros.\n\nWe utilize the IOMMU_INIT macros to create this dependency:\n\n               [null]\n                 |\n       [pci_xen_swiotlb_detect]\n                 |\n       [pci_swiotlb_detect_override]\n                 |\n       [pci_swiotlb_detect_4gb]\n                 |\n         +-------+--------+---------------------+\n        /                  \\                     \\\n[detect_calgary]    [gart_iommu_hole_init]   [detect_intel_iommu]\n                            |\n                    [amd_iommu_detect]\n\nSigned-off-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\nLKML-Reference: \u003c1282845485-8991-10-git-send-email-konrad.wilk@oracle.com\u003e\nCC: Fujita Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nCC: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\nCC: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\nCC: Len Brown \u003clen.brown@intel.com\u003e\nCC: Chris Wright \u003cchrisw@sous-sol.org\u003e\nCC: Yinghai Lu \u003cyinghai@kernel.org\u003e\nSigned-off-by: H. Peter Anvin \u003chpa@linux.intel.com\u003e\n"
    },
    {
      "commit": "480125ba49ba62be93beea37770f266846e077ab",
      "tree": "6e4437d77e352f5b03d1e00171bd77086378b01a",
      "parents": [
        "0444ad93ea2449963132d68753020a6a24d69895"
      ],
      "author": {
        "name": "Konrad Rzeszutek Wilk",
        "email": "konrad.wilk@oracle.com",
        "time": "Thu Aug 26 13:57:57 2010 -0400"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Thu Aug 26 15:13:13 2010 -0700"
      },
      "message": "x86, iommu: Make all IOMMU\u0027s detection routines return a value.\n\nWe return 1 if the IOMMU has been detected. Zero or an error number\nif we failed to find it. This is in preperation of using the IOMMU_INIT\nso that we can detect whether an IOMMU is present. I have not\ntested this for regression on Calgary, nor on AMD Vi chipsets as\nI don\u0027t have that hardware.\n\nCC: Muli Ben-Yehuda \u003cmuli@il.ibm.com\u003e\nCC: \"Jon D. Mason\" \u003cjdmason@kudzu.us\u003e\nCC: \"Darrick J. Wong\" \u003cdjwong@us.ibm.com\u003e\nCC: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\nCC: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\nCC: Chris Wright \u003cchrisw@sous-sol.org\u003e\nCC: Yinghai Lu \u003cyinghai@kernel.org\u003e\nCC: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\nCC: H. Peter Anvin \u003chpa@zytor.com\u003e\nCC: Fujita Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nSigned-off-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\nLKML-Reference: \u003c1282845485-8991-3-git-send-email-konrad.wilk@oracle.com\u003e\nSigned-off-by: H. Peter Anvin \u003chpa@linux.intel.com\u003e\n"
    },
    {
      "commit": "6e63e80d88521a176989ed14b420f42dc418e46a",
      "tree": "09f41fcc62e314806deaf7761cfad24e3667959e",
      "parents": [
        "a9d2a6df11f5b9dc19ad4147374e8b67c4438158"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Aug 25 21:33:29 2010 +0200"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Wed Aug 25 12:54:03 2010 -0700"
      },
      "message": "PCI hotplug: Fix build with CONFIG_ACPI unset\n\nOne of the recent changes caused complilation of\ndrivers/pci/hotplug/pciehp_core.c to fail.  Fix this issue.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "a9d2a6df11f5b9dc19ad4147374e8b67c4438158",
      "tree": "44595bbe685feb81e3730895e1edfbc8e3a9572a",
      "parents": [
        "271fb719cc472af3b1e96d8c527bb0da7060a172"
      ],
      "author": {
        "name": "Kenji Kaneshige",
        "email": "kaneshige.kenji@jp.fujitsu.com",
        "time": "Sat Aug 21 01:59:10 2010 +0200"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Tue Aug 24 13:47:49 2010 -0700"
      },
      "message": "PCI: PCIe: Remove the port driver module exit routine\n\nThe PCIe port driver\u0027s module exit routine is never used, so drop it.\n\nSigned-off-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nReviewed-by: Hidetoshi Seto \u003cseto.hidetoshi@jp.fujitsu.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "271fb719cc472af3b1e96d8c527bb0da7060a172",
      "tree": "7ca665285206b6868040f41bba7693d2de157c0a",
      "parents": [
        "2bd50dd800b52245294cfceb56be62020cdc7515"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sat Aug 21 01:58:22 2010 +0200"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Tue Aug 24 13:47:48 2010 -0700"
      },
      "message": "PCI: PCIe: Move PCIe PME code to the pcie directory\n\nThe PCIe PME code only consists of one file, so it doesn\u0027t need to\noccupy its own directory.  Move it to drivers/pci/pcie/pme.c and\nremove the contents of drivers/pci/pcie/pme .\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "2bd50dd800b52245294cfceb56be62020cdc7515",
      "tree": "ffefb8e50f9e454f332f318c415085ca2911991b",
      "parents": [
        "28eb5f274a305bf3a13b2c80c4804d4515d05c64"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sat Aug 21 01:57:39 2010 +0200"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Tue Aug 24 13:47:47 2010 -0700"
      },
      "message": "PCI: PCIe: Disable PCIe port services during port initialization\n\nIn principle PCIe port services may be enabled by the BIOS, so it\u0027s\nbetter to disable them during port initialization to avoid spurious\nevents from being generated.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nReviewed-by: Hidetoshi Seto \u003cseto.hidetoshi@jp.fujitsu.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "28eb5f274a305bf3a13b2c80c4804d4515d05c64",
      "tree": "c878c8a90a8f8e59b90460eb2f47bbbddfbd5483",
      "parents": [
        "75fb60f26befb59dbfa05cb122972642b7bdd219"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sat Aug 21 22:02:38 2010 +0200"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Tue Aug 24 13:47:33 2010 -0700"
      },
      "message": "PCI: PCIe: Ask BIOS for control of all native services at once\n\nAfter commit 852972acff8f10f3a15679be2059bb94916cba5d (ACPI: Disable\nASPM if the platform won\u0027t provide _OSC control for PCIe) control of\nthe PCIe Capability Structure is unconditionally requested by\nacpi_pci_root_add(), which in principle may cause problems to\nhappen in two ways.  First, the BIOS may refuse to give control of\nthe PCIe Capability Structure if it is not asked for any of the\n_OSC features depending on it at the same time.  Second, the BIOS may\nassume that control of the _OSC features depending on the PCIe\nCapability Structure will be requested in the future and may behave\nincorrectly if that doesn\u0027t happen.  For this reason, control of\nthe PCIe Capability Structure should always be requested along with\ncontrol of any other _OSC features that may depend on it (ie. PCIe\nnative PME, PCIe native hot-plug, PCIe AER).\n\nRework the PCIe port driver so that (1) it checks which native PCIe\nport services can be enabled, according to the BIOS, and (2) it\nrequests control of all these services simultaneously.  In\nparticular, this causes pcie_portdrv_probe() to fail if the BIOS\nrefuses to grant control of the PCIe Capability Structure, which\nmeans that no native PCIe port services can be enabled for the PCIe\nRoot Complex the given port belongs to.  If that happens, ASPM is\ndisabled to avoid problems with mishandling it by the part of the\nPCIe hierarchy for which control of the PCIe Capability Structure\nhas not been received.\n\nMake it possible to override this behavior using \u0027pcie_ports\u003dnative\u0027\n(use the PCIe native services regardless of the BIOS response to the\ncontrol request), or \u0027pcie_ports\u003dcompat\u0027 (do not use the PCIe native\nservices at all).\n\nAccordingly, rework the existing PCIe port service drivers so that\nthey don\u0027t request control of the services directly.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "75fb60f26befb59dbfa05cb122972642b7bdd219",
      "tree": "be015dd00e7748e45f3691f04a16c204546b3026",
      "parents": [
        "2b8fd9186d9275b07aef43e5bb4e98cd571f9a7d"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Aug 23 23:53:11 2010 +0200"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Tue Aug 24 13:44:40 2010 -0700"
      },
      "message": "ACPI/PCI: Negotiate _OSC control bits before requesting them \n\nIt is possible that the BIOS will not grant control of all _OSC\nfeatures requested via acpi_pci_osc_control_set(), so it is\nrecommended to negotiate the final set of _OSC features with the\nquery flag set before calling _OSC to request control of these\nfeatures.\n\nTo implement it, rework acpi_pci_osc_control_set() so that the caller\ncan specify the mask of _OSC control bits to negotiate and the mask\nof _OSC control bits that are absolutely necessary to it.  Then,\nacpi_pci_osc_control_set() will run _OSC queries in a loop until\nthe mask of _OSC control bits returned by the BIOS is equal to the\nmask passed to it.  Also, before running the _OSC request\nacpi_pci_osc_control_set() will check if the caller\u0027s required\ncontrol bits are present in the final mask.\n\nUsing this mechanism we will be able to avoid situations in which the\nBIOS doesn\u0027t grant control of certain _OSC features, because they\ndepend on some other _OSC features that have not been requested.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "79dd9182db2072d63ccf160bb9a3463b1c952723",
      "tree": "89069b3803a4e07924c6fd4414bbd2a771a432e9",
      "parents": [
        "f1a7bfaf6bb9cb195577e674c0ab2fd0a55d9014"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sat Aug 21 01:51:44 2010 +0200"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Tue Aug 24 13:43:15 2010 -0700"
      },
      "message": "PCI: PCIe: Introduce commad line switch for disabling port services\n\nIntroduce kernel command line switch pcie_ports\u003d allowing one to\ndisable all of the native PCIe port services, so that PCIe ports\nare treated like PCI-to-PCI bridges.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "f1a7bfaf6bb9cb195577e674c0ab2fd0a55d9014",
      "tree": "8150335e1d70d026704f39c28921615d5af9701e",
      "parents": [
        "23b90cfd7bcf8ae1c0711df1cae7dfec3c01aec8"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sat Aug 21 01:50:52 2010 +0200"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Tue Aug 24 13:43:08 2010 -0700"
      },
      "message": "PCI: PCIe AER: Introduce pci_aer_available()\n\nIntroduce a function allowing the caller to check whether to try to\nenable PCIe AER.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "e2e96c663639a3361bb1a84e666887d308c6c87e",
      "tree": "7c28b1e5baaff4741d974193ba30f1c53992596f",
      "parents": [
        "7355a5a654ccbbfd2fd11bb1e2389910f786ea92",
        "1a8bd481bfba30515b54368d90a915db3faf302f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Aug 15 17:34:20 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Aug 15 17:34:20 2010 -0700"
      },
      "message": "Merge git://git.infradead.org/iommu-2.6\n\n* git://git.infradead.org/iommu-2.6:\n  intel-iommu: Fix 32-bit build warning with __cmpxchg()\n  intr-remap: allow disabling source id checking\n"
    },
    {
      "commit": "dcded10f6dce10411b16134ce9cc87bfdf75c13f",
      "tree": "da6d0face147072c9eadc8a01af4e49958769138",
      "parents": [
        "9e0ba741aabdf129d561e62d207c75146adef5e8",
        "b0ebeb9c09cb5b84bb2f33927c84c7648845fcec"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 21:00:07 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 21:00:07 2010 -0700"
      },
      "message": "Merge branch \u0027next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/djbw/async_tx\n\n* \u0027next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/djbw/async_tx: (30 commits)\n  DMAENGINE: at_hdmac: locking fixlet\n  DMAENGINE: pch_dma: kill another usage of __raw_{read|write}l\n  dma: dmatest: fix potential sign bug\n  ioat2: catch and recover from broken vtd configurations v6\n  DMAENGINE: add runtime slave control to COH 901 318 v3\n  DMAENGINE: add runtime slave config to DMA40 v3\n  DMAENGINE: generic slave channel control v3\n  dmaengine: Driver for Topcliff PCH DMA controller\n  intel_mid: Add Mrst \u0026 Mfld DMA Drivers\n  drivers/dma: Eliminate a NULL pointer dereference\n  dma/timb_dma: compile warning on 32 bit\n  DMAENGINE: ste_dma40: support older silicon\n  DMAENGINE: ste_dma40: support disabling physical channels\n  DMAENGINE: ste_dma40: no disabled phy channels on ux500\n  DMAENGINE: ste_dma40: fix suspend bug\n  DMAENGINE: ste_dma40: add DB8500 memcpy channels\n  DMAENGINE: ste_dma40: no flow control on memcpy\n  DMAENGINE: ste_dma40: arch updates for LCLA and LCPA\n  DMAENGINE: ste_dma40: allocate LCLA dynamically\n  DMAENGINE: ste_dma40: no premature stop\n  ...\n\nFix up trivial conflicts in arch/arm/mach-ux500/devices-db8500.c\n"
    },
    {
      "commit": "1a8bd481bfba30515b54368d90a915db3faf302f",
      "tree": "e90098ad46912fbe78fbbd09a2715cc3d6daf36a",
      "parents": [
        "d1423d5679875ebbbc2fc63b33d465baceee0430"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Tue Aug 10 01:38:53 2010 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Tue Aug 10 01:38:53 2010 +0100"
      },
      "message": "intel-iommu: Fix 32-bit build warning with __cmpxchg()\n\ndrivers/pci/intel-iommu.c: In function \u0027dma_pte_addr\u0027:\ndrivers/pci/intel-iommu.c:239: warning: passing argument 1 of \u0027__cmpxchg64\u0027 from incompatible pointer type\n\nIt seems that __cmpxchg64() now cares about the type of its pointer argument,\nso give it a (uint64_t *) instead of a pointer to a structure which contains\nonly that.\n\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "d1423d5679875ebbbc2fc63b33d465baceee0430",
      "tree": "45bf7904476291c15775345969f9cf99f026071f",
      "parents": [
        "9fe6206f400646a2322096b56c59891d530e8d51"
      ],
      "author": {
        "name": "Chris Wright",
        "email": "chrisw@redhat.com",
        "time": "Tue Jul 20 11:06:49 2010 -0700"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Tue Aug 10 01:37:09 2010 +0100"
      },
      "message": "intr-remap: allow disabling source id checking\n\nAllow disabling the source id checking while programming the interrupt\nremap table entry. Useful for debugging or working around the broken\nsource id checks on some platforms.\n\nSigned-off-by: Chris Wright \u003cchrisw@redhat.com\u003e\nAcked-by: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nAcked-by: Weidong Han \u003cweidong.han@intel.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "9e50ab91d025afc17ca14a1764be2e1d0c24245d",
      "tree": "2647ef3fed12810ef88eb77e05bb7c3b2ea49d56",
      "parents": [
        "3cc08fc35db75b059118626c30b60b0f56583802",
        "a0d468718b9049f7396d101075a129a2d683ad66"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Aug 07 17:08:30 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Aug 07 17:08:30 2010 -0700"
      },
      "message": "Merge branch \u0027acpica\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6\n\n* \u0027acpica\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6: (27 commits)\n  ACPI / ACPICA: Simplify acpi_ev_initialize_gpe_block()\n  ACPI / ACPICA: Fail acpi_gpe_wakeup() if ACPI_GPE_CAN_WAKE is unset\n  ACPI / ACPICA: Do not execute _PRW methods during initialization\n  ACPI: Fix bogus GPE test in acpi_bus_set_run_wake_flags()\n  ACPICA: Update version to 20100702\n  ACPICA: Fix for Alias references within Package objects\n  ACPICA: Fix lint warning for 64-bit constant\n  ACPICA: Remove obsolete GPE function\n  ACPICA: Update debug output components\n  ACPICA: Add support for WDDT - Watchdog Descriptor Table\n  ACPICA: Drop acpi_set_gpe\n  ACPICA: Use low-level GPE enable during GPE block initialization\n  ACPI / EC: Do not use acpi_set_gpe\n  ACPI / EC: Drop suspend and resume routines\n  ACPICA: Remove wakeup GPE reference counting which is not used\n  ACPICA: Introduce acpi_gpe_wakeup()\n  ACPICA: Rename acpi_hw_gpe_register_bit\n  ACPICA: Update version to 20100528\n  ACPICA: Add signatures for undefined tables: ATKG, GSCI, IEIT\n  ACPICA: Optimization: Reduce the number of namespace walks\n  ...\n"
    },
    {
      "commit": "1cfd2bda8c486ae0e7a8005354758ebb68172bca",
      "tree": "76ce15f377d8d6eb3ae4aa8b8b0b415457e38d36",
      "parents": [
        "b57bdda58cda0aaf6def042d101dd85977a286ed",
        "763e9db9994e27a7d2cb3701c8a097a867d0e0b4"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 06 11:44:36 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 06 11:44:36 2010 -0700"
      },
      "message": "Merge branch \u0027linux-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6\n\n* \u0027linux-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6: (30 commits)\n  PCI: update for owner removal from struct device_attribute\n  PCI: Fix warnings when CONFIG_DMI unset\n  PCI: Do not run NVidia quirks related to MSI with MSI disabled\n  x86/PCI: use for_each_pci_dev()\n  PCI: use for_each_pci_dev()\n  PCI: MSI: Restore read_msi_msg_desc(); add get_cached_msi_msg_desc()\n  PCI: export SMBIOS provided firmware instance and label to sysfs\n  PCI: Allow read/write access to sysfs I/O port resources\n  x86/PCI: use host bridge _CRS info on ASRock ALiveSATA2-GLAN\n  PCI: remove unused HAVE_ARCH_PCI_SET_DMA_MAX_SEGMENT_{SIZE|BOUNDARY}\n  PCI: disable mmio during bar sizing\n  PCI: MSI: Remove unsafe and unnecessary hardware access\n  PCI: Default PCIe ASPM control to on and require !EMBEDDED to disable\n  PCI: kernel oops on access to pci proc file while hot-removal\n  PCI: pci-sysfs: remove casts from void*\n  ACPI: Disable ASPM if the platform won\u0027t provide _OSC control for PCIe\n  PCI hotplug: make sure child bridges are enabled at hotplug time\n  PCI hotplug: shpchp: Removed check for hotplug of display devices\n  PCI hotplug: pciehp: Fixed return value sign for pciehp_unconfigure_device\n  PCI: Don\u0027t enable aspm before drivers have had a chance to veto it\n  ...\n"
    },
    {
      "commit": "c513b67e68787eceafeede32bcd0edbee45c0006",
      "tree": "91affc9a29a20b339b3c88ae3ee1e99eba49dc2b",
      "parents": [
        "90c8327cad5d7c2d5d7d3e761d17af1925474107"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 06 11:02:31 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 06 11:02:31 2010 -0700"
      },
      "message": "pci: fix type warnings in intr_remapping.c\n\nCommit 69309a059075 (\"x86, asm: Clean up and simplify set_64bit()\")\nsanitized the x86-64 types to set_64bit(), and incidentally resulted in\nwarnings like\n\n drivers/pci/intr_remapping.c: In function \u0027modify_irte\u0027:\n drivers/pci/intr_remapping.c:314: warning: passing argument 1 of \u0027set_64bit\u0027 from incompatible pointer type\n arch/x86/include/asm/cmpxchg_64.h:6: note:expected \u0027volatile u64 *\u0027 but argument is of type \u0027long unsigned int *\u0027\n\nIt turns out that the change to set_64bit() really does clean up things,\nand the PCI intr_remapping.c file did a rather ugly cast in order to\navoid warnings with the previous set_64bit() type model.\n\nRemoving the ugly cast fixes the warning, and makes everybody happy and\nexpects a set_64bit() to take the logical \"u64 *\" argument.\n\nPointed-out-by: Peter Anvin \u003chpa@zytor.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cc77b4db0017dab014ad7ea3d297e10f5b5bf028",
      "tree": "31d022e12b81d4870b00a766ba8ae085bb34f382",
      "parents": [
        "132a4edb2b69924742f62dc06ace42ad2a9f57f3",
        "7a42c4ff02d1bd764804a4ba36c2b839070c5e7d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 06 09:22:39 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 06 09:22:39 2010 -0700"
      },
      "message": "Merge branch \u0027core-iommu-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core-iommu-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  x86/amd-iommu: Export cache-coherency capability\n  iommu-api: Extension to check for interrupt remapping\n  x86/amd-iommu: Use for_each_pci_dev()\n"
    },
    {
      "commit": "132a4edb2b69924742f62dc06ace42ad2a9f57f3",
      "tree": "53b73abd91273d2cad021fb9b5218f3d18d90c86",
      "parents": [
        "e6da54d84f9286edbe4c92ff5023ff481ce2a5c9",
        "752e386c247664152f2cce37915d1f50631d7f42"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 06 09:20:19 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 06 09:20:19 2010 -0700"
      },
      "message": "Merge branch \u0027upstream-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev\n\n* \u0027upstream-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev:\n  sata_fsl,mv,nv: prepare for NCQ command completion update\n  ata: Convert pci_table entries to PCI_VDEVICE (if PCI_ANY_ID is used)\n  libata: more PCI IDs for jmicron controllers\n  ata_piix: fix locking around SIDPR access\n  [libata] update blacklist for new hyphenated pattern ranges (v2)\n  libata: allow hyphenated pattern ranges\n  ata_generic: drop hard coded DMA force logic for CENATEK\n  [libata] ahci: Fix warning: comparison between \u0027enum \u003canonymous\u003e\u0027 and \u0027enum \u003canonymous\u003e\u0027\n  [libata] add ATA_CMD_DSM to ata_get_cmd_descript\n  [libata] Add Samsung PATA controller driver, pata_samsung_cf\n  [libata] Add 460EX on-chip SATA driver, sata_dwc_460ex\n  libata: reduce blacklist size even more (v2)\n  libata: reduce blacklist size (v2)\n  libata: glob_match for ata_device_blacklist (v2)\n  ahci_platform: Remove unneeded ahci_driver.probe assignment\n  ahci_platform: Provide for vendor specific init\n"
    },
    {
      "commit": "763e9db9994e27a7d2cb3701c8a097a867d0e0b4",
      "tree": "b5189e96d819445cccb05f7d234e99897bce94c9",
      "parents": [
        "b879743f26cb029e41ffe865fb939cfc6fa9be88"
      ],
      "author": {
        "name": "Stephen Rothwell",
        "email": "sfr@canb.auug.org.au",
        "time": "Wed Aug 04 14:25:31 2010 +1000"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Wed Aug 04 14:23:55 2010 -0700"
      },
      "message": "PCI: update for owner removal from struct device_attribute\n\nFixes the build.\n\nAcked-by: Guenter Roeck \u003cguenter.roeck@ericsson.com\u003e\nSigned-off-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "556ab45f9a775bfa4762bacc0a4afb5b44b067bc",
      "tree": "6caf3f7c72617d50d78c4197b872fd0a22b18c99",
      "parents": [
        "128f904ac87cb6e63921e80f378fdf9ba532c0f6"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Fri Jul 23 15:47:56 2010 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Wed Aug 04 14:18:17 2010 -0700"
      },
      "message": "ioat2: catch and recover from broken vtd configurations v6\n\nOn some platforms (MacPro3,1) the BIOS assigns the ioatdma device to the\nincorrect iommu causing faults when the driver initializes.  Add a quirk\nto catch this misconfiguration and try falling back to untranslated\noperation (which works in the MacPro3,1 case).\n\nAssuming there are other platforms with misconfigured iommus teach the\nioatdma driver to treat initialization failures as non-fatal (just fail\nthe driver load and emit a warning instead of triggering a BUG_ON).\n\nThis can be classified as a boot regression since 2.6.32 on affected\nplatforms since the ioatdma module did not autoload prior to that\nkernel.\n\nCc: \u003cstable@kernel.org\u003e\nAcked-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\nReported-by: Chris Li \u003clkml@chrisli.org\u003e\nTested-by: Chris Li \u003clkml@chrisli.org\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "b879743f26cb029e41ffe865fb939cfc6fa9be88",
      "tree": "3527b73362148c851be15479a9249f3ed7059527",
      "parents": [
        "3d2a531804d16cd8df6dbbb0429c6f143e756049"
      ],
      "author": {
        "name": "Narendra K",
        "email": "Narendra_K@dell.com",
        "time": "Mon Aug 02 07:44:29 2010 -0500"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Mon Aug 02 09:11:10 2010 -0700"
      },
      "message": "PCI: Fix warnings when CONFIG_DMI unset\n\nThis patch fixes the below warnings introduced by the commit\n911e1c9b05a8e3559a7aa89083930700a0b9e7ee (\"PCI:\nexport SMBIOS provided firmware instance and label to sysfs\").\n\ndrivers/pci/pci.h: In function ‘pci_create_firmware_label_files’:\ndrivers/pci/pci.h:16: warning: ‘return’ with a value, in function returning void\ndrivers/pci/pci.h: In function ‘pci_remove_firmware_label_files’:\ndrivers/pci/pci.h:18: warning: ‘return’ with a value, in function returning void\n\nThe warnings are seen because of the below code, doing a retun 0\nfrom the functions \u0027pci_create_firmware_label_files\u0027 and\n\u0027pci_remove_firmware_label_files\u0027 defined as void.\n\n+#ifndef CONFIG_DMI\n+static inline void pci_create_firmware_label_files(struct pci_dev *pdev)\n+{ return 0; }\n+static inline void pci_remove_firmware_label_files(struct pci_dev *pdev)\n+{ return 0; }\n\nSigned-off-by: Narendra K \u003cnarendra_k@dell.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "5b6ae5ba0c45c4d04721537308728688414c9e6b",
      "tree": "55a1e83bebb236fd5cb85e22aaa1eb9862015808",
      "parents": [
        "213373cf974fe69e78ec894b07f45ae2f5a3a078"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Fri Jul 30 11:42:42 2010 +0200"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@redhat.com",
        "time": "Sun Aug 01 19:46:44 2010 -0400"
      },
      "message": "libata: more PCI IDs for jmicron controllers\n\nAdd support for JMB364 and 369.\n\nPatch-originally-from: Aries Lee \u003carieslee@jmicron.com\u003e\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n"
    },
    {
      "commit": "3d2a531804d16cd8df6dbbb0429c6f143e756049",
      "tree": "1fec9226bf58fb84bc50b5e90fb7df30d5b258df",
      "parents": [
        "1f7979ac53224b0208e7d3eaeb5fd72ab9687389"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Jul 23 22:19:55 2010 +0200"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Jul 30 09:47:58 2010 -0700"
      },
      "message": "PCI: Do not run NVidia quirks related to MSI with MSI disabled\n\nThere is no reason to run NVidia-specific quirks related to HT MSI\nmappings with MSI disabled via pci\u003dnomsi, so make\n__nv_msi_ht_cap_quirk() return immediately in that case.\n\nThis allows at least one machine to boot 100% of the time with\npci\u003dnomsi (it still doesn\u0027t boot reliably without that).\n\nAddresses https://bugzilla.kernel.org/show_bug.cgi?id\u003d16443 .\n\nCc: stable@kernel.org\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "4e344b1cc53989e8ecc1140e9346f657d7c8aa9e",
      "tree": "8b6f8d4b7445e7b8e0b6d1b6f68bf165f5735f16",
      "parents": [
        "30da55242818a8ca08583188ebcbaccd283ad4d9"
      ],
      "author": {
        "name": "Kulikov Vasiliy",
        "email": "segooon@gmail.com",
        "time": "Sat Jul 03 20:04:39 2010 +0400"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Jul 30 09:47:22 2010 -0700"
      },
      "message": "PCI: use for_each_pci_dev()\n\nUse for_each_pci_dev() to simplify the code.\n\nSigned-off-by: Kulikov Vasiliy \u003csegooon@gmail.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "30da55242818a8ca08583188ebcbaccd283ad4d9",
      "tree": "eaa39565cf37a2fbc739e1af02b569107aeee447",
      "parents": [
        "911e1c9b05a8e3559a7aa89083930700a0b9e7ee"
      ],
      "author": {
        "name": "Ben Hutchings",
        "email": "bhutchings@solarflare.com",
        "time": "Fri Jul 23 14:56:28 2010 +0100"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Jul 30 09:41:39 2010 -0700"
      },
      "message": "PCI: MSI: Restore read_msi_msg_desc(); add get_cached_msi_msg_desc()\n\ncommit 2ca1af9aa3285c6a5f103ed31ad09f7399fc65d7 \"PCI: MSI: Remove\nunsafe and unnecessary hardware access\" changed read_msi_msg_desc() to\nreturn the last MSI message written instead of reading it from the\ndevice, since it may be called while the device is in a reduced\npower state.\n\nHowever, the pSeries platform code really does need to read messages\nfrom the device, since they are initially written by firmware.\nTherefore:\n- Restore the previous behaviour of read_msi_msg_desc()\n- Add new functions get_cached_msi_msg{,_desc}() which return the\n  last MSI message written\n- Use the new functions where appropriate\n\nAcked-by: Michael Ellerman \u003cmichael@ellerman.id.au\u003e\nSigned-off-by: Ben Hutchings \u003cbhutchings@solarflare.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "911e1c9b05a8e3559a7aa89083930700a0b9e7ee",
      "tree": "f0b95455c3808c7732ae819bfbb33332830bae00",
      "parents": [
        "8633328be242677fdedc42052838dd0608e7f342"
      ],
      "author": {
        "name": "Narendra K",
        "email": "Narendra_K@dell.com",
        "time": "Mon Jul 26 05:56:50 2010 -0500"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Jul 30 09:36:01 2010 -0700"
      },
      "message": "PCI: export SMBIOS provided firmware instance and label to sysfs\n\nThis patch exports SMBIOS provided firmware instance and label of\nonboard PCI devices to sysfs.  New files are:\n  /sys/bus/pci/devices/.../label which contains the firmware name for\nthe device in question, and\n  /sys/bus/pci/devices/.../index which contains the firmware device type\ninstance for the given device.\n\nSigned-off-by: Jordan Hargrave \u003cjordan_hargrave@dell.com\u003e\nSigned-off-by: Narendra K \u003cnarendra_k@dell.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "8633328be242677fdedc42052838dd0608e7f342",
      "tree": "20b16af605298a1d05973d7ec2d0a479412ed3e6",
      "parents": [
        "2491762cfb475dbdfa3db11ebea6de49f58b7fac"
      ],
      "author": {
        "name": "Alex Williamson",
        "email": "alex.williamson@redhat.com",
        "time": "Mon Jul 19 09:45:34 2010 -0600"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Jul 30 09:32:08 2010 -0700"
      },
      "message": "PCI: Allow read/write access to sysfs I/O port resources\n\nPCI sysfs resource files currently only allow mmap\u0027ing.  On x86 this\nworks fine for memory backed BARs, but doesn\u0027t work at all for I/O\nport backed BARs.  Add read/write to I/O port PCI sysfs resource\nfiles to allow userspace access to these device regions.\n\nAcked-by: Chris Wright \u003cchrisw@redhat.com\u003e\nSigned-off-by: Alex Williamson \u003calex.williamson@redhat.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "bfb51cd01661136bae1dd00c32d504cff6a9f924",
      "tree": "0fa29f7e27f6bac5741b6dad123759481ced5847",
      "parents": [
        "253d2e549818f5a4a52e2db0aba3dacee21e5b38"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Mon Jul 12 15:59:11 2010 +0900"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Jul 30 09:29:36 2010 -0700"
      },
      "message": "PCI: remove unused HAVE_ARCH_PCI_SET_DMA_MAX_SEGMENT_{SIZE|BOUNDARY}\n\nIn 2.6.34, we transformed the PCI DMA API into the generic device\nmode. The PCI DMA API is just the wrapper of the DMA API.\n\nSo we don\u0027t need HAVE_ARCH_PCI_SET_DMA_MAX_SEGMENT_SIZE or\nHAVE_ARCH_PCI_SET_DMA_SEGMENT_BOUNDARY (which enable architectures to\nhave the own implementations). Both haven\u0027t been used anyway.\n\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "253d2e549818f5a4a52e2db0aba3dacee21e5b38",
      "tree": "535ff224cb89860809fa5d948e19e1f3342cf7b3",
      "parents": [
        "fcd097f31a6ee207cc0c3da9cccd2a86d4334785"
      ],
      "author": {
        "name": "Jacob Pan",
        "email": "jacob.jun.pan@linux.intel.com",
        "time": "Fri Jul 16 10:19:22 2010 -0700"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Jul 30 09:29:35 2010 -0700"
      },
      "message": "PCI: disable mmio during bar sizing\n\nIt is a known issue that mmio decoding shall be disabled while doing PCI\nbar sizing. Host bridge and other devices (PCI PIC) shall be excluded for\ncertain platforms. This patch mainly comes from Mathew Willcox\u0027s\npatch in http://kerneltrap.org/mailarchive/linux-kernel/2007/9/13/258969.\n\nA new flag bit \"mmio_alway_on\" is added to pci_dev with the intention that\ndevices with their mmio decoding cannot be disabled during BAR sizing shall\nhave this bit set, preferrablly in their quirks.\n\nWithout this patch, Intel Moorestown platform graphics unit will be\ncorrupted during bar sizing activities.\n\nSigned-off-by: Jacob Pan \u003cjacob.jun.pan@linux.intel.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "fcd097f31a6ee207cc0c3da9cccd2a86d4334785",
      "tree": "3bd2658926e691d0eab23651e45832c2714d85f6",
      "parents": [
        "ea5f9fc5899660dd26c1ccf3fab183bd041140ee"
      ],
      "author": {
        "name": "Ben Hutchings",
        "email": "bhutchings@solarflare.com",
        "time": "Thu Jun 17 20:16:36 2010 +0100"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Jul 30 09:29:34 2010 -0700"
      },
      "message": "PCI: MSI: Remove unsafe and unnecessary hardware access\n\nDuring suspend on an SMP system, {read,write}_msi_msg_desc() may be\ncalled to mask and unmask interrupts on a device that is already in a\nreduced power state.  At this point memory-mapped registers including\nMSI-X tables are not accessible, and config space may not be fully\nfunctional either.\n\nWhile a device is in a reduced power state its interrupts are\neffectively masked and its MSI(-X) state will be restored when it is\nbrought back to D0.  Therefore these functions can simply read and\nwrite msi_desc::msg for devices not in D0.\n\nFurther, read_msi_msg_desc() should only ever be used to update a\npreviously written message, so it can always read msi_desc::msg\nand never needs to touch the hardware.\n\nTested-by: \"Michael Chan\" \u003cmchan@broadcom.com\u003e\nSigned-off-by: Ben Hutchings \u003cbhutchings@solarflare.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "ea5f9fc5899660dd26c1ccf3fab183bd041140ee",
      "tree": "b0d0517ee4064cfb587651b195ee5d2be864a8cc",
      "parents": [
        "8cc2bfd87fdd2f4a31f39c86f59df4b4be2c0adc"
      ],
      "author": {
        "name": "Matthew Garrett",
        "email": "mjg@redhat.com",
        "time": "Tue Jun 22 17:03:03 2010 -0400"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Jul 30 09:29:34 2010 -0700"
      },
      "message": "PCI: Default PCIe ASPM control to on and require !EMBEDDED to disable\n\nThe CONFIG_PCIEASPM option is confusing and potentially dangerous. ASPM is\na hardware mediated feature rather than one under direct OS control, and\neven if the config option is disabled the system firmware may have turned\non ASPM on various bits of hardware. This can cause problems later -\nvarious hardware that claims to support ASPM does a poor job of it and may\nhang or cause other difficulties. The kernel is able to recognise this in\nmany cases and disable the ASPM functionality, but only if CONFIG_PCIEASPM\nis enabled.\n\nGiven that in its default configuration this option will either leave the\nhardware as it was originally or disable hardware functionality that may\ncause problems, it should by default y. The only reason to disable it\nought to be to reduce code size, so make it dependent on CONFIG_EMBEDDED.\n\nSigned-off-by: Matthew Garrett \u003cmjg@redhat.com\u003e\nCc: lrodriguez@atheros.com\nCc: maximlevitsky@gmail.com\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "8cc2bfd87fdd2f4a31f39c86f59df4b4be2c0adc",
      "tree": "41961bc545408064b5bba62cd7ed950097cae589",
      "parents": [
        "a3f5835a8e0bd25ed15becd65e01aa3d5ac8d771"
      ],
      "author": {
        "name": "Kenji Kaneshige",
        "email": "kaneshige.kenji@jp.fujitsu.com",
        "time": "Wed Jun 23 16:04:10 2010 +0900"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Jul 30 09:29:33 2010 -0700"
      },
      "message": "PCI: kernel oops on access to pci proc file while hot-removal\n\nI encountered the problem that /proc/bus/pci/XX/YY is not removed even\nafter the corresponding device is hot-removed, if the file is still\nbeing opened. In addtion, accessing this file in this situation causes\nkernel panic (see below).\n\nBecasue the pci_proc_detach_device() doesn\u0027t call remove_proc_entry()\nif struct proc_dir_entry-\u003ecount \u003e 1, access to /proc/bus/pci/XX/YY\nwould refer to struct pci_dev that was already freed.\n\nThough I don\u0027t know why the check for proc_dir_entry-\u003ecount was added,\nI don\u0027t think it is needed. Removing this check fixes the problem.\n\nSteps to reproduce\n------------------\n# cd /sys/bus/pci/slots/2/\n# PROC_BUS_PCI_FILE\u003d/proc/bus/pci/`awk -F: \u0027{print $2\"/\"$3}\u0027 \u003c address`.0\n# sleep 10000 \u003c $PROC_BUS_PCI_FILE \u0026\n# echo 0 \u003e power\n# while true; do cat $PROC_BUS_PCI_FILE \u003e /dev/null; done\n\nOops Messages\n-------------\nBUG: unable to handle kernel NULL pointer dereference at 00000042\nIP: [\u003cc05c82d5\u003e] pci_user_read_config_dword+0x65/0xa0\n*pdpt \u003d 000000002185e001 *pde \u003d 0000000476a79067\nOops: 0000 [#1] SMP\nlast sysfs file: /sys/devices/pci0000:00/0000:00:1c.0/0000:10:00.0/local_cpus\nModules linked in: autofs4 sunrpc cpufreq_ondemand acpi_cpufreq ipv6 dm_mirror dm_region_hash dm_log dm_mod e1000e i2c_i801 i2c_core iTCO_wdt igb sg pcspkr dca iTCO_vendor_support ext4 mbcache jbd2 sd_mod crc_t10dif lpfc mptsas scsi_transport_fc mptscsih mptbase scsi_tgt scsi_transport_sas [last unloaded: microcode]\n\nPid: 2997, comm: cat Not tainted 2.6.34-kk #32 SB/PRIMEQUEST 1800E\nEIP: 0060:[\u003cc05c82d5\u003e] EFLAGS: 00010046 CPU: 19\nEIP is at pci_user_read_config_dword+0x65/0xa0\nEAX: 00000002 EBX: e44f1800 ECX: e144df14 EDX: 155668c7\nESI: 00000087 EDI: 00000000 EBP: e144df40 ESP: e144df0c\n DS: 007b ES: 007b FS: 00d8 GS: 00e0 SS: 0068\nProcess cat (pid: 2997, ti\u003de144c000 task\u003de26f2570 task.ti\u003de144c000)\nStack:\n c09ceac0 c0570f72 ffffffff 08c57000 00000000 00001000 e44f1800 c05d2404\n\u003c0\u003e e144df40 00001000 00000000 00001000 08c57000 3093ae50 e420cb40 e358d5c0\n\u003c0\u003e c05d2300 fffffffb c054984f e144df9c 00008000 08c57000 e358d5c0 00008000\nCall Trace:\n [\u003cc0570f72\u003e] ? security_capable+0x22/0x30\n [\u003cc05d2404\u003e] ? proc_bus_pci_read+0x104/0x220\n [\u003cc05d2300\u003e] ? proc_bus_pci_read+0x0/0x220\n [\u003cc054984f\u003e] ? proc_reg_read+0x5f/0x90\n [\u003cc05497f0\u003e] ? proc_reg_read+0x0/0x90\n [\u003cc050694d\u003e] ? vfs_read+0x9d/0x190\n [\u003cc04958f4\u003e] ? audit_syscall_entry+0x204/0x230\n [\u003cc0506a81\u003e] ? sys_read+0x41/0x70\n [\u003cc0402f1f\u003e] ? sysenter_do_call+0x12/0x28\nCode: b4 26 00 00 00 00 b8 20 88 b1 c0 c7 44 24 08 ff ff ff ff e8 3e 52 22 00 f6 83 24 04 00 00 20 75 34 8b 43 08 8d 4c 24 08 8b 53 1c \u003c8b\u003e 70 40 89 4c 24 04 89 f9 c7 04 24 04 00 00 00 ff 16 89 c6 f0\nEIP: [\u003cc05c82d5\u003e] pci_user_read_config_dword+0x65/0xa0 SS:ESP 0068:e144df0c\nCR2: 0000000000000042\n\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nSigned-off-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "a3f5835a8e0bd25ed15becd65e01aa3d5ac8d771",
      "tree": "1a0e2020ab915f1e958b8ec6ce50b3c49c5b5115",
      "parents": [
        "852972acff8f10f3a15679be2059bb94916cba5d"
      ],
      "author": {
        "name": "Kulikov Vasiliy",
        "email": "segooon@gmail.com",
        "time": "Tue Jun 29 14:15:28 2010 +0400"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Jul 30 09:29:18 2010 -0700"
      },
      "message": "PCI: pci-sysfs: remove casts from void*\n\nRemove unnesessary casts from void*.\n\nSigned-off-by: Kulikov Vasiliy \u003csegooon@gmail.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "3f579c340fe6d6bdd8c6f9f144e7c3b85d4174ec",
      "tree": "7dbffa4e375aa2315c19db402857a07b24c82b40",
      "parents": [
        "0ba10bc75271e4139eb9ca67d107624d581e3a94"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Fri May 21 14:35:06 2010 -0700"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Jul 30 09:29:16 2010 -0700"
      },
      "message": "PCI hotplug: make sure child bridges are enabled at hotplug time\n\nFound one PCIe Module with several bridges built-in where a \"cold\"\nhotadd doesn\u0027t work.\n\nIf we end up reassigning bridge windows at hotadd time, and have to loop\nthrough assigning new ranges, we won\u0027t end up enabling the child bridges\nbecause the first assignment pass already tried to enable them, which\nprevents __pci_bridge_assign_resource from updating the windows.\n\nSo try to move enabling of child bridges to the end, and only do it\nonce.\n\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "0ba10bc75271e4139eb9ca67d107624d581e3a94",
      "tree": "3190954fc57e9c387b80514751fb28e6a87f6c5e",
      "parents": [
        "01b666df487b80c956cef3ce3253776ddeebd41e"
      ],
      "author": {
        "name": "Praveen Kalamegham",
        "email": "praveen@nextio.com",
        "time": "Thu May 20 12:15:01 2010 -0500"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Jul 30 09:29:16 2010 -0700"
      },
      "message": "PCI hotplug: shpchp: Removed check for hotplug of display devices\n\nRemoved check to prevent hotplug of display devices within shpchp.\nOriginally this was thought to have been required within the PCI\nHotplug specification for some legacy devices.  However there is\nno such requirement in the most recent revision. The check prevents\nhotplug of not only display devices but also computational GPUs\nwhich require serviceability.\n\nSigned-off-by: Praveen Kalamegham \u003cpraveen@nextio.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "01b666df487b80c956cef3ce3253776ddeebd41e",
      "tree": "e3714b5a3bf6f4b6bc3a049c4f7e4a045dcd1f30",
      "parents": [
        "41cd766b065970ff6f6c89dd1cf55fa706c84a3d"
      ],
      "author": {
        "name": "Praveen Kalamegham",
        "email": "praveen@nextio.com",
        "time": "Thu May 20 15:32:22 2010 -0500"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Jul 30 09:29:15 2010 -0700"
      },
      "message": "PCI hotplug: pciehp: Fixed return value sign for pciehp_unconfigure_device\n\npciehp_unconfigure_device() should return -EINVAL, not EINVAL.\n\nSigned-off-by: Praveen Kalamegham \u003cpraveen@nextio.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "41cd766b065970ff6f6c89dd1cf55fa706c84a3d",
      "tree": "f52a7346daaaad331dbd260f0e21bcf9d108b2e6",
      "parents": [
        "4302e0fb7fa5b071e30f3cfb68e85155b3d69d9b"
      ],
      "author": {
        "name": "Matthew Garrett",
        "email": "mjg@redhat.com",
        "time": "Wed Jun 09 16:05:07 2010 -0400"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Jul 30 09:29:15 2010 -0700"
      },
      "message": "PCI: Don\u0027t enable aspm before drivers have had a chance to veto it\n\nThe aspm code will currently set the configured aspm policy before drivers\nhave had an opportunity to indicate that their hardware doesn\u0027t support it.\nUnfortunately, putting some hardware in L0 or L1 can result in the hardware\nno longer responding to any requests, even after aspm is disabled. It makes\nmore sense to leave aspm policy at the BIOS defaults at initial setup time,\nreconfiguring it after pci_enable_device() is called. This allows the\ndriver to blacklist individual devices beforehand.\n\nReviewed-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nSigned-off-by: Matthew Garrett \u003cmjg@redhat.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "4302e0fb7fa5b071e30f3cfb68e85155b3d69d9b",
      "tree": "059617eb4f3350ce40cb44c9537dce7a1168e2ea",
      "parents": [
        "2eb5ebd3665a38a4526b45cb3a31a132b2aa9927"
      ],
      "author": {
        "name": "Kenji Kaneshige",
        "email": "kaneshige.kenji@jp.fujitsu.com",
        "time": "Thu Jun 17 10:42:44 2010 +0900"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Jul 30 09:29:14 2010 -0700"
      },
      "message": "PCI: fix wrong memory address handling in MSI-X\n\nUse resource_size_t for MMIO address instead of unsigned long. Otherwise,\nhigher 32-bits of MMIO address are cleared unexpectedly in x86-32 PAE.\n\nAcked-by: Matthew Wilcox \u003cwilly@linux.intel.com\u003e\nSigned-off-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "2eb5ebd3665a38a4526b45cb3a31a132b2aa9927",
      "tree": "1243c320e14eaf58a1208ccb021b8e70891d85ca",
      "parents": [
        "7736a05a320712c0a9b8f9e1cd0688b2c0848009"
      ],
      "author": {
        "name": "Junchang Wang",
        "email": "junchangwang@gmail.com",
        "time": "Fri Jun 18 10:02:33 2010 +0800"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Jul 30 09:29:14 2010 -0700"
      },
      "message": "PCI: check return value of pci_enable_device() when enabling bridges\n\npci_enable_device can fail. In that case, a printed warning would be\nmore appropriate.\n\nSigned-off-by: Justin P. Mattock \u003cjustinmattock@gmail.com\u003e\nSigned-off-by: Junchang Wang \u003cjunchangwang@gmail.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "7736a05a320712c0a9b8f9e1cd0688b2c0848009",
      "tree": "571e5ef6ee61eee5f61af3db17e69fea4f3a37b6",
      "parents": [
        "7bd1c365fd124624191d49dcc1eb9759d6017ec3"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Tue Jun 01 09:00:16 2010 -0700"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Jul 30 09:29:13 2010 -0700"
      },
      "message": "PCI: sparse warning (trivial)\n\nAssigning zero where NULL should be used.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "549e15611b4ac1de51ef0e0a79c2704f50a638a2",
      "tree": "d86b0d1b6ce7ecfa80d7312ce40698c0bfadb544",
      "parents": [
        "aff6136974e4ac43574973a5b4de15d97506b16a"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Sun May 23 10:22:55 2010 +0200"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Jul 30 09:29:12 2010 -0700"
      },
      "message": "PCI: disable MSI on VIA K8M800\n\nMSI delivery from on-board ahci controller doesn\u0027t work on K8M800.  At\nthis point, it\u0027s unclear whether the culprit is with the ahci\ncontroller or the host bridge.  Given the track record and considering\nthe rather minimal impact of MSI, disabling it seems reasonable.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nReported-by: Rainer Hurtado Navarro \u003cpublio.escipion.el.africano@gmail.com\u003e\nCc: stable@kernel.org\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "aff6136974e4ac43574973a5b4de15d97506b16a",
      "tree": "4347e297898fd99291253081cf45c52675636389",
      "parents": [
        "3b8fdb759e6ed446433c6dfd5a226d9007925596"
      ],
      "author": {
        "name": "Clemens Ladisch",
        "email": "clemens@ladisch.de",
        "time": "Wed May 26 12:21:10 2010 +0200"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Jul 30 09:29:11 2010 -0700"
      },
      "message": "PCI quirk: AMD 780: work around wrong vendor ID on APC bridge\n\nIn all AMD 780 family northbridges, the vendor ID of the internal\ngraphics PCI/PCI bridge reads not as AMD but as that of the mainboard\nvendor, because the hardware actually returns the value of the subsystem\nvendor ID (erratum 18).\n\nWe currently have additional quirk entries for Asus and Acer, but it is\nlikely that we will encounter more systems with other vendor IDs.\n\nSince we do not know in advance all possible vendor IDs, a better way to\nfind the device is to declare the quirk on the host bridge, whose ID is\nalways correct, and use that device as a stepping stone to find the PCI/\nPCI bridge, if present.\n\nReviewed-by: Matthew Wilcox \u003cwilly@linux.intel.com\u003e\nSigned-off-by: Clemens Ladisch \u003cclemens@ladisch.de\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "3b8fdb759e6ed446433c6dfd5a226d9007925596",
      "tree": "8b59d086a555788fdcd79d508ff20016e313517c",
      "parents": [
        "f6735590e9f441762ab5afeff64ded99e5b19a68"
      ],
      "author": {
        "name": "Dan Carpenter",
        "email": "error27@gmail.com",
        "time": "Wed May 26 12:46:39 2010 +0200"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Jul 30 09:29:10 2010 -0700"
      },
      "message": "PCI: hotplug/shpchp_hpc: add parenthesis in SLOT_REG_RSVDZ_MASK\n\nThe SLOT_REG_RSVDZ_MASK macro is normally used like this:\n\tslot_reg \u0026\u003d ~SLOT_REG_RSVDZ_MASK;\nThe ~ operator has higher precedence than the | operator from inside the\nmacro, so it needs parenthesis.\n\nReviewed-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nSigned-off-by: Dan Carpenter \u003cerror27@gmail.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "f6735590e9f441762ab5afeff64ded99e5b19a68",
      "tree": "58e15ba0d4c00195da9e9b199b7fc73de7f51e64",
      "parents": [
        "73cd3b43f08cc9a9bcb168994b8e9ebd983ff573"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 27 11:21:11 2010 +0900"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Jul 30 09:29:10 2010 -0700"
      },
      "message": "PCI aerdrv: fix annoying warnings\n\nSome compiler generates following warnings:\n\n  In function \u0027aer_isr\u0027:\n  warning: \u0027e_src.id\u0027 may be used uninitialized in this function\n  warning: \u0027e_src.status\u0027 may be used uninitialized in this function\n\nAvoid status flag \"int ret\" and return constants instead, so that\ngcc sees the return value matching \"it is initialized\" better.\n\nAcked-by: Hidetoshi Seto \u003cseto.hidetoshi@jp.fujitsu.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nSigned-off-by: Hidetoshi Seto \u003cseto.hidetoshi@jp.fujitsu.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "f3ec4f87d607f40497afdb5ac03f11e2ea253d52",
      "tree": "b485337aee10cb1c0fcb1593d8947b5370aa73ff",
      "parents": [
        "a2dccdb2055abeb8a7ce8e45e5f83de9c980a00c"
      ],
      "author": {
        "name": "Alan Stern",
        "email": "stern@rowland.harvard.edu",
        "time": "Tue Jun 08 15:23:51 2010 -0400"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Jul 30 09:29:09 2010 -0700"
      },
      "message": "PCI: change device runtime PM settings for probe and remove\n\nThis patch (as1388) changes the way the PCI core handles runtime PM\nsettings when probing or unbinding drivers.  Now the core will make\nsure the device is enabled for runtime PM, with a usage count \u003e\u003d 1,\nwhen a driver is probed.  It does the same when calling a driver\u0027s\nremove method.\n\nIf the driver wants to use runtime PM, all it has to do is call\npm_runtime_pu_noidle() near the end of its probe routine (to cancel\nthe core\u0027s usage increment) and pm_runtime_get_noresume() near the\nstart of its remove routine (to restore the usage count).  It does not\nneed to mess around with setting the runtime state to enabled,\ndisabled, active, or suspended.\n\nThe patch updates e1000e and r8169, the only PCI drivers that already\nuse the existing runtime PM interface.\n\nSigned-off-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nAcked-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "7a42c4ff02d1bd764804a4ba36c2b839070c5e7d",
      "tree": "1ad8df4ba2529135b05d8e5762557ad0da37e2f1",
      "parents": [
        "b37fa16e78d6f9790462b3181602a26b5af36260",
        "323f99cbc35c52a65dea9d072b3ecf1e662240d2",
        "80a506b8fdcfa868bb53eb740f928217d0966fc1"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Tue Jul 27 18:19:32 2010 +0200"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Tue Jul 27 18:19:32 2010 +0200"
      },
      "message": "Merge branches \u0027iommu-api/2.6.36\u0027 and \u0027amd-iommu/2.6.36\u0027 into iommu/2.6.36\n"
    },
    {
      "commit": "323f99cbc35c52a65dea9d072b3ecf1e662240d2",
      "tree": "db4420fb391465df818949a2190e8acd8637164f",
      "parents": [
        "1c5474a65bf15a4cb162dfff86d6d0b5a08a740c"
      ],
      "author": {
        "name": "Tom Lyon",
        "email": "pugs@cisco.com",
        "time": "Fri Jul 02 16:56:14 2010 -0400"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Mon Jul 19 15:44:25 2010 +0200"
      },
      "message": "iommu-api: Extension to check for interrupt remapping\n\nThis patch allows IOMMU users to determine whether the\nhardware and software support safe, isolated interrupt\nremapping.  Not all Intel IOMMUs have the hardware, and the\nsoftware for AMD is not there yet.\n\nSigned-off-by: Tom Lyon \u003cpugs@cisco.com\u003e\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "c125e96f044427f38d106fab7bc5e4a5e6a18262",
      "tree": "d9bbd40cc933fe522dbdf8ca2f7edf7b6f2f7ca4",
      "parents": [
        "b14e033e17d0ea0ba12668d0d2f371cd31586994"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Jul 05 22:43:53 2010 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Jul 19 01:58:48 2010 +0200"
      },
      "message": "PM: Make it possible to avoid races between wakeup and system sleep\n\nOne of the arguments during the suspend blockers discussion was that\nthe mainline kernel didn\u0027t contain any mechanisms making it possible\nto avoid races between wakeup and system suspend.\n\nGenerally, there are two problems in that area.  First, if a wakeup\nevent occurs exactly when /sys/power/state is being written to, it\nmay be delivered to user space right before the freezer kicks in, so\nthe user space consumer of the event may not be able to process it\nbefore the system is suspended.  Second, if a wakeup event occurs\nafter user space has been frozen, it is not generally guaranteed that\nthe ongoing transition of the system into a sleep state will be\naborted.\n\nTo address these issues introduce a new global sysfs attribute,\n/sys/power/wakeup_count, associated with a running counter of wakeup\nevents and three helper functions, pm_stay_awake(), pm_relax(), and\npm_wakeup_event(), that may be used by kernel subsystems to control\nthe behavior of this attribute and to request the PM core to abort\nsystem transitions into a sleep state already in progress.\n\nThe /sys/power/wakeup_count file may be read from or written to by\nuser space.  Reads will always succeed (unless interrupted by a\nsignal) and return the current value of the wakeup events counter.\nWrites, however, will only succeed if the written number is equal to\nthe current value of the wakeup events counter.  If a write is\nsuccessful, it will cause the kernel to save the current value of the\nwakeup events counter and to abort the subsequent system transition\ninto a sleep state if any wakeup events are reported after the write\nhas returned.\n\n[The assumption is that before writing to /sys/power/state user space\nwill first read from /sys/power/wakeup_count.  Next, user space\nconsumers of wakeup events will have a chance to acknowledge or\nveto the upcoming system transition to a sleep state.  Finally, if\nthe transition is allowed to proceed, /sys/power/wakeup_count will\nbe written to and if that succeeds, /sys/power/state will be written\nto as well.  Still, if any wakeup events are reported to the PM core\nby kernel subsystems after that point, the transition will be\naborted.]\n\nAdditionally, put a wakeup events counter into struct dev_pm_info and\nmake these per-device wakeup event counters available via sysfs,\nso that it\u0027s possible to check the activity of various wakeup event\nsources within the kernel.\n\nTo illustrate how subsystems can use pm_wakeup_event(), make the\nlow-level PCI runtime PM wakeup-handling code use it.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nAcked-by: markgross \u003cmarkgross@thegnar.org\u003e\nReviewed-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\n"
    },
    {
      "commit": "58c84eda07560a6b75b03e8d3b26d6eddfc14011",
      "tree": "0104345d24d5fb79842ffd563ea69fdf2906931d",
      "parents": [
        "2f7989efd4398d92b8adffce2e07dd043a0895fe"
      ],
      "author": {
        "name": "Bjorn Helgaas",
        "email": "bjorn.helgaas@hp.com",
        "time": "Thu Jul 15 09:41:42 2010 -0600"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Jul 16 11:39:48 2010 -0700"
      },
      "message": "PCI: fall back to original BIOS BAR addresses\n\nIf we fail to assign resources to a PCI BAR, this patch makes us try the\noriginal address from BIOS rather than leaving it disabled.\n\nLinux tries to make sure all PCI device BARs are inside the upstream\nPCI host bridge or P2P bridge apertures, reassigning BARs if necessary.\nWindows does similar reassignment.\n\nBefore this patch, if we could not move a BAR into an aperture, we left\nthe resource unassigned, i.e., at address zero.  Windows leaves such BARs\nat the original BIOS addresses, and this patch makes Linux do the same.\n\nThis is a bit ugly because we disable the resource long before we try to\nreassign it, so we have to keep track of the BIOS BAR address somewhere.\nFor lack of a better place, I put it in the struct pci_dev.\n\nI think it would be cleaner to attempt the assignment immediately when the\nclaim fails, so we could easily remember the original address.  But we\ncurrently claim motherboard resources in the middle, after attempting to\nclaim PCI resources and before assigning new PCI resources, and changing\nthat is a fairly big job.\n\nAddresses https://bugzilla.kernel.org/show_bug.cgi?id\u003d16263\n\nReported-by: Andrew \u003cnitr0@seti.kr.ua\u003e\nTested-by: Andrew \u003cnitr0@seti.kr.ua\u003e\nSigned-off-by: Bjorn Helgaas \u003cbjorn.helgaas@hp.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "a44061aa8b5d58b2729faca4c155a94a5bea2a09",
      "tree": "3f4e72439ad65c443c0151961883ea0a6e14d20d",
      "parents": [
        "e8b6f970107cfc9c00cdcdb12ec6c7e135cf379f"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Thu Jul 01 10:11:45 2010 +0800"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Tue Jul 06 22:34:26 2010 -0400"
      },
      "message": "ACPICA: Remove wakeup GPE reference counting which is not used\n\nAfter the previous patch that introduced acpi_gpe_wakeup() and\nmodified the ACPI suspend and wakeup code to use it, the third\nargument of acpi_{enable|disable}_gpe() and the GPE wakeup\nreference counter are not necessary any more.  Remove them and\nmodify all of the users of acpi_{enable|disable}_gpe()\naccordingly.  Also drop GPE type constants that aren\u0027t used\nany more.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\nSigned-off-by: Bob Moore \u003crobert.moore@intel.com\u003e\nSigned-off-by: Lin Ming \u003cming.m.lin@intel.com\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "a7b917256d8afacadc614414c4b0d411f76f3747",
      "tree": "295558a19f52e4c507da57204cc6a86ba22708c6",
      "parents": [
        "dee70a32fa90cd05a5e34d03a48d549473569101",
        "b03214d559471359e2a85ae256686381d0672f29"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jun 27 07:49:45 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jun 27 07:49:45 2010 -0700"
      },
      "message": "Merge branch \u0027virtio\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6\n\n* \u0027virtio\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6:\n  virtio-pci: disable msi at startup\n  virtio: return ENOMEM on out of memory\n"
    },
    {
      "commit": "dee70a32fa90cd05a5e34d03a48d549473569101",
      "tree": "1aab213cb310996fd2f0a324ef5b0c61d3d2e0e6",
      "parents": [
        "29ccb201a28f20885c90954152db8421a2efe779",
        "b27759f880018b0cd43543dc94c921341b64b5ec"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jun 27 07:41:04 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jun 27 07:41:04 2010 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6:\n  PCI/PM: Do not use native PCIe PME by default\n"
    },
    {
      "commit": "b03214d559471359e2a85ae256686381d0672f29",
      "tree": "b2c5d617304bffc8dd4917ecef251ec109eb3b8b",
      "parents": [
        "686d363786a53ed28ee875b84ef24e6d5126ef6f"
      ],
      "author": {
        "name": "Michael S. Tsirkin",
        "email": "mst@redhat.com",
        "time": "Wed Jun 23 22:49:06 2010 -0600"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Wed Jun 23 22:49:07 2010 +0930"
      },
      "message": "virtio-pci: disable msi at startup\n\nvirtio-pci resets the device at startup by writing to the status\nregister, but this does not clear the pci config space,\nspecifically msi enable status which affects register\nlayout.\n\nThis breaks things like kdump when they try to use e.g. virtio-blk.\n\nFix by forcing msi off at startup. Since pci.c already has\na routine to do this, we export and use it instead of duplicating code.\n\nSigned-off-by: Michael S. Tsirkin \u003cmst@redhat.com\u003e\nTested-by: Vivek Goyal \u003cvgoyal@redhat.com\u003e\nAcked-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\nCc: linux-pci@vger.kernel.org\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: stable@kernel.org\n"
    },
    {
      "commit": "b27759f880018b0cd43543dc94c921341b64b5ec",
      "tree": "486e63a80e0f11d93f9f8ee3a5780b5030154cd0",
      "parents": [
        "7e27d6e778cd87b6f2415515d7127eba53fe5d02"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Jun 18 17:04:22 2010 +0200"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Jun 18 09:36:37 2010 -0700"
      },
      "message": "PCI/PM: Do not use native PCIe PME by default\n\nCommit c7f486567c1d0acd2e4166c47069835b9f75e77b\n(PCI PM: PCIe PME root port service driver) causes the native PCIe\nPME signaling to be used by default, if the BIOS allows the kernel to\ncontrol the standard configuration registers of PCIe root ports.\nHowever, the native PCIe PME is coupled to the native PCIe hotplug\nand calling pcie_pme_acpi_setup() makes some BIOSes expect that\nthe native PCIe hotplug will be used as well.  That, in turn, causes\nproblems to appear on systems where the PCIe hotplug driver is not\nloaded.  The usual symptom, as reported by Jaroslav Kameník and\nothers, is that the ACPI GPE associated with PCIe hotplug keeps\nfiring continuously causing kacpid to take substantial percentage\nof CPU time.\n\nTo work around this issue, change the default so that the native\nPCIe PME signaling is only used if directly requested with the help\nof the pcie_pme\u003d command line switch.\n\nFixes https://bugzilla.kernel.org/show_bug.cgi?id\u003d15924 , which is\na listed regression from 2.6.33.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nReported-by: Jaroslav Kameník \u003cjaroslav@kamenik.cz\u003e\nTested-by: Antoni Grzymala \u003cantekgrzymala@gmail.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "2d9e667efdfb4e986074d98e7d9a424003c7c43b",
      "tree": "a3436795620225e16c676882caf6822e219b98b6",
      "parents": [
        "00dfff77e7184140dc45724c7232e99302f6bf97"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Tue Jun 15 10:57:57 2010 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Tue Jun 15 10:57:57 2010 +0100"
      },
      "message": "intel-iommu: Force-disable IOMMU for iGFX on broken Cantiga revisions.\n\nCertain revisions of this chipset appear to be broken. There is a shadow\nGTT which mirrors the real GTT but contains pre-translated physical\naddresses, for performance reasons. When a GTT update happens, the\ntranslations are done once and the resulting physical addresses written\nback to the shadow GTT.\n\nExcept sometimes, the physical address is actually written back to the\n_real_ GTT, not the shadow GTT. Thus we start to see faults when that\nphysical address is fed through translation again.\n\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "00dfff77e7184140dc45724c7232e99302f6bf97",
      "tree": "16f6096b5ab13a42c7119e3d5f9c0b21817eacaf",
      "parents": [
        "25cbff1660d3f4c059a178a1e5b851be6d70c5e8"
      ],
      "author": {
        "name": "Jiri Slaby",
        "email": "jirislaby@gmail.com",
        "time": "Mon Jun 14 17:17:32 2010 +0200"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Tue Jun 15 10:50:46 2010 +0100"
      },
      "message": "intel-iommu: Fix double lock in get_domain_for_dev()\n\nstanse found the following double lock.\n\nIn get_domain_for_dev:\n  spin_lock_irqsave(\u0026device_domain_lock, flags);\n  domain_exit(domain);\n    domain_remove_dev_info(domain);\n      spin_lock_irqsave(\u0026device_domain_lock, flags);\n      spin_unlock_irqrestore(\u0026device_domain_lock, flags);\n  spin_unlock_irqrestore(\u0026device_domain_lock, flags);\n\nThis happens when the domain is created by another CPU at the same time \nas this function is creating one, and the other CPU wins the race to \nattach it to the device in question, so we have to destroy our own \nnewly-created one.\n\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "25cbff1660d3f4c059a178a1e5b851be6d70c5e8",
      "tree": "b0f43789d01fcb89041195550a582a41dfb979d7",
      "parents": [
        "7e27d6e778cd87b6f2415515d7127eba53fe5d02"
      ],
      "author": {
        "name": "Sheng Yang",
        "email": "sheng@linux.intel.com",
        "time": "Sat Jun 12 19:21:42 2010 +0800"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Tue Jun 15 10:40:02 2010 +0100"
      },
      "message": "intel-iommu: Fix reference by physical address in intel_iommu_attach_device()\n\nCommit a99c47a2 \"intel-iommu: errors with smaller iommu widths\" replace the\ndmar_domain-\u003epgd with the first entry of page table when iommu\u0027s supported\nwidth is smaller than dmar_domain\u0027s. But it use physical address directly\nfor new dmar_domain-\u003epgd...\n\nThis result in KVM oops with VT-d on some machines.\n\nReported-by: Allen Kay \u003callen.m.kay@intel.com\u003e\nCc: Tom Lyon \u003cpugs@cisco.com\u003e\nSigned-off-by: Sheng Yang \u003csheng@linux.intel.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "eda054770e5cd0e9ee1568dfcbcf39f9ade4f545",
      "tree": "60d29e2a3b095e9d14657cc6e02daba0a1b5f63d",
      "parents": [
        "891a9894ee2e17646b29117635d2c7adfb58ce60",
        "837c4ef13c44296bb763a0ca0e84a076592474cf"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jun 11 14:15:44 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jun 11 14:15:44 2010 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6:\n  PCI: clear bridge resource range if BIOS assigned bad one\n  PCI: hotplug/cpqphp, fix NULL dereference\n  Revert \"PCI: create function symlinks in /sys/bus/pci/slots/N/\"\n  PCI: change resource collision messages from KERN_ERR to KERN_INFO\n"
    },
    {
      "commit": "a7ef7d1f5e898984c479e8c41ca702141bbadc78",
      "tree": "fa742fbb39071799d02652cf5cbbca3f25af5724",
      "parents": [
        "3be434f0244ee059432f92de7e891ee514f41738"
      ],
      "author": {
        "name": "Jiri Slaby",
        "email": "jslaby@suse.cz",
        "time": "Wed Jun 09 22:31:13 2010 +0200"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Jun 11 13:10:21 2010 -0700"
      },
      "message": "PCI: hotplug/cpqphp, fix NULL dereference\n\nThere are devices out there which are PCI Hot-plug controllers with\ncompaq PCI IDs, but are not bridges, hence have pdev-\u003esubordinate\nNULL. But cpqphp expects the pointer to be non-NULL.\n\nAdd a check to the probe function to avoid oopses like:\nBUG: unable to handle kernel NULL pointer dereference at 00000050\nIP: [\u003cf82e3c41\u003e] cpqhpc_probe+0x951/0x1120 [cpqphp]\n*pdpt \u003d 0000000033779001 *pde \u003d 0000000000000000\n...\n\nThe device here was:\n00:0b.0 PCI Hot-plug controller [0804]: Compaq Computer Corporation PCI Hotplug Controller [0e11:a0f7] (rev 11)\n\tSubsystem: Compaq Computer Corporation Device [0e11:a2f8]\n\nSigned-off-by: Jiri Slaby \u003cjslaby@suse.cz\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "3be434f0244ee059432f92de7e891ee514f41738",
      "tree": "eadb165d4848010faaf6cc02af401f51a46727d7",
      "parents": [
        "f6d440daebd12be66ea1f834faf2966a49a07bd6"
      ],
      "author": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Jun 11 13:08:37 2010 -0700"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Jun 11 13:08:37 2010 -0700"
      },
      "message": "Revert \"PCI: create function symlinks in /sys/bus/pci/slots/N/\"\n\nThis reverts commit 75568f8094eb0333e9c2109b23cbc8b82d318a3c.\n\nSince they\u0027re just a convenience anyway, remove these symlinks since\nthey\u0027re causing duplicate filename errors in the wild.\n\nAcked-by: Alex Chiang \u003cachiang@canonical.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "f6d440daebd12be66ea1f834faf2966a49a07bd6",
      "tree": "6d5b5d87f7be01fbbfb73be4bd12716788f5ca3f",
      "parents": [
        "9dda696f0de87a2e5cfabb147e28c76b7d3c6846"
      ],
      "author": {
        "name": "Bjorn Helgaas",
        "email": "bjorn.helgaas@hp.com",
        "time": "Thu Jun 03 13:47:18 2010 -0600"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Jun 11 13:08:14 2010 -0700"
      },
      "message": "PCI: change resource collision messages from KERN_ERR to KERN_INFO\n\nWe can often deal with PCI resource issues by moving devices around.  In\nthat case, there\u0027s no point in alarming the user with messages like these.\nThere are many bug reports where the message itself is the only problem,\ne.g., https://bugs.launchpad.net/ubuntu/+source/linux/+bug/413419 .\n\nSigned-off-by: Bjorn Helgaas \u003cbjorn.helgaas@hp.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "4daedcfe8c6851aa01cc1997220f2577f4039c13",
      "tree": "5200735d13bb14343682e23c88c4d7525f0a73e6",
      "parents": [
        "b475a3b83a7709e16a734ef2b8ead4d50f885427"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Thu Jun 03 11:57:04 2010 +0200"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@redhat.com",
        "time": "Mon Jun 07 16:03:10 2010 -0400"
      },
      "message": "ahci: add pci quirk for JMB362\n\nJMB362 is a new variant of jmicron controller which is similar to\nJMB360 but has two SATA ports instead of one.  As there is no PATA\nport, single function AHCI mode can be used as in JMB360.  Add pci\nquirk for JMB362.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nReported-by: Aries Lee \u003carieslee@jmicron.com\u003e\nCc: stable@kernel.org\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n"
    },
    {
      "commit": "9a90e09854a3c7cc603ab8fc9163f77bb1f66cfa",
      "tree": "c8c5f767dd2351c9db440f003cc14401583bafd3",
      "parents": [
        "d372e7fe4698bde3a00b718f7901a0025dda47ef",
        "d3b383338f105f50724c10a7d81b04a3930e886b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 28 14:42:18 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 28 14:42:18 2010 -0700"
      },
      "message": "Merge branch \u0027release\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6\n\n* \u0027release\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6: (27 commits)\n  ACPI: Don\u0027t let acpi_pad needlessly mark TSC unstable\n  drivers/acpi/sleep.h: Checkpatch cleanup\n  ACPI: Minor cleanup eliminating redundant PMTIMER_TICKS to NS conversion\n  ACPI: delete unused c-state promotion/demotion data strucutures\n  ACPI: video: fix acpi_backlight\u003dvideo\n  ACPI: EC: Use kmemdup\n  drivers/acpi: use kasprintf\n  ACPI, APEI, EINJ injection parameters support\n  Add x64 support to debugfs\n  ACPI, APEI, Use ERST for persistent storage of MCE\n  ACPI, APEI, Error Record Serialization Table (ERST) support\n  ACPI, APEI, Generic Hardware Error Source memory error support\n  ACPI, APEI, UEFI Common Platform Error Record (CPER) header\n  Unified UUID/GUID definition\n  ACPI Hardware Error Device (PNP0C33) support\n  ACPI, APEI, PCIE AER, use general HEST table parsing in AER firmware_first setup\n  ACPI, APEI, Document for APEI\n  ACPI, APEI, EINJ support\n  ACPI, APEI, HEST table parsing\n  ACPI, APEI, APEI supporting infrastructure\n  ...\n"
    },
    {
      "commit": "6109e2ce2600e2db26cd0424bb9c6ed019723288",
      "tree": "54b5d347bf12e0a987edfb52f287399f748a9a38",
      "parents": [
        "0961d6581c870850342ad6ea25263763433d666f",
        "ac81860ea073daed50246af54db706c6e491f240"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 21 18:58:52 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 21 18:58:52 2010 -0700"
      },
      "message": "Merge branch \u0027linux-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6\n\n* \u0027linux-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6: (36 commits)\n  PCI: hotplug: pciehp: Removed check for hotplug of display devices\n  PCI: read memory ranges out of Broadcom CNB20LE host bridge\n  PCI: Allow manual resource allocation for PCI hotplug bridges\n  x86/PCI: make ACPI MCFG reserved error messages ACPI specific\n  PCI hotplug: Use kmemdup\n  PM/PCI: Update PCI power management documentation\n  PCI: output FW warning in pci_read/write_vpd\n  PCI: fix typos pci_device_dis/enable to pci_dis/enable_device in comments\n  PCI quirks: disable msi on AMD rs4xx internal gfx bridges\n  PCI: Disable MSI for MCP55 on P5N32-E SLI\n  x86/PCI: irq and pci_ids patch for additional Intel Cougar Point DeviceIDs\n  PCI: aerdrv: trivial cleanup for aerdrv_core.c\n  PCI: aerdrv: trivial cleanup for aerdrv.c\n  PCI: aerdrv: introduce default_downstream_reset_link\n  PCI: aerdrv: rework find_aer_service\n  PCI: aerdrv: remove is_downstream\n  PCI: aerdrv: remove magical ROOT_ERR_STATUS_MASKS\n  PCI: aerdrv: redefine PCI_ERR_ROOT_*_SRC\n  PCI: aerdrv: rework do_recovery\n  PCI: aerdrv: rework get_e_source()\n  ...\n"
    },
    {
      "commit": "0961d6581c870850342ad6ea25263763433d666f",
      "tree": "371c61fd7f621397907983031003e784a040402e",
      "parents": [
        "1756ac3d3c41341297ea25b818b7fce505bb2a9a",
        "fd0c8894893cba722bdea12de25b49f980795d06"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 21 17:25:01 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 21 17:25:01 2010 -0700"
      },
      "message": "Merge git://git.infradead.org/iommu-2.6\n\n* git://git.infradead.org/iommu-2.6:\n  intel-iommu: Set a more specific taint flag for invalid BIOS DMAR tables\n  intel-iommu: Combine the BIOS DMAR table warning messages\n  panic: Add taint flag TAINT_FIRMWARE_WORKAROUND (\u0027I\u0027)\n  panic: Allow warnings to set different taint flags\n  intel-iommu: intel_iommu_map_range failed at very end of address space\n  intel-iommu: errors with smaller iommu widths\n  intel-iommu: Fix boot inside 64bit virtualbox with io-apic disabled\n  intel-iommu: use physfn to search drhd for VF\n  intel-iommu: Print out iommu seq_id\n  intel-iommu: Don\u0027t complain that ACPI_DMAR_SCOPE_TYPE_IOAPIC is not supported\n  intel-iommu: Avoid global flushes with caching mode.\n  intel-iommu: Use correct domain ID when caching mode is enabled\n  intel-iommu mistakenly uses offset_pfn when caching mode is enabled\n  intel-iommu: use for_each_set_bit()\n  intel-iommu: Fix section mismatch dmar_ir_support() uses dmar_tbl.\n"
    },
    {
      "commit": "ac81860ea073daed50246af54db706c6e491f240",
      "tree": "6a4a722670d143b1c42cb4a288ea46f34b834d3f",
      "parents": [
        "3f6ea84a3035cc0ef7488f8e93bc76766799e082"
      ],
      "author": {
        "name": "Praveen Kalamegham",
        "email": "praveen@nextio.com",
        "time": "Wed May 19 17:03:12 2010 -0500"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri May 21 14:43:46 2010 -0700"
      },
      "message": "PCI: hotplug: pciehp: Removed check for hotplug of display devices\n\nRemoved check to prevent hotplug of display devices within pciehp.\nOriginally this was thought to have been required within the PCI\nHotplug specification for some legacy devices.  However there is\nno such requirement in the most recent revision. The check prevents\nhotplug of not only display devices but also computational GPUs\nwhich require serviceability.\n\nSigned-off-by: Praveen Kalamegham \u003cpraveen@nextio.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "3322340a9db2251ac9d09bc7b8d49e872298ae95",
      "tree": "40c24330b6acd953d49e827e051bae7d761ec102",
      "parents": [
        "a02ce953a14d6a8aab721b129b3c8ff4981a76e6"
      ],
      "author": {
        "name": "Felix Radensky",
        "email": "felix@embedded-sol.com",
        "time": "Sun Mar 28 16:02:02 2010 +0300"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri May 21 14:43:45 2010 -0700"
      },
      "message": "PCI: Allow manual resource allocation for PCI hotplug bridges\n\nAt the moment only PCI-E briges can be flagged as hotplug, thus\nallowing manual resource preallocation via pci\u003dhpmemsize\u003dnnM and\npci\u003dhpiosize\u003dnnM kernel parameters. Some PCI hotplug bridges, e.g.\nPLX 6254 can also benefit from this functionalily, as kernel fails\nto properly allocate their resources when hotplug device is added\nand PCI bus is rescanned.\n\nThis patch adds header quirk for PLX 6254 that marks this bridge\nas hotplug. Other PCI bridges with similar problems can use it\nas well.\n\nSigned-off-by: Felix Radensky \u003cfelix@embedded-sol.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    }
  ],
  "next": "de139a3393958c5adc75b7df7619d7e48d9ea559"
}
