)]}'
{
  "log": [
    {
      "commit": "f27884aeadff9654f4a1e8a05dd92f4b140afe29",
      "tree": "22db0c732fcc4e68be25190454631ee1d249e295",
      "parents": [
        "c6223048259006759237d826219f0fa4f312fb47",
        "a35d01a5d2ac533edab94a8e3b6749ab213c91c5"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jun 24 14:35:57 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jun 24 14:35:57 2009 -0700"
      },
      "message": "Merge git://git.infradead.org/battery-2.6\n\n* git://git.infradead.org/battery-2.6:\n  da9030_battery: Fix race between event handler and monitor\n  Add MAX17040 Fuel Gauge driver\n  w1: ds2760_battery: add support for sleep mode feature\n  w1: ds2760: add support for EEPROM read and write\n  ds2760_battery: cleanups in ds2760_battery_probe()\n"
    },
    {
      "commit": "72c04902d1e27c8a324014cff1d4475c11b1cecd",
      "tree": "3e93abdd0a3eeedd6df5a1dc43170744f2fa7664",
      "parents": [
        "641cf4a668e9e69d2bc061e953422ff72a91f86e"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Jun 24 16:58:48 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Jun 24 16:58:48 2009 -0400"
      },
      "message": "Get \"no acls for this inode\" right, fix shmem breakage\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "641cf4a668e9e69d2bc061e953422ff72a91f86e",
      "tree": "77f34986228430a13d5b2a64e52c0b681b02bf70",
      "parents": [
        "c82e6d450fda56cb2d4f68534173d3cd11b32f9f"
      ],
      "author": {
        "name": "Markus Trippelsdorf",
        "email": "markus@trippelsdorf.de",
        "time": "Wed Jun 24 22:28:52 2009 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Jun 24 16:34:50 2009 -0400"
      },
      "message": "inline functions left without protection of ifdef (acl)\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "c3cb5e193937c7aa50c323e7933507020bd26340",
      "tree": "ea36213ccd29dc4caf2f729fd51b2d489b591a31",
      "parents": [
        "ea94b5034bbebc964115f119d6cd330757fce7f9",
        "f40c67f0f7e2767f80f7cbcbc1ab86c4113c202e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jun 24 10:26:54 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jun 24 10:26:54 2009 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/agk/linux-2.6-dm\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/agk/linux-2.6-dm: (48 commits)\n  dm mpath: change to be request based\n  dm: disable interrupt when taking map_lock\n  dm: do not set QUEUE_ORDERED_DRAIN if request based\n  dm: enable request based option\n  dm: prepare for request based option\n  dm raid1: add userspace log\n  dm: calculate queue limits during resume not load\n  dm log: fix create_log_context to use logical_block_size of log device\n  dm target:s introduce iterate devices fn\n  dm table: establish queue limits by copying table limits\n  dm table: replace struct io_restrictions with struct queue_limits\n  dm table: validate device logical_block_size\n  dm table: ensure targets are aligned to logical_block_size\n  dm ioctl: support cookies for udev\n  dm: sysfs add suspended attribute\n  dm table: improve warning message when devices not freed before destruction\n  dm mpath: add service time load balancer\n  dm mpath: add queue length load balancer\n  dm mpath: add start_io and nr_bytes to path selectors\n  dm snapshot: use barrier when writing exception store\n  ...\n"
    },
    {
      "commit": "650a10dc484f067883fc05a2d4116e1ee3f909c0",
      "tree": "5add33fbed9ee9e64f04c47e9cecf670a1e27178",
      "parents": [
        "9937ac0cc087b03d6d73f46a5d6b38c43626e60e",
        "916d75761c971b6e630a26bd4ba472e90ac9a4b9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jun 24 10:22:57 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jun 24 10:22:57 2009 -0700"
      },
      "message": "Merge branch \u0027audit.b63\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/audit-current\n\n* \u0027audit.b63\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/audit-current:\n  Fix rule eviction order for AUDIT_DIR\n  Audit: clean up all op\u003d output to include string quoting\n  Audit: move audit_get_nd completely into audit_watch\n  audit: seperate audit inode watches into a subfile\n  Audit: clean up audit_receive_skb\n  Audit: cleanup netlink mesg handling\n  Audit: unify the printk of an skb when auditd not around\n  Audit: dereferencing krule as if it were an audit_watch\n  Audit: better estimation of execve record length\n  Audit: fix audit watch use after free\n"
    },
    {
      "commit": "0c26d7cc31cd81a82be3b9d7687217d49fe9c47e",
      "tree": "1a20b590a5d71e588af7034b21f4779e6a8bd949",
      "parents": [
        "936940a9c7e3d99b25859bf1ff140d8c2480183a",
        "21ab01e2fcbfcc0d1faba2b7336b3c0f7f3c1ac8"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jun 24 10:17:07 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jun 24 10:17:07 2009 -0700"
      },
      "message": "Merge branch \u0027release\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6\n\n* \u0027release\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6: (72 commits)\n  asus-laptop: remove EXPERIMENTAL dependency\n  asus-laptop: use pr_fmt and pr_\u003clevel\u003e\n  eeepc-laptop: cpufv updates\n  eeepc-laptop: sync eeepc-laptop with asus_acpi\n  asus_acpi: Deprecate in favor of asus-laptop\n  acpi4asus: update MAINTAINER and KConfig links\n  asus-laptop: platform dev as parent for led and backlight\n  eeepc-laptop: enable camera by default\n  ACPI: Rename ACPI processor device bus ID\n  acerhdf: Acer Aspire One fan control\n  ACPI: video: DMI workaround broken Acer 7720 BIOS enabling display brightness\n  ACPI: run ACPI device hot removal in kacpi_hotplug_wq\n  ACPI: Add the reference count to avoid unloading ACPI video bus twice\n  ACPI: DMI to disable Vista compatibility on some Sony laptops\n  ACPI: fix a deadlock in hotplug case\n  Show the physical device node of backlight class device.\n  ACPI: pdc init related memory leak with physical CPU hotplug\n  ACPI: pci_root: remove unused dev/fn information\n  ACPI: pci_root: simplify list traversals\n  ACPI: pci_root: use driver data rather than list lookup\n  ...\n"
    },
    {
      "commit": "936940a9c7e3d99b25859bf1ff140d8c2480183a",
      "tree": "ddce374cdab91939fef576dbdd4c66d13a9c0299",
      "parents": [
        "09ce42d3167e3f20b501fa780c2415332330fac5",
        "1cbd20d820c36f52543e3e4cd0067ebf52aa388f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jun 24 10:03:12 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jun 24 10:03:12 2009 -0700"
      },
      "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: (23 commits)\n  switch xfs to generic acl caching helpers\n  helpers for acl caching + switch to those\n  switch shmem to inode-\u003ei_acl\n  switch reiserfs to inode-\u003ei_acl\n  switch reiserfs to usual conventions for caching ACLs\n  reiserfs: minimal fix for ACL caching\n  switch nilfs2 to inode-\u003ei_acl\n  switch btrfs to inode-\u003ei_acl\n  switch jffs2 to inode-\u003ei_acl\n  switch jfs to inode-\u003ei_acl\n  switch ext4 to inode-\u003ei_acl\n  switch ext3 to inode-\u003ei_acl\n  switch ext2 to inode-\u003ei_acl\n  add caching of ACLs in struct inode\n  fs: Add new pre-allocation ioctls to vfs for compatibility with legacy xfs ioctls\n  cleanup __writeback_single_inode\n  ... and the same for vfsmount id/mount group id\n  Make allocation of anon devices cheaper\n  update Documentation/filesystems/Locking\n  devpts: remove module-related code\n  ...\n"
    },
    {
      "commit": "09ce42d3167e3f20b501fa780c2415332330fac5",
      "tree": "2f0a6e2e3ec51187f4df78e8c75aa31602a6edd4",
      "parents": [
        "d7ed9c05ebf56c04811276207d7110706debe09f",
        "7959ea254ed18faee41160b1c50b3c9664735967"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jun 24 10:01:12 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jun 24 10:01:12 2009 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6:\n  bnx2: Fix the behavior of ethtool when ONBOOT\u003dno\n  qla3xxx: Don\u0027t sleep while holding lock.\n  qla3xxx: Give the PHY time to come out of reset.\n  ipv4 routing: Ensure that route cache entries are usable and reclaimable with caching is off\n  net: Move rx skb_orphan call to where needed\n  ipv6: Use correct data types for ICMPv6 type and code\n  net: let KS8842 driver depend on HAS_IOMEM\n  can: let SJA1000 driver depend on HAS_IOMEM\n  netxen: fix firmware init handshake\n  netxen: fix build with without CONFIG_PM\n  netfilter: xt_rateest: fix comparison with self\n  netfilter: xt_quota: fix incomplete initialization\n  netfilter: nf_log: fix direct userspace memory access in proc handler\n  netfilter: fix some sparse endianess warnings\n  netfilter: nf_conntrack: fix conntrack lookup race\n  netfilter: nf_conntrack: fix confirmation race condition\n  netfilter: nf_conntrack: death_by_timeout() fix\n"
    },
    {
      "commit": "073aaa1b142461d91f83da66db1184d7c1b1edea",
      "tree": "2b54d185d78f1229418fca521a93e6b55c57248b",
      "parents": [
        "06b16e9f68edaa1e71aee943d3c030bcf7380af1"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jun 09 12:11:54 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Jun 24 08:17:07 2009 -0400"
      },
      "message": "helpers for acl caching + switch to those\n\nhelpers: get_cached_acl(inode, type), set_cached_acl(inode, type, acl),\nforget_cached_acl(inode, type).\n\nubifs/xattr.c needed includes reordered, the rest is a plain switchover.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "06b16e9f68edaa1e71aee943d3c030bcf7380af1",
      "tree": "fcdbc0302571e6cda4817869a377d7498a44f776",
      "parents": [
        "281eede0328c84a8f20e0e85b807d5b51c3de4f2"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jun 08 19:56:00 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Jun 24 08:17:06 2009 -0400"
      },
      "message": "switch shmem to inode-\u003ei_acl\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "281eede0328c84a8f20e0e85b807d5b51c3de4f2",
      "tree": "9eb0184c7066f27593f2fd75db1593bf688c330f",
      "parents": [
        "7a77b15d9294749809de918e24bebc39e0fbc9ab"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jun 08 21:07:04 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Jun 24 08:17:06 2009 -0400"
      },
      "message": "switch reiserfs to inode-\u003ei_acl\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "7a77b15d9294749809de918e24bebc39e0fbc9ab",
      "tree": "d5e0d6d46dbcfece1c99854fbfc642e671d12b53",
      "parents": [
        "e68888bcb60ccba4dc21df9f2d8cd7325b64dce7"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jun 08 21:01:13 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Jun 24 08:17:06 2009 -0400"
      },
      "message": "switch reiserfs to usual conventions for caching ACLs\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "6582a0e6f6bc7bf64817b9e1a424782855292ab0",
      "tree": "7f7ac59f476a461a33706714e7bcb635b60977af",
      "parents": [
        "5e78b435683daaaacadad1b2aeefb8904cf6acfb"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jun 08 19:53:58 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Jun 24 08:17:04 2009 -0400"
      },
      "message": "switch ext3 to inode-\u003ei_acl\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "f19d4a8fa6f9b6ccf54df0971c97ffcaa390b7b0",
      "tree": "552854efb57cce365c4db585f1009946aeb03062",
      "parents": [
        "3e63cbb1efca7dd3137de1bb475e2e068e38ef23"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jun 08 19:50:45 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Jun 24 08:15:27 2009 -0400"
      },
      "message": "add caching of ACLs in struct inode\n\nNo helpers, no conversions yet.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "3e63cbb1efca7dd3137de1bb475e2e068e38ef23",
      "tree": "5a7964068266e778e94c1348192d3c85eba4ac48",
      "parents": [
        "01c031945f2755c7afaaf456088543312f2b72ea"
      ],
      "author": {
        "name": "Ankit Jain",
        "email": "me@ankitjain.org",
        "time": "Fri Jun 19 14:28:07 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Jun 24 08:15:27 2009 -0400"
      },
      "message": "fs: Add new pre-allocation ioctls to vfs for compatibility with legacy xfs ioctls\n\nThis patch adds ioctls to vfs for compatibility with legacy XFS\npre-allocation ioctls (XFS_IOC_*RESVP*). The implementation\neffectively invokes sys_fallocate for the new ioctls.\nAlso handles the compat_ioctl case.\nNote: These legacy ioctls are also implemented by OCFS2.\n\n[AV: folded fixes from hch]\n\nSigned-off-by: Ankit Jain \u003cme@ankitjain.org\u003e\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "57599cc997b81a7c4f764693a7316886a72067fe",
      "tree": "2e5cd27682614c88ec72009f9605062ada6eae25",
      "parents": [
        "fbe8cddd2d85979d273d7937a2b8a47498694d91",
        "586caae36cece718ff46b3a59b88af79e9f7a2e0"
      ],
      "author": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Jun 24 01:22:20 2009 -0400"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Jun 24 01:22:20 2009 -0400"
      },
      "message": "Merge branch \u0027bjorn-notify\u0027 into release\n\nConflicts:\n\tdrivers/platform/x86/eeepc-laptop.c\n\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "fbe8cddd2d85979d273d7937a2b8a47498694d91",
      "tree": "2ae3253bfd89337583d36afd783145786ffa531e",
      "parents": [
        "4e8a2372f9255a1464ef488ed925455f53fbdaa1",
        "e86435eb91b2bff114c5a02e46e16ce21b647ebe",
        "7fe2a6c275a5bcec52fb3ef643daaf8265b7af0d",
        "0705495d9010048e293013d9d129cf723363a0a8",
        "35a7c64fbc77bab4ca8ae477e8ab278ccd679ce2",
        "152a4e630f7ffdd7ff64427c4ba488dc0bce76af",
        "86e437f077c68112edcb6854ec036ed7e3f9a7f3",
        "c8d72a5e76988140bfdfd8722f2228d94e7fa10f",
        "7a04b8491a077471a34938b8ca060c37220953be",
        "ee1ca48fae7e575d5e399d4fdcfe0afc1212a64c",
        "9eccbc2f67efd0d19c47f40182abf2965c287add",
        "7e275cc4e8e20f82740bf40ae2f5695e9e35ff09",
        "7b768f07dce463a054c9dd84862d15ccc3d2b712",
        "8cb24c8fd70ea8431744de1ca0ca34ab45fbbdaa",
        "113b3a2b901573961509e81a28e9546cf9defef0",
        "d73772474f6ebbacbe820c31c0fa1cffa7160246",
        "056c308d3e4859334b519033d62ef050f0e0e261",
        "871043bc463e7d191e7b5b00436a8852921dd833"
      ],
      "author": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Jun 24 01:19:50 2009 -0400"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Jun 24 01:19:50 2009 -0400"
      },
      "message": "Merge branches \u0027acerhdf\u0027, \u0027acpi-pci-bind\u0027, \u0027bjorn-pci-root\u0027, \u0027bugzilla-12904\u0027, \u0027bugzilla-13121\u0027, \u0027bugzilla-13396\u0027, \u0027bugzilla-13533\u0027, \u0027bugzilla-13612\u0027, \u0027c3_lock\u0027, \u0027hid-cleanups\u0027, \u0027misc-2.6.31\u0027, \u0027pdc-leak-fix\u0027, \u0027pnpacpi\u0027, \u0027power_nocheck\u0027, \u0027thinkpad_acpi\u0027, \u0027video\u0027 and \u0027wmi\u0027 into release\n"
    },
    {
      "commit": "9d9609851003ebed15957f0f2ce18492739ee124",
      "tree": "2c116865d2f239b5596b22a3a79eecc82f5e1299",
      "parents": [
        "35fe4d0b1b12286a81938e9c5fdfaf639ac0ce5b"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Thu Jun 11 14:31:37 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Jun 24 00:00:52 2009 -0400"
      },
      "message": "Audit: clean up all op\u003d output to include string quoting\n\nA number of places in the audit system we send an op\u003d followed by a string\nthat includes spaces.  Somehow this works but it\u0027s just wrong.  This patch\nmoves all of those that I could find to be quoted.\n\nExample:\n\nChange From: type\u003dCONFIG_CHANGE msg\u003daudit(1244666690.117:31): auid\u003d0 ses\u003d1\nsubj\u003dunconfined_u:unconfined_r:auditctl_t:s0-s0:c0.c1023 op\u003dremove rule\nkey\u003d\"number2\" list\u003d4 res\u003d0\n\nChange To: type\u003dCONFIG_CHANGE msg\u003daudit(1244666690.117:31): auid\u003d0 ses\u003d1\nsubj\u003dunconfined_u:unconfined_r:auditctl_t:s0-s0:c0.c1023 op\u003d\"remove rule\"\nkey\u003d\"number2\" list\u003d4 res\u003d0\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\n"
    },
    {
      "commit": "86e437f077c68112edcb6854ec036ed7e3f9a7f3",
      "tree": "ac6ec8b6ac4f96ce7ef7b5e9fa057099d7ce9af1",
      "parents": [
        "07a2039b8eb0af4ff464efd3dfd95de5c02648c6"
      ],
      "author": {
        "name": "Zhao Yakui",
        "email": "yakui.zhao@intel.com",
        "time": "Tue Jun 16 11:23:13 2009 +0800"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Tue Jun 23 23:38:41 2009 -0400"
      },
      "message": "ACPI: Add the reference count to avoid unloading ACPI video bus twice\n\nSometimes both acpi video and i915 driver are compiled as modules.\nAnd there exists the strict dependency between the two drivers.\nThe acpi video bus will be unloaded in course of unloading the i915 driver.\nIf we unload the acpi video driver, then the kernel oops will be triggered.\n\nAdd the reference count to avoid unloading the ACPI video bus twice.\nThe reference count should be checked before unregistering the acpi video bus.\nIf the reference count is already zero, it won\u0027t unregister it again.\nAnd after the acpi video bus is already unregistered, the reference count\nwill be set to zero.\n\nhttp://bugzilla.kernel.org/show_bug.cgi?id\u003d13396\n\nSigned-off-by: Zhao Yakui \u003cyakui.zhao@intel.com\u003e\nAcked-by: Zhang Rui \u003crui.zhang@intel.com\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "be98eb2c2fc88d9d61cfeab5c11ab1118ca0bba9",
      "tree": "2fda177b596534b9ec69d98f6843d24d7e234538",
      "parents": [
        "cf5434e894a17bb8385997adc6d56642055a85d6",
        "f007e99c8e2e322b8331aba72414715119a2920d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jun 23 19:49:24 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jun 23 19:49:24 2009 -0700"
      },
      "message": "Merge git://git.infradead.org/iommu-2.6\n\n* git://git.infradead.org/iommu-2.6:\n  Intel-IOMMU, intr-remap: source-id checking\n  Intel-IOMMU, intr-remap: set the whole 128bits of irte when modify/free it\n  IOMMU Identity Mapping Support (drivers/pci/intel_iommu.c)\n"
    },
    {
      "commit": "cf5434e894a17bb8385997adc6d56642055a85d6",
      "tree": "60a02d312038f24ca24578ebefb47391d4a63c13",
      "parents": [
        "7b58fc21847950db8fcc6a142288b042564ffb76",
        "d246ab307d1d003c80fe279897dea22bf52b6e41"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jun 23 19:36:02 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jun 23 19:36:02 2009 -0700"
      },
      "message": "Merge branch \u0027upstream-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jlbec/ocfs2\n\n* \u0027upstream-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jlbec/ocfs2:\n  ocfs2/trivial: Wrap ocfs2_sysfile_cluster_lock_key within define.\n  ocfs2: Add lockdep annotations\n  vfs: Set special lockdep map for dirs only if not set by fs\n  ocfs2: Disable orphan scanning for local and hard-ro mounts\n  ocfs2: Do not initialize lvb in ocfs2_orphan_scan_lock_res_init()\n  ocfs2: Stop orphan scan as early as possible during umount\n  ocfs2: Fix ocfs2_osb_dump()\n  ocfs2: Pin journal head before accessing jh-\u003eb_committed_data\n  ocfs2: Update atime in splice read if necessary.\n  ocfs2: Provide the ocfs2_dlm_lvb_valid() stack API.\n"
    },
    {
      "commit": "d55d87fdff8252d0e2f7c28c2d443aee17e9d70f",
      "tree": "a4bfb0a47525672c690b63e85bf3f47f4ab014f7",
      "parents": [
        "d5fdd6babcfc2b0e6a8da1acf492a69fb54b4c47"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Mon Jun 22 02:25:25 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jun 23 16:36:25 2009 -0700"
      },
      "message": "net: Move rx skb_orphan call to where needed\n\nIn order to get the tun driver to account packets, we need to be\nable to receive packets with destructors set.  To be on the safe\nside, I added an skb_orphan call for all protocols by default since\nsome of them (IP in particular) cannot handle receiving packets\ndestructors properly.\n\nNow it seems that at least one protocol (CAN) expects to be able\nto pass skb-\u003esk through the rx path without getting clobbered.\n\nSo this patch attempts to fix this properly by moving the skb_orphan\ncall to where it\u0027s actually needed.  In particular, I\u0027ve added it\nto skb_set_owner_[rw] which is what most users of skb-\u003edestructor\ncall.\n\nThis is actually an improvement for tun too since it means that\nwe only give back the amount charged to the socket when the skb\nis passed to another socket that will also be charged accordingly.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nTested-by: Oliver Hartkopp \u003colver@hartkopp.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f007e99c8e2e322b8331aba72414715119a2920d",
      "tree": "616bfcdda74341dc8b5d9ea1013bb7506407a961",
      "parents": [
        "c4658b4e777bebf69884f4884a9bfb2f84dd71d9"
      ],
      "author": {
        "name": "Weidong Han",
        "email": "weidong.han@intel.com",
        "time": "Sat May 23 00:41:15 2009 +0800"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Tue Jun 23 22:09:17 2009 +0100"
      },
      "message": "Intel-IOMMU, intr-remap: source-id checking\n\nTo support domain-isolation usages, the platform hardware must be\ncapable of uniquely identifying the requestor (source-id) for each\ninterrupt message. Without source-id checking for interrupt remapping\n, a rouge guest/VM with assigned devices can launch interrupt attacks\nto bring down anothe guest/VM or the VMM itself.\n\nThis patch adds source-id checking for interrupt remapping, and then\nreally isolates interrupts for guests/VMs with assigned devices.\n\nBecause PCI subsystem is not initialized yet when set up IOAPIC\nentries, use read_pci_config_byte to access PCI config space directly.\n\nSigned-off-by: Weidong Han \u003cweidong.han@intel.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "01ff53f416757da416413bc32229770a8448b6ef",
      "tree": "31374589a0a6116ff3d756137fa0b0ac87f49e2e",
      "parents": [
        "a5c9b696ec109bb54d547fdb437a7a0c2d514670"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@gentoo.org",
        "time": "Tue Jun 23 12:37:01 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jun 23 12:50:05 2009 -0700"
      },
      "message": "rmap: fixup page_referenced() for nommu systems\n\nAfter the recent changes that went into mm/vmscan.c to overhaul stuff, we\nended up with these warnings on no-mmu systems:\n\n  mm/vmscan.c: In function `shrink_page_list\u0027:\n  mm/vmscan.c:580: warning: unused variable `vm_flags\u0027\n  mm/vmscan.c: In function `shrink_active_list\u0027:\n  mm/vmscan.c:1294: warning: `vm_flags\u0027 may be used uninitialized in this function\n  mm/vmscan.c:1242: note: `vm_flags\u0027 was declared here\n\nThis is because the no-mmu function defines page_referenced() to work on\nthe first argument only (the page).  It does not clear the vm_flags given\nto it because for no-mmu systems, they never actually get utilized.  Since\nthat is no longer strictly true, we need to set vm_flags to 0 like\neveryone else so gcc can do proper dead code elimination without annoying\nus with unused warnings.\n\nSigned-off-by: Mike Frysinger \u003cvapier@gentoo.org\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nAcked-by: David McCullough \u003cdavidm@snapgear.com\u003e\nCc: Greg Ungerer \u003cgerg@uclinux.org\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: Wu Fengguang \u003cfengguang.wu@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a5c9b696ec109bb54d547fdb437a7a0c2d514670",
      "tree": "c97533e38359a2e731bcc2c65f063a27f4f629e6",
      "parents": [
        "626f380d0b264a1e40237f5a2a3dffc5d14f256e"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hugh.dickins@tiscali.co.uk",
        "time": "Tue Jun 23 12:36:58 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jun 23 12:50:05 2009 -0700"
      },
      "message": "mm: pass mm to grab_swap_token\n\nIf a kthread happens to use get_user_pages() on an mm (as KSM does),\nthere\u0027s a chance that it will end up trying to read in a swap page, then\noops in grab_swap_token() because the kthread has no mm: GUP passes down\nthe right mm, so grab_swap_token() ought to be using it.\n\nWe have not identified a stronger case than KSM\u0027s daemon (not yet in\nmainline), but the issue must have come up before, since RHEL has included\na fix for this for years (though a different fix, they just back out of\ngrab_swap_token if current-\u003emm is unset: which is what we first proposed,\nbut using the right mm here seems more correct).\n\nReported-by: Izik Eidus \u003cieidus@redhat.com\u003e\nSigned-off-by: Johannes Weiner \u003channes@cmpxchg.org\u003e\nSigned-off-by: Hugh Dickins \u003chugh.dickins@tiscali.co.uk\u003e\nAcked-by: Rik van Riel \u003criel@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f5bcf5f44796bf30a058a01c10a61b19784f0540",
      "tree": "1c78ecbb2a21f880a1508dc2fcbbcc4b169f43f3",
      "parents": [
        "defe9104833b5ad309447bbc1fcb8e5981b2d3e1",
        "129dd98194747a3b8ac1ff876d8d1f2440660d01"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jun 23 11:35:37 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jun 23 11:35:37 2009 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6: (38 commits)\n  fusion: mptsas, fix lock imbalance\n  [SCSI] scsi_transport_fc: replace BUS_ID_SIZE by fixed count\n  sd, sr: fix Driver \u0027sd\u0027 needs updating message\n  scsi_transport_iscsi: return -EOVERFLOW for Too many iscsi targets\n  fc_transport: Selective return value from BSG timeout function\n  fc_transport: The softirq_done function registration for BSG request\n  sym53c8xx: ratelimit parity errors\n  explain the hidden scsi_wait_scan Kconfig variable\n  ibmvfc: Fix endless PRLI loop in discovery\n  ibmvfc: Process async events before command responses\n  libfc: Add runtime debugging with debug_logging module parameter\n  libfcoe: Add runtime debugging with module param debug_logging\n  fcoe: Add runtime debug logging with module parameter debug_logging\n  scsi_debug: Add support for physical block exponent and alignment\n  cnic: add NETDEV_1000 and NETDEVICES to Kconfig select\n  cnic: Fix __symbol_get() build error.\n  Revert \"[SCSI] cnic: fix error: implicit declaration of function ‘__symbol_get’\"\n  ipr: differentiate pci-x and pci-e based adapters\n  ipr: add test for MSI interrupt support\n  scsi_transport_spi: Blacklist Ultrium-3 tape for IU transfers\n  ...\n"
    },
    {
      "commit": "defe9104833b5ad309447bbc1fcb8e5981b2d3e1",
      "tree": "c399f17f5b2dfacbf6df399dd1df8b15c7573fbe",
      "parents": [
        "95b3692d9c22c659312acb466d0608bf8509f296",
        "0634a632f5dea8281ae7c9a96800582ff9eb1475"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jun 23 11:34:24 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jun 23 11:34:24 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/asm-generic\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/asm-generic:\n  asm-generic: add dummy pgprot_noncached()\n  lib/checksum.c: fix endianess bug\n  asm-generic: hook up new system calls\n  asm-generic: list Arnd as asm-generic maintainer\n  asm-generic: drop HARDIRQ_BITS definition from hardirq.h\n  asm-generic: uaccess: fix up local access_ok() usage\n  asm-generic: uaccess: add missing access_ok() check to strnlen_user()\n"
    },
    {
      "commit": "788c7df451467df71638dd79a2d63d78c6e13b9c",
      "tree": "30714df634b620784b7a04fefc51d8c09291de38",
      "parents": [
        "a800faec1b21d7133b5f0c8c6dac593b7c4e118d"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hugh.dickins@tiscali.co.uk",
        "time": "Tue Jun 23 13:49:05 2009 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jun 23 11:23:33 2009 -0700"
      },
      "message": "hugetlb: fault flags instead of write_access\n\nhandle_mm_fault() is now passing fault flags rather than write_access\ndown to hugetlb_fault(), so better recognize that in hugetlb_fault(),\nand in hugetlb_no_page().\n\nSigned-off-by: Hugh Dickins \u003chugh.dickins@tiscali.co.uk\u003e\nAcked-by: Wu Fengguang \u003cfengguang.wu@intel.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0634a632f5dea8281ae7c9a96800582ff9eb1475",
      "tree": "77314bb143deb7b19bdd8f5cf6229a7720cc5378",
      "parents": [
        "32a9ff9cc55b42543a84bca90b070df92af72671"
      ],
      "author": {
        "name": "Paul Mundt",
        "email": "lethal@linux-sh.org",
        "time": "Tue Jun 23 13:51:19 2009 +0200"
      },
      "committer": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Tue Jun 23 14:34:30 2009 +0200"
      },
      "message": "asm-generic: add dummy pgprot_noncached()\n\nMost architectures now provide a pgprot_noncached(), the\nremaining ones can simply use an dummy default implementation,\nexcept for cris and xtensa, which should override the\ndefault appropriately.\n\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nCc: Jesper Nilsson \u003cjesper.nilsson@axis.com\u003e\nCc: Chris Zankel \u003cchris@zankel.net\u003e\nCc: Magnus Damm \u003cmagnus.damm@gmail.com\u003e\n"
    },
    {
      "commit": "d5fdd6babcfc2b0e6a8da1acf492a69fb54b4c47",
      "tree": "e4ebdb5d6c4b1ddc16f83e701e3e6038c379a497",
      "parents": [
        "0cf08dcb78e8d61b6d4b2eb5cdb296d969971626"
      ],
      "author": {
        "name": "Brian Haley",
        "email": "brian.haley@hp.com",
        "time": "Tue Jun 23 04:31:07 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jun 23 04:31:07 2009 -0700"
      },
      "message": "ipv6: Use correct data types for ICMPv6 type and code\n\nChange all the code that deals directly with ICMPv6 type and code\nvalues to use u8 instead of a signed int as that\u0027s the actual data\ntype.\n\nSigned-off-by: Brian Haley \u003cbrian.haley@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b0d3159be9a36fd8b7b1cf88b812d951add53d11",
      "tree": "eb2be10df0843457ed94f8560ceb956fd37dd60c",
      "parents": [
        "2c0b19ac3b73199fe7b3fbff884051046554c048"
      ],
      "author": {
        "name": "Trent Piepho",
        "email": "xyzzy@speakeasy.org",
        "time": "Sat May 30 21:45:46 2009 -0300"
      },
      "committer": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@redhat.com",
        "time": "Tue Jun 23 03:21:18 2009 -0300"
      },
      "message": "V4L/DVB (11901): v4l2: Create helper function for bounding and aligning images\n\nMost hardware has limits on minimum and maximum image dimensions and also\nrequirements about alignment.  For example, image width must be even or a\nmultiple of four.  Some hardware has requirements that the total image size\n(width * height) be a multiple of some power of two.\n\nv4l_bound_align_image() will enforce min and max width and height, power of\ntwo alignment on width and height, and power of two alignment on total\nimage size.\n\nIt uses an efficient algorithm that will try to find the \"closest\" image\nsize that meets the requirements.\n\nSigned-off-by: Trent Piepho \u003cxyzzy@speakeasy.org\u003e\nSigned-off-by: Mauro Carvalho Chehab \u003cmchehab@redhat.com\u003e\n"
    },
    {
      "commit": "f0222c7d860f09a61bec5e500539f28db0184b38",
      "tree": "abcd69a4421985d205ede4df0365c7616d192453",
      "parents": [
        "90135c96869fa0ef3182282b2a661b57fcdb7230"
      ],
      "author": {
        "name": "Hans Verkuil",
        "email": "hverkuil@xs4all.nl",
        "time": "Tue Jun 09 17:12:33 2009 -0300"
      },
      "committer": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@redhat.com",
        "time": "Tue Jun 23 03:15:47 2009 -0300"
      },
      "message": "V4L/DVB (12125): v4l2: add new s_config subdev ops and v4l2_i2c_new_subdev_cfg/board calls\n\nAdd a new s_config core ops call: this is called with the irq and platform\ndata to be used to initialize the subdev.\n\nAdded new v4l2_i2c_new_subdev_cfg and v4l2_i2c_new_subdev_board calls\nthat allows you to pass these new arguments.\n\nThe existing v4l2_i2c_new_subdev functions were modified to also call\ns_config.\n\nIn the future the existing v4l2_i2c_new_subdev functions will be replaced\nby a single v4l2_i2c_new_subdev function similar to v4l2_i2c_new_subdev_cfg\nbut without the irq and platform_data arguments.\n\nSigned-off-by: Hans Verkuil \u003chverkuil@xs4all.nl\u003e\nSigned-off-by: Mauro Carvalho Chehab \u003cmchehab@redhat.com\u003e\n"
    },
    {
      "commit": "719cd4ab9695059e00f5248d1dceb534381fccb3",
      "tree": "7aac75d4b17c0b9c7033180f5fa8110a097bf09a",
      "parents": [
        "be5daa9bd220d384c7010aee6d3886279a61a183"
      ],
      "author": {
        "name": "Hans Verkuil",
        "email": "hverkuil@xs4all.nl",
        "time": "Sun Jun 14 07:12:11 2009 -0300"
      },
      "committer": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@redhat.com",
        "time": "Tue Jun 23 03:14:39 2009 -0300"
      },
      "message": "V4L/DVB (12108): v4l2-i2c-drv.h: add comment describing when not to use this header.\n\nMake it very clear that this header should not be used for i2c drivers that\ndo not need to be compiled for pre-2.6.26 kernels.\n\nAs soon as the minimum supported kernel in the v4l-dvb repository becomes\n2.6.26 or up, then this header should be removed entirely.\n\nSigned-off-by: Hans Verkuil \u003chverkuil@xs4all.nl\u003e\nSigned-off-by: Mauro Carvalho Chehab \u003cmchehab@redhat.com\u003e\n"
    },
    {
      "commit": "a4c473033b6a100773a4fd8b7ba1e45baeb1e692",
      "tree": "01465e084c65c49e0f2ea0586b83ef03385cdc84",
      "parents": [
        "19859229d7d98bc2d582ff45045dd7f73d649383"
      ],
      "author": {
        "name": "Devin Heitmueller",
        "email": "dheitmueller@kernellabs.com",
        "time": "Sat Jun 20 21:34:42 2009 -0300"
      },
      "committer": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@redhat.com",
        "time": "Tue Jun 23 03:14:25 2009 -0300"
      },
      "message": "V4L/DVB (12102): em28xx: add Remote control support for EVGA inDtube\n\nAdd an IR profile for the EVGA inDtube remote control (which is an NEC type\nremote)\n\nSigned-off-by: Devin Heitmueller \u003cdheitmueller@kernellabs.com\u003e\nSigned-off-by: Mauro Carvalho Chehab \u003cmchehab@redhat.com\u003e\n"
    },
    {
      "commit": "1876bb923c98c605eca69f0bfe295f7b5f5eba28",
      "tree": "ddc996e7e15a9ec803e5cfeb8bf341af30fae7fa",
      "parents": [
        "f5cee95c2e4c56b50cdb8edd33cf04902946cd25"
      ],
      "author": {
        "name": "Hans de Goede",
        "email": "hdegoede@redhat.com",
        "time": "Sun Jun 14 06:45:50 2009 -0300"
      },
      "committer": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@redhat.com",
        "time": "Tue Jun 23 03:12:37 2009 -0300"
      },
      "message": "V4L/DVB (12079): gspca_ov519: add support for the ov511 bridge\n\ngspca_ov519: add support for the ov511 bridge\n\nSigned-off-by: Hans de Goede \u003chdegoede@redhat.com\u003e\nSigned-off-by: Mauro Carvalho Chehab \u003cmchehab@redhat.com\u003e\n"
    },
    {
      "commit": "02ab18b0f497bed623814677577b76cc97234085",
      "tree": "4f110a6b30419cae8077546946cf221cfef5a8cb",
      "parents": [
        "b8bfb5fb348d939a96fc8f71996a2e5e48b4544b"
      ],
      "author": {
        "name": "Hans de Goede",
        "email": "hdegoede@redhat.com",
        "time": "Sun Jun 14 04:32:04 2009 -0300"
      },
      "committer": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@redhat.com",
        "time": "Tue Jun 23 03:11:16 2009 -0300"
      },
      "message": "V4L/DVB (12072): gspca-ov519: add extra controls\n\nThis patch adds autobrightness (so that it can\nbe turned off to make the already present brightness\ncontrol work) and light frequency filtering controls.\n\nThe lightfreq control needed 2 different entries\nin the ctrls array, as the number of options differs\ndepending on the sensor. Always one of the 2 entires is\ndisabled ofcourse.\n\nSigned-off-by: Hans de Goede \u003chdegoede@redhat.com\u003e\nSigned-off-by: Mauro Carvalho Chehab \u003cmchehab@redhat.com\u003e\n"
    },
    {
      "commit": "687d680985b1438360a9ba470ece8b57cd205c3b",
      "tree": "ae253608531e5c3e823600974c610e722e7de759",
      "parents": [
        "1053414068bad659479e6efa62a67403b8b1ec0a",
        "008fe148cb0fb51d266baabe2c09997b21cf90c6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 22 21:38:22 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 22 21:38:22 2009 -0700"
      },
      "message": "Merge git://git.infradead.org/~dwmw2/iommu-2.6.31\n\n* git://git.infradead.org/~dwmw2/iommu-2.6.31:\n  intel-iommu: Fix one last ia64 build problem in Pass Through Support\n  VT-d: support the device IOTLB\n  VT-d: cleanup iommu_flush_iotlb_psi and flush_unmaps\n  VT-d: add device IOTLB invalidation support\n  VT-d: parse ATSR in DMA Remapping Reporting Structure\n  PCI: handle Virtual Function ATS enabling\n  PCI: support the ATS capability\n  intel-iommu: dmar_set_interrupt return error value\n  intel-iommu: Tidy up iommu-\u003egcmd handling\n  intel-iommu: Fix tiny theoretical race in write-buffer flush.\n  intel-iommu: Clean up handling of \"caching mode\" vs. IOTLB flushing.\n  intel-iommu: Clean up handling of \"caching mode\" vs. context flushing.\n  VT-d: fix invalid domain id for KVM context flush\n  Fix !CONFIG_DMAR build failure introduced by Intel IOMMU Pass Through Support\n  Intel IOMMU Pass Through Support\n\nFix up trivial conflicts in drivers/pci/{intel-iommu.c,intr_remapping.c}\n"
    },
    {
      "commit": "1053414068bad659479e6efa62a67403b8b1ec0a",
      "tree": "d4096db0f3aa9ca5e6b44c85ab848b7bedbfc37a",
      "parents": [
        "b88f8a546f5dba213938fdfc11e66bc5c2421623",
        "0c53decdd0a9f9c459ccabe0b5f79660bde5375b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 22 21:29:52 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 22 21:29:52 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6:\n  firewire: new stack is no longer experimental\n  firewire: net: better FIFO address range check and rcodes\n  firewire: net: fix card driver reloading\n  firewire: core: fix iso context shutdown on card removal\n  firewire: core: fix DMA unmapping in iso buffer removal\n  firewire: net: adjust net_device ops\n  firewire: net: remove unused code\n  firewire: net: allow for unordered unit discovery\n  firewire: net: style changes\n  firewire: net: add Kconfig item, rename driver\n  firewire: add IPv4 support\n"
    },
    {
      "commit": "cf8d2c11cb77f129675478792122f50827e5b0ae",
      "tree": "85bebdff4cffbca238952e839b0cb801e6a9bfe7",
      "parents": [
        "616511d039af402670de8500d0e24495113a9cab"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Mon Jun 22 15:09:13 2009 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 22 21:28:25 2009 -0700"
      },
      "message": "VFS: Add VFS helper functions for setting up private namespaces\n\nThe purpose of this patch is to improve the remote mount path lookup\nsupport for distributed filesystems such as the NFSv4 client.\n\nWhen given a mount command of the form \"mount server:/foo/bar /mnt\", the\nNFSv4 client is required to look up the filehandle for \"server:/\", and\nthen look up each component of the remote mount path \"foo/bar\" in order\nto find the directory that is actually going to be mounted on /mnt.\nFollowing that remote mount path may involve following symlinks,\ncrossing server-side mount points and even following referrals to\nfilesystem volumes on other servers.\n\nSince the standard VFS path lookup code already supports walking paths\nthat contain all these features (using in-kernel automounts for\nfollowing referrals) we would like to be able to reuse that rather than\nduplicate the full path traversal functionality in the NFSv4 client code.\n\nThis patch therefore defines a VFS helper function create_mnt_ns(), that\nsets up a temporary filesystem namespace and attaches a root filesystem to\nit. It exports the create_mnt_ns() and put_mnt_ns() function for use by\nfilesystem modules.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "616511d039af402670de8500d0e24495113a9cab",
      "tree": "825a34ab670dedc463ba7252a177793746c010c7",
      "parents": [
        "31950eb66ff47c946fd9c65c2f8c94b6b7ba13fc"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Mon Jun 22 15:09:13 2009 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 22 21:28:25 2009 -0700"
      },
      "message": "VFS: Uninline the function put_mnt_ns()\n\nIn order to allow modules to use it without having to export vfsmount_lock.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "31950eb66ff47c946fd9c65c2f8c94b6b7ba13fc",
      "tree": "1ab1e09bbe7a0b33bbf19dd725172827bac5bb88",
      "parents": [
        "ac1b7c378ef26fba6694d5f118fe7fc16fee2fe2"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 22 21:18:12 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 22 21:18:12 2009 -0700"
      },
      "message": "mm/init: cpu_hotplug_init() must be initialized before SLAB\n\nSLAB uses get/put_online_cpus() which use a mutex which is itself only\ninitialized when cpu_hotplug_init() is called.  Currently we hang suring\nboot in SLAB due to doing that too late.\n\nReported by James Bottomley and Sachin Sant (and possibly others).\nDebugged by Benjamin Herrenschmidt.\n\nThis just removes the dynamic initialization of the data structures, and\nreplaces it with a static one, avoiding this dependency entirely, and\nremoving one unnecessary special initcall.\n\nTested-by: Sachin Sant \u003csachinp@in.ibm.com\u003e\nTested-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\nTested-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ac1b7c378ef26fba6694d5f118fe7fc16fee2fe2",
      "tree": "3f72979545bb070eb2c3e903cbf31dc4aef3ffc9",
      "parents": [
        "9e268beb92ee3a853b3946e84b10358207e2085f",
        "c90173f0907486fe4010c2a8cef534e2473db43f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 22 16:56:22 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 22 16:56:22 2009 -0700"
      },
      "message": "Merge git://git.infradead.org/mtd-2.6\n\n* git://git.infradead.org/mtd-2.6: (63 commits)\n  mtd: OneNAND: Allow setting of boundary information when built as module\n  jffs2: leaking jffs2_summary in function jffs2_scan_medium\n  mtd: nand: Fix memory leak on txx9ndfmc probe failure.\n  mtd: orion_nand: use burst reads with double word accesses\n  mtd/nand: s3c6400 support for s3c2410 driver\n  [MTD] [NAND] S3C2410: Use DIV_ROUND_UP\n  [MTD] [NAND] S3C2410: Deal with unaligned lengths in S3C2440 buffer read/write\n  [MTD] [NAND] S3C2410: Allow the machine code to get the BBT table from NAND\n  [MTD] [NAND] S3C2410: Added a kerneldoc for s3c2410_nand_set\n  mtd: physmap_of: Add multiple regions and concatenation support\n  mtd: nand: max_retries off by one in mxc_nand\n  mtd: nand: s3c2410_nand_setrate(): use correct macros for 2412/2440\n  mtd: onenand: add bbt_wait \u0026 unlock_all as replaceable for some platform\n  mtd: Flex-OneNAND support\n  mtd: nand: add OMAP2/OMAP3 NAND driver\n  mtd: maps: Blackfin async: fix memory leaks in probe/remove funcs\n  mtd: uclinux: mark local stuff static\n  mtd: uclinux: do not allow to be built as a module\n  mtd: uclinux: allow systems to override map addr/size\n  mtd: blackfin NFC: fix hang when using NAND on BF527-EZKITs\n  ...\n"
    },
    {
      "commit": "9a7aa12f3911853a3574d47d567b81a2a5df7208",
      "tree": "ec3c8efe46b59ed78515ec75302a86054f60d6e5",
      "parents": [
        "df152c241df9e9d2b9a65d37bd02961abe7f591a"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Thu Jun 04 15:26:49 2009 +0200"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Mon Jun 22 14:34:22 2009 -0700"
      },
      "message": "vfs: Set special lockdep map for dirs only if not set by fs\n\nSome filesystems need to set lockdep map for i_mutex differently for\ndifferent directories. For example OCFS2 has system directories (for\norphan inode tracking and for gathering all system files like journal\nor quota files into a single place) which have different locking\nlocking rules than standard directories. For a filesystem setting\nlockdep map is naturaly done when the inode is read but we have to\nmodify unlock_new_inode() not to overwrite the lockdep map the filesystem\nhas set.\n\nAcked-by: peterz@infradead.org\nCC: mingo@redhat.com\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "eadfe21989d728b5af936487627b4e288bd805f8",
      "tree": "bc1b7a09c6bf1e231654cb86ff64e46b9d9cbbfa",
      "parents": [
        "7e0338c0de18c50f09aea1fbef45110cf7d64a3c"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Mon Jun 22 15:32:31 2009 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 22 13:34:49 2009 -0700"
      },
      "message": "LDSCRIPT: Name INIT_RAM_FS consistently\n\nIn asm-generic/vmlinux.lds.h, name INIT_RAM_FS consistently, no matter the\nsetting of CONFIG_BLK_DEV_INITRD.  This corrects:\n\n\tcommit ef53dae8658cf0e93d380983824a661067948d87\n\tAuthor: Sam Ravnborg \u003csam@ravnborg.org\u003e\n\tDate:   Sun Jun 7 20:46:37 2009 +0200\n\tSubject: Improve vmlinux.lds.h support for arch specific linker scripts\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nAcked-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7e0338c0de18c50f09aea1fbef45110cf7d64a3c",
      "tree": "30a935c1f6eee7125a9fbb802a33292b1f7268fa",
      "parents": [
        "df36b439c5fedefe013d4449cb6a50d15e2f4d70",
        "47fcb03fefee2501e79176932a4184fc24d6f8ec"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 22 12:55:50 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 22 12:55:50 2009 -0700"
      },
      "message": "Merge branch \u0027for-2.6.31\u0027 of git://fieldses.org/git/linux-nfsd\n\n* \u0027for-2.6.31\u0027 of git://fieldses.org/git/linux-nfsd: (60 commits)\n  SUNRPC: Fix the TCP server\u0027s send buffer accounting\n  nfsd41: Backchannel: minorversion support for the back channel\n  nfsd41: Backchannel: cleanup nfs4.0 callback encode routines\n  nfsd41: Remove ip address collision detection case\n  nfsd: optimise the starting of zero threads when none are running.\n  nfsd: don\u0027t take nfsd_mutex twice when setting number of threads.\n  nfsd41: sanity check client drc maxreqs\n  nfsd41: move channel attributes from nfsd4_session to a nfsd4_channel_attr struct\n  NFS: kill off complicated macro \u0027PROC\u0027\n  sunrpc: potential memory leak in function rdma_read_xdr\n  nfsd: minor nfsd_vfs_write cleanup\n  nfsd: Pull write-gathering code out of nfsd_vfs_write\n  nfsd: track last inode only in use_wgather case\n  sunrpc: align cache_clean work\u0027s timer\n  nfsd: Use write gathering only with NFSv2\n  NFSv4: kill off complicated macro \u0027PROC\u0027\n  NFSv4: do exact check about attribute specified\n  knfsd: remove unreported filehandle stats counters\n  knfsd: fix reply cache memory corruption\n  knfsd: reply cache cleanups\n  ...\n"
    },
    {
      "commit": "df36b439c5fedefe013d4449cb6a50d15e2f4d70",
      "tree": "537c58db778cbf11b74e28091f89d1b8139fb84d",
      "parents": [
        "a9b011f5ac57cbaedb32a8149f3d39d7b2c1f0e0",
        "e9f029855865e917821ef6034b31e340a4cfc815"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 22 12:53:06 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 22 12:53:06 2009 -0700"
      },
      "message": "Merge branch \u0027for-2.6.31\u0027 of git://git.linux-nfs.org/projects/trondmy/nfs-2.6\n\n* \u0027for-2.6.31\u0027 of git://git.linux-nfs.org/projects/trondmy/nfs-2.6: (128 commits)\n  nfs41: sunrpc: xprt_alloc_bc_request() should not use spin_lock_bh()\n  nfs41: Move initialization of nfs4_opendata seq_res to nfs4_init_opendata_res\n  nfs: remove unnecessary NFS_INO_INVALID_ACL checks\n  NFS: More \"sloppy\" parsing problems\n  NFS: Invalid mount option values should always fail, even with \"sloppy\"\n  NFS: Remove unused XDR decoder functions\n  NFS: Update MNT and MNT3 reply decoding functions\n  NFS: add XDR decoder for mountd version 3 auth-flavor lists\n  NFS: add new file handle decoders to in-kernel mountd client\n  NFS: Add separate mountd status code decoders for each mountd version\n  NFS: remove unused function in fs/nfs/mount_clnt.c\n  NFS: Use xdr_stream-based XDR encoder for MNT\u0027s dirpath argument\n  NFS: Clean up MNT program definitions\n  lockd: Don\u0027t bother with RPC ping for NSM upcalls\n  lockd: Update NSM state from SM_MON replies\n  NFS: Fix false error return from nfs_callback_up() if ipv6.ko is not available\n  NFS: Return error code from nfs_callback_up() to user space\n  NFS: Do not display the setting of the \"intr\" mount option\n  NFS: add support for splice writes\n  nfs41: Backchannel: CB_SEQUENCE validation\n  ...\n"
    },
    {
      "commit": "59ef7a83f1127038a433464597df02e2dc9540e7",
      "tree": "725d262fc2e68eb9c592d76265f878cec73f8f2d",
      "parents": [
        "5165aece0efac6574fc3e32b6f1c2a964820d1c6",
        "2af5066f664cb011cf17d2e4414491fe24597e07"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 22 11:59:51 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 22 11:59:51 2009 -0700"
      },
      "message": "Merge branch \u0027linux-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6\n\n* \u0027linux-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6: (74 commits)\n  PCI: make msi_free_irqs() to use msix_mask_irq() instead of open coded write\n  PCI: Fix the NIU MSI-X problem in a better way\n  PCI ASPM: remove get_root_port_link\n  PCI ASPM: cleanup pcie_aspm_sanity_check\n  PCI ASPM: remove has_switch field\n  PCI ASPM: cleanup calc_Lx_latency\n  PCI ASPM: cleanup pcie_aspm_get_cap_device\n  PCI ASPM: cleanup clkpm checks\n  PCI ASPM: cleanup __pcie_aspm_check_state_one\n  PCI ASPM: cleanup initialization\n  PCI ASPM: cleanup change input argument of aspm functions\n  PCI ASPM: cleanup misc in struct pcie_link_state\n  PCI ASPM: cleanup clkpm state in struct pcie_link_state\n  PCI ASPM: cleanup latency field in struct pcie_link_state\n  PCI ASPM: cleanup aspm state field in struct pcie_link_state\n  PCI ASPM: fix typo in struct pcie_link_state\n  PCI: drivers/pci/slot.c should depend on CONFIG_SYSFS\n  PCI: remove redundant __msi_set_enable()\n  PCI PM: consistently use type bool for wake enable variable\n  x86/ACPI: Correct maximum allowed _CRS returned resources and warn if exceeded\n  ...\n"
    },
    {
      "commit": "5165aece0efac6574fc3e32b6f1c2a964820d1c6",
      "tree": "73131c06a021578a47526a95bad391dbd9d3b932",
      "parents": [
        "e38be994b9cad09b0d8d78a1875d7e8a2e115d29",
        "f6b24caaf933a466397915a08e30e885a32f905a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 22 11:57:09 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 22 11:57:09 2009 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6: (43 commits)\n  via-velocity: Fix velocity driver unmapping incorrect size.\n  mlx4_en: Remove redundant refill code on RX\n  mlx4_en: Removed redundant check on lso header size\n  mlx4_en: Cancel port_up check in transmit function\n  mlx4_en: using stop/start_all_queues\n  mlx4_en: Removed redundant skb-\u003elen check\n  mlx4_en: Counting all the dropped packets on the TX side\n  usbnet cdc_subset: fix issues talking to PXA gadgets\n  Net: qla3xxx, remove sleeping in atomic\n  ipv4: fix NULL pointer + success return in route lookup path\n  isdn: clean up documentation index\n  cfg80211: validate station settings\n  cfg80211: allow setting station parameters in mesh\n  cfg80211: allow adding/deleting stations on mesh\n  ath5k: fix beacon_int handling\n  MAINTAINERS: Fix Atheros pattern paths\n  ath9k: restore PS mode, before we put the chip into FULL SLEEP state.\n  ath9k: wait for beacon frame along with CAB\n  acer-wmi: fix rfkill conversion\n  ath5k: avoid PCI FATAL interrupts by restoring RETRY_TIMEOUT disabling\n  ...\n"
    },
    {
      "commit": "04896a77a97b87e1611dedd61be88264ef4ac96c",
      "tree": "a4c615f0aa022363dbf3efe50a1bd9de91a65c04",
      "parents": [
        "2421c48bd74debb537de94c1bd15cbabab272aa1"
      ],
      "author": {
        "name": "Robert Love",
        "email": "rlove@google.com",
        "time": "Mon Jun 22 18:43:11 2009 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 22 11:32:25 2009 -0700"
      },
      "message": "msm_serial: serial driver for MSM7K onboard serial peripheral.\n\nSigned-off-by: Brian Swetland \u003cswetland@google.com\u003e\nSigned-off-by: Alan Cox \u003calan@linux.intel.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "099d5270897606473d63091afcc63f53ee1894bc",
      "tree": "4381c82550484101567e07b385989e3510fa73ab",
      "parents": [
        "94362fd7fbad653c9517efa4aa7cd8fdadd527b1"
      ],
      "author": {
        "name": "Kevin Hilman",
        "email": "khilman@deeprootsystems.com",
        "time": "Mon Jun 22 18:42:42 2009 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 22 11:32:24 2009 -0700"
      },
      "message": "serial@ add OMAP wakeup-enable register\n\nAdd the wakeup enable register to the list of OMAP-specific UART\nregisters.  This is to support forthcoming OMAP PM enhancements which\nuse the wakeup feature of the OMAP\u0027s 8250-based UART.\n\nSigned-off-by: Kevin Hilman \u003ckhilman@deeprootsystems.com\u003e\nSigned-off-by: Alan Cox \u003calan@linux.intel.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cec47e3d4a861e1d942b3a580d0bbef2700d2bb2",
      "tree": "2f92b957d515a5d887fe0147984cda3203c8b8ea",
      "parents": [
        "f5db4af466e2dca0fe822019812d586ca910b00c"
      ],
      "author": {
        "name": "Kiyoshi Ueda",
        "email": "k-ueda@ct.jp.nec.com",
        "time": "Mon Jun 22 10:12:35 2009 +0100"
      },
      "committer": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Mon Jun 22 10:12:35 2009 +0100"
      },
      "message": "dm: prepare for request based option\n\nThis patch adds core functions for request-based dm.\n\nWhen struct mapped device (md) is initialized, md-\u003equeue has\nan I/O scheduler and the following functions are used for\nrequest-based dm as the queue functions:\n    make_request_fn: dm_make_request()\n    pref_fn:         dm_prep_fn()\n    request_fn:      dm_request_fn()\n    softirq_done_fn: dm_softirq_done()\n    lld_busy_fn:     dm_lld_busy()\nActual initializations are done in another patch (PATCH 2).\n\nBelow is a brief summary of how request-based dm behaves, including:\n  - making request from bio\n  - cloning, mapping and dispatching request\n  - completing request and bio\n  - suspending md\n  - resuming md\n\n  bio to request\n  \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n  md-\u003equeue-\u003emake_request_fn() (dm_make_request()) calls __make_request()\n  for a bio submitted to the md.\n  Then, the bio is kept in the queue as a new request or merged into\n  another request in the queue if possible.\n\n  Cloning and Mapping\n  \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n  Cloning and mapping are done in md-\u003equeue-\u003erequest_fn() (dm_request_fn()),\n  when requests are dispatched after they are sorted by the I/O scheduler.\n\n  dm_request_fn() checks busy state of underlying devices using\n  target\u0027s busy() function and stops dispatching requests to keep them\n  on the dm device\u0027s queue if busy.\n  It helps better I/O merging, since no merge is done for a request\n  once it is dispatched to underlying devices.\n\n  Actual cloning and mapping are done in dm_prep_fn() and map_request()\n  called from dm_request_fn().\n  dm_prep_fn() clones not only request but also bios of the request\n  so that dm can hold bio completion in error cases and prevent\n  the bio submitter from noticing the error.\n  (See the \"Completion\" section below for details.)\n\n  After the cloning, the clone is mapped by target\u0027s map_rq() function\n    and inserted to underlying device\u0027s queue using\n    blk_insert_cloned_request().\n\n  Completion\n  \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n  Request completion can be hooked by rq-\u003eend_io(), but then, all bios\n  in the request will have been completed even error cases, and the bio\n  submitter will have noticed the error.\n  To prevent the bio completion in error cases, request-based dm clones\n  both bio and request and hooks both bio-\u003ebi_end_io() and rq-\u003eend_io():\n      bio-\u003ebi_end_io(): end_clone_bio()\n      rq-\u003eend_io():     end_clone_request()\n\n  Summary of the request completion flow is below:\n  blk_end_request() for a clone request\n    \u003d\u003e blk_update_request()\n       \u003d\u003e bio-\u003ebi_end_io() \u003d\u003d end_clone_bio() for each clone bio\n          \u003d\u003e Free the clone bio\n          \u003d\u003e Success: Complete the original bio (blk_update_request())\n             Error:   Don\u0027t complete the original bio\n    \u003d\u003e blk_finish_request()\n       \u003d\u003e rq-\u003eend_io() \u003d\u003d end_clone_request()\n          \u003d\u003e blk_complete_request()\n             \u003d\u003e dm_softirq_done()\n                \u003d\u003e Free the clone request\n                \u003d\u003e Success: Complete the original request (blk_end_request())\n                   Error:   Requeue the original request\n\n  end_clone_bio() completes the original request on the size of\n  the original bio in successful cases.\n  Even if all bios in the original request are completed by that\n  completion, the original request must not be completed yet to keep\n  the ordering of request completion for the stacking.\n  So end_clone_bio() uses blk_update_request() instead of\n  blk_end_request().\n  In error cases, end_clone_bio() doesn\u0027t complete the original bio.\n  It just frees the cloned bio and gives over the error handling to\n  end_clone_request().\n\n  end_clone_request(), which is called with queue lock held, completes\n  the clone request and the original request in a softirq context\n  (dm_softirq_done()), which has no queue lock, to avoid a deadlock\n  issue on submission of another request during the completion:\n      - The submitted request may be mapped to the same device\n      - Request submission requires queue lock, but the queue lock\n        has been held by itself and it doesn\u0027t know that\n\n  The clone request has no clone bio when dm_softirq_done() is called.\n  So target drivers can\u0027t resubmit it again even error cases.\n  Instead, they can ask dm core for requeueing and remapping\n  the original request in that cases.\n\n  suspend\n  \u003d\u003d\u003d\u003d\u003d\u003d\u003d\n  Request-based dm uses stopping md-\u003equeue as suspend of the md.\n  For noflush suspend, just stops md-\u003equeue.\n\n  For flush suspend, inserts a marker request to the tail of md-\u003equeue.\n  And dispatches all requests in md-\u003equeue until the marker comes to\n  the front of md-\u003equeue.  Then, stops dispatching request and waits\n  for the all dispatched requests to complete.\n  After that, completes the marker request, stops md-\u003equeue and\n  wake up the waiter on the suspend queue, md-\u003ewait.\n\n  resume\n  \u003d\u003d\u003d\u003d\u003d\u003d\n  Starts md-\u003equeue.\n\nSigned-off-by: Kiyoshi Ueda \u003ck-ueda@ct.jp.nec.com\u003e\nSigned-off-by: Jun\u0027ichi Nomura \u003cj-nomura@ce.jp.nec.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\n"
    },
    {
      "commit": "f5db4af466e2dca0fe822019812d586ca910b00c",
      "tree": "1bbaaa36509df9f7eecc19ccffa434048cf4b555",
      "parents": [
        "754c5fc7ebb417b23601a6222a6005cc2e7f2913"
      ],
      "author": {
        "name": "Jonthan Brassow",
        "email": "jbrassow@redhat.com",
        "time": "Mon Jun 22 10:12:35 2009 +0100"
      },
      "committer": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Mon Jun 22 10:12:35 2009 +0100"
      },
      "message": "dm raid1: add userspace log\n\nThis patch contains a device-mapper mirror log module that forwards\nrequests to userspace for processing.\n\nThe structures used for communication between kernel and userspace are\nlocated in include/linux/dm-log-userspace.h.  Due to the frequency,\ndiversity, and 2-way communication nature of the exchanges between\nkernel and userspace, \u0027connector\u0027 was chosen as the interface for\ncommunication.\n\nThe first log implementations written in userspace - \"clustered-disk\"\nand \"clustered-core\" - support clustered shared storage.   A userspace\ndaemon (in the LVM2 source code repository) uses openAIS/corosync to\nprocess requests in an ordered fashion with the rest of the nodes in the\ncluster so as to prevent log state corruption.  Other implementations\nwith no association to LVM or openAIS/corosync, are certainly possible.\n\n(Imagine if two machines are writing to the same region of a mirror.\nThey would both mark the region dirty, but you need a cluster-aware\nentity that can handle properly marking the region clean when they are\ndone.  Otherwise, you might clear the region when the first machine is\ndone, not the second.)\n\nSigned-off-by: Jonathan Brassow \u003cjbrassow@redhat.com\u003e\nCc: Evgeniy Polyakov \u003cjohnpol@2ka.mipt.ru\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\n"
    },
    {
      "commit": "754c5fc7ebb417b23601a6222a6005cc2e7f2913",
      "tree": "6c31b055fc26ec541d67fc1123ebaa4b7a8eae7a",
      "parents": [
        "18d8594dd93a1ae2fafd591ec026e87d743292bf"
      ],
      "author": {
        "name": "Mike Snitzer",
        "email": "snitzer@redhat.com",
        "time": "Mon Jun 22 10:12:34 2009 +0100"
      },
      "committer": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Mon Jun 22 10:12:34 2009 +0100"
      },
      "message": "dm: calculate queue limits during resume not load\n\nCurrently, device-mapper maintains a separate instance of \u0027struct\nqueue_limits\u0027 for each table of each device.  When the configuration of\na device is to be changed, first its table is loaded and this structure\nis populated, then the device is \u0027resumed\u0027 and the calculated\nqueue_limits are applied.\n\nThis places restrictions on how userspace may process related devices,\nwhere it is often advantageous to \u0027load\u0027 tables for several devices\nat once before \u0027resuming\u0027 them together.  As the new queue_limits\nonly take effect after the \u0027resume\u0027, if they are changing and one\ndevice uses another, the latter must be \u0027resumed\u0027 before the former\nmay be \u0027loaded\u0027.\n\nThis patch moves the calculation of these queue_limits out of\nthe \u0027load\u0027 operation into \u0027resume\u0027.  Since we are no longer\npre-calculating this struct, we no longer need to maintain copies\nwithin our dm structs.\n\ndm_set_device_limits() now passes the \u0027start\u0027 of the device\u0027s\ndata area (aka pe_start) as the \u0027offset\u0027 to blk_stack_limits().\n\ninit_valid_queue_limits() is replaced by blk_set_default_limits().\n\nSigned-off-by: Mike Snitzer \u003csnitzer@redhat.com\u003e\nCc: martin.petersen@oracle.com\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\n"
    },
    {
      "commit": "af4874e03ed82f050d5872d8c39ce64bf16b5c38",
      "tree": "38aa5dee43b4bb7a369995d4f38dee992cb051e0",
      "parents": [
        "1197764e403d97231eb6da2b1e16f511a7fd3101"
      ],
      "author": {
        "name": "Mike Snitzer",
        "email": "snitzer@redhat.com",
        "time": "Mon Jun 22 10:12:33 2009 +0100"
      },
      "committer": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Mon Jun 22 10:12:33 2009 +0100"
      },
      "message": "dm target:s introduce iterate devices fn\n\nAdd .iterate_devices to \u0027struct target_type\u0027 to allow a function to be\ncalled for all devices in a DM target.  Implemented it for all targets\nexcept those in dm-snap.c (origin and snapshot).\n\n(The raid1 version number jumps to 1.12 because we originally reserved\n1.1 to 1.11 for \u0027block_on_error\u0027 but ended up using \u0027handle_errors\u0027\ninstead.)\n\nSigned-off-by: Mike Snitzer \u003csnitzer@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\nCc: martin.petersen@oracle.com\n"
    },
    {
      "commit": "5ab97588fb266187b88d1ad893251c94388f18ba",
      "tree": "0dfd693fb3a31e22353e5640db8c17c989b5c65d",
      "parents": [
        "be6d4305db093ad1cc623f7dd3d2470b7bd73fa4"
      ],
      "author": {
        "name": "Mike Snitzer",
        "email": "snitzer@redhat.com",
        "time": "Mon Jun 22 10:12:32 2009 +0100"
      },
      "committer": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Mon Jun 22 10:12:32 2009 +0100"
      },
      "message": "dm table: replace struct io_restrictions with struct queue_limits\n\nUse blk_stack_limits() to stack block limits (including topology) rather\nthan duplicate the equivalent within Device Mapper.\n\nSigned-off-by: Mike Snitzer \u003csnitzer@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\n"
    },
    {
      "commit": "60935eb21d3c5bac79618000f38f92c249d153c4",
      "tree": "0fcd78d7d69e23cd062e5214ddf2959d5c74e605",
      "parents": [
        "486d220fe4909b5745c4faa67faddd30a707abe2"
      ],
      "author": {
        "name": "Milan Broz",
        "email": "mbroz@redhat.com",
        "time": "Mon Jun 22 10:12:30 2009 +0100"
      },
      "committer": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Mon Jun 22 10:12:30 2009 +0100"
      },
      "message": "dm ioctl: support cookies for udev\n\nAdd support for passing a 32 bit \"cookie\" into the kernel with the\nDM_SUSPEND, DM_DEV_RENAME and DM_DEV_REMOVE ioctls.  The (unsigned)\nvalue of this cookie is returned to userspace alongside the uevents\nissued by these ioctls in the variable DM_COOKIE.\n\nThis means the userspace process issuing these ioctls can be notified\nby udev after udev has completed any actions triggered.\n\nTo minimise the interface extension, we pass the cookie into the\nkernel in the event_nr field which is otherwise unused when calling\nthese ioctls.  Incrementing the version number allows userspace to\ndetermine in advance whether or not the kernel supports the cookie.\nIf the kernel does support this but userspace does not, there should\nbe no impact as the new variable will just get ignored.\n\nSigned-off-by: Milan Broz \u003cmbroz@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\n"
    },
    {
      "commit": "f9ab94cee313746573b2d693bc2afb807ebb0998",
      "tree": "150155f364db0f26c7217e1f92d31344aa67a3f0",
      "parents": [
        "27eaa14975d8b53f0bad422e53cdf8e5f6dd44ec"
      ],
      "author": {
        "name": "Mikulas Patocka",
        "email": "mpatocka@redhat.com",
        "time": "Mon Jun 22 10:12:20 2009 +0100"
      },
      "committer": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Mon Jun 22 10:12:20 2009 +0100"
      },
      "message": "dm: introduce num_flush_requests\n\nIntroduce num_flush_requests for a target to set to say how many flush\ninstructions (empty barriers) it wants to receive.  These are sent by\n__clone_and_map_empty_barrier with map_info-\u003eflush_request going from 0\nto (num_flush_requests - 1).\n\nOld targets without flush support won\u0027t receive any flush requests.\n\nSigned-off-by: Mikulas Patocka \u003cmpatocka@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\n"
    },
    {
      "commit": "d06063cc221fdefcab86589e79ddfdb7c0e14b63",
      "tree": "00ccaf8c1992b57a4445d78b9eae25fde0b3ab31",
      "parents": [
        "30c9f3a9fae79517bca595826a19c6855fbb6d32"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 10 09:01:23 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jun 21 13:08:22 2009 -0700"
      },
      "message": "Move FAULT_FLAG_xyz into handle_mm_fault() callers\n\nThis allows the callers to now pass down the full set of FAULT_FLAG_xyz\nflags to handle_mm_fault().  All callers have been (mechanically)\nconverted to the new calling convention, there\u0027s almost certainly room\nfor architectures to clean up their code and then add FAULT_FLAG_RETRY\nwhen that support is added.\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b391277a56b9eaaff4474339c703e574ed7fab5b",
      "tree": "81964fbb0a7582e110a0dc06b4ddfce8508c1bd3",
      "parents": [
        "24add1c4326ce5ca22e7af8b84bb113cd48efac9"
      ],
      "author": {
        "name": "Hannes Reinecke",
        "email": "hare@suse.de",
        "time": "Thu Jun 18 09:57:18 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Sun Jun 21 12:01:27 2009 -0500"
      },
      "message": "sd, sr: fix Driver \u0027sd\u0027 needs updating message\n\nIf a SCSI ULD driver sets blk_queue_prep_rq(), it should clean it\nup itself on remove(), and not from the bus callbacks. This\nremoves the need to hook into bus-\u003eremove(), which should not\nbe used at the same time as driver-\u003eremove().\n\n[jejb: fix sdkp initialisation problem due to mismerge]\nSigned-off-by: Hannes Reinecke \u003chare@suse.de\u003e\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "7414705ea4aef9ce438e547f3138a680d2d1096c",
      "tree": "c8c14a80e31dbecbd6a9d083369f3e5e11105756",
      "parents": [
        "650bd12b9e31ec51d7ad0df3c4f94d863b827976"
      ],
      "author": {
        "name": "Robert Love",
        "email": "robert.w.love@intel.com",
        "time": "Wed Jun 10 15:31:10 2009 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Sun Jun 21 11:07:08 2009 -0500"
      },
      "message": "libfc: Add runtime debugging with debug_logging module parameter\n\nThis patch adds the /sys/module/libfc/parameters/debug_logging\nfile to sysfs as a module parameter. It accepts an integer\nbitmask for logging. Currently it supports:\n\n   bit\nLSB 0 \u003d general libfc debugging\n    1 \u003d lport debugging\n    2 \u003d disc debugging\n    3 \u003d rport debugging\n    4 \u003d fcp debugging\n    5 \u003d EM debugging\n    6 \u003d exch/seq debugging\n    7 \u003d scsi logging (mostly error handling)\n\nthe other bits are not used at this time.\n\nThe patch converts all of the libfc source files to use\nthese new macros and removes the old FC_DBG macro.\n\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "d355e57d58193b89283b0c8153649f0427b0bdad",
      "tree": "3b0abe01d5f384474b32d6606e1a4f57230a1f13",
      "parents": [
        "9194c6264040d71f851236437a392594b26e5b91"
      ],
      "author": {
        "name": "Mike Christie",
        "email": "michaelc@cs.wisc.edu",
        "time": "Mon Jun 15 22:11:08 2009 -0500"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Sun Jun 21 10:52:39 2009 -0500"
      },
      "message": "libiscsi: don\u0027t run scsi eh if iscsi task is making progress\n\nIf we are sending or receiving data for the task successfully do\nnot run the scsi eh, because we know the task is making progress.\n\nSigned-off-by: Mike Christie \u003cmichaelc@cs.wisc.edu\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "2453d6ff6ffc5f0d496b7b14f509a26f99bf115e",
      "tree": "9e4e709bdb932889b0b9cfc5b2b767cfcf750b83",
      "parents": [
        "12e24f34cb0d55efd08c18b2112507d4bf498008",
        "ab33dcff40d7a9a28587e4425621e4cbc4089e03"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jun 20 11:30:01 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jun 20 11:30:01 2009 -0700"
      },
      "message": "Merge branch \u0027irq-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027irq-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  genirq, irq.h: Fix kernel-doc warnings\n  genirq: fix comment to say IRQ_WAKE_THREAD\n"
    },
    {
      "commit": "12e24f34cb0d55efd08c18b2112507d4bf498008",
      "tree": "83b07be17b8ef45f42360a3b9159b3aaae3fbad4",
      "parents": [
        "1eb51c33b21ffa3fceb634d1d6bcd6488c79bc26",
        "eadc84cc01e04f9f74ec2de0c9355be035c7b396"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jun 20 11:29:32 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jun 20 11:29:32 2009 -0700"
      },
      "message": "Merge branch \u0027perfcounters-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027perfcounters-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (49 commits)\n  perfcounter: Handle some IO return values\n  perf_counter: Push perf_sample_data through the swcounter code\n  perf_counter tools: Define and use our own u64, s64 etc. definitions\n  perf_counter: Close race in perf_lock_task_context()\n  perf_counter, x86: Improve interactions with fast-gup\n  perf_counter: Simplify and fix task migration counting\n  perf_counter tools: Add a data file header\n  perf_counter: Update userspace callchain sampling uses\n  perf_counter: Make callchain samples extensible\n  perf report: Filter to parent set by default\n  perf_counter tools: Handle lost events\n  perf_counter: Add event overlow handling\n  fs: Provide empty .set_page_dirty() aop for anon inodes\n  perf_counter: tools: Makefile tweaks for 64-bit powerpc\n  perf_counter: powerpc: Add processor back-end for MPC7450 family\n  perf_counter: powerpc: Make powerpc perf_counter code safe for 32-bit kernels\n  perf_counter: powerpc: Change how processor-specific back-ends get selected\n  perf_counter: powerpc: Use unsigned long for register and constraint values\n  perf_counter: powerpc: Enable use of software counters on 32-bit powerpc\n  perf_counter tools: Add and use isprint()\n  ...\n"
    },
    {
      "commit": "b0b7065b64fe517b4a50915a1555e8ee98890d64",
      "tree": "950e7735585a83f5b4efe7a9473b5b42d5ca4f57",
      "parents": [
        "38df92b8cee936334f686c06df0e5fbb92e252df",
        "d4c4038343510d83727ea922de4435996c26c0c8"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jun 20 10:56:46 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jun 20 10:56:46 2009 -0700"
      },
      "message": "Merge branch \u0027tracing-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027tracing-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (24 commits)\n  tracing/urgent: warn in case of ftrace_start_up inbalance\n  tracing/urgent: fix unbalanced ftrace_start_up\n  function-graph: add stack frame test\n  function-graph: disable when both x86_32 and optimize for size are configured\n  ring-buffer: have benchmark test print to trace buffer\n  ring-buffer: do not grab locks in nmi\n  ring-buffer: add locks around rb_per_cpu_empty\n  ring-buffer: check for less than two in size allocation\n  ring-buffer: remove useless compile check for buffer_page size\n  ring-buffer: remove useless warn on check\n  ring-buffer: use BUF_PAGE_HDR_SIZE in calculating index\n  tracing: update sample event documentation\n  tracing/filters: fix race between filter setting and module unload\n  tracing/filters: free filter_string in destroy_preds()\n  ring-buffer: use commit counters for commit pointer accounting\n  ring-buffer: remove unused variable\n  ring-buffer: have benchmark test handle discarded events\n  ring-buffer: prevent adding write in discarded area\n  tracing/filters: strloc should be unsigned short\n  tracing/filters: operand can be negative\n  ...\n\nFix up kmemcheck-induced conflict in kernel/trace/ring_buffer.c manually\n"
    },
    {
      "commit": "93db6294958f62643a917e44d1abc85440e600cf",
      "tree": "33de2c41b0f70d209d64487d1a2bba6d673015ef",
      "parents": [
        "43813f399c72aa22e01a680559c1cb5274bf2140",
        "eef3e4cab72eaf5345e3c73b2975c194a714f6cd"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jun 20 10:17:02 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jun 20 10:17:02 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: (35 commits)\n  Input: add driver for Synaptics I2C touchpad\n  Input: synaptics - add support for reporting x/y resolution\n  Input: ALPS - handle touchpoints buttons correctly\n  Input: gpio-keys - change timer to workqueue\n  Input: ads7846 - pin change interrupt support\n  Input: add support for touchscreen on W90P910 ARM platform\n  Input: appletouch - improve finger detection\n  Input: wacom - clear Intuos4 wheel data when finger leaves proximity\n  Input: ucb1400 - move static function from header into core\n  Input: add driver for EETI touchpanels\n  Input: ads7846 - more detailed model name in sysfs\n  Input: ads7846 - support swapping x and y axes\n  Input: ati_remote2 - use non-atomic bitops\n  Input: introduce lm8323 keypad driver\n  Input: psmouse - ESD workaround fix for OLPC XO touchpad\n  Input: tsc2007 - make sure platform provides get_pendown_state()\n  Input: uinput - flush all pending ff effects before destroying device\n  Input: simplify name handling for certain input handles\n  Input: serio - do not use deprecated dev.power.power_state\n  Input: wacom - add support for Intuos4 tablets\n  ...\n"
    },
    {
      "commit": "43813f399c72aa22e01a680559c1cb5274bf2140",
      "tree": "933c0e7c445b9c3478b5a0db06a162d0d39f00f2",
      "parents": [
        "a552f0af753eb4b5bbbe9eff205fe874b04c4583",
        "0b7af262aba912f52bc6ef76f1bc0960b01b8502"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jun 20 10:15:30 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jun 20 10:15:30 2009 -0700"
      },
      "message": "Merge branch \u0027drm-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6\n\n* \u0027drm-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6: (24 commits)\n  agp/intel: Make intel_i965_mask_memory use dma_addr_t for physical addresses\n  agp: add user mapping support to ATI AGP bridge.\n  drm/i915: enable GEM on PAE.\n  drm/radeon: fix unused variables warning\n  agp: switch AGP to use page array instead of unsigned long array\n  agpgart: detected ALi M???? chipset with M1621\n  drm/radeon: command stream checker for r3xx-r5xx hardware\n  drm/radeon: Fully initialize LVDS info also when we can\u0027t get it from the ROM.\n  radeon: Fix CP byte order on big endian architectures with KMS.\n  agp/uninorth: Handle user memory types.\n  drm/ttm: Add some powerpc cache flush code.\n  radeon: Enable modesetting on non-x86.\n  drm/radeon: Respect AGP cant_use_aperture flag.\n  drm: EDID endianness fixes.\n  drm/radeon: this VRAM vs aperture test is wrong, just remove it.\n  drm/ttm: fix an error path to exit function correctly\n  drm: Apply \"Memory fragmentation from lost alignment blocks\"\n  ttm: Return -ERESTART when a signal interrupts bo eviction.\n  drm: Remove memory debugging infrastructure.\n  drm/i915: Clear fence register on tiling stride change.\n  ...\n"
    },
    {
      "commit": "e6423407d01168f7760cdee7270d9f51d1240301",
      "tree": "979795cfa8f6946238ab31f544159142f3e7df93",
      "parents": [
        "7f8189068726492950bf1a2dcfd9b51314560abf",
        "39c58f37a10198054c656c28202fb1e6d22fd505"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jun 20 10:11:11 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jun 20 10:11:11 2009 -0700"
      },
      "message": "Merge branch \u0027for-2.6.31\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6\n\n* \u0027for-2.6.31\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6: (34 commits)\n  ide-cd: prevent null pointer deref via cdrom_newpc_intr\n  ide: BUG() on unknown requests\n  ide: filter out invalid DMA xfer mode changes in HDIO_DRIVE_CMD ioctl handler\n  ide: do not access ide_drive_t \u0027drive_data\u0027 field directly\n  sl82c105: implement test_irq() method\n  siimage: implement test_irq() method\n  pdc202xx_old: implement test_irq() method (take 2)\n  cmd64x: implement test_irq() method\n  cmd640: implement test_irq() method\n  ide: move ack_intr() method into \u0027struct ide_port_ops\u0027 (take 2)\n  ide: move IRQ clearing from ack_intr() method to clear_irq() method (take 2)\n  siimage: use ide_dma_test_irq() (take 2)\n  cmd64x: implement clear_irq() method (take 2)\n  ide: call clear_irq() method in ide_timer_expiry()\n  sgiioc4: coding style cleanup\n  ide: don\u0027t enable IORDY at a probe time\n  ide: IORDY handling fixes\n  ata: add ata_id_pio_need_iordy() helper (v2)\n  ide-tape: fix build issue\n  ide: unify interrupt reason checking\n  ...\n"
    },
    {
      "commit": "c3da63f35773b04e885c5659e560d5c521d2682e",
      "tree": "5e876e7587f299cadce0b53bfaf912fb28d8283d",
      "parents": [
        "73e42897e8e5619eacb787d2ce69be12f47cfc21",
        "a97f4424fb4cddecf9b13c9b0e3f79924b624a7f"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jun 20 01:16:40 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jun 20 01:16:40 2009 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6\n"
    },
    {
      "commit": "ec20a022aa24fc63d3ab59584cb1e5aa9a21d46c",
      "tree": "671086529e62fcb541fb03422010d1eeae09b00a",
      "parents": [
        "d7ed5d883c09c5474f842dcb148515dfaef2a567"
      ],
      "author": {
        "name": "Tero Saarni",
        "email": "tero.saarni@gmail.com",
        "time": "Wed Jun 10 23:27:24 2009 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Fri Jun 19 22:55:17 2009 -0700"
      },
      "message": "Input: synaptics - add support for reporting x/y resolution\n\nSynaptics uses anisotropic coordinate system.  On some wide touchpads\nvertical resolution can be twice as high as horizontal which causes\nunequal sensitivity on x/y directions.  Add support for reading the\nresolution with EVIOCGABS ioctl.\n\nSigned-off-by: Tero Saarni \u003ctero.saarni@gmail.com\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "7b768f07dce463a054c9dd84862d15ccc3d2b712",
      "tree": "1c7a2509e1bca6718fd29e897f44b648089f728b",
      "parents": [
        "07a2039b8eb0af4ff464efd3dfd95de5c02648c6"
      ],
      "author": {
        "name": "Pallipadi, Venkatesh",
        "email": "venkatesh.pallipadi@intel.com",
        "time": "Fri Jun 19 17:14:59 2009 -0700"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Sat Jun 20 00:50:52 2009 -0400"
      },
      "message": "ACPI: pdc init related memory leak with physical CPU hotplug\n\narch_acpi_processor_cleanup_pdc() in x86 and ia64 results in memory allocated\nfor _PDC objects that is never freed and will cause memory leak in case of\nphysical CPU remove and add. Patch fixes the memory leak by freeing the\nobjects soon after _PDC is evaluated.\n\nReported-by: Bjorn Helgaas \u003cbjorn.helgaas@hp.com\u003e\nSigned-off-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "5c6fb0059cec9a3c0f6d88a0ddf3d62ad323cd57",
      "tree": "49b4ceaeb5686fca4546315155d04633adf25b3c",
      "parents": [
        "31583d6acf940d2951bc8716557b06d9de5a0c4b",
        "c70366732f67dbdb32f7fe9c6aa59299b76feca6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jun 19 17:45:51 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jun 19 17:45:51 2009 -0700"
      },
      "message": "Merge branch \u0027i2c-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging\n\n* \u0027i2c-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging:\n  i2c: New macro to initialize i2c address lists on the fly\n  i2c: Don\u0027t advertise i2c functions when not available\n  i2c: Use rwsem instead of mutex for board info\n  i2c: Add a sysfs interface to instantiate devices\n  i2c: Limit core locking to the necessary sections\n  i2c: Kill the redundant client list\n  i2c: Kill is_newstyle_driver\n  i2c: Merge i2c_attach_client into i2c_new_device\n  i2c: Drop i2c_probe function\n  i2c: Get rid of the legacy binding model\n  i2c: Kill client_register and client_unregister methods\n"
    },
    {
      "commit": "31583d6acf940d2951bc8716557b06d9de5a0c4b",
      "tree": "607aef385b0998f0cb7ff63b05407afed5182840",
      "parents": [
        "ee37ba7a4212c7420f12e6a2ad8a3966649ede7a",
        "f740f5ca056f0a4eff3abdf272a8a4ba3965d57d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jun 19 17:43:04 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jun 19 17:43:04 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.dk/linux-2.6-block\n\n* \u0027for-linus\u0027 of git://git.kernel.dk/linux-2.6-block:\n  Fix kernel-doc parameter name typo in blk-settings.c:\n  block: rename CONFIG_LBD to CONFIG_LBDAF\n  block: Fix bounce_pfn setting\n  hd: stop defining MAJOR_NR\n"
    },
    {
      "commit": "dbe6f1869188b6e04e38aa861dd198befb08bcd7",
      "tree": "cbc1866e7e24f407de3d5f80ded160b6d1d75bdc",
      "parents": [
        "d68412b6d1e8e5ed42d568330e598bd81914ccbd"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Thu Jun 18 16:49:19 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jun 19 16:46:08 2009 -0700"
      },
      "message": "dma-mapping: mark dma_sync_single and dma_sync_sg as deprecated\n\ndma_sync_single() and dma_sync_sg() have been described as \"Backwards\ncompat, remove in 2.7.x\" for a long time (since 2.6.5).\n\nThis marks dma_sync_single() and dma_sync_sg() as deprecated so the users\nget notified before removing them.\n\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d68412b6d1e8e5ed42d568330e598bd81914ccbd",
      "tree": "749aab371027aaf4c2128def0cfca46dc6ddfa12",
      "parents": [
        "8e20ce94ce378334dea83a83ab26253b851100a2"
      ],
      "author": {
        "name": "Jiri Slaby",
        "email": "jirislaby@gmail.com",
        "time": "Thu Jun 18 16:49:18 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jun 19 16:46:08 2009 -0700"
      },
      "message": "dma-mapping: mark DMA_nBITS_MASK as deprecated\n\nMark them deprecated so that out-of-tree developers get notified about\nthis before their modules break when these macros are removed.\n\nSigned-off-by: Jiri Slaby \u003cjirislaby@gmail.com\u003e\nCc: Yang Hongyang \u003cyanghy@cn.fujitsu.com\u003e\nAcked-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1e9c28599879040039f610c5b177e61ef65ff100",
      "tree": "308fea743fbadefa3ea9a88ff3ae51f6fe0c624a",
      "parents": [
        "0732f87761dbe417cb6e084b712d07e879e876ef"
      ],
      "author": {
        "name": "Baruch Siach",
        "email": "baruch@tkos.co.il",
        "time": "Thu Jun 18 16:48:58 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jun 19 16:46:03 2009 -0700"
      },
      "message": "gpio: driver for PrimeCell PL061 GPIO controller\n\nThis is a driver for the ARM PrimeCell PL061 GPIO AMBA peripheral.  The\ndriver is implemented using the gpiolib framework.\n\nThis driver also includes support for the use of the PL061 as an interrupt\ncontroller (secondary).\n\nSigned-off-by: Baruch Siach \u003cbaruch@tkos.co.il\u003e\nCc: David Brownell \u003cdavid-b@pacbell.net\u003e\nAcked-by: Russell King \u003crmk@arm.linux.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "464902e812025792c9e33e19e1555c343672d5cf",
      "tree": "cc243de464a7935291c52ac93d6bd0a24c6c08c5",
      "parents": [
        "96e9cfeb9692b0bc6e03f9b6f9cb3c67a40b76d1"
      ],
      "author": {
        "name": "Alan Jenkins",
        "email": "alan-jenkins@tuffmail.co.uk",
        "time": "Tue Jun 16 14:54:04 2009 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jun 19 11:50:18 2009 -0400"
      },
      "message": "rfkill: export persistent attribute in sysfs\n\nThis information allows userspace to implement a hybrid policy where\nit can store the rfkill soft-blocked state in platform non-volatile\nstorage if available, and if not then file-based storage can be used.\n\nSome users prefer platform non-volatile storage because of the behaviour\nwhen dual-booting multiple versions of Linux, or if the rfkill setting\nis changed in the BIOS setting screens, or if the BIOS responds to\nwireless-toggle hotkeys itself before the relevant platform driver has\nbeen loaded.\n\nSigned-off-by: Alan Jenkins \u003calan-jenkins@tuffmail.co.uk\u003e\nAcked-by: Henrique de Moraes Holschuh \u003chmh@hmh.eng.br\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "06d5caf47ef4fbd9efdceae33293c42778cb7b0c",
      "tree": "51bce5f2f9f7aef903c464ac68c80da6f83e2c53",
      "parents": [
        "7fa20a7f60df0afceafbb8197b5d110507f42c72"
      ],
      "author": {
        "name": "Alan Jenkins",
        "email": "alan-jenkins@tuffmail.co.uk",
        "time": "Tue Jun 16 15:39:51 2009 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jun 19 11:50:17 2009 -0400"
      },
      "message": "rfkill: don\u0027t restore software blocked state on persistent devices\n\nThe setting of the \"persistent\" flag is also made more explicit using\na new rfkill_init_sw_state() function, instead of special-casing\nrfkill_set_sw_state() when it is called before registration.\n\nSuspend is a bit of a corner case so we try to get away without adding\nanother hack to rfkill-input - it\u0027s going to be removed soon.\nIf the state does change over suspend, users will simply have to prod\nrfkill-input twice in order to toggle the state.\n\nUserspace policy agents will be able to implement a more consistent user\nexperience.  For example, they can avoid the above problem if they\ntoggle devices individually.  Then there would be no \"global state\"\nto get out of sync.\n\nCurrently there are only two rfkill drivers with persistent soft-blocked\nstate.  thinkpad-acpi already checks the software state on resume.\neeepc-laptop will require modification.\n\nSigned-off-by: Alan Jenkins \u003calan-jenkins@tuffmail.co.uk\u003e\nCC: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nAcked-by: Henrique de Moraes Holschuh \u003chmh@hmh.eng.br\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "c70366732f67dbdb32f7fe9c6aa59299b76feca6",
      "tree": "3e091c303c478759f5bf67bcc7f06cfd3f989adb",
      "parents": [
        "23af8400571ac4431fac0caefeac18f8aef490df"
      ],
      "author": {
        "name": "Hans Verkuil",
        "email": "hverkuil@xs4all.nl",
        "time": "Fri Jun 19 16:58:21 2009 +0200"
      },
      "committer": {
        "name": "Jean Delvare",
        "email": "khali@linux-fr.org",
        "time": "Fri Jun 19 16:58:21 2009 +0200"
      },
      "message": "i2c: New macro to initialize i2c address lists on the fly\n\nFor video4linux we sometimes need to probe for a single i2c address.\nNormally you would do it like this:\n\nstatic const unsigned short addrs[] \u003d {\n\taddr, I2C_CLIENT_END\n};\n\nclient \u003d i2c_new_probed_device(adapter, \u0026info, addrs);\n\nThis is a bit awkward and I came up with this macro:\n\n#define V4L2_I2C_ADDRS(addr, addrs...) \\\n\t((const unsigned short []){ addr, ## addrs, I2C_CLIENT_END })\n\nThis can construct a list of one or more i2c addresses on the fly. But\nthis is something that really belongs in i2c.h, renamed to I2C_ADDRS.\n\nWith this macro we can just do:\n\nclient \u003d i2c_new_probed_device(adapter, \u0026info, I2C_ADDRS(addr));\n\nNote that this can also be used to initialize an array:\n\nstatic const unsigned short addrs[] \u003d I2C_ADDRS(0x2a, 0x2c);\n\nWhether you want to is another matter, but it works. This functionality is \nalso available in the oldest supported gcc (3.2).\n\nSigned-off-by: Hans Verkuil \u003chverkuil@xs4all.nl\u003e\nSigned-off-by: Jean Delvare \u003ckhali@linux-fr.org\u003e\n"
    },
    {
      "commit": "23af8400571ac4431fac0caefeac18f8aef490df",
      "tree": "815be4893ec9a0875813151de3fe85dcae781434",
      "parents": [
        "f18c41daea14baee11252da268cdf5dcd57c7c10"
      ],
      "author": {
        "name": "Jean Delvare",
        "email": "khali@linux-fr.org",
        "time": "Fri Jun 19 16:58:20 2009 +0200"
      },
      "committer": {
        "name": "Jean Delvare",
        "email": "khali@linux-fr.org",
        "time": "Fri Jun 19 16:58:20 2009 +0200"
      },
      "message": "i2c: Don\u0027t advertise i2c functions when not available\n\nSurround i2c function declarations with ifdefs, so that they aren\u0027t\nadvertised when i2c-core isn\u0027t actually built. That way, drivers using\nthese functions unconditionally will result in an immediate build\nfailure, rather than a late linking failure which is harder to figure\nout.\n\nSigned-off-by: Jean Delvare \u003ckhali@linux-fr.org\u003e\nCc: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\n"
    },
    {
      "commit": "99cd8e25875a109455b709b5a41d4891b8d8e58e",
      "tree": "38907f3c6df0048ce0c4764a282c4a21c74aa49f",
      "parents": [
        "35fc37f8188177e3ba3e7f99a6e3300e490e9181"
      ],
      "author": {
        "name": "Jean Delvare",
        "email": "khali@linux-fr.org",
        "time": "Fri Jun 19 16:58:20 2009 +0200"
      },
      "committer": {
        "name": "Jean Delvare",
        "email": "khali@linux-fr.org",
        "time": "Fri Jun 19 16:58:20 2009 +0200"
      },
      "message": "i2c: Add a sysfs interface to instantiate devices\n\nAdd a sysfs interface to instantiate and delete I2C devices. This is\nprimarily a replacement of the force_* module parameters implemented\nby some i2c drivers. These module parameters were implemented\ninternally by the I2C_CLIENT_INSMOD* macros, which don\u0027t scale well.\n\nThis can also be used when developing a driver on a self-soldered\nboard which doesn\u0027t yet have proper I2C device declaration at the\nplatform level, and presumably for various debugging situations.\n\nSigned-off-by: Jean Delvare \u003ckhali@linux-fr.org\u003e\nCc: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\n"
    },
    {
      "commit": "e549c2b54dd90a056d6824b885d438b7437874f0",
      "tree": "45da005101a1587c18b41f4ad572458e08b95099",
      "parents": [
        "1e40ac12dab22d98d0178e87364cf4e36862809c"
      ],
      "author": {
        "name": "Jean Delvare",
        "email": "khali@linux-fr.org",
        "time": "Fri Jun 19 16:58:19 2009 +0200"
      },
      "committer": {
        "name": "Jean Delvare",
        "email": "khali@linux-fr.org",
        "time": "Fri Jun 19 16:58:19 2009 +0200"
      },
      "message": "i2c: Kill the redundant client list\n\nWe used to maintain our own per-adapter list of i2c clients, but this\nis redundant with what the driver core does, and no longer needed.\nJust drop the redundant list.\n\nSigned-off-by: Jean Delvare \u003ckhali@linux-fr.org\u003e\nCc: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\n"
    },
    {
      "commit": "1e40ac12dab22d98d0178e87364cf4e36862809c",
      "tree": "4a17e391d0b4d33bd9d13c077c789145f436dd76",
      "parents": [
        "f8a227e8ac19c2d3e189833b8518b1805d9b443c"
      ],
      "author": {
        "name": "Jean Delvare",
        "email": "khali@linux-fr.org",
        "time": "Fri Jun 19 16:58:19 2009 +0200"
      },
      "committer": {
        "name": "Jean Delvare",
        "email": "khali@linux-fr.org",
        "time": "Fri Jun 19 16:58:19 2009 +0200"
      },
      "message": "i2c: Kill is_newstyle_driver\n\nLegacy i2c drivers are gone, all drivers are new-style now, so there\nis no point to check.\n\nSigned-off-by: Jean Delvare \u003ckhali@linux-fr.org\u003e\nCc: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\n"
    },
    {
      "commit": "36789b5ea52bba961122b45f4383f553ec3b5a6c",
      "tree": "8e4b23645de92f07c806b4ded07e6a6ed234a65d",
      "parents": [
        "729d6dd571464954f625e6b80950d9e4e3bd94f7"
      ],
      "author": {
        "name": "Jean Delvare",
        "email": "khali@linux-fr.org",
        "time": "Fri Jun 19 16:58:18 2009 +0200"
      },
      "committer": {
        "name": "Jean Delvare",
        "email": "khali@linux-fr.org",
        "time": "Fri Jun 19 16:58:18 2009 +0200"
      },
      "message": "i2c: Drop i2c_probe function\n\nThe legacy i2c_probe() function has no users left, get rid of it.\n\nSigned-off-by: Jean Delvare \u003ckhali@linux-fr.org\u003e\nCc: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\n"
    },
    {
      "commit": "729d6dd571464954f625e6b80950d9e4e3bd94f7",
      "tree": "faf8ada32b03c8bc07e1ddb8ec0d26d6440b6d98",
      "parents": [
        "352da9820e5506e3b8496e6052a2ad9c488efae8"
      ],
      "author": {
        "name": "Jean Delvare",
        "email": "khali@linux-fr.org",
        "time": "Fri Jun 19 16:58:18 2009 +0200"
      },
      "committer": {
        "name": "Jean Delvare",
        "email": "khali@linux-fr.org",
        "time": "Fri Jun 19 16:58:18 2009 +0200"
      },
      "message": "i2c: Get rid of the legacy binding model\n\nWe converted all the legacy i2c drivers so we can finally get rid of\nthe legacy binding model. Hooray!\n\nSigned-off-by: Jean Delvare \u003ckhali@linux-fr.org\u003e\nCc: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\n"
    },
    {
      "commit": "352da9820e5506e3b8496e6052a2ad9c488efae8",
      "tree": "61be08b52612e52aa8ecc3bfc3a6adb1e36f3f57",
      "parents": [
        "0732f87761dbe417cb6e084b712d07e879e876ef"
      ],
      "author": {
        "name": "Jean Delvare",
        "email": "khali@linux-fr.org",
        "time": "Fri Jun 19 16:58:17 2009 +0200"
      },
      "committer": {
        "name": "Jean Delvare",
        "email": "khali@linux-fr.org",
        "time": "Fri Jun 19 16:58:17 2009 +0200"
      },
      "message": "i2c: Kill client_register and client_unregister methods\n\nThese methods were useful in the legacy binding model but no longer in\nthe new (standard) binding model. There are no users left so we can\ndrop them.\n\nSigned-off-by: Jean Delvare \u003ckhali@linux-fr.org\u003e\nCc: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\n"
    },
    {
      "commit": "fcec9bf12442d0cd50d6cee125d168cfc3f37c5e",
      "tree": "fdb912dda667b1166e0448dc0e1161e8e1a972d9",
      "parents": [
        "1527aab617af87f2d2121fa3ff5aa79d96e7ad2f"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Fri Jun 19 10:30:29 2009 +0200"
      },
      "committer": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Fri Jun 19 14:58:11 2009 +0200"
      },
      "message": "asm-generic: hook up new system calls\n\nsys_rt_tgsigqueueinfo and sys_perf_counter_open\nhave been added in 2.6.31, so hook them up in the\ngeneric unistd.h file.\n\nSince the file is now in the mainline kernel, we\nare no longer reordering the numbers but just add\nsystem calls at the end.\n\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\n"
    },
    {
      "commit": "804387a1af87f66a4b93eee230ba98f8b906b088",
      "tree": "1b6493b447be7bc962e389edbecc0da1f9a840c2",
      "parents": [
        "a9ede5b355aabd667ed690f858c925a23927027b"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Sun Jun 14 22:38:11 2009 +0200"
      },
      "committer": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Fri Jun 19 14:58:09 2009 +0200"
      },
      "message": "asm-generic: drop HARDIRQ_BITS definition from hardirq.h\n\nArchitechtures normally don\u0027t need to set a HARDIRQ_BITS\nunless they have hardcoded a specific value in assembly.\nThis drops the definition from asm-generic/hardirq.h, which\nresults in linux/hardirq.h setting its default of 10.\n\nBoth the old default of 8 and the linux/hardirq.h default\nof 10 are sufficient because they only limit the number\nof nested hardirqs, and we normally run out of stack space\nmuch earlier than exceeding 256 or even 1024 nested interrupts.\n\nReported-by: Mike Frysinger \u003cvapier@gentoo.org\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\n"
    },
    {
      "commit": "a9ede5b355aabd667ed690f858c925a23927027b",
      "tree": "ee3fe26530679c33fa3aad5386e6961b3bf399e7",
      "parents": [
        "9844813f226f6d07e1544e915529cb88f4fcb868"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@gentoo.org",
        "time": "Sun Jun 14 02:00:03 2009 -0400"
      },
      "committer": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Fri Jun 19 14:58:08 2009 +0200"
      },
      "message": "asm-generic: uaccess: fix up local access_ok() usage\n\nThere\u0027s no reason that I can see to use the short __access_ok() form\ndirectly when the access_ok() is clearer in intent and for most people,\nexpands to the same C code (i.e. always specify the first field -- access\ntype).  Not all no-mmu systems lack memory protection, so the read/write\ncould feasibly be checked.\n\nSigned-off-by: Mike Frysinger \u003cvapier@gentoo.org\u003e\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\n"
    },
    {
      "commit": "9844813f226f6d07e1544e915529cb88f4fcb868",
      "tree": "cdf051b38220c6d99a6f4aac372d7b95eda26c6a",
      "parents": [
        "0732f87761dbe417cb6e084b712d07e879e876ef"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@gentoo.org",
        "time": "Sun Jun 14 02:00:02 2009 -0400"
      },
      "committer": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Fri Jun 19 14:58:07 2009 +0200"
      },
      "message": "asm-generic: uaccess: add missing access_ok() check to strnlen_user()\n\nThe strnlen_user() function was missing a access_ok() check on the pointer\ngiven.  We\u0027ve had cases on Blackfin systems where test programs caused\nkernel crashes here because userspace passed up a NULL/-1 pointer and the\nkernel gladly attempted to run strlen() on it.\n\nSigned-off-by: Mike Frysinger \u003cvapier@gentoo.org\u003e\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\n"
    },
    {
      "commit": "e5289d4a181fb6c0b7a7607649af2ffdc491335c",
      "tree": "6c9e9ab46a29c538e4c505d3d3cd135265db08a2",
      "parents": [
        "f5970550d5ccf90453cbd7d260370ea99d1f6513"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri Jun 19 13:22:51 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 19 13:43:12 2009 +0200"
      },
      "message": "perf_counter: Simplify and fix task migration counting\n\nThe task migrations counter was causing rare and hard to decypher\nmemory corruptions under load. After a day of debugging and bisection\nwe found that the problem was introduced with:\n\n  3f731ca: perf_counter: Fix cpu migration counter\n\nTurning them off fixes the crashes. Incidentally, the whole\nperf_counter_task_migration() logic can be done simpler as well,\nby injecting a proper sw-counter event.\n\nThis cleanup also fixed the crashes. The precise failure mode is\nnot completely clear yet, but we are clearly not unhappy about\nhaving a fix ;-)\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Corey Ashford \u003ccjashfor@linux.vnet.ibm.com\u003e\nCc: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "f9188e023c248d73f5b4a589b480e065c1864068",
      "tree": "86efe8c89c318fdf9b9db8471680ba225ec8f4e2",
      "parents": [
        "b8e6d829729d1a5991a9f628205b671cac2ec06f"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Thu Jun 18 22:20:52 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 19 13:42:34 2009 +0200"
      },
      "message": "perf_counter: Make callchain samples extensible\n\nBefore exposing upstream tools to a callchain-samples ABI, tidy it\nup to make it more extensible in the future:\n\nUse markers in the IP chain to denote context, use (u64)-1..-4095 range\nfor these context markers because we use them for ERR_PTR(), so these\naddresses are unlikely to be mapped.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "0ea920d211e0a870871965418923b08da2025b4a",
      "tree": "5dc3451a2011f0d32839b5aef20d9aaec1da78cf",
      "parents": [
        "bb664f49f8be17d7b8bf9821144e8a53d7fcfe8a"
      ],
      "author": {
        "name": "Hendrik Brueckner",
        "email": "brueckner@linux.vnet.ibm.com",
        "time": "Wed Jun 17 21:54:48 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jun 19 00:10:40 2009 -0700"
      },
      "message": "af_iucv: Return -EAGAIN if iucv msg limit is exceeded\n\nIf the iucv message limit for a communication path is exceeded,\nsendmsg() returns -EAGAIN instead of -EPIPE.\nThe calling application can then handle this error situtation,\ne.g. to try again after waiting some time.\n\nFor blocking sockets, sendmsg() waits up to the socket timeout\nbefore returning -EAGAIN. For the new wait condition, a macro\nhas been introduced and the iucv_sock_wait_state() has been\nrefactored to this macro.\n\nSigned-off-by: Hendrik Brueckner \u003cbrueckner@linux.vnet.ibm.com\u003e\nSigned-off-by: Ursula Braun \u003cursula.braun@de.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "90c699a9ee4be165966d40f1837909ccb8890a68",
      "tree": "ff136ce7b73c7d7bbf5eb4241d01cb3b930d3566",
      "parents": [
        "3a02c8e8142f7f133d4c6e72bc3e1d830e6b8b9e"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Jun 19 08:08:50 2009 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri Jun 19 08:08:50 2009 +0200"
      },
      "message": "block: rename CONFIG_LBD to CONFIG_LBDAF\n\nFollow-up to \"block: enable by default support for large devices\nand files on 32-bit archs\".\n\nRename CONFIG_LBD to CONFIG_LBDAF to:\n- allow update of existing [def]configs for \"default y\" change\n- reflect that it is used also for large files support nowadays\n\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "ab52ae6db035fa425f90146327ab7d2c5d3e5654",
      "tree": "449acdb98ca035bd57c45b4bd8e89ac04f8ecff7",
      "parents": [
        "ef52bff8409bba78b042f1bcf33a0f49debc9774"
      ],
      "author": {
        "name": "Andy Adamson",
        "email": "andros@netapp.com",
        "time": "Tue Jun 16 04:20:53 2009 +0300"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Thu Jun 18 18:33:57 2009 -0700"
      },
      "message": "nfsd41: Backchannel: minorversion support for the back channel\n\nPrepare to share backchannel code with NFSv4.1.\n\nSigned-off-by: Andy Adamson \u003candros@netapp.com\u003e\nSigned-off-by: Benny Halevy \u003cbhalevy@panasas.com\u003e\nSigned-off-by: Ricardo Labiaga \u003cRicardo.Labiaga@netapp.com\u003e\n[nfsd41: use nfsd4_cb_sequence for callback minorversion]\nSigned-off-by: Benny Halevy \u003cbhalevy@panasas.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "1f84603c0940d5bed17f7e4d2e0b2a4b8b8f1b81",
      "tree": "143956f878290e85de7c9130f465e862f587ee53",
      "parents": [
        "301933a0acfdec837fd8b4884093b3f0fff01d8a",
        "4bf259e3ae5015e73282ba66716c4a917e1264ac"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jun 17 18:13:00 2009 -0700"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Jun 18 18:13:44 2009 -0700"
      },
      "message": "Merge branch \u0027devel-for-2.6.31\u0027 into for-2.6.31\n\nConflicts:\n\tfs/nfs/client.c\n\tfs/nfs/super.c\n"
    },
    {
      "commit": "07613ba2f464f59949266f4337b75b91eb610795",
      "tree": "8e43a82571686492aba2269c2e7a49c323783af1",
      "parents": [
        "2908826d045a89805714e0a3055a99dc40565d41"
      ],
      "author": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Fri Jun 12 14:11:41 2009 +1000"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Fri Jun 19 10:21:42 2009 +1000"
      },
      "message": "agp: switch AGP to use page array instead of unsigned long array\n\nThis switches AGP to use an array of pages for tracking the\npages allocated to the GART. This should enable GEM on PAE to work\na lot better as we can pass highmem pages to the PAT code and it will\ndo the right thing with them.\n\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "0454beab0f6bc6d350860abd549b86959d2f6f40",
      "tree": "65b147779fe82a33339b0ec9978b051e0af6acff",
      "parents": [
        "00fa28ae29f70c9f26023f9922c4d2e1ca1297e3"
      ],
      "author": {
        "name": "Michel Dänzer",
        "email": "daenzer@vmware.com",
        "time": "Mon Jun 15 16:56:07 2009 +0200"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Fri Jun 19 09:11:13 2009 +1000"
      },
      "message": "drm: EDID endianness fixes.\n\nMostly replacing bitfields with explicit masks and shifts.\n\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "89579f778266d5a4d08d0c64c46b1565218de9f9",
      "tree": "f7a2389d1277bf285e790b660e0f6a6019ff857f",
      "parents": [
        "78ecf091aa592a9e160ebbbfa5873c2bb2e2d0f8"
      ],
      "author": {
        "name": "Thomas Hellstrom",
        "email": "thellstrom@vmware.com",
        "time": "Wed Jun 17 12:29:56 2009 +0200"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Fri Jun 19 09:01:12 2009 +1000"
      },
      "message": "drm: Apply \"Memory fragmentation from lost alignment blocks\"\n\nalso for the atomic path by using a common code-path.\n\nSigned-off-by: Thomas Hellstrom \u003cthellstrom@vmware.com\u003e\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "71e308a239c098673570d0b417d42262bb535909",
      "tree": "a9e415d0ae6302e820a1f9d4ff55a724b3a12cf6",
      "parents": [
        "eb4a03780d4c4464ef2ad86d80cca3f3284fe81d"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Jun 18 12:45:08 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Jun 18 18:40:18 2009 -0400"
      },
      "message": "function-graph: add stack frame test\n\nIn case gcc does something funny with the stack frames, or the return\nfrom function code, we would like to detect that.\n\nAn arch may implement passing of a variable that is unique to the\nfunction and can be saved on entering a function and can be tested\nwhen exiting the function. Usually the frame pointer can be used for\nthis purpose.\n\nThis patch also implements this for x86. Where it passes in the stack\nframe of the parent function, and will test that frame on exit.\n\nThere was a case in x86_32 with optimize for size (-Os) where, for a\nfew functions, gcc would align the stack frame and place a copy of the\nreturn address into it. The function graph tracer modified the copy and\nnot the actual return address. On return from the funtion, it did not go\nto the tracer hook, but returned to the parent. This broke the function\ngraph tracer, because the return of the parent (where gcc did not do\nthis funky manipulation) returned to the location that the child function\nwas suppose to. This caused strange kernel crashes.\n\nThis test detected the problem and pointed out where the issue was.\n\nThis modifies the parameters of one of the functions that the arch\nspecific code calls, so it includes changes to arch code to accommodate\nthe new prototype.\n\nNote, I notice that the parsic arch implements its own push_return_trace.\nThis is now a generic function and the ftrace_push_return_trace should be\nused instead. This patch does not touch that code.\n\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Helge Deller \u003cdeller@gmx.de\u003e\nCc: Kyle McMartin \u003ckyle@mcmartin.ca\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "0732f87761dbe417cb6e084b712d07e879e876ef",
      "tree": "afed6ca0368fd3e121fd4f43b11e32aa1e5139c0",
      "parents": [
        "15fc204afc6feb915c400159546f646eca8ba1d9",
        "536fc240e7147858255bdb08e7a999a3351a9fb4"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jun 18 14:07:46 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jun 18 14:07:46 2009 -0700"
      },
      "message": "Merge branch \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4\n\n* \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4:\n  jbd2: clean up jbd2_journal_try_to_free_buffers()\n  ext4: Don\u0027t update ctime for non-extent-mapped inodes\n  ext4: Fix up whitespace issues in fs/ext4/inode.c\n  ext4: Fix 64-bit block type problem on 32-bit platforms\n  ext4: teach the inode allocator to use a goal inode number\n  ext4: Use a hash of the topdir directory name for the Orlov parent group\n  ext4: document the \"abort\" mount option\n  ext4: move the abort flag from s_mount_opts to s_mount_flags\n  ext4: update the s_last_mounted field in the superblock\n  ext4: change s_mount_opt to be an unsigned int\n  ext4: online defrag -- Add EXT4_IOC_MOVE_EXT ioctl\n  ext4: avoid unnecessary spinlock in critical POSIX ACL path\n  ext3: avoid unnecessary spinlock in critical POSIX ACL path\n  ext4: convert instrumentation from markers to tracepoints\n  jbd2: convert instrumentation from markers to tracepoints\n"
    }
  ],
  "next": "d2aa4550379f92e929af7ed1dd4f55e6a1e331f8"
}
