)]}'
{
  "log": [
    {
      "commit": "9742df331deb3fce95b321f38d4ea0c4e75edb63",
      "tree": "f7b93edcf346a890ac2b6dda0112787a68481ea8",
      "parents": [
        "261964c60ff6524076d439da9386d4782729c4d9"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Dec 04 09:59:23 2008 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jan 05 11:54:27 2009 -0500"
      },
      "message": "ntfs: don\u0027t NULL i_op\n\nit\u0027s already set to empty table (and no, ntfs doesn\u0027t have any explicit\nchecks for NULL -\u003ei_op or NULL -\u003ei_fop)\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "261964c60ff6524076d439da9386d4782729c4d9",
      "tree": "3186a2d9c09695f1be9c10d3e58e2f0ccc4357c6",
      "parents": [
        "c765d479037808532310212e9b3fa95760e975f2"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Dec 04 09:57:25 2008 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jan 05 11:53:38 2009 -0500"
      },
      "message": "isofs check for NULL -\u003ei_op in root directory is dead code\n\nfor one thing it never happens, for another we check that inode\nis a directory right after that place anyway (and we\u0027d already\nchecked that reading it from disk has not failed).\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "c765d479037808532310212e9b3fa95760e975f2",
      "tree": "74c9f5570a9a5477522bdf203067303b2e9ef6d3",
      "parents": [
        "7f5ff766a7babd72fc192125e12ef5570effff4c"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Dec 04 09:50:55 2008 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jan 05 11:53:07 2009 -0500"
      },
      "message": "affs: do not zero -\u003ei_op\n\nit is already set to empty table and should never be NULL\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "7f5ff766a7babd72fc192125e12ef5570effff4c",
      "tree": "c41659d7614ea70c3dc853c6187f1860d030888b",
      "parents": [
        "5b6f1eb97d462a45be3b30759758b5fdbb562c8c"
      ],
      "author": {
        "name": "Dmitri Monakhov",
        "email": "dmonakhov@openvz.org",
        "time": "Mon Dec 01 14:34:56 2008 -0800"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jan 05 11:53:07 2009 -0500"
      },
      "message": "kill suid bit only for regular files\n\nWe don\u0027t have to do it because it is useless for non regular files.\nIn fact block device may trigger this path without dentry-\u003ed_inode-\u003ei_mutex.\n\n(akpm: concerns were expressed (by me) about S_ISDIR inodes)\n\nSigned-off-by: Dmitri Monakhov \u003cdmonakhov@openvz.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "5b6f1eb97d462a45be3b30759758b5fdbb562c8c",
      "tree": "e8f664c34dde71b95955f57caad3093581be87ef",
      "parents": [
        "7d3b56ba37a95f1f370f50258ed3954c304c524b"
      ],
      "author": {
        "name": "Alain Knaff",
        "email": "alain@knaff.lu",
        "time": "Mon Nov 10 17:08:08 2008 -0800"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jan 05 11:53:07 2009 -0500"
      },
      "message": "vfs: lseek(fd, 0, SEEK_CUR) race condition\n\nThis patch fixes a race condition in lseek. While it is expected that\nunpredictable behaviour may result while repositioning the offset of a\nfile descriptor concurrently with reading/writing to the same file\ndescriptor, this should not happen when merely *reading* the file\ndescriptor\u0027s offset.\n\nUnfortunately, the only portable way in Unix to read a file\ndescriptor\u0027s offset is lseek(fd, 0, SEEK_CUR); however executing this\nconcurrently with read/write may mess up the position.\n\n[with fixes from akpm]\n\nSigned-off-by: Alain Knaff \u003calain@knaff.lu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "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": "f60a0a79846abed04ad5abddb5dafd14b66e1ab0",
      "tree": "4c4e3bc4692e6e8f08d2289f3bcab28035a571a1",
      "parents": [
        "2f983570010a0dcb26d988da02d7ccfad00c807c",
        "b15dd79ea06b04a7ecee95f62ce7b6a3547dbb0a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 03 12:02:18 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 03 12:02:18 2009 -0800"
      },
      "message": "Merge branch \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6\n\n* \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6: (34 commits)\n  V4L/DVB (10173): Missing v4l2_prio_close in radio_release\n  V4L/DVB (10172): add DVB_DEVICE_TYPE\u003d to uevent\n  V4L/DVB (10171): Use usb_set_intfdata\n  V4L/DVB (10170): tuner-simple: prevent possible OOPS caused by divide by zero error\n  V4L/DVB (10168): sms1xxx: fix inverted gpio for lna control on tiger r2\n  V4L/DVB (10167): sms1xxx: add support for inverted gpio\n  V4L/DVB (10166): dvb frontend: stop using non-C99 compliant comments\n  V4L/DVB (10165): Add FE_CAN_2G_MODULATION flag to frontends that support DVB-S2\n  V4L/DVB (10164): Add missing S2 caps flag to S2API\n  V4L/DVB (10163): em28xx: allocate adev together with struct em28xx dev\n  V4L/DVB (10162): tuner-simple: Fix tuner type set message\n  V4L/DVB (10161): saa7134: fix autodetection for AVer TV GO 007 FM Plus\n  V4L/DVB (10160): em28xx: update chip id for em2710\n  V4L/DVB (10157): Add USB ID for the Sil4701 radio from DealExtreme\n  V4L/DVB (10156): saa7134: Add support for Avermedia AVer TV GO 007 FM Plus\n  V4L/DVB (10155): Add TEA5764 radio driver\n  V4L/DVB (10154): saa7134: fix a merge conflict on Behold H6 board\n  V4L/DVB (10153): Add the Beholder H6 card to DVB-T part of sources.\n  V4L/DVB (10152): Change configuration of the Beholder H6 card\n  V4L/DVB (10151): Fix I2C bridge error in zl10353\n  ...\n"
    },
    {
      "commit": "2f983570010a0dcb26d988da02d7ccfad00c807c",
      "tree": "39fd89fd04d940306c02425927fc1308b26357b0",
      "parents": [
        "e9e67a8b579d9605a3d06f7430dbb40465c97bf1"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Sat Jan 03 00:06:34 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 03 12:01:23 2009 -0800"
      },
      "message": "sparseirq: move set/get_timer_rand_state back to .c\n\nthose two functions only used in that C file\n\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e9e67a8b579d9605a3d06f7430dbb40465c97bf1",
      "tree": "cd90f29814359440b0f46995216d523ff5d26730",
      "parents": [
        "ad6b646fe55c40ec193240b974561f0a3775d68d",
        "418f19ea17a99421b22a64e101e14b6a16bed66d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 03 12:00:07 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 03 12:00:07 2009 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/drzeus/mmc\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/drzeus/mmc:\n  mmc: warn about voltage mismatches\n  mmc_spi: Add support for OpenFirmware bindings\n  pxamci: fix dma_unmap_sg length\n  mmc_block: ensure all sectors that do not have errors are read\n  drivers/mmc: Move a dereference below a NULL test\n  sdhci: handle built-in sdhci with modular leds class\n  mmc: balanc pci_iomap with pci_iounmap\n  mmc_block: print better error messages\n  mmc: Add mmc_vddrange_to_ocrmask() helper function\n  ricoh_mmc: Handle newer models of Ricoh controllers\n  mmc: Add 8-bit bus width support\n  sdhci: activate led support also when module\n  mmc: trivial annotation of \u0027blocks\u0027\n  pci: use pci_ioremap_bar() in drivers/mmc\n  sdricoh_cs: Add support for Bay Controller devices\n  mmc: at91_mci: reorder timer setup and mmc_add_host() call\n"
    },
    {
      "commit": "ad6b646fe55c40ec193240b974561f0a3775d68d",
      "tree": "d285d0396e9f7b9496976c6845910c04472e159c",
      "parents": [
        "61420f59a589c0668f70cbe725785837c78ece90",
        "006948bafece27265dce72d3158b12af3ff67fce"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 03 11:59:13 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 03 11:59:13 2009 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog:\n  [WATCHDOG] Add support for the WM8350 watchdog\n  [WATCHDOG] Add SMSC SCH311x Watchdog Timer.\n  [WATCHDOG] ib700wdt - add timeout parameter\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": "d97106ab53f812910a62d18afb9dbe882819c1ba",
      "tree": "edd1a2c287b7d98ee7b62e7ea6457c8a10abe016",
      "parents": [
        "3bfacef412b4bc993a8992217e50f1245f2fd3a6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 03 11:46:17 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 03 11:46:17 2009 -0800"
      },
      "message": "Make %p print \u0027(null)\u0027 for NULL pointers\n\nBefore, when we only ever printed out the pointer value itself, a NULL\npointer would never cause issues and might as well be printed out as\njust its numeric value.\n\nHowever, with the extended %p formats, especially %pR, we might validly\nwant to print out resources for debugging.  And sometimes they don\u0027t\neven exist, and the resource pointer is just NULL.  Print it out as\nsuch, rather than oopsing.\n\nThis is a more generic version of a patch done by Trent Piepho (catching\nall %p cases rather than just %pR, and using \"(null)\" instead of\n\"[NULL]\" to match glibc).\n\nRequested-by: Trent Piepho \u003cxyzzy@speakeasy.org\u003e\nAcked-by: Harvey Harrison \u003charvey.harrison@gmail.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\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": "17580d7f2f632ff8c9786d609508c35c9f56e1f3",
      "tree": "488abddb16d4640f4c27fdcf2c36186c6b70bdcc",
      "parents": [
        "fe30af971d896c144ef4708f97cf9d3186303c42"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Sat Jan 03 07:16:23 2009 +0000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 03 11:45:54 2009 -0800"
      },
      "message": "sanitize ifdefs in binfmt_aout\n\nThey are actually alpha vs.  i386/arm/m68k i.e. ecoff vs. aout.\n\nIn the only place where we actually tried to handle arm and i386/m68k in\ndifferent ways (START_DATA() in coredump handling), the arm variant\nworks for all of them (i386 and m68k have u.start_code set to 0).\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "fe30af971d896c144ef4708f97cf9d3186303c42",
      "tree": "c69bd377e0144708415a4967ced8469250acd6ef",
      "parents": [
        "e0b685d39a0404e7f87fb7b7808c3b37a115fe11"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Sat Jan 03 07:16:13 2009 +0000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 03 11:45:54 2009 -0800"
      },
      "message": "remove the rudiment of a.out for sparc\n\nit\u0027s been used only in sunos compat\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e0b685d39a0404e7f87fb7b7808c3b37a115fe11",
      "tree": "5ccdc48228cac967fc7ff5cc76d9890f73bcd663",
      "parents": [
        "8e3bda0863c1578ddf47a015eac7dc6efb1ef48b"
      ],
      "author": {
        "name": "Hugh Blemings",
        "email": "hugh@blemings.org",
        "time": "Sat Jan 03 16:48:44 2009 +1100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 03 11:45:54 2009 -0800"
      },
      "message": "Updated contact info for CREDITS file\n\nThis updates some personal info in the CREDITS file.\n\nI\u0027m no longer actively involved in Keyspan driver work so shouldn\u0027t\nreally be listed as a Maintainer here.\n\nI do however field the occasional question on them and as I\u0027m dropping\nthe misc.nu domain, want to ensure people can find me should they need\nto.\n\nSigned-off-by: Hugh Blemings \u003chugh@blemings.org\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": "8fd2d2d5aaf086cfa3b2e2e58cab96b7afdc9e51",
      "tree": "769492a15566e8c5ec4d7f611af378aee3d1e08f",
      "parents": [
        "80855f7361eb68205e6bc1981928629d9b02d5c9"
      ],
      "author": {
        "name": "Mike Travis",
        "email": "travis@sgi.com",
        "time": "Wed Dec 31 18:08:48 2008 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Jan 03 19:15:41 2009 +0100"
      },
      "message": "cpumask: fix compile error when CONFIG_NR_CPUS is not defined\n\nCONFIG_NR_CPUS will be defined for all arch\u0027s whether SMP or not, but\nit may not have made it into all arches yet.\n\nSigned-off-by: Mike Travis \u003ctravis@sgi.com\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": "6ca09dfc9f180d038dcef93c167a833f43a8246f",
      "tree": "48cd4e6530a7523d7d14d2c18fa7d3bd2ef49a4e",
      "parents": [
        "730cf27246225d56ca1603b2f3c4fdbf882d4e51"
      ],
      "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 19:00:09 2009 +0100"
      },
      "message": "sched: put back some stack hog changes that were undone in kernel/sched.c\n\nImpact: prevents panic from stack overflow on numa-capable machines.\n\nSome of the \"removal of stack hogs\" changes in kernel/sched.c by using\nnode_to_cpumask_ptr were undone by the early cpumask API updates, and\ncauses a panic due to stack overflow.  This patch undoes those changes\nby using cpumask_of_node() which returns a \u0027const struct cpumask *\u0027.\n\nIn addition, cpu_coregoup_map is replaced with cpu_coregroup_mask further\nreducing stack usage.  (Both of these updates removed 9 FIXME\u0027s!)\n\nAlso:\n   Pick up some remaining changes from the old \u0027cpumask_t\u0027 functions to\n   the new \u0027struct cpumask *\u0027 functions.\n\n   Optimize memory traffic by allocating each percpu local_cpu_mask on the\n   same node as the referring cpu.\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": "263ec6457bb23d57b575ede18ff6c3d11e0b4e96",
      "tree": "ac9ce48e24b2f37292614a3d363009f1332384cc",
      "parents": [
        "e465b535ce5b2318798c68e1454917204494bfe3"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Jan 03 13:16:09 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Jan 03 18:59:25 2009 +0100"
      },
      "message": "cpumask: convert RCU implementations, fix\n\nImpact: cleanup\n\nThis warning:\n\n kernel/rcuclassic.c: In function ‘rcu_start_batch’:\n kernel/rcuclassic.c:397: warning: passing argument 1 of ‘cpumask_andnot’ from incompatible pointer type\n\ntriggers because one usage site of rcp-\u003ecpumask was not converted\nto to_cpumask(rcp-\u003ecpumask). There\u0027s no ill effects of this bug.\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": "7398ca79d227f7cd7f2ce23f08624e30081dcb4e",
      "tree": "17cf5890a12e25517462e27b86c375663df7341a",
      "parents": [
        "cdc7b83726297b43deed0455d8732163cc59802a"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 16:37:53 2009 +0100"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 16:37:53 2009 +0100"
      },
      "message": "kvm/iommu: fix compile warning\n\nThis fixes a compile warning about a variable thats maybe used\nuninitialized in the function.\n\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": "cdc7b83726297b43deed0455d8732163cc59802a",
      "tree": "e2c6d99b3155280356bdc63cd6ec498c8bc772c8",
      "parents": [
        "e4754c96cf8b82a754dc5ba791d6c0bf1fbe8e8e"
      ],
      "author": {
        "name": "Mike Day",
        "email": "ncmike@ncultra.org",
        "time": "Fri Dec 12 17:16:30 2008 +0100"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:11:08 2009 +0100"
      },
      "message": "intel-iommu: fix bit shift at DOMAIN_FLAG_P2P_MULTIPLE_DEVICES\n\nSigned-off-by: Mike Day \u003cncmike@ncultra.org\u003e\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "e4754c96cf8b82a754dc5ba791d6c0bf1fbe8e8e",
      "tree": "a5015d1874992e883e2d8f6ab46caead6503338e",
      "parents": [
        "a8bcbb0de4a52f07fef7412ddc877348311ebf2a"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Wed Dec 03 15:26:42 2008 +0100"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:11:08 2009 +0100"
      },
      "message": "VT-d: remove now unused intel_iommu_found function\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "a8bcbb0de4a52f07fef7412ddc877348311ebf2a",
      "tree": "450beb05789932f092faa18fa5dfda67e2a2476a",
      "parents": [
        "d14d65777c2491dd5baf1e17f444b8f653f3cbb1"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Wed Dec 03 15:14:02 2008 +0100"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:11:08 2009 +0100"
      },
      "message": "VT-d: register functions for the IOMMU API\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "d14d65777c2491dd5baf1e17f444b8f653f3cbb1",
      "tree": "d2067ca36c019d6f7b7b25886d514ce23b68ea07",
      "parents": [
        "dde57a210dcdce85e2813bab8f88687761d9f6a6"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Wed Dec 03 15:06:57 2008 +0100"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:11:08 2009 +0100"
      },
      "message": "VT-d: adapt domain iova_to_phys function for IOMMU API\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "dde57a210dcdce85e2813bab8f88687761d9f6a6",
      "tree": "cac9c8c6cc41361dad1c4d1c71f5926e670185fc",
      "parents": [
        "4c5478c94eb29e6101f1f13175f7455bc8b5d953"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Wed Dec 03 15:04:09 2008 +0100"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:11:08 2009 +0100"
      },
      "message": "VT-d: adapt domain map and unmap functions for IOMMU API\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "4c5478c94eb29e6101f1f13175f7455bc8b5d953",
      "tree": "6235e9d9a22230c837f420f4f8d655817be8efa7",
      "parents": [
        "5d450806eb0e569c5846a5825e7f535980b0da32"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Wed Dec 03 14:58:24 2008 +0100"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:11:08 2009 +0100"
      },
      "message": "VT-d: adapt device attach and detach functions for IOMMU API\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "5d450806eb0e569c5846a5825e7f535980b0da32",
      "tree": "6b110597307b7e8443e200bd5432ab0cd220d0a2",
      "parents": [
        "19de40a8472fa64693eab844911eec277d489f6c"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Wed Dec 03 14:52:32 2008 +0100"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:11:07 2009 +0100"
      },
      "message": "VT-d: adapt domain init and destroy functions for IOMMU API\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": "fc2100eb4d0960b56c2c705a97941c08fb1c0fd4",
      "tree": "363dab8ecff94ec0306d165d8711df414486f7f8",
      "parents": [
        "4a77a6cf6d9bf9f5c74b27f62bd2bfe6dcc88392"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Wed Nov 26 17:21:24 2008 +0100"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:10:09 2009 +0100"
      },
      "message": "add frontend implementation for the IOMMU API\n\nThis API can be used by KVM for accessing different types of IOMMUs to\ndo device passthrough to guests. Beside that this API can also be used\nby device drivers to map non-linear host memory into dma-linear\naddresses to prevent sgather-gather DMA. UIO may be another user for\nthis API.\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "4a77a6cf6d9bf9f5c74b27f62bd2bfe6dcc88392",
      "tree": "21916de0203a8c8b5e38d425167f6935c3c29a0b",
      "parents": [
        "c4fa3864281c7d88b7262cbc6cbd5c90bb59860e"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Wed Nov 26 17:02:33 2008 +0100"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:10:09 2009 +0100"
      },
      "message": "introcude linux/iommu.h for an iommu api\n\nThis patch introduces the API to abstract the exported VT-d functions\nfor KVM into a generic API. This way the AMD IOMMU implementation can\nplug into this API later.\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": "b653574a7d14b663cc812cb20be6a114939ba186",
      "tree": "1fa1c833bacea5411e1c640180a00848552d7282",
      "parents": [
        "0a920356748df4fb06e86c21c23d2ed6d31d37ad"
      ],
      "author": {
        "name": "Weidong Han",
        "email": "weidong.han@intel.com",
        "time": "Mon Dec 08 23:29:53 2008 +0800"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:10:08 2009 +0100"
      },
      "message": "Deassign device in kvm_free_assgined_device\n\nIn kvm_iommu_unmap_memslots(), assigned_dev_head is already empty.\n\nSigned-off-by: Weidong Han \u003cweidong.han@intel.com\u003e\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "0a920356748df4fb06e86c21c23d2ed6d31d37ad",
      "tree": "545bf8591b48b8f33af3f03f50a536424853a259",
      "parents": [
        "260782bcfdaaa7850f29d6bb2ec6603019168c57"
      ],
      "author": {
        "name": "Weidong Han",
        "email": "weidong.han@intel.com",
        "time": "Tue Dec 02 21:24:23 2008 +0800"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:02:19 2009 +0100"
      },
      "message": "KVM: support device deassignment\n\nSupport device deassignment, it can be used in device hotplug.\n\nSigned-off-by: Weidong Han \u003cweidong.han@intel.com\u003e\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "260782bcfdaaa7850f29d6bb2ec6603019168c57",
      "tree": "6f0b72f07ee04ad1210aca861dd4ee8c51846609",
      "parents": [
        "fe40f1e020d0923f5f35ca15f02a206c75a28053"
      ],
      "author": {
        "name": "Weidong Han",
        "email": "weidong.han@intel.com",
        "time": "Tue Dec 02 21:03:39 2008 +0800"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:02:19 2009 +0100"
      },
      "message": "KVM: use the new intel iommu APIs\n\nintel iommu APIs are updated, use the new APIs.\n\nIn addition, change kvm_iommu_map_guest() to just create the domain, let kvm_iommu_assign_device() assign device.\n\nSigned-off-by: Weidong Han \u003cweidong.han@intel.com\u003e\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "fe40f1e020d0923f5f35ca15f02a206c75a28053",
      "tree": "e81c64559e6189f9ce8c3f19d13b6bd3c1aa92d9",
      "parents": [
        "faa3d6f5ffe7bf60ebfd0d36513fbcda0eb0ea1a"
      ],
      "author": {
        "name": "Weidong Han",
        "email": "weidong.han@intel.com",
        "time": "Mon Dec 08 23:10:23 2008 +0800"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:02:19 2009 +0100"
      },
      "message": "Check agaw is sufficient for mapped memory\n\nWhen domain is related to multiple iommus, need to check if the minimum agaw is sufficient for the mapped memory\n\nSigned-off-by: Weidong Han \u003cweidong.han@intel.com\u003e\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "faa3d6f5ffe7bf60ebfd0d36513fbcda0eb0ea1a",
      "tree": "4992e52cff96da38bedfb7805c18ac97c9ae9c01",
      "parents": [
        "ea6606b02fc3192f2edab2db669fa0b9756b4e67"
      ],
      "author": {
        "name": "Weidong Han",
        "email": "weidong.han@intel.com",
        "time": "Mon Dec 08 23:09:29 2008 +0800"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:02:18 2009 +0100"
      },
      "message": "Change intel iommu APIs of virtual machine domain\n\nThese APIs are used by KVM to use VT-d\n\nSigned-off-by: Weidong Han \u003cweidong.han@intel.com\u003e\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "ea6606b02fc3192f2edab2db669fa0b9756b4e67",
      "tree": "821832b7880301dca6def43eae3b39138e220c64",
      "parents": [
        "5e98c4b1d6e89676193c355e430eddf369bcf195"
      ],
      "author": {
        "name": "Weidong Han",
        "email": "weidong.han@intel.com",
        "time": "Mon Dec 08 23:08:15 2008 +0800"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:02:18 2009 +0100"
      },
      "message": "Change domain_context_mapping_one for virtual machine domain\n\nvm_domid won\u0027t be set in context, find available domain id for a device from its iommu.\n\nFor a virtual machine domain, a default agaw will be set, and skip top levels of page tables for iommu which has less agaw than default.\n\nSigned-off-by: Weidong Han \u003cweidong.han@intel.com\u003e\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "5e98c4b1d6e89676193c355e430eddf369bcf195",
      "tree": "0975df92da6a11ad0e976de2b61d47d330dc24c8",
      "parents": [
        "5331fe6f5627e06eec7d0dc154a0a3a9c27813c5"
      ],
      "author": {
        "name": "Weidong Han",
        "email": "weidong.han@intel.com",
        "time": "Mon Dec 08 23:03:27 2008 +0800"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:02:18 2009 +0100"
      },
      "message": "Allocation and free functions of virtual machine domain\n\nvirtual machine domain is different from native DMA-API domain, implement separate allocation and free functions for virtual machine domain.\n\nSigned-off-by: Weidong Han \u003cweidong.han@intel.com\u003e\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "5331fe6f5627e06eec7d0dc154a0a3a9c27813c5",
      "tree": "9546a411d65d6f2abaa1a0506d289f042178656b",
      "parents": [
        "c7151a8dfefd11108de5b4293af2390962bcff71"
      ],
      "author": {
        "name": "Weidong Han",
        "email": "weidong.han@intel.com",
        "time": "Mon Dec 08 23:00:00 2008 +0800"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:02:18 2009 +0100"
      },
      "message": "Add domain_flush_cache\n\nBecause virtual machine domain may have multiple devices from different iommus, it cannot use __iommu_flush_cache.\n\nIn some common low level functions, use domain_flush_cache instead of __iommu_flush_cache. On the other hand, in some functions, iommu can is specified or domain cannot be got, still use __iommu_flush_cache\n\nSigned-off-by: Weidong Han \u003cweidong.han@intel.com\u003e\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "c7151a8dfefd11108de5b4293af2390962bcff71",
      "tree": "d14da40ea3c2e874a5f62e5b650130fefb980395",
      "parents": [
        "1ce28feb22833645a0f3843cd873a0b56ed19ef0"
      ],
      "author": {
        "name": "Weidong Han",
        "email": "weidong.han@intel.com",
        "time": "Mon Dec 08 22:51:37 2008 +0800"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:02:18 2009 +0100"
      },
      "message": "Add/remove domain device info for virtual machine domain\n\nAdd iommu reference count in domain, and add a lock to protect iommu setting including iommu_bmp, iommu_count and iommu_coherency.\n\nvirtual machine domain may have multiple devices from different iommus, so it needs to do more things when add/remove domain device info. Thus implement separate these functions for virtual machine domain.\n\nSigned-off-by: Weidong Han \u003cweidong.han@intel.com\u003e\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "1ce28feb22833645a0f3843cd873a0b56ed19ef0",
      "tree": "d5196526bdcff639a40262b29f45f06019f02b45",
      "parents": [
        "8e604097ddc483eb1e6e99564953e4e937fe439a"
      ],
      "author": {
        "name": "Weidong Han",
        "email": "weidong.han@intel.com",
        "time": "Mon Dec 08 16:35:39 2008 +0800"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:02:18 2009 +0100"
      },
      "message": "Add domain flag DOMAIN_FLAG_VIRTUAL_MACHINE\n\nAdd this flag for VT-d used in virtual machine, like KVM.\n\nSigned-off-by: Weidong Han \u003cweidong.han@intel.com\u003e\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "8e604097ddc483eb1e6e99564953e4e937fe439a",
      "tree": "bbdae0a23cfa2248db27aa0e85bd82733811b108",
      "parents": [
        "1b5736839ae13dadc5947940144f95dd0f4a4a8c"
      ],
      "author": {
        "name": "Weidong Han",
        "email": "weidong.han@intel.com",
        "time": "Mon Dec 08 15:49:06 2008 +0800"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sat Jan 03 14:02:18 2009 +0100"
      },
      "message": "iommu coherency\n\nIn dmar_domain, more than one iommus may be included in iommu_bmp. Due to \"Coherency\" capability may be different across iommus, set this variable to indicate iommu access is coherent or not. Only when all related iommus in a dmar_domain are all coherent, iommu access of this domain is coherent.\n\nSigned-off-by: Weidong Han \u003cweidong.han@intel.com\u003e\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    }
  ],
  "next": "1b5736839ae13dadc5947940144f95dd0f4a4a8c"
}
