)]}'
{
  "log": [
    {
      "commit": "7d3b56ba37a95f1f370f50258ed3954c304c524b",
      "tree": "86102527b92f02450aa245f084ffb491c18d2e0a",
      "parents": [
        "269b012321f2f1f8e4648c43a93bf432b42c6668",
        "ab14398abd195af91a744c320a52a1bce814dd1e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 03 12:04:39 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 03 12:04:39 2009 -0800"
      },
      "message": "Merge branch \u0027cpus4096-for-linus-3\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027cpus4096-for-linus-3\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (77 commits)\n  x86: setup_per_cpu_areas() cleanup\n  cpumask: fix compile error when CONFIG_NR_CPUS is not defined\n  cpumask: use alloc_cpumask_var_node where appropriate\n  cpumask: convert shared_cpu_map in acpi_processor* structs to cpumask_var_t\n  x86: use cpumask_var_t in acpi/boot.c\n  x86: cleanup some remaining usages of NR_CPUS where s/b nr_cpu_ids\n  sched: put back some stack hog changes that were undone in kernel/sched.c\n  x86: enable cpus display of kernel_max and offlined cpus\n  ia64: cpumask fix for is_affinity_mask_valid()\n  cpumask: convert RCU implementations, fix\n  xtensa: define __fls\n  mn10300: define __fls\n  m32r: define __fls\n  h8300: define __fls\n  frv: define __fls\n  cris: define __fls\n  cpumask: CONFIG_DISABLE_OBSOLETE_CPUMASK_FUNCTIONS\n  cpumask: zero extra bits in alloc_cpumask_var_node\n  cpumask: replace for_each_cpu_mask_nr with for_each_cpu in kernel/time/\n  cpumask: convert mm/\n  ...\n"
    },
    {
      "commit": "269b012321f2f1f8e4648c43a93bf432b42c6668",
      "tree": "e30ec565db50d4aec570cb52e9b29bd584beb2fd",
      "parents": [
        "f60a0a79846abed04ad5abddb5dafd14b66e1ab0",
        "065a6d68c71af2a3bdd080fa5aa353b76eede8f5"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 03 12:03:52 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 03 12:03:52 2009 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/joro/linux-2.6-iommu\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/joro/linux-2.6-iommu: (89 commits)\n  AMD IOMMU: remove now unnecessary #ifdefs\n  AMD IOMMU: prealloc_protection_domains should be static\n  kvm/iommu: fix compile warning\n  AMD IOMMU: add statistics about total number of map requests\n  AMD IOMMU: add statistics about allocated io memory\n  AMD IOMMU: add stats counter for domain tlb flushes\n  AMD IOMMU: add stats counter for single iommu domain tlb flushes\n  AMD IOMMU: add stats counter for cross-page request\n  AMD IOMMU: add stats counter for free_coherent requests\n  AMD IOMMU: add stats counter for alloc_coherent requests\n  AMD IOMMU: add stats counter for unmap_sg requests\n  AMD IOMMU: add stats counter for map_sg requests\n  AMD IOMMU: add stats counter for unmap_single requests\n  AMD IOMMU: add stats counter for map_single requests\n  AMD IOMMU: add stats counter for completion wait events\n  AMD IOMMU: add init code for statistic collection\n  AMD IOMMU: add necessary header defines for stats counting\n  AMD IOMMU: add Kconfig entry for statistic collection code\n  AMD IOMMU: use dev_name in iommu_enable function\n  AMD IOMMU: use calc_devid in prealloc_protection_domains\n  ...\n"
    },
    {
      "commit": "61420f59a589c0668f70cbe725785837c78ece90",
      "tree": "79ae77d731cd2425677b9527d50079d8cf34c3b2",
      "parents": [
        "d97106ab53f812910a62d18afb9dbe882819c1ba",
        "c742b31c03f37c5c499178f09f57381aa6c70131"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 03 11:56:24 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 03 11:56:24 2009 -0800"
      },
      "message": "Merge branch \u0027cputime\u0027 of git://git390.osdl.marist.edu/pub/scm/linux-2.6\n\n* \u0027cputime\u0027 of git://git390.osdl.marist.edu/pub/scm/linux-2.6:\n  [PATCH] fast vdso implementation for CLOCK_THREAD_CPUTIME_ID\n  [PATCH] improve idle cputime accounting\n  [PATCH] improve precision of idle time detection.\n  [PATCH] improve precision of process accounting.\n  [PATCH] idle cputime accounting\n  [PATCH] fix scaled \u0026 unscaled cputime accounting\n"
    },
    {
      "commit": "3bfacef412b4bc993a8992217e50f1245f2fd3a6",
      "tree": "bcf92bc34b30383dfc542f9850f59858681556cb",
      "parents": [
        "17580d7f2f632ff8c9786d609508c35c9f56e1f3"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Sat Jan 03 07:16:33 2009 +0000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 03 11:45:54 2009 -0800"
      },
      "message": "get rid of special-casing the /sbin/loader on alpha\n\n... just make it a binfmt handler like #! one.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ab14398abd195af91a744c320a52a1bce814dd1e",
      "tree": "5b0284af973e7a3d7d5c648d93965b6434d5c7e6",
      "parents": [
        "8fd2d2d5aaf086cfa3b2e2e58cab96b7afdc9e51"
      ],
      "author": {
        "name": "Cyrill Gorcunov",
        "email": "gorcunov@gmail.com",
        "time": "Fri Jan 02 21:51:32 2009 +0300"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Jan 03 19:15:42 2009 +0100"
      },
      "message": "x86: setup_per_cpu_areas() cleanup\n\nImpact: cleanup\n\n__alloc_bootmem and __alloc_bootmem_node do panic\nfor us in case of fail so no need for additional\nchecks here.\n\nAlso lets use pr_*() macros for printing.\n\nSigned-off-by: Cyrill Gorcunov \u003cgorcunov@openvz.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "80855f7361eb68205e6bc1981928629d9b02d5c9",
      "tree": "029e78df08989c8d335b67a8031c784136a57539",
      "parents": [
        "2fdf66b491ac706657946442789ec644cc317e1a"
      ],
      "author": {
        "name": "Mike Travis",
        "email": "travis@sgi.com",
        "time": "Wed Dec 31 18:08:47 2008 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Jan 03 19:15:40 2009 +0100"
      },
      "message": "cpumask: use alloc_cpumask_var_node where appropriate\n\nImpact: Reduce inter-node memory traffic.\n\nReduces inter-node memory traffic (offloading the global system bus)\nby allocating referenced struct cpumasks on the same node as the\nreferring struct.\n\nSigned-off-by: Mike Travis \u003ctravis@sgi.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "2fdf66b491ac706657946442789ec644cc317e1a",
      "tree": "3442c3e1f7bceb870ab1ba2624e21767f8347508",
      "parents": [
        "ee943a82b697456f9d2ac46f1e6d230beedb4b6c"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Wed Dec 31 18:08:47 2008 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Jan 03 19:15:40 2009 +0100"
      },
      "message": "cpumask: convert shared_cpu_map in acpi_processor* structs to cpumask_var_t\n\nImpact: Reduce memory usage, use new API.\n\nThis is part of an effort to reduce structure sizes for machines\nconfigured with large NR_CPUS.  cpumask_t gets replaced by\ncpumask_var_t, which is either struct cpumask[1] (small NR_CPUS) or\nstruct cpumask * (large NR_CPUS).\n\n(Changes to powernow-k* by \u003ctravis\u003e.)\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Mike Travis \u003ctravis@sgi.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ee943a82b697456f9d2ac46f1e6d230beedb4b6c",
      "tree": "33f83cff3d05f5189dc752d98b9ec157f0b75ad5",
      "parents": [
        "9628937d5b37169151c5f6bbd40919c6ac958a46"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Wed Dec 31 18:08:47 2008 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Jan 03 19:15:39 2009 +0100"
      },
      "message": "x86: use cpumask_var_t in acpi/boot.c\n\nImpact: reduce stack size, use new API.\n\nReplace cpumask_t with cpumask_var_t.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Mike Travis \u003ctravis@sgi.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "9628937d5b37169151c5f6bbd40919c6ac958a46",
      "tree": "09e49f6960806e4115b3345ccc4b5745ca784074",
      "parents": [
        "6ca09dfc9f180d038dcef93c167a833f43a8246f"
      ],
      "author": {
        "name": "Mike Travis",
        "email": "travis@sgi.com",
        "time": "Wed Dec 31 18:08:46 2008 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Jan 03 19:00:55 2009 +0100"
      },
      "message": "x86: cleanup some remaining usages of NR_CPUS where s/b nr_cpu_ids\n\nImpact: Reduce future system panics due to cpumask operations using NR_CPUS\n\nInsure that code does not look at bits \u003e\u003d nr_cpu_ids as when cpumasks are\nallocated based on nr_cpu_ids, these extra bits will not be defined.\n\nAlso some other minor updates:\n\n   * change in to use cpu accessor function set_cpu_present() instead of\n     directly accessing cpu_present_map w/cpu_clear() [arch/x86/kernel/reboot.c]\n\n   * use cpumask_of() instead of \u0026cpumask_of_cpu() [arch/x86/kernel/reboot.c]\n\n   * optimize some cpu_mask_to_apicid_and functions.\n\nSigned-off-by: Mike Travis \u003ctravis@sgi.com\u003e\nAcked-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "730cf27246225d56ca1603b2f3c4fdbf882d4e51",
      "tree": "46cfe9609956394a11a00e10f3f727e2ba4e4afa",
      "parents": [
        "6bdf197b04b3ae7c85785bc5a9576f1bcb0ac7c0"
      ],
      "author": {
        "name": "Mike Travis",
        "email": "travis@sgi.com",
        "time": "Wed Dec 31 18:08:45 2008 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Jan 03 18:59:47 2009 +0100"
      },
      "message": "x86: enable cpus display of kernel_max and offlined cpus\n\nImpact: enables /sys/devices/system/cpu/{kernel_max,offline} user interface\n\nBy setting total_cpus, the drivers/base/cpu.c will display the\nvalues of kernel_max (NR_CPUS-1) and the offlined cpu map.\n\nSigned-off-by: Mike Travis \u003ctravis@sgi.com\u003e\nAcked-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6bdf197b04b3ae7c85785bc5a9576f1bcb0ac7c0",
      "tree": "4bd5fbe09be2a9197ff7ab88d86b21ef895d964d",
      "parents": [
        "263ec6457bb23d57b575ede18ff6c3d11e0b4e96"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Jan 03 12:50:46 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Jan 03 18:59:33 2009 +0100"
      },
      "message": "ia64: cpumask fix for is_affinity_mask_valid()\n\nImpact: build fix on ia64\n\nia64\u0027s default_affinity_write() still had old cpumask_t usage:\n\n /home/mingo/tip/kernel/irq/proc.c: In function `default_affinity_write\u0027:\n /home/mingo/tip/kernel/irq/proc.c:114: error: incompatible type for argument 1 of `is_affinity_mask_valid\u0027\n make[3]: *** [kernel/irq/proc.o] Error 1\n make[3]: *** Waiting for unfinished jobs....\n\nupdate it to cpumask_var_t.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e465b535ce5b2318798c68e1454917204494bfe3",
      "tree": "7cd7af9813a1fe2bfb04f9edd149e0f152b6cb1d",
      "parents": [
        "7eb19553369c46cc1fa64caf120cbcab1b597f7c",
        "5ece5c5192d065c229da01e7b347c1d3877b59fa"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Jan 03 18:54:51 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Jan 03 18:54:51 2009 +0100"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-cpumask into cpus4096-v2\n"
    },
    {
      "commit": "7eb19553369c46cc1fa64caf120cbcab1b597f7c",
      "tree": "ef1a3beae706b9497c845d0a2557ceb4d2754998",
      "parents": [
        "6092848a2a23b660150a38bc06f59d75838d70c8",
        "8c384cdee3e04d6194a2c2b192b624754f990835"
      ],
      "author": {
        "name": "Mike Travis",
        "email": "travis@sgi.com",
        "time": "Wed Dec 31 17:34:16 2008 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Jan 03 18:53:31 2009 +0100"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-cpumask into merge-rr-cpumask\n\nConflicts:\n\tarch/x86/kernel/io_apic.c\n\tkernel/rcuclassic.c\n\tkernel/sched.c\n\tkernel/time/tick-sched.c\n\nSigned-off-by: Mike Travis \u003ctravis@sgi.com\u003e\n[ mingo@elte.hu: backmerged typo fix for io_apic.c ]\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "065a6d68c71af2a3bdd080fa5aa353b76eede8f5",
      "tree": "79a71fc0d517e72909a02b16129c4cfd2e123811",
      "parents": [
        "b0a11f44aba631fd4b898b620c93cc2096f3f15c"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:16:35 2009 +0100"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 16:44:15 2009 +0100"
      },
      "message": "AMD IOMMU: remove now unnecessary #ifdefs\n\nThe #ifdef\u0027s are no longer necessary when the iommu-api and the amd\niommu updates are merged together.\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "b0a11f44aba631fd4b898b620c93cc2096f3f15c",
      "tree": "71b8965d88d53ddeca2def77e2d74dc1af9fca52",
      "parents": [
        "7398ca79d227f7cd7f2ce23f08624e30081dcb4e",
        "0e93dd883537e628b809a2120854cd591c8935f1"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 16:43:44 2009 +0100"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 16:43:44 2009 +0100"
      },
      "message": "Merge branches \u0027iommu/api\u0027 and \u0027iommu/amd\u0027 into for-linus\n"
    },
    {
      "commit": "0e93dd883537e628b809a2120854cd591c8935f1",
      "tree": "a56bf6e421127eac34713b8fc8a2e3d8daa61a77",
      "parents": [
        "8ecaf8f19f0f0627d6ac6d69ed9472e7d307f35b"
      ],
      "author": {
        "name": "Jaswinder Singh Rajput",
        "email": "jaswinder@infradead.org",
        "time": "Mon Dec 29 21:45:22 2008 +0530"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 16:41:18 2009 +0100"
      },
      "message": "AMD IOMMU: prealloc_protection_domains should be static\n\nImpact: cleanup, reduce kernel size a bit, avoid sparse warning\n\nFixes sparse warning:\narch/x86/kernel/amd_iommu.c:1299:6: warning: symbol \u0027prealloc_protection_domains\u0027 was not declared. Should it be static?\n\nSigned-off-by: Jaswinder Singh Rajput \u003cjaswinderrajput@gmail.com\u003e\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "8ecaf8f19f0f0627d6ac6d69ed9472e7d307f35b",
      "tree": "1b2ff78164c6fa11cd2a66060d8bfc1ff2d315f2",
      "parents": [
        "5774f7c5fef2526bfa58eab628fbe91dce5e07b1"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Fri Dec 12 16:13:04 2008 +0100"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:12:00 2009 +0100"
      },
      "message": "AMD IOMMU: add statistics about total number of map requests\n\nImpact: see total number of map requests in debugfs\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "5774f7c5fef2526bfa58eab628fbe91dce5e07b1",
      "tree": "38d0ab41a4b188572de1773574f1d506bb016234",
      "parents": [
        "18811f55d48e5f3ee70c4744c592f940022fa592"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Fri Dec 12 15:57:30 2008 +0100"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:12:00 2009 +0100"
      },
      "message": "AMD IOMMU: add statistics about allocated io memory\n\nImpact: see amount of allocated io memory in debugfs\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "18811f55d48e5f3ee70c4744c592f940022fa592",
      "tree": "626f9661a133e83780f3cc6e7c25691d1cccb970",
      "parents": [
        "f57d98ae6979f7bcbf758023b4716f485385f903"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Fri Dec 12 15:48:28 2008 +0100"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:11:59 2009 +0100"
      },
      "message": "AMD IOMMU: add stats counter for domain tlb flushes\n\nImpact: see number of domain tlb flushes in debugfs\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "f57d98ae6979f7bcbf758023b4716f485385f903",
      "tree": "d49ddb1732237a69e871691d020db3f0b8a20788",
      "parents": [
        "c1858976f5ef05122bb671f678beaf7e1fe1dd74"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Fri Dec 12 15:46:29 2008 +0100"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:11:59 2009 +0100"
      },
      "message": "AMD IOMMU: add stats counter for single iommu domain tlb flushes\n\nImpact: see number of single iommu domain tlb flushes in debugfs\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "c1858976f5ef05122bb671f678beaf7e1fe1dd74",
      "tree": "7476166c4dc3851055d9297f51f956f3e3db3bca",
      "parents": [
        "5d31ee7e08b7713596b999a42e67491bdf3665b3"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Fri Dec 12 15:42:39 2008 +0100"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:11:59 2009 +0100"
      },
      "message": "AMD IOMMU: add stats counter for cross-page request\n\nImpact: see number of requests for more than one page in debugfs\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "5d31ee7e08b7713596b999a42e67491bdf3665b3",
      "tree": "3e1e5f7c99d9f9de14b7bed4f7c5c4f174f8f68b",
      "parents": [
        "c8f0fb36bffa9e21d214a2910b825567d52bfc2c"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Fri Dec 12 15:16:38 2008 +0100"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:11:59 2009 +0100"
      },
      "message": "AMD IOMMU: add stats counter for free_coherent requests\n\nImpact: see number of free_coherent requests in debugfs\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "c8f0fb36bffa9e21d214a2910b825567d52bfc2c",
      "tree": "6bd89aae7d27da187c5bb8484d09527f2c3725d0",
      "parents": [
        "55877a6bcdf0843414eecc658550c6551f5b5e1d"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Fri Dec 12 15:14:21 2008 +0100"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:11:59 2009 +0100"
      },
      "message": "AMD IOMMU: add stats counter for alloc_coherent requests\n\nImpact: see number of alloc_coherent requests in debugfs\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "55877a6bcdf0843414eecc658550c6551f5b5e1d",
      "tree": "360fcc7c677260b372c5875a7b88966f79752eee",
      "parents": [
        "d03f067a9d0a1cc09529427af9a15e15d32ba1de"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Fri Dec 12 15:12:14 2008 +0100"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:11:59 2009 +0100"
      },
      "message": "AMD IOMMU: add stats counter for unmap_sg requests\n\nImpact: see number of unmap_sg requests in debugfs\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "d03f067a9d0a1cc09529427af9a15e15d32ba1de",
      "tree": "6d09e8029cd35ed8bf769cb8af662fbac81a1a30",
      "parents": [
        "146a6917fc30616401a090f55cff2b855ee5b2ab"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Fri Dec 12 15:09:48 2008 +0100"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:11:59 2009 +0100"
      },
      "message": "AMD IOMMU: add stats counter for map_sg requests\n\nImpact: see number of map_sg requests in debugfs\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "146a6917fc30616401a090f55cff2b855ee5b2ab",
      "tree": "b931b7a2d3e8eb049a129216767c66b8586bbdd9",
      "parents": [
        "0f2a86f200bc97ae6cefc5d3ac879094b3fcde48"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Fri Dec 12 15:07:12 2008 +0100"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:11:59 2009 +0100"
      },
      "message": "AMD IOMMU: add stats counter for unmap_single requests\n\nImpact: see number of unmap_single requests in debugfs\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "0f2a86f200bc97ae6cefc5d3ac879094b3fcde48",
      "tree": "a1ae52873ab4bcda1e9db4cb1f0ff67450832d31",
      "parents": [
        "da49f6df726ecaaee87757e8b65a560679d32f99"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Fri Dec 12 15:05:16 2008 +0100"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:11:59 2009 +0100"
      },
      "message": "AMD IOMMU: add stats counter for map_single requests\n\nImpact: see number of map_single requests in debugfs\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "da49f6df726ecaaee87757e8b65a560679d32f99",
      "tree": "e17afeec5a4f7aabaf7754288bfba9caafa0d13e",
      "parents": [
        "7f26508bbb76ce86aad1130ef6b7f1a4bb7de0c2"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Fri Dec 12 14:59:58 2008 +0100"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:11:58 2009 +0100"
      },
      "message": "AMD IOMMU: add stats counter for completion wait events\n\nImpact: see number of completion wait events in debugfs\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "7f26508bbb76ce86aad1130ef6b7f1a4bb7de0c2",
      "tree": "92efde72a5101c1aed8858272f150c1c281bc3b8",
      "parents": [
        "a9dddbe0497ab0df7ee729e8d4cb0ee2dec3e4ba"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Fri Dec 12 13:50:21 2008 +0100"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:11:58 2009 +0100"
      },
      "message": "AMD IOMMU: add init code for statistic collection\n\nImpact: create a new debugfs directory\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "a9dddbe0497ab0df7ee729e8d4cb0ee2dec3e4ba",
      "tree": "c86bed8b228e49808948fc7d42dd528b8086b4ef",
      "parents": [
        "2e117604a4e8f3f9cee4aec3373b0382159e152a"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Fri Dec 12 12:33:06 2008 +0100"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:11:58 2009 +0100"
      },
      "message": "AMD IOMMU: add necessary header defines for stats counting\n\nImpact: add defines to make iommu stats collection configurable\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "2e117604a4e8f3f9cee4aec3373b0382159e152a",
      "tree": "e0691ee22ff5ff11fa1a6d2aefb4b1dccace62d6",
      "parents": [
        "a4e267c88b4acfc87ff2ab0cc8e9509878e9aaba"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Thu Dec 11 19:00:12 2008 +0100"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:11:57 2009 +0100"
      },
      "message": "AMD IOMMU: add Kconfig entry for statistic collection code\n\nImpact: adds new Kconfig entry\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "a4e267c88b4acfc87ff2ab0cc8e9509878e9aaba",
      "tree": "5f988f95122a0dcaf1d3ab0d34c76fcf0ecca271",
      "parents": [
        "edcb34da259c503a2ffd37e51a658672ba3bc7a2"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Wed Dec 10 20:04:18 2008 +0100"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:11:57 2009 +0100"
      },
      "message": "AMD IOMMU: use dev_name in iommu_enable function\n\nImpact: cleanup\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "edcb34da259c503a2ffd37e51a658672ba3bc7a2",
      "tree": "18b4ade67c091b286497610f43b826af6c8feab3",
      "parents": [
        "c226f853091577e665ebc02c064af4834d8d4f28"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Wed Dec 10 20:01:45 2008 +0100"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:11:57 2009 +0100"
      },
      "message": "AMD IOMMU: use calc_devid in prealloc_protection_domains\n\nImpact: cleanup\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "c226f853091577e665ebc02c064af4834d8d4f28",
      "tree": "8f5921882509057efd8e81f70039dfe51a1f9012",
      "parents": [
        "0cfd7aa90be83a4d278810d231f9ef03f189b4f0"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Fri Dec 12 13:53:54 2008 +0100"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:11:57 2009 +0100"
      },
      "message": "AMD IOMMU: convert amd_iommu_isolate to bool\n\nImpact: cleanup\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "0cfd7aa90be83a4d278810d231f9ef03f189b4f0",
      "tree": "28151dc0607770460c563553f89c8c4d58908bd9",
      "parents": [
        "ab896722867602eb0e836717e8b857ad513800d8"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Wed Dec 10 19:58:00 2008 +0100"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:11:57 2009 +0100"
      },
      "message": "AMD IOMMU: convert iommu-\u003eneed_sync to bool\n\nImpact: use bool instead of int for iommu-\u003eneed_sync\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "ab896722867602eb0e836717e8b857ad513800d8",
      "tree": "7d7b454aa3612e00f206ea6970e7213e9900d833",
      "parents": [
        "1ac4cbbc5eb56de96d264d10f464ba5222815b1b"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Wed Dec 10 19:43:07 2008 +0100"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:11:56 2009 +0100"
      },
      "message": "AMD IOMMU: use dev_name instead of self-build print_devid\n\nImpact: use generic dev_name instead of own function\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "1ac4cbbc5eb56de96d264d10f464ba5222815b1b",
      "tree": "1d98c0382683b4c7ec40602273fed14aabf222c7",
      "parents": [
        "e2dc14a2a6c9a83baaafc51f06b7e73cec2167be"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Wed Dec 10 19:33:26 2008 +0100"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:11:56 2009 +0100"
      },
      "message": "AMD IOMMU: allocate a new protection for hotplugged devices\n\nImpact: also hotplug devices benefit from device isolation\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "e2dc14a2a6c9a83baaafc51f06b7e73cec2167be",
      "tree": "ba2344f04adac30ab1c4e5cace83b5390f0d7580",
      "parents": [
        "26961efe0dab9ca73f8fc3b6137b814252e04972"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Wed Dec 10 18:48:59 2008 +0100"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:11:56 2009 +0100"
      },
      "message": "AMD IOMMU: add a domain flag for default domains\n\nImpact: adds a new protection domain flag\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "26961efe0dab9ca73f8fc3b6137b814252e04972",
      "tree": "583ac900610279c4103aac5b1112cc9052d3855e",
      "parents": [
        "645c4c8d7289a718c9c828ec217f2b94e3b3e6ff"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Wed Dec 03 17:00:17 2008 +0100"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:11:56 2009 +0100"
      },
      "message": "AMD IOMMU: register functions for the IOMMU API\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "645c4c8d7289a718c9c828ec217f2b94e3b3e6ff",
      "tree": "9f6e26175240dce2a9264f0acbce9ea26c216511",
      "parents": [
        "eb74ff6cc0080c7f6270fdfffba65c4eff23d3ad"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Tue Dec 02 20:05:50 2008 +0100"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:11:56 2009 +0100"
      },
      "message": "AMD IOMMU: add domain address lookup function for IOMMU API\n\nImpact: add a generic function to lockup addresses in protection domains\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "eb74ff6cc0080c7f6270fdfffba65c4eff23d3ad",
      "tree": "243b07c9511fd7ca216e0d5512f66415ee97f39a",
      "parents": [
        "c6229ca649aa9b312d1f1de20af8d2603b14eead"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Tue Dec 02 19:59:10 2008 +0100"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:11:56 2009 +0100"
      },
      "message": "AMD IOMMU: add domain unmap function for IOMMU API\n\nImpact: add a generic function to unmap pages into protection domains\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "c6229ca649aa9b312d1f1de20af8d2603b14eead",
      "tree": "2df5caa2708e5566e8e9acb82fa22aac9fc3a2d3",
      "parents": [
        "01106066a6900b518debe990ddaadf376d433bd6"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Tue Dec 02 19:48:43 2008 +0100"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:11:56 2009 +0100"
      },
      "message": "AMD IOMMU: add domain map function for IOMMU API\n\nImpact: add a generic function to map pages into protection domains\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "01106066a6900b518debe990ddaadf376d433bd6",
      "tree": "29d3a651a6c0d50fe372df4585e20b6322ffd2e2",
      "parents": [
        "684f2888847b896faafed87ce4733501d2cc283c"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Tue Dec 02 19:34:11 2008 +0100"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:11:56 2009 +0100"
      },
      "message": "AMD IOMMU: add device attach function for IOMMU API\n\nImpact: add a generic function to attach devices to protection domains\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "684f2888847b896faafed87ce4733501d2cc283c",
      "tree": "81ec9b19379b95536b61e98dca1ee4dc3c1596f6",
      "parents": [
        "98383fc301c6546af0f3a8a1d3cb8bf218f7e940"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Mon Dec 08 12:07:44 2008 +0100"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:11:55 2009 +0100"
      },
      "message": "AMD IOMMU: add device detach function for IOMMU API\n\nImpact: add a generic function to detach devices from protection domains\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "98383fc301c6546af0f3a8a1d3cb8bf218f7e940",
      "tree": "c376128da8396b1177996c60c63c1cc86aaf8458",
      "parents": [
        "c156e347d6d3c36b6843c3b168eda61b9a02c827"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Tue Dec 02 18:34:12 2008 +0100"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:11:55 2009 +0100"
      },
      "message": "AMD IOMMU: add domain destroy function for IOMMU API\n\nImpact: add a generic function for releasing protection domains\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "c156e347d6d3c36b6843c3b168eda61b9a02c827",
      "tree": "d175cd43d1f70e5d10d4f27bf0f5eb2e268ec6fe",
      "parents": [
        "6d98cd8043c13438e4ca8a9464893f0224198a30"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Tue Dec 02 18:13:27 2008 +0100"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:11:55 2009 +0100"
      },
      "message": "AMD IOMMU: add domain init function for IOMMU API\n\nImpact: add a generic function for allocation protection domains\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "6d98cd8043c13438e4ca8a9464893f0224198a30",
      "tree": "2ffaa5b1391188fe99a306473650d3b18bb50e15",
      "parents": [
        "e275a2a0fc9e2168b15f6c7814e30b7ad58b1c7c"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Mon Dec 08 12:05:55 2008 +0100"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:11:55 2009 +0100"
      },
      "message": "AMD IOMMU: add domain cleanup helper function\n\nImpact: add a function to remove all devices from a domain\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "e275a2a0fc9e2168b15f6c7814e30b7ad58b1c7c",
      "tree": "d9cb9771b53c0d631497eb248667c56e1a6a6deb",
      "parents": [
        "355bf553edb7fe21ada51f62c849180bec6da877"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Wed Dec 10 18:27:25 2008 +0100"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:11:55 2009 +0100"
      },
      "message": "AMD IOMMU: add device notifier callback\n\nImpact: inform IOMMU about state change of a device in the driver core\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "355bf553edb7fe21ada51f62c849180bec6da877",
      "tree": "64c0c55bd838aa70b5395ea566b23e6b744d9780",
      "parents": [
        "f1179dc005ee2b0e55c3f74f3552c3e9ef852265"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Mon Dec 08 12:02:41 2008 +0100"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:11:55 2009 +0100"
      },
      "message": "AMD IOMMU: add device detach helper functions\n\nImpact: add helper functions to detach a device from a domain\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "f1179dc005ee2b0e55c3f74f3552c3e9ef852265",
      "tree": "6b4d80d85937f505a78bbce9e31219cff4c0daa0",
      "parents": [
        "863c74ebd0152b21bc4b11c1447b5d1429287d37"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Wed Dec 10 14:39:51 2008 +0100"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:11:54 2009 +0100"
      },
      "message": "AMD IOMMU: rename set_device_domain function\n\nImpact: rename set_device_domain() to attach_device()\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "863c74ebd0152b21bc4b11c1447b5d1429287d37",
      "tree": "a679b7a5754e365635b000fe4b529e181d773e02",
      "parents": [
        "5b28df6f43ac9878f310ad0cb7f11ddb262a7ac6"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Tue Dec 02 17:56:36 2008 +0100"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:11:54 2009 +0100"
      },
      "message": "AMD IOMMU: add device reference counting for protection domains\n\nImpact: know how many devices are assigned to a domain\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "5b28df6f43ac9878f310ad0cb7f11ddb262a7ac6",
      "tree": "9045d718c721886b90e7de98b572881f2482cdc1",
      "parents": [
        "9fdb19d64c0247f23343b51fc85f438f8e7a2f3c"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Tue Dec 02 17:49:42 2008 +0100"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:11:54 2009 +0100"
      },
      "message": "AMD IOMMU: add checks for dma_ops domain to dma_ops functions\n\nImpact: detect when a driver uses a device assigned otherwise\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "9fdb19d64c0247f23343b51fc85f438f8e7a2f3c",
      "tree": "4950b0193aa74489da7150cf5cacccb1c5125823",
      "parents": [
        "43f4960983a309568a6c4375f081e63fb2ff24a3"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Tue Dec 02 17:46:25 2008 +0100"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:11:54 2009 +0100"
      },
      "message": "AMD IOMMU: add protection domain flags\n\nImapct: add a new struct member to \u0027struct protection_domain\u0027\n\nWhen using protection domains for dma_ops and KVM its better to know for\nwhich subsystem it was allocated. Add a flags member to struct\nprotection domain for that purpose.\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "43f4960983a309568a6c4375f081e63fb2ff24a3",
      "tree": "44291b360182d0f2e6ca2fa8958476788fa0345d",
      "parents": [
        "9e919012e33c481991e46aa4cb13d807cd47b798"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Tue Dec 02 21:01:12 2008 +0100"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:11:54 2009 +0100"
      },
      "message": "AMD IOMMU: add iommu_flush_domain function\n\nImpact: add a function to flush a domain id on every IOMMU\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "9e919012e33c481991e46aa4cb13d807cd47b798",
      "tree": "cba1c652c818ed0618c265a5e969a37707ce8fe2",
      "parents": [
        "237b6f33291394c337ae84e2d3782d5605803af2"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Wed Dec 10 20:05:52 2008 +0100"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:11:54 2009 +0100"
      },
      "message": "AMD IOMMU: don\u0027t remove protection domain from iommu_pd_list\n\nImpact: save unneeded logic to add and remove domains to the list\n\nThe removal of a protection domain from the iommu_pd_list is not\nnecessary. Another benefit is that we save complexity because we don\u0027t\nhave to readd it later when the device no longer uses the domain.\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "237b6f33291394c337ae84e2d3782d5605803af2",
      "tree": "774b6ad48b008c707ac9087eeac25a84b3472c8e",
      "parents": [
        "8d201968e15f56ae2837b0d0b64d3fff098857b0"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Tue Dec 02 20:54:37 2008 +0100"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:11:54 2009 +0100"
      },
      "message": "AMD IOMMU: move invalidation command building to a separate function\n\nImpact: refactoring of iommu_queue_inv_iommu_pages\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "8d201968e15f56ae2837b0d0b64d3fff098857b0",
      "tree": "c2f57f4c599e8f401b3ddc2614840014be4a34e4",
      "parents": [
        "a2acfb75792511a35586db80a38b8e4701a97730"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Tue Dec 02 20:34:41 2008 +0100"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:11:54 2009 +0100"
      },
      "message": "AMD IOMMU: refactor completion wait handling into separate functions\n\nImpact: split one function into three\n\nThe separate functions are required synchronize commands across all\nhardware IOMMUs in the system.\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "a2acfb75792511a35586db80a38b8e4701a97730",
      "tree": "e031a8dc61aa93fe3f43f86647c30f151bfa9f55",
      "parents": [
        "86db2e5d47bfa61a151d6ac83263f4bde4d52290"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Tue Dec 02 18:28:53 2008 +0100"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:11:53 2009 +0100"
      },
      "message": "AMD IOMMU: add domain id free function\n\nImpact: add code to release a domain id\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "86db2e5d47bfa61a151d6ac83263f4bde4d52290",
      "tree": "b6ff290a63a27205b565b39189d6fd4ce2b15703",
      "parents": [
        "38e817febe2f12bd2fbf92a1df36f41946d0c223"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Tue Dec 02 18:20:21 2008 +0100"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:11:53 2009 +0100"
      },
      "message": "AMD IOMMU: make dma_ops_free_pagetable generic\n\nImpact: change code to free pagetables from protection domains\n\nThe dma_ops_free_pagetable function can only free pagetables from\ndma_ops domains. Change that to free pagetables of pure protection\ndomains.\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "38e817febe2f12bd2fbf92a1df36f41946d0c223",
      "tree": "ab1f4ab84ebec0b78d4f09954061aada51a603cc",
      "parents": [
        "6680598b44ed3c0052d155522eb21fc5a00de5f3"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Tue Dec 02 17:27:52 2008 +0100"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:11:53 2009 +0100"
      },
      "message": "AMD IOMMU: rename iommu_map to iommu_map_page\n\nImpact: function rename\n\nThe iommu_map function maps only one page. Make this clear in the\nfunction name.\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "19de40a8472fa64693eab844911eec277d489f6c",
      "tree": "502a8df560341ad715965ed39db33c720c657066",
      "parents": [
        "1aaf118352b85bb359ce28070bcc478f659a7031"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Wed Dec 03 14:43:34 2008 +0100"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:11:07 2009 +0100"
      },
      "message": "KVM: change KVM to use IOMMU API\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "1aaf118352b85bb359ce28070bcc478f659a7031",
      "tree": "101fe9b227c81576d735fedbf4533ce60343ad29",
      "parents": [
        "fc2100eb4d0960b56c2c705a97941c08fb1c0fd4"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Wed Nov 26 17:25:13 2008 +0100"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:10:09 2009 +0100"
      },
      "message": "select IOMMU_API when DMAR and/or AMD_IOMMU is selected\n\nThese two IOMMUs can implement the current version of this API. So\nselect the API if one or both of these IOMMU drivers is selected.\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "c4fa3864281c7d88b7262cbc6cbd5c90bb59860e",
      "tree": "21209dceb4d978e24a009b848115d0d8bea0cbcc",
      "parents": [
        "b653574a7d14b663cc812cb20be6a114939ba186"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Wed Nov 26 15:51:19 2008 +0100"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:10:09 2009 +0100"
      },
      "message": "KVM: rename vtd.c to iommu.c\n\nImpact: file renamed\n\nThe code in the vtd.c file can be reused for other IOMMUs as well. So\nrename it to make it clear that it handle more than VT-d.\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "9ddabc2a29163e4b243d10c5e06fc5584073d7ad",
      "tree": "8dc8f18dad59db86ad91e0500b35aa1558838c92",
      "parents": [
        "ee38e5140bafbf40e1bd25ab917ac8db54a27799"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Sat Jan 03 16:16:04 2009 +1030"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Sat Jan 03 16:16:04 2009 +1030"
      },
      "message": "h8300: define __fls\n\nLike fls, but can\u0027t be handed 0 and returns the bit number.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "0999769e6cad9b0e5abb7c513c0c3f16821f0884",
      "tree": "a3b48abf6454950045f14dff6e7ee9fa82e80428",
      "parents": [
        "8c384cdee3e04d6194a2c2b192b624754f990835"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Sat Jan 03 15:37:14 2009 +1030"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Sat Jan 03 15:37:14 2009 +1030"
      },
      "message": "cris: define __fls\n\nLike fls, but can\u0027t be handed 0 and returns the bit number.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "56635f7e6197404d7363f8dcaa7a97abf57276fb",
      "tree": "510b8df93c8a595fa42c1bb65b103632c1076c58",
      "parents": [
        "a8e782348d9f0dc64f6adb81f5f6959921949f13",
        "b67ff8ce122f3353bd741db48ce1756c12fb5f2d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 02 15:56:54 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 02 15:56:54 2009 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild-next\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild-next:\n  kbuild: ignore a few files in headers_check\n  kbuild: add checks for include of linux/types in userspace headers\n  kbuild: drop debugging leftover in tags.sh\n  kbuild: document environment variables\n  kbuild: make *config usage docs\n  kbuild: disable sparse warning \"returning void-valued expression\"\n  kbuild: in headers_install autoconvert asm/inline/volatile to __xxx__\n  kbuild: check for leaked CONFIG_ symbols to userspace\n  headers_check.pl: disallow extern\u0027s\n  kconfig: improve error messages for bad source statements\n  kconfig: struct property commented\n  kconfig: add comments to symbol flags\n  kconfig: explain symbol value defaults\n  m68k: fix recursive dependency in Kconfig\n"
    },
    {
      "commit": "47dabdc7fcd4daa52dcda72a1f18603dd168355d",
      "tree": "aeaa463372bf5e37fb61768b5f766b0926199c07",
      "parents": [
        "923a789b49c7269a0245d5af6afe486188d940df",
        "46814dded1b972a07b1609d81632eef3009fbb10"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 02 22:41:52 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 02 22:41:52 2009 +0100"
      },
      "message": "Merge branches \u0027x86/cleanups\u0027, \u0027x86/fpu\u0027 and \u0027x86/urgent\u0027 into x86/core\n"
    },
    {
      "commit": "923a789b49c7269a0245d5af6afe486188d940df",
      "tree": "c3f168427372e64f7467a794f313416da5086ba0",
      "parents": [
        "103ceffb9501531f6931df6aebc11a05189201f0",
        "b840d79631c882786925303c2b0f4fefc31845ed"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 02 22:41:36 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 02 22:41:36 2009 +0100"
      },
      "message": "Merge branch \u0027linus\u0027 into x86/cleanups\n\nConflicts:\n\tarch/x86/kernel/reboot.c\n"
    },
    {
      "commit": "b840d79631c882786925303c2b0f4fefc31845ed",
      "tree": "cda60a95d4507fe1321fc285af38982d7eb9693b",
      "parents": [
        "597b0d21626da4e6f09f132442caf0cc2b0eb47c",
        "c3d80000e3a812fe5a200d6bde755fbd7fa65481"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 02 11:44:09 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 02 11:44:09 2009 -0800"
      },
      "message": "Merge branch \u0027cpus4096-for-linus-2\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027cpus4096-for-linus-2\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (66 commits)\n  x86: export vector_used_by_percpu_irq\n  x86: use logical apicid in x2apic_cluster\u0027s x2apic_cpu_mask_to_apicid_and()\n  sched: nominate preferred wakeup cpu, fix\n  x86: fix lguest used_vectors breakage, -v2\n  x86: fix warning in arch/x86/kernel/io_apic.c\n  sched: fix warning in kernel/sched.c\n  sched: move test_sd_parent() to an SMP section of sched.h\n  sched: add SD_BALANCE_NEWIDLE at MC and CPU level for sched_mc\u003e0\n  sched: activate active load balancing in new idle cpus\n  sched: bias task wakeups to preferred semi-idle packages\n  sched: nominate preferred wakeup cpu\n  sched: favour lower logical cpu number for sched_mc balance\n  sched: framework for sched_mc/smt_power_savings\u003dN\n  sched: convert BALANCE_FOR_xx_POWER to inline functions\n  x86: use possible_cpus\u003dNUM to extend the possible cpus allowed\n  x86: fix cpu_mask_to_apicid_and to include cpu_online_mask\n  x86: update io_apic.c to the new cpumask code\n  x86: Introduce topology_core_cpumask()/topology_thread_cpumask()\n  x86: xen: use smp_call_function_many()\n  x86: use work_on_cpu in x86/kernel/cpu/mcheck/mce_amd_64.c\n  ...\n\nFixed up trivial conflict in kernel/time/tick-sched.c manually\n"
    },
    {
      "commit": "cfb2a494bb7dca9cf8d1632fbed14b34db051980",
      "tree": "744957f50f66f14e43d6928d723efc390e4e0a42",
      "parents": [
        "2640c9a90fa596871e142f42052608864335f102"
      ],
      "author": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Fri Dec 26 22:41:18 2008 +0100"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Fri Jan 02 20:43:20 2009 +0100"
      },
      "message": "m68k: fix recursive dependency in Kconfig\n\nWe had a recursive dependency between MMU_MOTOROLA and MMU_SUN3\nFix it by dropping the unused dependencies on MMU_MOTOROLA.\n\nMMU_MOTOROLA is set to y only using select so any dependencies\nare anyway ignored.\n\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\nAcked-by: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nCc: Roman Zippel \u003czippel@linux-m68k.org\u003e\n"
    },
    {
      "commit": "597b0d21626da4e6f09f132442caf0cc2b0eb47c",
      "tree": "13c0074bb20f7b05a471e78d4ff52c665a10266a",
      "parents": [
        "2640c9a90fa596871e142f42052608864335f102",
        "87917239204d67a316cb89751750f86c9ed3640b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 02 11:41:11 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 02 11:41:11 2009 -0800"
      },
      "message": "Merge branch \u0027kvm-updates/2.6.29\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/avi/kvm\n\n* \u0027kvm-updates/2.6.29\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/avi/kvm: (140 commits)\n  KVM: MMU: handle large host sptes on invlpg/resync\n  KVM: Add locking to virtual i8259 interrupt controller\n  KVM: MMU: Don\u0027t treat a global pte as such if cr4.pge is cleared\n  MAINTAINERS: Maintainership changes for kvm/ia64\n  KVM: ia64: Fix kvm_arch_vcpu_ioctl_[gs]et_regs()\n  KVM: x86: Rework user space NMI injection as KVM_CAP_USER_NMI\n  KVM: VMX: Fix pending NMI-vs.-IRQ race for user space irqchip\n  KVM: fix handling of ACK from shared guest IRQ\n  KVM: MMU: check for present pdptr shadow page in walk_shadow\n  KVM: Consolidate userspace memory capability reporting into common code\n  KVM: Advertise the bug in memory region destruction as fixed\n  KVM: use cpumask_var_t for cpus_hardware_enabled\n  KVM: use modern cpumask primitives, no cpumask_t on stack\n  KVM: Extract core of kvm_flush_remote_tlbs/kvm_reload_remote_mmus\n  KVM: set owner of cpu and vm file operations\n  anon_inodes: use fops-\u003eowner for module refcount\n  x86: KVM guest: kvm_get_tsc_khz: return khz, not lpj\n  KVM: MMU: prepopulate the shadow on invlpg\n  KVM: MMU: skip global pgtables on sync due to cr3 switch\n  KVM: MMU: collapse remote TLB flushes on root sync\n  ...\n"
    },
    {
      "commit": "e8e32326279cba3d049b4325111f76618953195c",
      "tree": "495736a4c13c6558b85da583ce4a55e1cf51c2c9",
      "parents": [
        "d2fde28ce793c09c1ea36d981cb6765174fd1eea"
      ],
      "author": {
        "name": "Ingo Brueckl",
        "email": "ib@wupperonline.de",
        "time": "Fri Jan 02 14:42:00 2009 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 02 10:27:32 2009 -0800"
      },
      "message": "Fix compiler warning in arch/x86/mm/init_32.c\n\nSigned-off-by: Ingo Brueckl \u003cib@wupperonline.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "103ceffb9501531f6931df6aebc11a05189201f0",
      "tree": "7dd5991d13934cca3b47816d4b83fd98e4972fca",
      "parents": [
        "dceb4521c8ed24b9fe4230e0d385cf4770260383"
      ],
      "author": {
        "name": "Jaswinder Singh Rajput",
        "email": "jaswinder@infradead.org",
        "time": "Fri Jan 02 23:43:25 2009 +0530"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 02 19:24:28 2009 +0100"
      },
      "message": "x86: mpparse.c fix style problems\n\nImpact: cleanup, fix style problems, more readable\n\nFixes style problems:\n\n WARNING: Use #include \u003clinux/smp.h\u003e instead of \u003casm/smp.h\u003e\n WARNING: Use #include \u003clinux/acpi.h\u003e instead of \u003casm/acpi.h\u003e\n WARNING: suspect code indent for conditional statements (8, 17)\n WARNING: space prohibited between function name and open parenthesis \u0027(\u0027\n\ntotal: 0 errors, 5 warnings\n\nSigned-off-by: Jaswinder Singh Rajput \u003cjaswinderrajput@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "dceb4521c8ed24b9fe4230e0d385cf4770260383",
      "tree": "0c24613f9ab11495eddfa17a1b350cf1d81a8e7b",
      "parents": [
        "423a54058f746579aff1430877dbc82f17442b34"
      ],
      "author": {
        "name": "Jaswinder Singh Rajput",
        "email": "jaswinder@infradead.org",
        "time": "Wed Dec 31 17:35:02 2008 +0530"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 02 19:03:38 2009 +0100"
      },
      "message": "x86: nmi.c fix style problems\n\nImpact: cleanup, fix style problems\n\nFixes style problems:\n\n WARNING: Use #include \u003clinux/smp.h\u003e instead of \u003casm/smp.h\u003e\n WARNING: Use #include \u003clinux/nmi.h\u003e instead of \u003casm/nmi.h\u003e\n\ntotal: 0 errors, 2 warnings\n\nSigned-off-by: Jaswinder Singh Rajput \u003cjaswinderrajput@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "423a54058f746579aff1430877dbc82f17442b34",
      "tree": "40ec10caf2801df607d8aa52233583b67b728e7f",
      "parents": [
        "f634fa941188a91dbf1dab961fe7a4509852fd6e"
      ],
      "author": {
        "name": "Jaswinder Singh Rajput",
        "email": "jaswinder@infradead.org",
        "time": "Wed Dec 31 16:42:20 2008 +0530"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 02 17:46:24 2009 +0100"
      },
      "message": "x86: ldt.c fix style problems\n\nImpact: cleanup\n\nFixes style problems:\n\n WARNING: Use #include \u003clinux/uaccess.h\u003e instead of \u003casm/uaccess.h\u003e\n ERROR: space required before the open parenthesis \u0027(\u0027\n\ntotal: 1 errors, 1 warnings\n\nSigned-off-by: Jaswinder Singh Rajput \u003cjaswinderrajput@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "f634fa941188a91dbf1dab961fe7a4509852fd6e",
      "tree": "3c38c650db6e0ab2a8e916f86a2c9c9b1f73ba5e",
      "parents": [
        "a9067d537615d534dcef06c0d819472e43a0d152"
      ],
      "author": {
        "name": "Jaswinder Singh Rajput",
        "email": "jaswinder@infradead.org",
        "time": "Wed Dec 31 16:29:48 2008 +0530"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 02 17:46:23 2009 +0100"
      },
      "message": "x86: cpuid.c fix style problems\n\nImpact: cleanup\n\nFixes style problems:\n\n WARNING: Use #include \u003clinux/uaccess.h\u003e instead of \u003casm/uaccess.h\u003e\n ERROR: \"foo * bar\" should be \"foo *bar\"\n ERROR: trailing whitespace\n WARNING: usage of NR_CPUS is often wrong - consider using cpu_possible(), num_possible_cpus(), for_each_possible_cpu(), etc\n\ntotal: 2 errors, 2 warnings\n\nSigned-off-by: Jaswinder Singh Rajput \u003cjaswinderrajput@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "46814dded1b972a07b1609d81632eef3009fbb10",
      "tree": "be7b73a1c90b0c206e1de5ff90a095c71c242069",
      "parents": [
        "26799a63110dcbe81291ea53178f6b4810d07424"
      ],
      "author": {
        "name": "Cliff Wickman",
        "email": "cpw@sgi.com",
        "time": "Wed Dec 31 13:20:50 2008 -0600"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 02 17:26:25 2009 +0100"
      },
      "message": "x86, UV: remove erroneous BAU initialization\n\nImpact: fix crash on x86/UV\n\nUV is the SGI \"UltraViolet\" machine, which is x86_64 based.\nBAU is the \"Broadcast Assist Unit\", used for TLB shootdown in UV.\n\nThis patch removes the allocation and initialization of an unused table.\n\nThis table is left over from a development test mode.  It is unused in\nthe present code.\n\nAnd it was incorrectly initialized: 8 entries allocated but 17 initialized,\ncausing slab corruption.\n\nThis patch should go into 2.6.27 and 2.6.28 as well as the current tree.\n\nDiffed against 2.6.28 (linux-next, 12/30/08)\n\nSigned-off-by: Cliff Wickman \u003ccpw@sgi.com\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "26799a63110dcbe81291ea53178f6b4810d07424",
      "tree": "0bdbd0ff3ed50b310d3851f8ab203e7b9c8c4a3c",
      "parents": [
        "b58602a4bac012b5f4fc12fe6b46ab237b610d5d"
      ],
      "author": {
        "name": "Ravikiran G Thirumalai",
        "email": "kiran@scalex86.org",
        "time": "Wed Dec 31 13:44:46 2008 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 02 17:16:29 2009 +0100"
      },
      "message": "x86: fix incorrect __read_mostly on _boot_cpu_pda\n\nThe pda rework (commit 3461b0af025251bbc6b3d56c821c6ac2de6f7209)\nto remove static boot cpu pdas introduced a performance bug.\n\n_boot_cpu_pda is the actual pda used by the boot cpu and is definitely\nnot \"__read_mostly\" and ended up polluting the read mostly section with\nwrites.  This bug caused regression of about 8-10% on certain syscall\nintensive workloads.\n\nSigned-off-by: Ravikiran Thirumalai \u003ckiran@scalex86.org\u003e\nAcked-by: Mike Travis \u003ctravis@sgi.com\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "a9067d537615d534dcef06c0d819472e43a0d152",
      "tree": "471f20f9fee20cd16688b88b037ef9529fa6665e",
      "parents": [
        "c64d8996bd758cedc2ddc04b86ca66fa1d8599cf"
      ],
      "author": {
        "name": "Ingo Brueckl",
        "email": "ib@wupperonline.de",
        "time": "Fri Jan 02 14:42:00 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 02 15:41:03 2009 +0100"
      },
      "message": "x86: convert permanent_kmaps_init() from macro to inline\n\nImpact: cleanup\n\nThis compiler warning:\n\n  arch/x86/mm/init_32.c:515: warning: unused variable \u0027pgd_base\u0027\n\ntriggers because permanent_kmaps_init() is a CPP macro in the\n!CONFIG_HIGHMEM case, that does not tell the compiler that the\n\u0027pgd_base\u0027 parameter is used.\n\nConvert permanent_kmaps_init() (and set_highmem_pages_init()) to\nC inline functions - which gives the parameter a proper type and\nwhich gets rid of the compiler warning as well.\n\nSigned-off-by: Ingo Brueckl \u003cib@wupperonline.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c64d8996bd758cedc2ddc04b86ca66fa1d8599cf",
      "tree": "527af3c84a8e8f10fd611f6ee5fca7a3a788f372",
      "parents": [
        "7820b75643a763abf595c99fab963000ffc8b5f0"
      ],
      "author": {
        "name": "Cyrill Gorcunov",
        "email": "gorcunov@gmail.com",
        "time": "Fri Jan 02 11:27:18 2009 +0300"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 02 10:27:46 2009 +0100"
      },
      "message": "x86: early_printk - use sizeof instead of hardcoded number\n\nImpact: cleanup\n\nSigned-off-by: Cyrill Gorcunov \u003cgorcunov@openvz.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b58602a4bac012b5f4fc12fe6b46ab237b610d5d",
      "tree": "38929e210a723f67fe2b945f37264bf3aae3c2c4",
      "parents": [
        "db200df0b3530f673d8e9f5bd535e9e10305842a",
        "1f3403fa640f9f7b135dee79f2d39d01c8ad4a08"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 31 15:57:56 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 31 15:57:56 2008 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6: (34 commits)\n  nfsd race fixes: jfs\n  nfsd race fixes: reiserfs\n  nfsd race fixes: ext4\n  nfsd race fixes: ext3\n  nfsd race fixes: ext2\n  nfsd/create race fixes, infrastructure\n  filesystem notification: create fs/notify to contain all fs notification\n  fs/block_dev.c: __read_mostly improvement and sb_is_blkdev_sb utilization\n  kill -\u003edir_notify()\n  filp_cachep can be static in fs/file_table.c\n  fix f_count description in Documentation/filesystems/files.txt\n  make INIT_FS use the __RW_LOCK_UNLOCKED initialization\n  take init_fs to saner place\n  kill vfs_permission\n  pass a struct path * to may_open\n  kill walk_init_root\n  remove incorrect comment in inode_permission\n  expand some comments (d_path / seq_path)\n  correct wrong function name of d_put in kernel document and source comment\n  fix switch_names() breakage in short-to-short case\n  ...\n"
    },
    {
      "commit": "d036e67b40f52bdd95392390108defbac7e53837",
      "tree": "4a00537671036c955c98891af9f4729332b35c50",
      "parents": [
        "6b954823c24f04ed026a8517f6bab5abda279db8"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu Jan 01 10:12:26 2009 +1030"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu Jan 01 10:12:26 2009 +1030"
      },
      "message": "cpumask: convert kernel/irq\n\nImpact: Reduce stack usage, use new cpumask API.  ALPHA mod!\n\nMain change is that irq_default_affinity becomes a cpumask_var_t, so\ntreat it as a pointer (this effects alpha).\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "333af15341b2f6cd813c054e1b441d7b6d8e9318",
      "tree": "1f78405a0d97d167cbd7f8cc4f7f586c92420d67",
      "parents": [
        "9150641dd17fe9e213ab3391c8ebfc228daa2d9d"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu Jan 01 10:12:21 2009 +1030"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu Jan 01 10:12:21 2009 +1030"
      },
      "message": "cpumask: Introduce topology_core_cpumask()/topology_thread_cpumask(): ia64\n\nImpact: New API\n\nThe old topology_core_siblings() and topology_thread_siblings() return\na cpumask_t; these new ones return a (const) struct cpumask *.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Mike Travis \u003ctravis@sgi.com\u003e\n"
    },
    {
      "commit": "9150641dd17fe9e213ab3391c8ebfc228daa2d9d",
      "tree": "34a7679283bde03191ecd0252b84885dbecca9a4",
      "parents": [
        "2bb23a63f22f0e2d91fee93ff5ca9c29e180b146"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu Jan 01 10:12:21 2009 +1030"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu Jan 01 10:12:21 2009 +1030"
      },
      "message": "cpumask: Introduce topology_core_cpumask()/topology_thread_cpumask(): powerpc\n\nImpact: New API\n\nThe old topology_core_siblings() and topology_thread_siblings() return\na cpumask_t; these new ones return a (const) struct cpumask *.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Mike Travis \u003ctravis@sgi.com\u003e\n"
    },
    {
      "commit": "2bb23a63f22f0e2d91fee93ff5ca9c29e180b146",
      "tree": "607938cb6d3f13663cb925b1d5bab4739d474673",
      "parents": [
        "78fd744f827586615da5b387fa9f0af1888601b6"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu Jan 01 10:12:20 2009 +1030"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu Jan 01 10:12:20 2009 +1030"
      },
      "message": "cpumask: Introduce topology_core_cpumask()/topology_thread_cpumask(): s390\n\nImpact: New API\n\nThe old topology_core_siblings() and topology_thread_siblings() return\na cpumask_t; these new ones return a (const) struct cpumask *.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Mike Travis \u003ctravis@sgi.com\u003e\n"
    },
    {
      "commit": "78fd744f827586615da5b387fa9f0af1888601b6",
      "tree": "32f6f9507a314c1bbc2546c3d413ffc7ebcb7aa2",
      "parents": [
        "e0c0ba736547e81c4f986ce192307c549d214167"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu Jan 01 10:12:20 2009 +1030"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu Jan 01 10:12:20 2009 +1030"
      },
      "message": "cpumask: Introduce topology_core_cpumask()/topology_thread_cpumask(): sparc\n\nImpact: New API\n\nThe old topology_core_siblings() and topology_thread_siblings() return\na cpumask_t; these new ones return a (const) struct cpumask *.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Mike Travis \u003ctravis@sgi.com\u003e\n"
    },
    {
      "commit": "0db5d3d2f58804edb394e8008c7d9744110338a2",
      "tree": "7528110d1e7c979bfff709dc0b37b7af596939f3",
      "parents": [
        "434ae514c23047db87a8bbf39cebc9e1767aea44"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu Jan 01 10:12:18 2009 +1030"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu Jan 01 10:12:18 2009 +1030"
      },
      "message": "m68knommu: define __fls\n\nLike fls, but can\u0027t be handed 0 and returns the bit number.\n\n(I broke this arch in linux-next by using __fls in generic code).\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "ccec25ff69d5f48c7a088c16fe2dc7e11d9e87fe",
      "tree": "c51699546cd7c68ea84c2c720783097a6313f400",
      "parents": [
        "96b8d4c19d797200b973caab57ca842531184c13"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu Jan 01 10:12:17 2009 +1030"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu Jan 01 10:12:17 2009 +1030"
      },
      "message": "blackfin: define __fls\n\nLike fls, but can\u0027t be handed 0 and returns the bit number.\n\n(I broke this arch in linux-next by using __fls in generic code).\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nAcked-by: Mike Frysinger \u003cvapier@gentoo.org\u003e\n"
    },
    {
      "commit": "96b8d4c19d797200b973caab57ca842531184c13",
      "tree": "470d2388fa88558804d68d1e5e962c3d60f03b38",
      "parents": [
        "165ac433fa3f01ba99b29972f3adc283d03b0f17"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu Jan 01 10:12:16 2009 +1030"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu Jan 01 10:12:16 2009 +1030"
      },
      "message": "avr32: define __fls\n\nLike fls, but can\u0027t be handed 0 and returns the bit number.\n\n(I broke this arch in linux-next by using __fls in generic code).\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "165ac433fa3f01ba99b29972f3adc283d03b0f17",
      "tree": "4847117c4b569d531bee0e7874232eed9c0a49ee",
      "parents": [
        "915441b601e6662e79f6c958e7be307967a96977"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu Jan 01 10:12:16 2009 +1030"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu Jan 01 10:12:16 2009 +1030"
      },
      "message": "parisc: remove gratuitous cpu_online_map declaration.\n\nThis is defined in linux/cpumask.h (included in this file already),\nand this is now defined differently.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: linux-parisc@vger.kernel.org\n"
    },
    {
      "commit": "9e2f913df70b378379a358a44e7d286f7b765e8e",
      "tree": "c97316a74bd62fc6829581d9ea9a78e06529d8ac",
      "parents": [
        "6aaa8ce523c7ce954b81b8c0b3e32c8be599af8d"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu Jan 01 10:12:14 2009 +1030"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu Jan 01 10:12:14 2009 +1030"
      },
      "message": "percpu: fix percpu accessors to potentially !cpu_possible() cpus: m32r\n\nImpact: CPU iterator bugfixes\n\nPercpu areas are only allocated for possible cpus.  In general, you\nshouldn\u0027t access random cpu\u0027s percpu areas.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Mike Travis \u003ctravis@sgi.com\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nAcked-by: Hirokazu Takata \u003ctakata@linux-m32r.org\u003e\n"
    },
    {
      "commit": "f320786063a9d1f885d2cf34ab44aa69c1d88f43",
      "tree": "391e7c08bcff4665b347ed8ad19343f503981e58",
      "parents": [
        "2ca1a615835d9f4990f42102ab1f2ef434e7e89c"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu Jan 01 10:12:13 2009 +1030"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu Jan 01 10:12:13 2009 +1030"
      },
      "message": "cpumask: Remove IA64 definition of total_cpus now it\u0027s in core code\n\nImpact: fix IA64 compile\n\nFortunately, they have exactly the same semantics.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "18d8fda7c3c9439be04d7ea2e82da2513b121acb",
      "tree": "6b16a687205c7c027c719fd2249551f58f966618",
      "parents": [
        "cb23beb55100171646e69e248fb45f10db6e99a4"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Dec 26 00:35:37 2008 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 31 18:07:42 2008 -0500"
      },
      "message": "take init_fs to saner place\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "c2452f32786159ed85f0e4b21fec09258f822fc8",
      "tree": "50d93df47f4547a5699c87a608e85596e4c6165f",
      "parents": [
        "e2b689d82c0394e5239a3557a217f19e2f47f1be"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Mon Dec 01 09:33:43 2008 +0100"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 31 18:07:38 2008 -0500"
      },
      "message": "shrink struct dentry\n\nstruct dentry is one of the most critical structures in the kernel. So it\u0027s\nsad to see it going neglected.\n\nWith CONFIG_PROFILING turned on (which is probably the common case at least\nfor distros and kernel developers), sizeof(struct dcache) \u003d\u003d 208 here\n(64-bit). This gives 19 objects per slab.\n\nI packed d_mounted into a hole, and took another 4 bytes off the inline\nname length to take the padding out from the end of the structure. This\nshinks it to 200 bytes. I could have gone the other way and increased the\nlength to 40, but I\u0027m aiming for a magic number, read on...\n\nI then got rid of the d_cookie pointer. This shrinks it to 192 bytes. Rant:\nwhy was this ever a good idea? The cookie system should increase its hash\nsize or use a tree or something if lookups are a problem. Also the \"fast\ndcookie lookups\" in oprofile should be moved into the dcookie code -- how\ncan oprofile possibly care about the dcookie_mutex? It gets dropped after\nget_dcookie() returns so it can\u0027t be providing any sort of protection.\n\nAt 192 bytes, 21 objects fit into a 4K page, saving about 3MB on my system\nwith ~140 000 entries allocated. 192 is also a multiple of 64, so we get\nnice cacheline alignment on 64 and 32 byte line systems -- any given dentry\nwill now require 3 cachelines to touch all fields wheras previously it\nwould require 4.\n\nI know the inline name size was chosen quite carefully, however with the\nreduction in cacheline footprint, it should actually be just about as fast\nto do a name lookup for a 36 character name as it was before the patch (and\nfaster for other sizes). The memory footprint savings for names which are\n\u003c\u003d 32 or \u003e 36 bytes long should more than make up for the memory cost for\n33-36 byte names.\n\nPerformance is a feature...\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "db200df0b3530f673d8e9f5bd535e9e10305842a",
      "tree": "9a94039b8813452c51a50fcb45e95c32a9f0e537",
      "parents": [
        "ec270e59a74eee972006a87c8e12514a20588369",
        "43a256322ac1fc105c181b3cade3b9bfc0b63ca1"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 31 09:00:59 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 31 09:00:59 2008 -0800"
      },
      "message": "Merge branch \u0027irq-fixes-for-linus-4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027irq-fixes-for-linus-4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  sparseirq: move __weak symbols into separate compilation unit\n  sparseirq: work around __weak alias bug\n  sparseirq: fix hang with !SPARSE_IRQ\n  sparseirq: set lock_class for legacy irq when sparse_irq is selected\n  sparseirq: work around compiler optimizing away __weak functions\n  sparseirq: fix desc-\u003elock init\n  sparseirq: do not printk when migrating IRQ descriptors\n  sparseirq: remove duplicated arch_early_irq_init()\n  irq: simplify for_each_irq_desc() usage\n  proc: remove ifdef CONFIG_SPARSE_IRQ from stat.c\n  irq: for_each_irq_desc() move to irqnr.h\n  hrtimer: remove #include \u003clinux/irq.h\u003e\n"
    },
    {
      "commit": "87917239204d67a316cb89751750f86c9ed3640b",
      "tree": "f766f4ad19f08d16b87faa1de3c9ead2e6b3ea1e",
      "parents": [
        "3f353858c98dbe0240dac558a89870f4600f81bb"
      ],
      "author": {
        "name": "Marcelo Tosatti",
        "email": "mtosatti@redhat.com",
        "time": "Mon Dec 22 18:49:30 2008 -0200"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Wed Dec 31 16:55:49 2008 +0200"
      },
      "message": "KVM: MMU: handle large host sptes on invlpg/resync\n\nThe invlpg and sync walkers lack knowledge of large host sptes,\ndescending to non-existant pagetable level.\n\nStop at directory level in such case.\n\nFixes SMP Windows XP with hugepages.\n\nSigned-off-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "3f353858c98dbe0240dac558a89870f4600f81bb",
      "tree": "95cdddb90777c332f747dfff041e1caf1fe78673",
      "parents": [
        "25e2343246fe135fce672f41abe61e9d2c38caac"
      ],
      "author": {
        "name": "Avi Kivity",
        "email": "avi@qumranet.com",
        "time": "Sun Dec 21 22:48:32 2008 +0200"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Wed Dec 31 16:55:48 2008 +0200"
      },
      "message": "KVM: Add locking to virtual i8259 interrupt controller\n\nWhile most accesses to the i8259 are with the kvm mutex taken, the call\nto kvm_pic_read_irq() is not.  We can\u0027t easily take the kvm mutex there\nsince the function is called with interrupts disabled.\n\nFix by adding a spinlock to the virtual interrupt controller.  Since we\ncan\u0027t send an IPI under the spinlock (we also take the same spinlock in\nan irq disabled context), we defer the IPI until the spinlock is released.\nSimilarly, we defer irq ack notifications until after spinlock release to\navoid lock recursion.\n\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "25e2343246fe135fce672f41abe61e9d2c38caac",
      "tree": "76699895f67a24cbcdc05415068905d7e5be84c4",
      "parents": [
        "fe634fd46ff643d98fdbcd153847e08c3c076e6e"
      ],
      "author": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Dec 21 18:31:10 2008 +0200"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Wed Dec 31 16:55:48 2008 +0200"
      },
      "message": "KVM: MMU: Don\u0027t treat a global pte as such if cr4.pge is cleared\n\nThe pte.g bit is meaningless if global pages are disabled; deferring\nmmu page synchronization on these ptes will lead to the guest using stale\nshadow ptes.\n\nFixes Vista x86 smp bootloader failure.\n\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "042b26edf0bc1b0f03238a71aed71cca4593848c",
      "tree": "cc80cc9e7e097f53837d0eff67cb5186abcd6a17",
      "parents": [
        "4531220b71f0399e71cda0c4cf749e7281a7416a"
      ],
      "author": {
        "name": "Jes Sorensen",
        "email": "jes@sgi.com",
        "time": "Tue Dec 16 16:45:47 2008 +0100"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Wed Dec 31 16:55:47 2008 +0200"
      },
      "message": "KVM: ia64: Fix kvm_arch_vcpu_ioctl_[gs]et_regs()\n\nFix kvm_arch_vcpu_ioctl_[gs]et_regs() to do something meaningful on\nia64. Old versions could never have worked since they required\npointers to be set in the ioctl payload which were never being set by\nthe ioctl handler for get_regs.\n\nIn addition reserve extra space for future extensions.\n\nThe change of layout of struct kvm_regs doesn\u0027t require adding a new\nCAP since get/set regs never worked on ia64 until now.\n\nThis version doesn\u0027t support copying the KVM kernel stack in/out of\nthe kernel. This should be implemented in a seperate ioctl call if\never needed.\n\nSigned-off-by: Jes Sorensen \u003cjes@sgi.com\u003e\nAcked-by : Xiantao Zhang \u003cxiantao.zhang@intel.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "4531220b71f0399e71cda0c4cf749e7281a7416a",
      "tree": "2d0b71b97a15bdd6ede42d05b7b9b791c3891eb3",
      "parents": [
        "264ff01d55b456932cef03082448b41d2edeb6a1"
      ],
      "author": {
        "name": "Jan Kiszka",
        "email": "jan.kiszka@siemens.com",
        "time": "Thu Dec 11 16:54:54 2008 +0100"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Wed Dec 31 16:55:47 2008 +0200"
      },
      "message": "KVM: x86: Rework user space NMI injection as KVM_CAP_USER_NMI\n\nThere is no point in doing the ready_for_nmi_injection/\nrequest_nmi_window dance with user space. First, we don\u0027t do this for\nin-kernel irqchip anyway, while the code path is the same as for user\nspace irqchip mode. And second, there is nothing to loose if a pending\nNMI is overwritten by another one (in contrast to IRQs where we have to\nsave the number). Actually, there is even the risk of raising spurious\nNMIs this way because the reason for the held-back NMI might already be\nhandled while processing the first one.\n\nTherefore this patch creates a simplified user space NMI injection\ninterface, exporting it under KVM_CAP_USER_NMI and dropping the old\nKVM_CAP_NMI capability. And this time we also take care to provide the\ninterface only on archs supporting NMIs via KVM (right now only x86).\n\nSigned-off-by: Jan Kiszka \u003cjan.kiszka@siemens.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    }
  ],
  "next": "264ff01d55b456932cef03082448b41d2edeb6a1"
}
