)]}'
{
  "log": [
    {
      "commit": "cfc8ea87201dc9bb6aeb3fc80c61abee83e7cc06",
      "tree": "51c204175bf806abc180badd691aa909e2d61fcf",
      "parents": [
        "0403e47ee26f26e960ee9038552bc89df4a1fb3d"
      ],
      "author": {
        "name": "Sage Weil",
        "email": "sage@newdream.net",
        "time": "Thu Dec 11 16:30:06 2008 -0500"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Thu Dec 11 16:30:06 2008 -0500"
      },
      "message": "Btrfs: mnt_drop_write in ioctl_trans_end\n\nAdd missing mnt_drop_write to match the mnt_want_write in\nbtrfs_ioctl_trans_start.\n\nSigned-off-by: Sage Weil \u003csage@newdream.net\u003e\n\n"
    },
    {
      "commit": "0403e47ee26f26e960ee9038552bc89df4a1fb3d",
      "tree": "08280f23e5cadcf9610f8b80ad1de2c27059aed8",
      "parents": [
        "459931eca5f4b8c9ad259d07cc1ca49afed54804"
      ],
      "author": {
        "name": "Yan Zheng",
        "email": "zheng.yan@oracle.com",
        "time": "Wed Dec 10 20:32:51 2008 -0500"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Wed Dec 10 20:32:51 2008 -0500"
      },
      "message": "Btrfs: Add checking of csum tree in balancing code\n\nThis updates the space balancing code for the\nnew checksum format.\n\nSigned-off-by: Yan Zheng \u003czheng.yan@oracle.com\u003e\n\n"
    },
    {
      "commit": "459931eca5f4b8c9ad259d07cc1ca49afed54804",
      "tree": "86088c14cff53f93281dc25022b61fb1d86c2458",
      "parents": [
        "580afd76e451deb6772d0507de580fb1df14da6c"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Wed Dec 10 09:10:46 2008 -0500"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Wed Dec 10 09:10:46 2008 -0500"
      },
      "message": "Btrfs: Delete csum items when freeing extents\n\nThis finishes off the new checksumming code by removing csum items\nfor extents that are no longer in use.\n\nThe trick is doing it without racing because a single csum item may\nhold csums for more than one extent.  Extra checks are added to\nbtrfs_csum_file_blocks to make sure that we are using the correct\ncsum item after dropping locks.\n\nA new btrfs_split_item is added to split a single csum item so it\ncan be split without dropping the leaf lock.  This is used to\nremove csum bytes from the middle of an item.\n\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n"
    },
    {
      "commit": "580afd76e451deb6772d0507de580fb1df14da6c",
      "tree": "ea112be78807b07f617efffefb532e19778dc9bb",
      "parents": [
        "c3027eb5523d6983f12628f3fe13d8a7576db701"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Mon Dec 08 19:15:39 2008 -0500"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Mon Dec 08 19:15:39 2008 -0500"
      },
      "message": "Btrfs: Fix compressed checksum fsync log copies\n\nThe fsync logging code makes sure to onl copy the relevant checksum for each\nextent based on the file extent pointers it finds.\n\nBut for compressed extents, it needs to copy the checksum for the\nentire extent.\n\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n\n"
    },
    {
      "commit": "c3027eb5523d6983f12628f3fe13d8a7576db701",
      "tree": "6a912094818ff261667228a4f6d83ecc4513ac43",
      "parents": [
        "934d375bacf9ea8a37fbfff5f3cf1c093f324095"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Mon Dec 08 16:40:21 2008 -0500"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Mon Dec 08 16:40:21 2008 -0500"
      },
      "message": "Btrfs: Add inode sequence number for NFS and reserved space in a few structs\n\nThis adds a sequence number to the btrfs inode that is increased on\nevery update.  NFS will be able to use that to detect when an inode has\nchanged, without relying on inaccurate time fields.\n\nWhile we\u0027re here, this also:\n\nPuts reserved space into the super block and inode\n\nAdds a log root transid to the super so we can pick the newest super\nbased on the fsync log as well as the main transaction ID.  For now\nthe log root transid is always zero, but that\u0027ll get fixed.\n\nAdds a starting offset to the dev_item.  This will let us do better\nalignment calculations if we know the start of a partition on the disk.\n\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n"
    },
    {
      "commit": "934d375bacf9ea8a37fbfff5f3cf1c093f324095",
      "tree": "e81948e6e26028fd979ce59f4fc5988c1813694c",
      "parents": [
        "a512bbf855ff0af474257475f2e6da7acd854f52"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Mon Dec 08 16:43:10 2008 -0500"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Mon Dec 08 16:43:10 2008 -0500"
      },
      "message": "Btrfs: Use map_private_extent_buffer during generic_bin_search\n\nIt is possible that generic_bin_search will be called on a tree block\nthat has not been locked.  This happens because cache_block_block skips\nlocking on the tree blocks.\n\nSince the tree block isn\u0027t locked, we aren\u0027t allowed to change\nthe extent_buffer-\u003emap_token field.  Using map_private_extent_buffer\navoids any changes to the internal extent buffer fields.\n\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n\n"
    },
    {
      "commit": "a512bbf855ff0af474257475f2e6da7acd854f52",
      "tree": "1b2cfcf4152e09f32a6cb0bcbd798d5dab2f5490",
      "parents": [
        "d20f7043fa65659136c1a7c3c456eeeb5c6f431f"
      ],
      "author": {
        "name": "Yan Zheng",
        "email": "zheng.yan@oracle.com",
        "time": "Mon Dec 08 16:46:26 2008 -0500"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Mon Dec 08 16:46:26 2008 -0500"
      },
      "message": "Btrfs: superblock duplication\n\nThis patch implements superblock duplication. Superblocks\nare stored at offset 16K, 64M and 256G on every devices.\nSpaces used by superblocks are preserved by the allocator,\nwhich uses a reverse mapping function to find the logical\naddresses that correspond to superblocks. Thank you,\n\nSigned-off-by: Yan Zheng \u003czheng.yan@oracle.com\u003e\n\n"
    },
    {
      "commit": "d20f7043fa65659136c1a7c3c456eeeb5c6f431f",
      "tree": "05d1031cadec6d440a97221e3a32adb504a51699",
      "parents": [
        "c99e905c945c462085c6d64646dc5af0c0a16815"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Mon Dec 08 16:58:54 2008 -0500"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Mon Dec 08 16:58:54 2008 -0500"
      },
      "message": "Btrfs: move data checksumming into a dedicated tree\n\nBtrfs stores checksums for each data block.  Until now, they have\nbeen stored in the subvolume trees, indexed by the inode that is\nreferencing the data block.  This means that when we read the inode,\nwe\u0027ve probably read in at least some checksums as well.\n\nBut, this has a few problems:\n\n* The checksums are indexed by logical offset in the file.  When\ncompression is on, this means we have to do the expensive checksumming\non the uncompressed data.  It would be faster if we could checksum\nthe compressed data instead.\n\n* If we implement encryption, we\u0027ll be checksumming the plain text and\nstoring that on disk.  This is significantly less secure.\n\n* For either compression or encryption, we have to get the plain text\nback before we can verify the checksum as correct.  This makes the raid\nlayer balancing and extent moving much more expensive.\n\n* It makes the front end caching code more complex, as we have touch\nthe subvolume and inodes as we cache extents.\n\n* There is potentitally one copy of the checksum in each subvolume\nreferencing an extent.\n\nThe solution used here is to store the extent checksums in a dedicated\ntree.  This allows us to index the checksums by phyiscal extent\nstart and length.  It means:\n\n* The checksum is against the data stored on disk, after any compression\nor encryption is done.\n\n* The checksum is stored in a central location, and can be verified without\nfollowing back references, or reading inodes.\n\nThis makes compression significantly faster by reducing the amount of\ndata that needs to be checksummed.  It will also allow much faster\nraid management code in general.\n\nThe checksums are indexed by a key with a fixed objectid (a magic value\nin ctree.h) and offset set to the starting byte of the extent.  This\nallows us to copy the checksum items into the fsync log tree directly (or\nany other tree), without having to invent a second format for them.\n\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n"
    },
    {
      "commit": "c99e905c945c462085c6d64646dc5af0c0a16815",
      "tree": "3aed8630c0778c4a8b26a5d8eb2fba42fbb5e26c",
      "parents": [
        "2a7108ad89e1ea9a30afbbece8b581a0532afd12"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Tue Dec 02 11:18:37 2008 -0500"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Tue Dec 02 11:18:37 2008 -0500"
      },
      "message": "Btrfs: Fix sparse endian warnings in struct-funcs.c\n\nThe btrfs macros to access individual struct members on disk were\nsending the same variable to functions that expected different types\nof endianness.  This fix explicitly creates a variable of the correct\ntype instead of abusing a single variable for mixed purposes.\n\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n"
    },
    {
      "commit": "2a7108ad89e1ea9a30afbbece8b581a0532afd12",
      "tree": "660a90d74dad4a303d30e9bab6121c067348122c",
      "parents": [
        "4022abf4498186de2e893ce614333216f2add461"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Tue Dec 02 09:58:02 2008 -0500"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Tue Dec 02 09:58:02 2008 -0500"
      },
      "message": "Btrfs: rev the disk format for the inode compat and csum selection changes\n\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n\n"
    },
    {
      "commit": "4022abf4498186de2e893ce614333216f2add461",
      "tree": "908e08871a551e649832d9047dd4886c4d45a88e",
      "parents": [
        "607d432da0542e84ddcd358adfddac6f68500e3d"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Tue Dec 02 09:57:03 2008 -0500"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Tue Dec 02 09:57:03 2008 -0500"
      },
      "message": "Btrfs: delete unused function: btrfs_invalidate_dcache_root\n\nSnapshot and subvolume creation no longer need this helper.\n\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n\n"
    },
    {
      "commit": "607d432da0542e84ddcd358adfddac6f68500e3d",
      "tree": "44425bf1fe8378022bc1b84425ca4ba9d0176566",
      "parents": [
        "c6e2bac1a52ffc36dd10769b594dfa3994e95f77"
      ],
      "author": {
        "name": "Josef Bacik",
        "email": "jbacik@redhat.com",
        "time": "Tue Dec 02 07:17:45 2008 -0500"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Tue Dec 02 07:17:45 2008 -0500"
      },
      "message": "Btrfs: add support for multiple csum algorithms\n\nThis patch gives us the space we will need in order to have different csum\nalgorithims at some point in the future.  We save the csum algorithim type\nin the superblock, and use those instead of define\u0027s.\n\nSigned-off-by: Josef Bacik \u003cjbacik@redhat.com\u003e\n\n"
    },
    {
      "commit": "c6e2bac1a52ffc36dd10769b594dfa3994e95f77",
      "tree": "a48c535515c0d9311fa770afd0696644489cf074",
      "parents": [
        "f2b636e80d8206dd4012de6e973c2367259a7d22"
      ],
      "author": {
        "name": "Josef Bacik",
        "email": "jbacik@redhat.com",
        "time": "Tue Dec 02 06:36:10 2008 -0500"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Tue Dec 02 06:36:10 2008 -0500"
      },
      "message": "Btrfs: fix panic on error during mount\n\nThis needs to be applied on top of my previous patches, but is needed for more\nthan just my new stuff.  We\u0027re going to the wrong label when we have an error,\nwe try to stop the workers, but they are started below all of this code.  This\nfixes it so we go to the right error label and not panic when we fail one of\nthese cases.\n\nSigned-off-by: Josef Bacik \u003cjbacik@redhat.com\u003e\n\n"
    },
    {
      "commit": "f2b636e80d8206dd4012de6e973c2367259a7d22",
      "tree": "4ed39baca853608bb7b77a6d1061766690cbb32a",
      "parents": [
        "7a865e8ac3a8ead776ea2c8c74fa2b2d00a2c9cf"
      ],
      "author": {
        "name": "Josef Bacik",
        "email": "jbacik@redhat.com",
        "time": "Tue Dec 02 06:36:08 2008 -0500"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Tue Dec 02 06:36:08 2008 -0500"
      },
      "message": "Btrfs: add support for compat flags to btrfs\n\nThis adds the necessary disk format for handling compatibility flags\nin the future to handle disk format changes.  We have a compat_flags,\ncompat_ro_flags and incompat_flags set for the super block.  Compat\nflags will be to hold the features that are compatible with older\nversions of btrfs, compat_ro flags have features that are compatible\nwith older versions of btrfs if the fs is mounted read only, and\nincompat_flags has features that are incompatible with older versions\nof btrfs.  This also axes the compat_flags field for the inode and\njust makes the flags field a 64bit field, and changes the root item\nflags field to 64bit.\n\nSigned-off-by: Josef Bacik \u003cjbacik@redhat.com\u003e\n\n"
    },
    {
      "commit": "7a865e8ac3a8ead776ea2c8c74fa2b2d00a2c9cf",
      "tree": "e7b425f7857f3643e911d268c779b61777d3e854",
      "parents": [
        "4bcabaa30a63a156fc50026f972377dada66452c"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Tue Dec 02 09:52:24 2008 -0500"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Tue Dec 02 09:52:24 2008 -0500"
      },
      "message": "Btrfs: btrfs: pass void __user * to btrfs_ioctl_clone_range\n\nCleans the code up a little and also avoids a sparse warning due to the\nincorrect cast in the current version of the code.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\n\n"
    },
    {
      "commit": "4bcabaa30a63a156fc50026f972377dada66452c",
      "tree": "4f6575aca5209748a716eeac2c3fb0bb0263daa5",
      "parents": [
        "97288f2c71e46965a2010baea10548fcb5f3af73"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Tue Dec 02 06:36:08 2008 -0500"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Tue Dec 02 06:36:08 2008 -0500"
      },
      "message": "Btrfs: clean up btrfs_ioctl a little bit\n\nProvide a void __user *argp pointer so that we can avoid duplicating\nthe cast for various sub-command calls.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\n\n"
    },
    {
      "commit": "97288f2c71e46965a2010baea10548fcb5f3af73",
      "tree": "6f84cd33ee12eb8c51cccf931671da1b149c4ba6",
      "parents": [
        "6e430f94e508fee1aefd1dfec88da3c24ce64433"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Tue Dec 02 06:36:09 2008 -0500"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Tue Dec 02 06:36:09 2008 -0500"
      },
      "message": "Btrfs: corret fmode_t annotations\n\nMake sure to propagate fmode_t properly and use the right constants for\nit.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\n\n"
    },
    {
      "commit": "6e430f94e508fee1aefd1dfec88da3c24ce64433",
      "tree": "a93d163dbd42a16750f4ecbf4a333d8ea6ec1c0d",
      "parents": [
        "b2950863c61bc24cf0f63bc05947d9d50663c4c0"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Tue Dec 02 06:36:09 2008 -0500"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Tue Dec 02 06:36:09 2008 -0500"
      },
      "message": "Btrfs: fix shadowed variable declarations\n\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n\n"
    },
    {
      "commit": "b2950863c61bc24cf0f63bc05947d9d50663c4c0",
      "tree": "3005a034713fe86db2d64ab1b21fe8762f6a4b0c",
      "parents": [
        "1ffa4f426c002161b7dbd58b297f5d0680e7dd6a"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Tue Dec 02 09:54:17 2008 -0500"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Tue Dec 02 09:54:17 2008 -0500"
      },
      "message": "Btrfs: make things static and include the right headers\n\nShut up various sparse warnings about symbols that should be either\nstatic or have their declarations in scope.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\n\n"
    },
    {
      "commit": "1ffa4f426c002161b7dbd58b297f5d0680e7dd6a",
      "tree": "5839170f90f7929f4c96453c74f808648c006318",
      "parents": [
        "6e3ad88729103c4d19703311253fab8a49669fa8"
      ],
      "author": {
        "name": "Sage Weil",
        "email": "sage@newdream.net",
        "time": "Tue Dec 02 09:53:09 2008 -0500"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Tue Dec 02 09:53:09 2008 -0500"
      },
      "message": "Btrfs: remove unneeded btrfs_start_delalloc_inodes call\n\nIt is called by btrfs_sync_fs.\n\nSigned-off-by: Sage Weil \u003csage@newdream.net\u003e\n\n"
    },
    {
      "commit": "6e3ad88729103c4d19703311253fab8a49669fa8",
      "tree": "4dfbc656de0b8956fd90226b5a03d35c076b9d34",
      "parents": [
        "641f5219f2ea0dfd1c024c91021ddc83f50bf1ce"
      ],
      "author": {
        "name": "Sage Weil",
        "email": "sage@newdream.net",
        "time": "Tue Dec 02 06:36:10 2008 -0500"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Tue Dec 02 06:36:10 2008 -0500"
      },
      "message": "Btrfs: remove unneeded total_trans\n\nRemove unneeded debugging sanity check.  It gets corrupted anyway when\nmultiple btrfs file systems are mounted, throwing bad warnings along the\nway.\n\nSigned-off-by: Sage Weil \u003csage@newdream.net\u003e\n\n"
    },
    {
      "commit": "641f5219f2ea0dfd1c024c91021ddc83f50bf1ce",
      "tree": "0989c0b847617e791aaef8e50e48723ef8fa17ca",
      "parents": [
        "ce397c0616de9bfb678569f1dfa655838a711594"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Tue Dec 02 06:36:10 2008 -0500"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Tue Dec 02 06:36:10 2008 -0500"
      },
      "message": "Btrfs: sparse lock verification annotations for wait_on_state\n\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n\n"
    },
    {
      "commit": "ce397c0616de9bfb678569f1dfa655838a711594",
      "tree": "7268154f484cb442f25a5876697f211bef9dd7c5",
      "parents": [
        "ea6a478ed9758cb0f5af228104b9434840aa20ff"
      ],
      "author": {
        "name": "Liu Hui",
        "email": "onlyflyer@gmail.com",
        "time": "Mon Dec 01 20:31:40 2008 -0500"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Mon Dec 01 20:31:40 2008 -0500"
      },
      "message": "Btrfs: Fix cow semantic in run_delalloc_nocow()\n\nThe file preallocation code reversed the logic to force nodatacow.\nThis fixes it.\n\n"
    },
    {
      "commit": "ea6a478ed9758cb0f5af228104b9434840aa20ff",
      "tree": "1dd41601f8bb031a1e222b073458067af5d4b70d",
      "parents": [
        "0e6bd956ed238eb2f69386f251847fe3163532e1"
      ],
      "author": {
        "name": "Josef Bacik",
        "email": "jbacik@redhat.com",
        "time": "Thu Nov 20 12:16:16 2008 -0500"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Thu Nov 20 12:16:16 2008 -0500"
      },
      "message": "Btrfs: Fix for lockdep warnings with alloc_mutex and pinned_mutex\n\nThis the lockdep complaint by having a different mutex to gaurd caching the\nblock group, so you don\u0027t end up with this backwards dependancy.  Thank you,\n\nSigned-off-by: Josef Bacik \u003cjbacik@redhat.com\u003e\n\n"
    },
    {
      "commit": "0e6bd956ed238eb2f69386f251847fe3163532e1",
      "tree": "72b99621e0d4f187aca1214b0a5faa9a71768efd",
      "parents": [
        "43dd729b862f4a053310f75d3ee559b678772f59"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Thu Nov 20 10:46:35 2008 -0500"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Thu Nov 20 10:46:35 2008 -0500"
      },
      "message": "Btrfs: only flush down bios for writeback pages\n\nThe btrfs write_cache_pages call has a flush function so that it submits\nthe bio it has been building before it waits on any writeback pages.\n\nThis adds a check so that flush only happens on writeback pages.\n\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n"
    },
    {
      "commit": "43dd729b862f4a053310f75d3ee559b678772f59",
      "tree": "a9cc015cdaa47ab42b60525d1a4285cc723a21d7",
      "parents": [
        "e556ce2c9d2163aea122e91a1512c9a110fece5d"
      ],
      "author": {
        "name": "Liu Hui",
        "email": "onlyflyer@gmail.com",
        "time": "Thu Nov 20 10:25:31 2008 -0500"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Thu Nov 20 10:25:31 2008 -0500"
      },
      "message": "Btrfs: Fix cow semantic in run_delalloc_nocow()\n\nThe file preallocation code reversed the logic to force nodatacow.  This\nfixes it.\n\n"
    },
    {
      "commit": "e556ce2c9d2163aea122e91a1512c9a110fece5d",
      "tree": "a9cc015cdaa47ab42b60525d1a4285cc723a21d7",
      "parents": [
        "4b4e25f2a6ddb070bab7f7dd2bd2926fb8db9e04"
      ],
      "author": {
        "name": "Yan Zheng",
        "email": "zheng.yan@oracle.com",
        "time": "Thu Nov 20 10:25:19 2008 -0500"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Thu Nov 20 10:25:19 2008 -0500"
      },
      "message": "Btrfs: Drop dirty roots created by log replay immediately when\n\nThe log replay produces dirty roots. These dirty roots\nshould be dropped immediately if the fs is mounted as\nro. Otherwise they can be added to the dirty root list\nagain when remounting the fs as rw. Thank you,\n\nSigned-off-by: Yan Zheng \u003czheng.yan@oracle.com\u003e\n\n"
    },
    {
      "commit": "4b4e25f2a6ddb070bab7f7dd2bd2926fb8db9e04",
      "tree": "b4417e03a187efd6a88da75a41a94020a2bb76ac",
      "parents": [
        "79683f2d685cfb6ef9c97c5194e3ce3319e80cac"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Thu Nov 20 10:22:27 2008 -0500"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Thu Nov 20 10:22:27 2008 -0500"
      },
      "message": "Btrfs: compat code fixes\n\nThe btrfs git kernel trees is used to build a standalone tree for\ncompiling against older kernels.  This commit makes the standalone tree\nwork with 2.6.27\n\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n"
    },
    {
      "commit": "79683f2d685cfb6ef9c97c5194e3ce3319e80cac",
      "tree": "b6fbf05161a2d518a523dcbd66ea52bc8804bd9e",
      "parents": [
        "15916de835a683bd8133a0d1ac0c982b795ab4ff"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Wed Nov 19 22:00:53 2008 -0500"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Wed Nov 19 22:00:53 2008 -0500"
      },
      "message": "Btrfs: Use current_fsuid/gid\n\nThis fixes compile problems with linux-next\n\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n"
    },
    {
      "commit": "15916de835a683bd8133a0d1ac0c982b795ab4ff",
      "tree": "20603c2e0cade00d2e40a3b5390f5def36a02711",
      "parents": [
        "ae20a6afec1cf21919d97303f2d8b737eac5acc7"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Wed Nov 19 21:17:22 2008 -0500"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Wed Nov 19 21:17:22 2008 -0500"
      },
      "message": "Btrfs: Fixes for 2.6.28-rc API changes\n\n* open/close_bdev_excl -\u003e open/close_bdev_exclusive\n* blkdev_issue_discard takes a GFP mask now\n* Fix blkdev_issue_discard usage now that it is enabled\n\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n"
    },
    {
      "commit": "ae20a6afec1cf21919d97303f2d8b737eac5acc7",
      "tree": "a4ddf02d4f19bdee1119dcc8a0f54edb40fb5986",
      "parents": [
        "9bf1a2445f3c569098b8de7097ca324e65abecc2",
        "07103a3cdb24099324a11be1f35279b463cdfc31"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Wed Nov 19 15:59:28 2008 -0500"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Wed Nov 19 15:59:28 2008 -0500"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable\n"
    },
    {
      "commit": "07103a3cdb24099324a11be1f35279b463cdfc31",
      "tree": "9baff1ecc9e6a069f0cb6e64af6713bbe373780a",
      "parents": [
        "7c2ca4682a2b401cb0c43f96b05eced25eb83eec"
      ],
      "author": {
        "name": "Josef Bacik",
        "email": "jbacik@redhat.com",
        "time": "Wed Nov 19 15:17:55 2008 -0500"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Wed Nov 19 15:17:55 2008 -0500"
      },
      "message": "Btrfs: fix free space accounting when unpinning extents\n\nThis patch fixes what I hope is the last early ENOSPC bug left.  I did not know\nthat pinned extents would merge into one big extent when inserted on to the\npinned extent tree, so I was adding free space to a block group that could\npossibly span multiple block groups.\n\nThis is a big issue because first that space doesn\u0027t exist in that block group,\nand second we won\u0027t actually use that space because there are a bunch of other\nchecks to make sure we\u0027re allocating within the constraints of the block group.\n\nThis patch fixes the problem by adding the btrfs_add_free_space to\nbtrfs_update_pinned_extents which makes sure we are adding the appropriate\namount of free space to the appropriate block group.  Thanks much to Lee Trager\nfor running my myriad of debug patches to help me track this problem down.\nThank you,\n\nSigned-off-by: Josef Bacik \u003cjbacik@redhat.com\u003e\n\n"
    },
    {
      "commit": "7c2ca4682a2b401cb0c43f96b05eced25eb83eec",
      "tree": "8c6cf2661f1f15869acdbbf7096bce2e19a1c1e1",
      "parents": [
        "d2c3f4f695edac4d75c1b3eb01a1d16072de63bb"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Wed Nov 19 15:13:35 2008 -0500"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Wed Nov 19 15:13:35 2008 -0500"
      },
      "message": "Btrfs: Do fsync log replay when mount -o ro, except when on readonly media\n\nfsync log replay can change the filesystem, so it cannot be delayed until\nmount -o rw,remount, and it can\u0027t be forgotten entirely.  So, this patch\nchanges btrfs to do with reiserfs, ext3 and xfs do, which is to do the\nlog replay even when mounted readonly.\n\nOn a readonly device if log replay is required, the mount is aborted.\n\nGetting all of this right had required fixing up some of the error\nhandling in open_ctree.\n\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n"
    },
    {
      "commit": "d2c3f4f695edac4d75c1b3eb01a1d16072de63bb",
      "tree": "14a8dd519d067adbe16e8adb7342343529eb5c75",
      "parents": [
        "105d931d482b7d1b1b2dd4b0ea30365db8630b9f"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Wed Nov 19 12:44:22 2008 -0500"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Wed Nov 19 12:44:22 2008 -0500"
      },
      "message": "Btrfs: Avoid writeback stalls\n\nWhile building large bios in writepages, btrfs may end up waiting\nfor other page writeback to finish if WB_SYNC_ALL is used.\n\nWhile it is waiting, the bio it is building has a number of pages with the\nwriteback bit set and they aren\u0027t getting to the disk any time soon.  This\nlowers the latencies of writeback in general by sending down the bio being\nbuilt before waiting for other pages.\n\nThe bio submission code tries to limit the total number of async bios in\nflight by waiting when we\u0027re over a certain number of async bios.  But,\nthe waits are happening while writepages is building bios, and this can easily\nlead to stalls and other problems for people calling wait_on_page_writeback.\n\nThe current fix is to let the congestion tests take care of waiting.\n\nsync() and others make sure to drain the current async requests to make\nsure that everything that was pending when the sync was started really get\nto disk.  The code would drain pending requests both before and after\nsubmitting a new request.\n\nBut, if one of the requests is waiting for page writeback to finish,\nthe draining waits might block that page writeback.  This changes the\ndraining code to only wait after submitting the bio being processed.\n\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n"
    },
    {
      "commit": "105d931d482b7d1b1b2dd4b0ea30365db8630b9f",
      "tree": "e3c8ba5bc5cb5fcbf6ac33b08c701e1e8cdabf10",
      "parents": [
        "73e9f5beb16f568f797bba87f082556fac18dede"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Tue Nov 18 12:13:12 2008 -0500"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Tue Nov 18 12:13:12 2008 -0500"
      },
      "message": "Btrfs: switch back to wait_on_page_writeback to wait on metadata writes\n\nThe extent based waiting was using more CPU, and other fixes have helped\nwith the unplug storm problems.\n\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n\n"
    },
    {
      "commit": "73e9f5beb16f568f797bba87f082556fac18dede",
      "tree": "b568806f159e3cbad322fadc86386e54fb3bd162",
      "parents": [
        "9f0ba5bd91d42706ba78f97ec638c6a821db1c5e"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Tue Nov 18 11:50:33 2008 -0500"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Tue Nov 18 11:50:33 2008 -0500"
      },
      "message": "Btrfs: Update the disk format for the seed device and new root code\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n\n"
    },
    {
      "commit": "9f0ba5bd91d42706ba78f97ec638c6a821db1c5e",
      "tree": "89e6c8e6d6135091ee8f1d072dc5f62506ff67d1",
      "parents": [
        "b4eec2ca1167bae46295aeb66abd15fd52387845"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Tue Nov 18 10:31:22 2008 -0500"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Tue Nov 18 10:31:22 2008 -0500"
      },
      "message": "Btrfs: unplug all devices in the unplug call back\n\nFor larger multi-device filesystems, there was logic to limit the\nnumber of devices unplugged to just the page that was sent to our sync_page\nfunction.\n\nBut, the code wasn\u0027t always unplugging the right device.  Since this was\njust an optimization, disable it for now.\n\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n\n"
    },
    {
      "commit": "b4eec2ca1167bae46295aeb66abd15fd52387845",
      "tree": "bad79258bb437341611116d951f7a8711c4473a0",
      "parents": [
        "ea9e8b11bd1252dcbc23afefcf1a52ec6aa3c113"
      ],
      "author": {
        "name": "Liu Hui",
        "email": "onlyflyer@gmail.com",
        "time": "Tue Nov 18 11:30:10 2008 -0500"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Tue Nov 18 11:30:10 2008 -0500"
      },
      "message": "Btrfs: Some fixes for batching extent insert.\n\nIn insert_extents(), when ret\u003d\u003d1 and last is not zero, it should\ncheck if the current inserted item is the last item in this batching\ninserts. If so, it should just break from loop. If not, \u0027cur \u003d\ninsert_list-\u003enext\u0027 will make no sense because the list is empty now,\nand \u0027op\u0027 will point to an unexpectable place.\n\nThere are also some trivial fixs in this patch including one comment\ntypo error and deleting two redundant lines.\n\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n\n"
    },
    {
      "commit": "ea9e8b11bd1252dcbc23afefcf1a52ec6aa3c113",
      "tree": "3573c8d79e1936e8c921a3be77abda35124e0d78",
      "parents": [
        "0660b5af3f7ac0fac69de975914e1f4a3a586fb3"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Mon Nov 17 21:14:24 2008 -0500"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Mon Nov 17 21:14:24 2008 -0500"
      },
      "message": "Btrfs: prevent loops in the directory tree when creating snapshots\n\nFor a directory tree:\n\n/mnt/subvolA/subvolB\n\nbtrfsctl -s /mnt/subvolA/subvolB /mnt\n\nWill create a directory loop with subvolA under subvolB.  This\ncommit uses the forward refs for each subvol and snapshot to error out\nbefore creating the loop.\n\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n\n"
    },
    {
      "commit": "0660b5af3f7ac0fac69de975914e1f4a3a586fb3",
      "tree": "5e911dfad23df29f1815fbbc76d38ffff7fe36d8",
      "parents": [
        "3394e1607eaf870ebba37d303fbd590a4c569908"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Mon Nov 17 20:37:39 2008 -0500"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Mon Nov 17 20:37:39 2008 -0500"
      },
      "message": "Btrfs: Add backrefs and forward refs for subvols and snapshots\n\nSubvols and snapshots can now be referenced from any point in the directory\ntree.  We need to maintain back refs for them so we can find lost\nsubvols.\n\nForward refs are added so that we know all of the subvols and\nsnapshots referenced anywhere in the directory tree of a single subvol.  This\ncan be used to do recursive snapshotting (but they aren\u0027t yet) and it is\nalso used to detect and prevent directory loops when creating new snapshots.\n\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n"
    },
    {
      "commit": "3394e1607eaf870ebba37d303fbd590a4c569908",
      "tree": "7833927ae6137122bea670544147be6a69f804ad",
      "parents": [
        "3de4586c5278a28107030c336956381f69ff7a9d"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Mon Nov 17 20:42:26 2008 -0500"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Mon Nov 17 20:42:26 2008 -0500"
      },
      "message": "Btrfs: Give each subvol and snapshot their own anonymous devid\n\nEach subvolume has its own private inode number space, and so we need\nto fill in different device numbers for each subvolume to avoid confusing\napplications.\n\nThis commit puts a struct super_block into struct btrfs_root so it can\ncall set_anon_super() and get a different device number generated for\neach root.\n\nbtrfs_rename is changed to prevent renames across subvols.\n\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n"
    },
    {
      "commit": "3de4586c5278a28107030c336956381f69ff7a9d",
      "tree": "d636e3806cd5ecff71927d0300e46526fa23de1a",
      "parents": [
        "4ce4cb526f67775c1cce3e3fa01c292672ba874e"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Mon Nov 17 21:02:50 2008 -0500"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Mon Nov 17 21:02:50 2008 -0500"
      },
      "message": "Btrfs: Allow subvolumes and snapshots anywhere in the directory tree\n\nBefore, all snapshots and subvolumes lived in a single flat directory.  This\nwas awkward and confusing because the single flat directory was only writable\nwith the ioctls.\n\nThis commit changes the ioctls to create subvols and snapshots at any\npoint in the directory tree.  This requires making separate ioctls for\nsnapshot and subvol creation instead of a combining them into one.\n\nThe subvol ioctl does:\n\nbtrfsctl -S subvol_name parent_dir\n\nAfter the ioctl is done subvol_name lives inside parent_dir.\n\nThe snapshot ioctl does:\n\nbtrfsctl -s path_for_snapshot root_to_snapshot\n\npath_for_snapshot can be an absolute or relative path.  btrfsctl breaks it up\ninto directory and basename components.\n\nroot_to_snapshot can be any file or directory in the FS.  The snapshot\nis taken of the entire root where that file lives.\n\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n"
    },
    {
      "commit": "4ce4cb526f67775c1cce3e3fa01c292672ba874e",
      "tree": "5aa9758857e1fef5eb2b8559c3d075f60f7075b0",
      "parents": [
        "e3e469f86eebb1b3364c118add362d00c6cff956"
      ],
      "author": {
        "name": "Josef Bacik",
        "email": "jbacik@redhat.com",
        "time": "Mon Nov 17 21:12:00 2008 -0500"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Mon Nov 17 21:12:00 2008 -0500"
      },
      "message": "Btrfs: Add some debugging around the ENOSPC bugs\n\nSome people are still reporting problems with early enospc.  This\nwill help narrown down the cause.\n\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n\n"
    },
    {
      "commit": "e3e469f86eebb1b3364c118add362d00c6cff956",
      "tree": "b94e978d4249fea7aed066f2046daaf3f3202307",
      "parents": [
        "7cbd8a839118eede2393f0926b8e15027162bcd6"
      ],
      "author": {
        "name": "Josef Bacik",
        "email": "jbacik@redhat.com",
        "time": "Mon Nov 17 21:11:49 2008 -0500"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Mon Nov 17 21:11:49 2008 -0500"
      },
      "message": "Btrfs: fix free space leak\n\nIn my batch delete/update/insert patch I introduced a free space leak.  The\nextent that we do the original search on in free_extents is never pinned, so we\nalways update the block saying that it has free space, but the free space never\nactually gets added to the free space tree, since op-\u003edel will always be 0 and\nit\u0027s never actually added to the pinned extents tree.\n\nThis patch fixes this problem by making sure we call pin_down_bytes on the\npending extent op and set op-\u003edel to the return value of pin_down_bytes so\nupdate_block_group is called with the right value.  This seems to fix the case\nwhere we were getting ENOSPC when there was plenty of space available.\n\nSigned-off-by: Josef Bacik \u003cjbacik@redhat.com\u003e\n\n"
    },
    {
      "commit": "9bf1a2445f3c569098b8de7097ca324e65abecc2",
      "tree": "1ff7739ddc7e99437d36312c5af680e4e4239cda",
      "parents": [
        "8f7b0ba1c853919b85b54774775f567f30006107"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Nov 15 13:42:56 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Nov 15 13:42:56 2008 -0800"
      },
      "message": "Linux 2.6.28-rc5\n"
    },
    {
      "commit": "8f7b0ba1c853919b85b54774775f567f30006107",
      "tree": "1acd2b7ed5ed0de3eecfff9da5da4e779731f8a8",
      "parents": [
        "0d3b71009737511ea937ac405205fd8214b898bb"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ZenIV.linux.org.uk",
        "time": "Sat Nov 15 01:15:43 2008 +0000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Nov 15 12:26:44 2008 -0800"
      },
      "message": "Fix inotify watch removal/umount races\n\nInotify watch removals suck violently.\n\nTo kick the watch out we need (in this order) inode-\u003einotify_mutex and\nih-\u003emutex.  That\u0027s fine if we have a hold on inode; however, for all\nother cases we need to make damn sure we don\u0027t race with umount.  We can\n*NOT* just grab a reference to a watch - inotify_unmount_inodes() will\nhappily sail past it and we\u0027ll end with reference to inode potentially\noutliving its superblock.\n\nIdeally we just want to grab an active reference to superblock if we\ncan; that will make sure we won\u0027t go into inotify_umount_inodes() until\nwe are done.  Cleanup is just deactivate_super().\n\nHowever, that leaves a messy case - what if we *are* racing with\numount() and active references to superblock can\u0027t be acquired anymore?\nWe can bump -\u003es_count, grab -\u003es_umount, which will almost certainly wait\nuntil the superblock is shut down and the watch in question is pining\nfor fjords.  That\u0027s fine, but there is a problem - we might have hit the\nwindow between -\u003es_active getting to 0 / -\u003es_count - below S_BIAS (i.e.\nthe moment when superblock is past the point of no return and is heading\nfor shutdown) and the moment when deactivate_super() acquires\n-\u003es_umount.\n\nWe could just do drop_super() yield() and retry, but that\u0027s rather\nantisocial and this stuff is luser-triggerable.  OTOH, having grabbed\n-\u003es_umount and having found that we\u0027d got there first (i.e.  that\n-\u003es_root is non-NULL) we know that we won\u0027t race with\ninotify_umount_inodes().\n\nSo we could grab a reference to watch and do the rest as above, just\nwith drop_super() instead of deactivate_super(), right? Wrong.  We had\nto drop ih-\u003emutex before we could grab -\u003es_umount.  So the watch\ncould\u0027ve been gone already.\n\nThat still can be dealt with - we need to save watch-\u003ewd, do idr_find()\nand compare its result with our pointer.  If they match, we either have\nthe damn thing still alive or we\u0027d lost not one but two races at once,\nthe watch had been killed and a new one got created with the same -\u003ewd\nat the same address.  That couldn\u0027t have happened in inotify_destroy(),\nbut inotify_rm_wd() could run into that.  Still, \"new one got created\"\nis not a problem - we have every right to kill it or leave it alone,\nwhatever\u0027s more convenient.\n\nSo we can use idr_find(...) \u003d\u003d watch \u0026\u0026 watch-\u003einode-\u003ei_sb \u003d\u003d sb as\n\"grab it and kill it\" check.  If it\u0027s been our original watch, we are\nfine, if it\u0027s a newcomer - nevermind, just pretend that we\u0027d won the\nrace and kill the fscker anyway; we are safe since we know that its\nsuperblock won\u0027t be going away.\n\nAnd yes, this is far beyond mere \"not very pretty\"; so\u0027s the entire\nconcept of inotify to start with.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nAcked-by: Greg KH \u003cgreg@kroah.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0d3b71009737511ea937ac405205fd8214b898bb",
      "tree": "ef6bda055c09c2b209220511a472f9bce2bcbdcd",
      "parents": [
        "537a2f889ac847468c9aa040910c247b218302a7"
      ],
      "author": {
        "name": "Huang Weiyi",
        "email": "weiyi.huang@gmail.com",
        "time": "Thu Nov 13 20:14:17 2008 +0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Nov 15 12:11:27 2008 -0800"
      },
      "message": "LIS3LV02Dx: remove unused #include \u003cversion.h\u003e\n\nThe file(s) below do not use LINUX_VERSION_CODE nor KERNEL_VERSION.\n  drivers/hwmon/lis3lv02d.c\n\nThis patch removes the said #include \u003cversion.h\u003e.\n\nSigned-off-by: Huang Weiyi \u003cweiyi.huang@gmail.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "537a2f889ac847468c9aa040910c247b218302a7",
      "tree": "ea21b1dfd11e4234b108059c84c2a42887dc9254",
      "parents": [
        "fab349cceb25f92bac1400601c5ef8345a166958",
        "272966c070237c8cb540fe67e06df51bc6ea9cc2"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Nov 15 12:10:32 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Nov 15 12:10:32 2008 -0800"
      },
      "message": "Merge branch \u0027sh/for-2.6.28\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6\n\n* \u0027sh/for-2.6.28\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6:\n  serial: sh-sci: Reorder the SCxTDR write after the TDxE clear.\n  sh: __copy_user function can corrupt the stack in case of exception\n  sh: Fixed the TMU0 reload value on resume\n  sh: Don\u0027t factor in PAGE_OFFSET for valid_phys_addr_range() check.\n  sh: early printk port type fix\n  i2c: fix i2c-sh_mobile rx underrun\n  sh: Provide a sane valid_phys_addr_range() to prevent TLB reset with PMB.\n  usb: r8a66597-hcd: fix wrong data access in SuperH on-chip USB\n  fix sci type for SH7723\n  serial: sh-sci: fix cannot work SH7723 SCIFA\n  sh: Handle fixmap TLB eviction more coherently.\n"
    },
    {
      "commit": "fab349cceb25f92bac1400601c5ef8345a166958",
      "tree": "aba18d45b3620a210a939777857853c67a61d5c3",
      "parents": [
        "d091c2f58ba32029495a933b721e8e02fbd12caa",
        "31c00fc15ebd35c1647775dbfc167a15d46657fd"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Nov 15 11:51:03 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Nov 15 11:51:03 2008 -0800"
      },
      "message": "Merge branch \u0027doc-subdirs\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rdunlap/linux-docs\n\n* \u0027doc-subdirs\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rdunlap/linux-docs:\n  Create/use more directory structure in the Documentation/ tree.\n"
    },
    {
      "commit": "d091c2f58ba32029495a933b721e8e02fbd12caa",
      "tree": "9f20dc4cc77e7178270fb1d5946918fe44d4e3eb",
      "parents": [
        "4d41e121664893e5e338f41fbd36be4a2578c8d6"
      ],
      "author": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Wed Nov 12 21:16:43 2008 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Nov 15 11:43:37 2008 -0800"
      },
      "message": "Add \u0027pr_fmt()\u0027 format modifier to pr_xyz macros.\n\nA common reason for device drivers to implement their own printk macros\nis the lack of a printk prefix with the standard pr_xyz macros.\nIntroduce a pr_fmt() macro that is applied for every pr_xyz macro to the\nformat string.\n\nThe most common use of the pr_fmt macro would be to add the name of the\ndevice driver to all pr_xyz messages in a source file.\n\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4d41e121664893e5e338f41fbd36be4a2578c8d6",
      "tree": "3626b5d50600c54ae5eeaa6f317920456fe9deda",
      "parents": [
        "6ca2cb99377d6315def3c63c2a980a229556bf64",
        "4ff429e658c00bcf5101eabbebd4f711572a64cb"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Nov 15 11:39:09 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Nov 15 11:39:09 2008 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ericvh/v9fs\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ericvh/v9fs:\n  9p: restrict RDMA usage\n"
    },
    {
      "commit": "6ca2cb99377d6315def3c63c2a980a229556bf64",
      "tree": "b1cddb5385cd8b061925838d44521dd629a447f1",
      "parents": [
        "011331483da8842bc4ab6f2b4e88df60b25eb817",
        "01a1a3cc1e3fbe718bd06a2a5d4d1a2d0fb4d7d9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Nov 15 11:38:41 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Nov 15 11:38:41 2008 -0800"
      },
      "message": "Merge branch \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6\n\n* \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6:\n  V4L/DVB (9624): CVE-2008-5033: fix OOPS on tvaudio when controlling bass/treble\n  V4L/DVB (9623): tvaudio: Improve debug msg by printing something more human\n  V4L/DVB (9622): tvaudio: Improve comments and remove a unneeded prototype\n  V4L/DVB (9621): Avoid writing outside shadow.bytes[] array\n  V4L/DVB (9620): tvaudio: use a direct reference for chip description\n  V4L/DVB (9619): tvaudio: update initial comments\n  V4L/DVB (9618): tvaudio: add additional logic to avoid OOPS\n  V4L/DVB (9617): tvtime: remove generic_checkmode callback\n  V4L/DVB (9616): tvaudio: cleanup - group all callbacks together\n  V4L/DVB (9615): tvaudio: instead of using a magic number, use ARRAY_SIZE\n  V4L/DVB (9613): tvaudio: fix a memory leak\n"
    },
    {
      "commit": "011331483da8842bc4ab6f2b4e88df60b25eb817",
      "tree": "008d1ce7cf620e26c85bcd5ca6ffcf5526fb4be9",
      "parents": [
        "c98114db2d70bc670206878e92bb88da9cf6f8f2",
        "d2f019fe40e8fecd822f87bc759f74925a5c31d6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Nov 15 11:38:02 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Nov 15 11:38:02 2008 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git390.osdl.marist.edu/pub/scm/linux-2.6\n\n* \u0027for-linus\u0027 of git://git390.osdl.marist.edu/pub/scm/linux-2.6:\n  [S390] fix s390x_newuname\n  [S390] dasd: log sense for fatal errors\n  [S390] cpu topology: fix locking\n  [S390] cio: Fix refcount after moving devices.\n  [S390] ftrace: fix kernel stack backchain walking\n  [S390] ftrace: disable tracing on idle psw\n  [S390] lockdep: fix compile bug\n  [S390] kvm_s390: Fix oops in virtio device detection with \"mem\u003d\"\n  [S390] sclp: emit error message if assign storage fails\n  [S390] Fix range for add_active_range() in setup_memory()\n"
    },
    {
      "commit": "c98114db2d70bc670206878e92bb88da9cf6f8f2",
      "tree": "0b3f0720d0821414510c0f9eadf36fc2e43bd0db",
      "parents": [
        "52168e60f7d86d83124903098ac8c2dba93cd1c4",
        "df81d2371aeca0f7474f197a3090830899016e39"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Nov 15 11:37:40 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Nov 15 11:37:40 2008 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-rc-fixes-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-rc-fixes-2.6:\n  [SCSI] dpt_i2o: fix transferred data length for scsi_set_resid()\n  [SCSI] scsi_error regression: Fix idempotent command handling\n  [SCSI] zfcp: Fix hexdump data in s390dbf traces\n  [SCSI] zfcp: fix erp timeout cleanup for port open requests\n  [SCSI] zfcp: Wait for port scan to complete when setting adapter online\n  [SCSI] zfcp: Fix cast warning\n  [SCSI] zfcp: Fix request list handling in error path\n  [SCSI] zfcp: fix mempool usage for status_read requests\n  [SCSI] zfcp: fix req_list_locking.\n  [SCSI] zfcp: Dont clear reference from SCSI device to unit\n  [SCSI] qla2xxx: Update version number to 8.02.01-k9.\n  [SCSI] qla2xxx: Return a FAILED status when abort mailbox-command fails.\n  [SCSI] qla2xxx: Do not honour max_vports from firmware for 2G ISPs and below.\n  [SCSI] qla2xxx: Use pci_disable_rom() to manipulate PCI config space.\n  [SCSI] qla2xxx: Correct Atmel flash-part handling.\n  [SCSI] megaraid: fix mega_internal_command oops\n"
    },
    {
      "commit": "52168e60f7d86d83124903098ac8c2dba93cd1c4",
      "tree": "349eea04ccb95c3495b7ac17d774966da142899f",
      "parents": [
        "748f1a2ed7a68e15b28a1da3559afbebba121772"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Fri Nov 14 13:47:31 2008 +0000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Nov 15 11:37:16 2008 -0800"
      },
      "message": "Revert \"x86: blacklist DMAR on Intel G31/G33 chipsets\"\n\nThis reverts commit e51af6630848406fc97adbd71443818cdcda297b, which was\nwrongly hoovered up and submitted about a month after a better fix had\nalready been merged.\n\nThe better fix is commit cbda1ba898647aeb4ee770b803c922f595e97731\n(\"PCI/iommu: blacklist DMAR on Intel G31/G33 chipsets\"), where we do\nthis blacklisting based on the DMI identification for the offending\nmotherboard, since sometimes this chipset (or at least a chipset with\nthe same PCI ID) apparently _does_ actually have an IOMMU.\n\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "748f1a2ed7a68e15b28a1da3559afbebba121772",
      "tree": "afe3e4d26bac397788be964d2cd0d89e7b0daa80",
      "parents": [
        "fb75109834ca5c5e2f0f17f0c9e20182ea55b65f"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Fri Nov 14 16:25:01 2008 +0900"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Nov 15 11:36:07 2008 -0800"
      },
      "message": "mm: remove unevictable\u0027s show_page_path\n\nHugh Dickins reported show_page_path() is buggy and unsafe because\n\n - lack dput() against d_find_alias()\n - don\u0027t concern vma-\u003evm_mm-\u003eowner \u003d\u003d NULL\n - lack lock_page()\n\nit was only for debugging, so rather than trying to fix it, just remove\nit now.\n\nReported-by: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCC: Lee Schermerhorn \u003cLee.Schermerhorn@hp.com\u003e\nCC: Rik van Riel \u003criel@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "fb75109834ca5c5e2f0f17f0c9e20182ea55b65f",
      "tree": "f680499640928edad4f6deefee6d1dba9c341535",
      "parents": [
        "27123cbc264de89ce6951b1b4c84c223eb0f1702"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert@linux-m68k.org",
        "time": "Fri Nov 14 08:54:46 2008 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Nov 15 11:36:06 2008 -0800"
      },
      "message": "misc: C2port needs \u003clinux/sched.h\u003e\n\nm68k allmodconfig:\n\n| drivers/misc/c2port/core.c: In function \u0027c2port_reset\u0027:\n| drivers/misc/c2port/core.c:73: error: dereferencing pointer to incomplete type\n| drivers/misc/c2port/core.c: In function \u0027c2port_strobe_ck\u0027:\n| drivers/misc/c2port/core.c:91: error: dereferencing pointer to incomplete type\n\nInclude \u003clinux/sched.h\u003e to fix it, as m68k\u0027s local_irq_enable() needs to know\nabout struct task_struct.\n\nSigned-off-by: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "27123cbc264de89ce6951b1b4c84c223eb0f1702",
      "tree": "81e4d2cab353fb1e6085850a8a9f1a41465fb944",
      "parents": [
        "fa0cfc202c4969ceed567b1567c2e5effe7fd28b"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert@linux-m68k.org",
        "time": "Fri Nov 14 08:10:19 2008 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Nov 15 11:36:06 2008 -0800"
      },
      "message": "m68k: Fix off-by-one in m68k_setup_user_interrupt()\n\ncommit 69961c375288bdab7604e0bb1c8d22999bb8a347 (\"[PATCH] m68k/Atari:\nInterrupt updates\") added a BUG_ON() with an incorrect upper bound\ncomparison, which causes an early crash on VME boards, where IRQ_USER is\n8, cnt is 192 and NR_IRQS is 200.\n\nReported-by: Stephen N Chivers \u003cschivers@csc.com.au\u003e\nTested-by: Kars de Jong \u003cjongk@linux-m68k.org\u003e\nSigned-off-by: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nCc: stable@kernel.org\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "fa0cfc202c4969ceed567b1567c2e5effe7fd28b",
      "tree": "a6b23ec91fdf7f140f72cfc6aaf9b5cab342ae7b",
      "parents": [
        "8141c7f3e7aee618312fa1c15109e1219de784a7",
        "6a6b97d360702b98c02c7fca4c4e088dcf3a2985"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Nov 15 11:33:05 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Nov 15 11:33:05 2008 -0800"
      },
      "message": "Merge branch \u0027upstream-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev\n\n* \u0027upstream-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev:\n  libata: improve phantom device detection\n"
    },
    {
      "commit": "8141c7f3e7aee618312fa1c15109e1219de784a7",
      "tree": "25513fc1c260af053fb9facf92df5b59bfe74c3a",
      "parents": [
        "9c7c354645535555785eb937dd46388b55e690d0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Nov 15 10:20:36 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Nov 15 10:20:36 2008 -0800"
      },
      "message": "Move \"exit_robust_list\" into mm_release()\n\nWe don\u0027t want to get rid of the futexes just at exit() time, we want to\ndrop them when doing an execve() too, since that gets rid of the\nprevious VM image too.\n\nDoing it at mm_release() time means that we automatically always do it\nwhen we disassociate a VM map from the task.\n\nReported-by: pageexec@freemail.hu\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Hugh Dickins \u003chugh@veritas.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Brad Spengler \u003cspender@grsecurity.net\u003e\nCc: Alex Efros \u003cpowerman@powerman.name\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "df81d2371aeca0f7474f197a3090830899016e39",
      "tree": "5a78d77e9086b52069789d1f0707cf9d9cb4b71e",
      "parents": [
        "939c2288c35132fe340b2694c7d02cacf7593723"
      ],
      "author": {
        "name": "Miquel van Smoorenburg",
        "email": "mikevs@xs4all.net",
        "time": "Wed Nov 05 00:09:12 2008 +0100"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Sat Nov 15 11:10:14 2008 -0600"
      },
      "message": "[SCSI] dpt_i2o: fix transferred data length for scsi_set_resid()\n\ndpt_i2o.c::adpt_i2o_to_scsi() reads the value at (reply+5) which\nshould contain the length in bytes of the transferred data. This\nwould be correct if reply was a u32 *. However it is a void * here,\nso we need to read the value at (reply+20) instead.\n\nThe value at (reply+5) is usually 0xff0000, which is apparently\n\u0027large enough\u0027 and didn\u0027t cause any trouble until 2.6.27 where\n\ncommit 427e59f09fdba387547106de7bab980b7fff77be\nAuthor: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\nDate:   Sat Mar 8 18:24:17 2008 -0600\n\n    [SCSI] make use of the residue value\n\ncaused this to become visible through e.g. iostat -x .\n\nSigned-off-by: Miquel van Smoorenburg \u003cmikevs@xs4all.net\u003e\nCc: Stable Tree \u003cstable@kernel.org\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "6a6b97d360702b98c02c7fca4c4e088dcf3a2985",
      "tree": "6b0d6a504c11bbea7096706065c31bd12e7d7e78",
      "parents": [
        "58e20d8d344b0ee083febb18c2b021d2427e56ca"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Thu Nov 13 10:04:46 2008 +0900"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@redhat.com",
        "time": "Fri Nov 14 18:51:57 2008 -0500"
      },
      "message": "libata: improve phantom device detection\n\nCurrently libata uses four methods to detect device presence.\n\n1. PHY status if available.\n2. TF register R/W test (only promotes presence, never demotes)\n3. device signature after reset\n4. IDENTIFY failure detection in SFF state machine\n\nCombination of the above works well in most cases but recently there\nhave been a few reports where a phantom device causes unnecessary\ndelay during probe.  In both cases, PHY status wasn\u0027t available.  In\none case, it passed #2 and #3 and failed IDENTIFY with ATA_ERR which\ndidn\u0027t qualify as #4.  The other failed #2 but as it passed #3 and #4,\nit still caused failure.\n\nIn both cases, phantom device reported diagnostic failure, so these\ncases can be safely worked around by considering any !ATA_DRQ IDENTIFY\nfailure as NODEV_HINT if diagnostic failure is set.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n"
    },
    {
      "commit": "4ff429e658c00bcf5101eabbebd4f711572a64cb",
      "tree": "4f5b819feb5604f1486e3e67d8e81d623ad9aa6c",
      "parents": [
        "58e20d8d344b0ee083febb18c2b021d2427e56ca"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Wed Nov 12 13:05:17 2008 -0800"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Fri Nov 14 16:14:27 2008 -0600"
      },
      "message": "9p: restrict RDMA usage\n\nlinux-next:\n\nMake 9p\u0027s RDMA option depend on INET since it uses Infiniband rdma_*\nfunctions and that code depends on INET.  Otherwise 9p can try to\nuse symbols which don\u0027t exist.\n\nERROR: \"rdma_destroy_id\" [net/9p/9pnet_rdma.ko] undefined!\nERROR: \"rdma_connect\" [net/9p/9pnet_rdma.ko] undefined!\nERROR: \"rdma_create_id\" [net/9p/9pnet_rdma.ko] undefined!\nERROR: \"rdma_create_qp\" [net/9p/9pnet_rdma.ko] undefined!\nERROR: \"rdma_resolve_route\" [net/9p/9pnet_rdma.ko] undefined!\nERROR: \"rdma_disconnect\" [net/9p/9pnet_rdma.ko] undefined!\nERROR: \"rdma_resolve_addr\" [net/9p/9pnet_rdma.ko] undefined!\n\nI used an if/endif block so that the menu items would remain\npresented together.\n\nAlso correct an article adjective.\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "31c00fc15ebd35c1647775dbfc167a15d46657fd",
      "tree": "6d8ff2a6607c94a791ccc56fd8eb625e4fdcc01a",
      "parents": [
        "3edac25f2e8ac8c2a84904c140e1aeb434e73e75"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Thu Nov 13 21:33:24 2008 +0000"
      },
      "committer": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Fri Nov 14 17:28:53 2008 +0000"
      },
      "message": "Create/use more directory structure in the Documentation/ tree.\n\nCreate Documentation/blockdev/ sub-directory and populate it.\nPopulate the Documentation/serial/ sub-directory.\nMove MSI-HOWTO.txt to Documentation/PCI/.\nMove ioctl-number.txt to Documentation/ioctl/.\nUpdate all relevant 00-INDEX files.\nUpdate all relevant Kconfig files and source files.\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\n"
    },
    {
      "commit": "d2f019fe40e8fecd822f87bc759f74925a5c31d6",
      "tree": "cf1cfbe33e7269da1f735ced528db02ab8f07f04",
      "parents": [
        "a9cffb227d59db526286cc9f84bf258e68a97470"
      ],
      "author": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Nov 14 18:18:09 2008 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Nov 14 18:18:55 2008 +0100"
      },
      "message": "[S390] fix s390x_newuname\n\nThe uname system call for 64 bit compares current-\u003epersonality without\nmasking the upper 16 bits. If e.g. READ_IMPLIES_EXEC is set the result\nof a uname system call will always be s390x even if the process uses\nthe s390 personality.\n\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "a9cffb227d59db526286cc9f84bf258e68a97470",
      "tree": "673875fd52bd99b28e058f2d818cffdf7b130499",
      "parents": [
        "74af283102b358b0da545460d0d176f473e110f6"
      ],
      "author": {
        "name": "Stefan Haberland",
        "email": "stefan.haberland@de.ibm.com",
        "time": "Fri Nov 14 18:18:08 2008 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Nov 14 18:18:54 2008 +0100"
      },
      "message": "[S390] dasd: log sense for fatal errors\n\nThe logging of sense data for fatal errors was accidentally removed\nduring Hyper PAV implementation.\n\nSigned-off-by: Stefan Haberland \u003cstefan.haberland@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "74af283102b358b0da545460d0d176f473e110f6",
      "tree": "5f5fc2faea5c40f6b597d6237ffa3f4a2e0585f4",
      "parents": [
        "85acc407bf1c49fb40b8f461c2c7526af736d87e"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Fri Nov 14 18:18:07 2008 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Nov 14 18:18:54 2008 +0100"
      },
      "message": "[S390] cpu topology: fix locking\n\ncpu_coregroup_map used to grab a mutex on s390 since it was only\ncalled from process context.\nSince c7c22e4d5c1fdebfac4dba76de7d0338c2b0d832 \"block: add support\nfor IO CPU affinity\" this is not true anymore.\nIt now also gets called from softirq context.\n\nTo prevent possible deadlocks change this in architecture code and\nuse a spinlock instead of a mutex.\n\nCc: stable@kernel.org\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "85acc407bf1c49fb40b8f461c2c7526af736d87e",
      "tree": "356a407f2f621fc50cba45d0453958e7143738a1",
      "parents": [
        "50bec4ce5d36ebf96189dcc54e20c7fce4bf61bf"
      ],
      "author": {
        "name": "Cornelia Huck",
        "email": "cornelia.huck@de.ibm.com",
        "time": "Fri Nov 14 18:18:06 2008 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Nov 14 18:18:54 2008 +0100"
      },
      "message": "[S390] cio: Fix refcount after moving devices.\n\nIn ccw_device_move_to_orphanage(), a replacing ccw_device\nis searched via get_{disc,orphaned}_ccwdev_by_dev_id()\nwhich obtain a reference on the returned ccw_device.\nThis reference must be given up again after the device\nhas been moved to its new parent.\n\nSigned-off-by: Cornelia Huck \u003ccornelia.huck@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "50bec4ce5d36ebf96189dcc54e20c7fce4bf61bf",
      "tree": "5f04e012e882ed15f9c7f1f45b0e9a27dd2656f5",
      "parents": [
        "632448f65001c4935ed0d3bb362017d773da2eca"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Fri Nov 14 18:18:05 2008 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Nov 14 18:18:53 2008 +0100"
      },
      "message": "[S390] ftrace: fix kernel stack backchain walking\n\nWith CONFIG_IRQSOFF_TRACER the trace_hardirqs_off() function includes\na call to __builtin_return_address(1). But we calltrace_hardirqs_off()\nfrom early entry code. There we have just a single stack frame.\nSo this results in a kernel stack backchain walk that would walk beyond\nthe kernel stack. Following the NULL terminated backchain this results\nin a lowcore read access.\n\nTo fix this we simply call trace_hardirqs_off_caller() and pass the\ncurrent instruction pointer.\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "632448f65001c4935ed0d3bb362017d773da2eca",
      "tree": "d1daf415fecdc1b9e353e3ad82e30c555961d325",
      "parents": [
        "af4c68740e848019d8d14c52704ed8eacceddac6"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Fri Nov 14 18:18:04 2008 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Nov 14 18:18:53 2008 +0100"
      },
      "message": "[S390] ftrace: disable tracing on idle psw\n\nDisable tracing on idle psw. Otherwise it would give us huge\npreempt off times for idle. Which is rather pointless.\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "af4c68740e848019d8d14c52704ed8eacceddac6",
      "tree": "9bc6f6fc101f693402d7cadb8bf8d869b37f9a79",
      "parents": [
        "cc835f7872adef35076e4a3b6632ef79bb4805be"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Fri Nov 14 18:18:03 2008 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Nov 14 18:18:53 2008 +0100"
      },
      "message": "[S390] lockdep: fix compile bug\n\narch/s390/kernel/built-in.o: In function `cleanup_io_leave_insn\u0027:\nmem_detect.c:(.text+0x10592): undefined reference to `lockdep_sys_exit\u0027\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "cc835f7872adef35076e4a3b6632ef79bb4805be",
      "tree": "6b416046f989877926db0457cfc80e9805fc5c7e",
      "parents": [
        "675be97a32a5f12650b86391b7431f1e10811f1e"
      ],
      "author": {
        "name": "Christian Borntraeger",
        "email": "borntraeger@de.ibm.com",
        "time": "Fri Nov 14 18:18:02 2008 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Nov 14 18:18:52 2008 +0100"
      },
      "message": "[S390] kvm_s390: Fix oops in virtio device detection with \"mem\u003d\"\n\nThe current virtio model on s390 has the descriptor page above the main\nmemory. The guest virtio detection will oops if the mem\u003d parameter is\nused to reduce/change the memory size.\nWe have to use real_memory_size instead of max_pfn to detect the virtio\ndescriptor pages.\n\nSigned-off-by: Christian Borntraeger \u003cborntraeger@de.ibm.com\u003e\n"
    },
    {
      "commit": "675be97a32a5f12650b86391b7431f1e10811f1e",
      "tree": "c1b3d468af8d918eb402df55a6594f97f817ef3c",
      "parents": [
        "fb2e7c5e33b341699f139b2ed972dca0a463a670"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Fri Nov 14 18:18:01 2008 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Nov 14 18:18:52 2008 +0100"
      },
      "message": "[S390] sclp: emit error message if assign storage fails\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "fb2e7c5e33b341699f139b2ed972dca0a463a670",
      "tree": "84363091311ffd8755a921ce3b34487c8ef3d8cc",
      "parents": [
        "58e20d8d344b0ee083febb18c2b021d2427e56ca"
      ],
      "author": {
        "name": "Gerald Schaefer",
        "email": "gerald.schaefer@de.ibm.com",
        "time": "Fri Nov 14 18:18:00 2008 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Nov 14 18:18:51 2008 +0100"
      },
      "message": "[S390] Fix range for add_active_range() in setup_memory()\n\nadd_active_range() expects start_pfn + size as end_pfn value, i.e. not\nthe pfn of the last page frame but the one behind that.\nWe used the pfn of the last page frame so far, which can lead to a\nBUG_ON in move_freepages(), when the kernelcore parameter is specified\n(page_zone(start_page) !\u003d page_zone(end_page)).\n\nSigned-off-by: Gerald Schaefer \u003cgerald.schaefer@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "01a1a3cc1e3fbe718bd06a2a5d4d1a2d0fb4d7d9",
      "tree": "a501094b7194a5ae955f0e90ce1a9b198b168691",
      "parents": [
        "c6241b6c64dbe759e0eccaee913bdcf4d7960367"
      ],
      "author": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@redhat.com",
        "time": "Fri Nov 14 10:46:59 2008 -0300"
      },
      "committer": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@redhat.com",
        "time": "Fri Nov 14 14:39:47 2008 -0200"
      },
      "message": "V4L/DVB (9624): CVE-2008-5033: fix OOPS on tvaudio when controlling bass/treble\n\nThis bug were supposed to be fixed by 5ba2f67afb02c5302b2898949ed6fc3b3d37dcf1,\nwhere a call to NULL happens.\n\nNot all tvaudio chips allow controlling bass/treble. So, the driver\nhas a table with a flag to indicate if the chip does support it.\n\nUnfortunately, the handling of this logic were broken for a very long\ntime (probably since the first module version). Due to that, an OOPS\nwere generated for devices that don\u0027t support bass/treble.\n\nThis were the resulting OOPS message before the patch, with debug messages\nenabled:\n\ntvaudio\u0027 1-005b: VIDIOC_S_CTRL\nBUG: unable to handle kernel NULL pointer dereference at 00000000\nIP: [\u003c00000000\u003e]\n*pde \u003d 22fda067 *pte \u003d 00000000\nOops: 0000 [#1] SMP\nModules linked in: snd_hda_intel snd_seq_dummy snd_seq_oss snd_seq_midi_event snd_seq snd_seq_device\nsnd_pcm_oss snd_mixer_oss snd_pcm snd_timer snd_hwdep snd soundcore tuner_simple tuner_types tea5767 tuner\ntvaudio bttv bridgebnep rfcomm l2cap bluetooth it87 hwmon_vid hwmon fuse sunrpc ipt_REJECT\nnf_conntrack_ipv4 iptable_filter ip_tables ip6t_REJECT xt_tcpudp nf_conntrack_ipv6 xt_state nf_conntrack\nip6table_filter ip6_tables x_tables ipv6 dm_mirrordm_multipath dm_mod configfs videodev v4l1_compat\nir_common 8139cp compat_ioctl32 v4l2_common 8139too videobuf_dma_sg videobuf_core mii btcx_risc tveeprom\ni915 button snd_page_alloc serio_raw drm pcspkr i2c_algo_bit i2c_i801 i2c_core iTCO_wdt\niTCO_vendor_support sr_mod cdrom sg ata_generic pata_acpi ata_piix libata sd_mod scsi_mod ext3 jbdmbcache\nuhci_hcd ohci_hcd ehci_hcd [last unloaded: soundcore]\n\nPid: 15413, comm: qv4l2 Not tainted (2.6.25.14-108.fc9.i686 #1)\nEIP: 0060:[\u003c00000000\u003e] EFLAGS: 00210246 CPU: 0\nEIP is at 0x0\nEAX: 00008000 EBX: ebd21600 ECX: e2fd9ec4 EDX: 00200046\nESI: f8c0f0c4 EDI: f8c0f0c4 EBP: e2fd9d50 ESP: e2fd9d2c\n DS: 007b ES: 007b FS: 00d8 GS: 0033 SS: 0068\nProcess qv4l2 (pid: 15413, ti\u003de2fd9000 task\u003debe44000 task.ti\u003de2fd9000)\nStack: f8c0c6ae e2ff2a00 00000d00 e2fd9ec4 ebc4e000 e2fd9d5c f8c0c448 00000000\n       f899c12a e2fd9d5c f899c154 e2fd9d68 e2fd9d80 c0560185 e2fd9d88 f8f3e1d8\n       f8f3e1dc ebc4e034 f8f3e18c e2fd9ec4 00000000 e2fd9d90 f899c286 c008561c\nCall Trace:\n [\u003cf8c0c6ae\u003e] ? chip_command+0x266/0x4b6 [tvaudio]\n [\u003cf8c0c448\u003e] ? chip_command+0x0/0x4b6 [tvaudio]\n [\u003cf899c12a\u003e] ? i2c_cmd+0x0/0x2f [i2c_core]\n [\u003cf899c154\u003e] ? i2c_cmd+0x2a/0x2f [i2c_core]\n [\u003cc0560185\u003e] ? device_for_each_child+0x21/0x49\n [\u003cf899c286\u003e] ? i2c_clients_command+0x1c/0x1e [i2c_core]\n [\u003cf8f283d8\u003e] ? bttv_call_i2c_clients+0x14/0x16 [bttv]\n [\u003cf8f23601\u003e] ? bttv_s_ctrl+0x1bc/0x313 [bttv]\n [\u003cf8f23445\u003e] ? bttv_s_ctrl+0x0/0x313 [bttv]\n [\u003cf8b6096d\u003e] ? __video_do_ioctl+0x1f84/0x3726 [videodev]\n [\u003cc05abb4e\u003e] ? sock_aio_write+0x100/0x10d\n [\u003cc041b23e\u003e] ? kmap_atomic_prot+0x1dd/0x1df\n [\u003cc043a0c9\u003e] ? enqueue_hrtimer+0xc2/0xcd\n [\u003cc04f4fa4\u003e] ? copy_from_user+0x39/0x121\n [\u003cf8b622b9\u003e] ? __video_ioctl2+0x1aa/0x24a [videodev]\n [\u003cc04054fd\u003e] ? do_notify_resume+0x768/0x795\n [\u003cc043c0f7\u003e] ? getnstimeofday+0x34/0xd1\n [\u003cc0437b77\u003e] ? autoremove_wake_function+0x0/0x33\n [\u003cf8b62368\u003e] ? video_ioctl2+0xf/0x13 [videodev]\n [\u003cc048c6f0\u003e] ? vfs_ioctl+0x50/0x69\n [\u003cc048c942\u003e] ? do_vfs_ioctl+0x239/0x24c\n [\u003cc048c995\u003e] ? sys_ioctl+0x40/0x5b\n [\u003cc0405bf2\u003e] ? syscall_call+0x7/0xb\n [\u003cc0620000\u003e] ? cpuid4_cache_sysfs_exit+0x3d/0x69\n \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\nCode:  Bad EIP value.\nEIP: [\u003c00000000\u003e] 0x0 SS:ESP 0068:e2fd9d2c\n\nSigned-off-by: Mauro Carvalho Chehab \u003cmchehab@redhat.com\u003e\n"
    },
    {
      "commit": "c6241b6c64dbe759e0eccaee913bdcf4d7960367",
      "tree": "0e1fa8bb36df7f01b70c812f2adb16d827d07b8e",
      "parents": [
        "41f5230f3fc6296d0d88ab9f4c3c07fcbbe53e59"
      ],
      "author": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@redhat.com",
        "time": "Thu Nov 13 18:12:43 2008 -0300"
      },
      "committer": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@redhat.com",
        "time": "Fri Nov 14 14:24:45 2008 -0200"
      },
      "message": "V4L/DVB (9623): tvaudio: Improve debug msg by printing something more human\n\nBefore the patch, the used ioctl were printed as an hexadecimal code,\nhard to be understand without consulting the way _IO macros work.\nInstead, use the V4L default handler for printing such errors into a way\nthat would be easier to understand.\n\nSigned-off-by: Mauro Carvalho Chehab \u003cmchehab@redhat.com\u003e\n"
    },
    {
      "commit": "41f5230f3fc6296d0d88ab9f4c3c07fcbbe53e59",
      "tree": "422bc578bf641143b9ab58d73a39dc922e5c2d7b",
      "parents": [
        "494264379d186bf806613d27aafb7d88d42f4212"
      ],
      "author": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@redhat.com",
        "time": "Thu Nov 13 17:25:04 2008 -0300"
      },
      "committer": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@redhat.com",
        "time": "Fri Nov 14 14:24:45 2008 -0200"
      },
      "message": "V4L/DVB (9622): tvaudio: Improve comments and remove a unneeded prototype\n\nSome comments are not clear enough. Improve it to allow a better\nunderstanding of the driver behavior.\n\nWhile there, remove an unneeded struct prototype.\n\nSigned-off-by: Mauro Carvalho Chehab \u003cmchehab@redhat.com\u003e\n"
    },
    {
      "commit": "494264379d186bf806613d27aafb7d88d42f4212",
      "tree": "681aeb1444d7e1b2d994d5045644a0c8ec44e342",
      "parents": [
        "81cb5c4f7fbe6971d9c61401bc47193290fd59b7"
      ],
      "author": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@redhat.com",
        "time": "Thu Nov 13 17:03:28 2008 -0300"
      },
      "committer": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@redhat.com",
        "time": "Fri Nov 14 14:24:45 2008 -0200"
      },
      "message": "V4L/DVB (9621): Avoid writing outside shadow.bytes[] array\n\nThere were no check about the limits of shadow.bytes array. This offers\na risk of writing values outside the limits, overriding other data\nareas.\n\nSigned-off-by: Mauro Carvalho Chehab \u003cmchehab@redhat.com\u003e\n"
    },
    {
      "commit": "81cb5c4f7fbe6971d9c61401bc47193290fd59b7",
      "tree": "b30b928f43124a8d5205a16ad7371127893583e4",
      "parents": [
        "b4ab114cf750a49d91fc292439f8ef69a35a0fab"
      ],
      "author": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@redhat.com",
        "time": "Thu Nov 13 16:22:53 2008 -0300"
      },
      "committer": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@redhat.com",
        "time": "Fri Nov 14 14:24:45 2008 -0200"
      },
      "message": "V4L/DVB (9620): tvaudio: use a direct reference for chip description\n\nInstead of storing the pointer for the proper entry at chip description\ntable, the driver were storing an indirect reference, by using an index.\nBetter to reference directly the data.\n\nSigned-off-by: Mauro Carvalho Chehab \u003cmchehab@redhat.com\u003e\n"
    },
    {
      "commit": "b4ab114cf750a49d91fc292439f8ef69a35a0fab",
      "tree": "059c8126c86618a301456f6b07484c16576b5171",
      "parents": [
        "099b7fcc770764ec06441066fddd90b97d868e11"
      ],
      "author": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@redhat.com",
        "time": "Thu Nov 13 14:07:54 2008 -0300"
      },
      "committer": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@redhat.com",
        "time": "Fri Nov 14 14:24:44 2008 -0200"
      },
      "message": "V4L/DVB (9619): tvaudio: update initial comments\n\nA driver used on several bttv boards since 2000 is not experimental\nanymore ;) Remove it from the comments.\n\nWhile there, update copyrights addind a quick note about the \"recent\"\nupdates since 2005.\n\nSigned-off-by: Mauro Carvalho Chehab \u003cmchehab@redhat.com\u003e\n"
    },
    {
      "commit": "099b7fcc770764ec06441066fddd90b97d868e11",
      "tree": "3d361ef75ebd2a9298f46b5f229dd7552695fe9a",
      "parents": [
        "dd03e970a18f266faf120e47355349d224f64e3f"
      ],
      "author": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@redhat.com",
        "time": "Thu Nov 13 14:01:15 2008 -0300"
      },
      "committer": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@redhat.com",
        "time": "Fri Nov 14 14:24:44 2008 -0200"
      },
      "message": "V4L/DVB (9618): tvaudio: add additional logic to avoid OOPS\n\nThis patch checks for volume, bass, treble, set mode and get mode\ncallbacks before actually enabling the code that would use them.\n\nInstead of aborting the driver for load, this patch will allow it to\nload with a reduced number of functionatities.\n\nThis prevents OOPS if some board entry is missing a needed callback.\n\nSigned-off-by: Mauro Carvalho Chehab \u003cmchehab@redhat.com\u003e\n"
    },
    {
      "commit": "dd03e970a18f266faf120e47355349d224f64e3f",
      "tree": "b4cc3088f239eaa60c58826f532505178358a339",
      "parents": [
        "af1a9951fc5c89518c25c4d9f2c4b391b2e72b83"
      ],
      "author": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@redhat.com",
        "time": "Thu Nov 13 13:55:39 2008 -0300"
      },
      "committer": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@redhat.com",
        "time": "Fri Nov 14 14:24:44 2008 -0200"
      },
      "message": "V4L/DVB (9617): tvtime: remove generic_checkmode callback\n\ngeneric_checkmode() were called, via a callback, for some tvaudio chips.\nThere\u0027s just one callback code used on all those boards. So, it makes no\nsense on keeping this as a callback.\n\nSince there were some OOPS reported on tvaudio on kerneloops.org, this\npatch removes this callback, adding the code at the only place were it\nis called: inside chip_tread. A flag were added to indicate the need for\na kernel thread to set stereo mode on cards that needs it.\n\nUsing this more direct approach simplifies the code, making it more\nrobust against human errors.\n\nSigned-off-by: Mauro Carvalho Chehab \u003cmchehab@redhat.com\u003e\n"
    },
    {
      "commit": "af1a9951fc5c89518c25c4d9f2c4b391b2e72b83",
      "tree": "a748c4057b32db2a36b24730883c5a63e16bf1d4",
      "parents": [
        "04e6f99025475a8cf2ccf2e39ffa48a6194a3b47"
      ],
      "author": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@redhat.com",
        "time": "Thu Nov 13 13:14:15 2008 -0300"
      },
      "committer": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@redhat.com",
        "time": "Fri Nov 14 14:24:44 2008 -0200"
      },
      "message": "V4L/DVB (9616): tvaudio: cleanup - group all callbacks together\n\nSigned-off-by: Mauro Carvalho Chehab \u003cmchehab@redhat.com\u003e\n"
    },
    {
      "commit": "04e6f99025475a8cf2ccf2e39ffa48a6194a3b47",
      "tree": "869d0291139e80ac506c19e4d41c94c9595fd074",
      "parents": [
        "5c6533510335ab291dcc0e9cdb98e67b50f6b2e9"
      ],
      "author": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@redhat.com",
        "time": "Thu Nov 13 13:10:11 2008 -0300"
      },
      "committer": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@redhat.com",
        "time": "Fri Nov 14 14:24:44 2008 -0200"
      },
      "message": "V4L/DVB (9615): tvaudio: instead of using a magic number, use ARRAY_SIZE\n\nAlso, the default standard is the first one. So, fix the comment at the\narray.\n\nSigned-off-by: Mauro Carvalho Chehab \u003cmchehab@redhat.com\u003e\n"
    },
    {
      "commit": "5c6533510335ab291dcc0e9cdb98e67b50f6b2e9",
      "tree": "1851d50a6c47428c3a3cfaedb424f9b9a7f6730f",
      "parents": [
        "f21f237cf55494c3a4209de323281a3b0528da10"
      ],
      "author": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@redhat.com",
        "time": "Thu Nov 13 13:06:33 2008 -0300"
      },
      "committer": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@redhat.com",
        "time": "Fri Nov 14 14:24:44 2008 -0200"
      },
      "message": "V4L/DVB (9613): tvaudio: fix a memory leak\n\nSigned-off-by: Mauro Carvalho Chehab \u003cmchehab@redhat.com\u003e\n"
    },
    {
      "commit": "9c7c354645535555785eb937dd46388b55e690d0",
      "tree": "25645de3d9009eb372d7ca23e75c42cf857857ed",
      "parents": [
        "7e5b95f1baaabd93271c7b27b7e3c803a9aaa0dd",
        "ccf95402d0ae6f433f29ce88cfd589cec8fc81ad"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Nov 13 15:55:07 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Nov 13 15:55:07 2008 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6: (25 commits)\n  USB: net: asix: add support for Cables-to-Go USB Ethernet adapter\n  USB: gadget: cdc-acm deadlock fix\n  USB: EHCI: fix divide-by-zero bug\n  USB: EHCI: fix handling of dead controllers\n  usb: r8a66597-hcd: fix wrong data access in SuperH on-chip USB\n  ub: stub pre_reset and post_reset to fix oops\n  USB: SISUSB2VGA driver: add 0x0711, 0x0903\n  usb: unusual devs patch for Nokia 7610 Supernova\n  USB: remove optional bus bindings in isp1760, fixing runtime warning\n  + usb-serial-cp2101-add-enfora-gsm2228.patch added to -mm tree\n  USB: storage: adjust comment in Kconfig\n  USB: Fix PS3 USB shutdown problems\n  USB: unusual_devs entry for Argosy USB mass-storage interface\n  USB: cdc-acm.c: fix recursive lock in acm_start_wb error path\n  USB: CP2101 Add device ID for AMB2560\n  USB: mention URB_FREE_BUFFER in usb_free_urb documentation\n  USB: Add YISO u893 usb modem vendor and product IDs to option driver\n  usb: musb: fix BULK request on different available endpoints\n  usb: musb: fix debug global variable name\n  usb: musb: Removes compilation warning in gadget mode\n  ...\n"
    },
    {
      "commit": "7e5b95f1baaabd93271c7b27b7e3c803a9aaa0dd",
      "tree": "e00de6d3a1c482b10fb4892bfed97eff1a9fff44",
      "parents": [
        "58e20d8d344b0ee083febb18c2b021d2427e56ca",
        "8a57dfc6f943c92b861c9a19b0c86ddcb2aba768"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Nov 13 15:53:30 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Nov 13 15:53:30 2008 -0800"
      },
      "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:\n  dm: avoid destroying table in dm_any_congested\n  dm: move pending queue wake_up end_io_acct\n  dm mpath: warn if args ignored\n  dm mpath: avoid attempting to activate null path\n  dm stripe: fix init failure\n  dm raid1: flush workqueue before destruction\n"
    },
    {
      "commit": "8a57dfc6f943c92b861c9a19b0c86ddcb2aba768",
      "tree": "18090d42e647cda854c93aa304cf03fbad44f6c0",
      "parents": [
        "d221d2e77696e70e94b13989ea15db2ba5b34f8e"
      ],
      "author": {
        "name": "Chandra Seetharaman",
        "email": "sekharan@us.ibm.com",
        "time": "Thu Nov 13 23:39:14 2008 +0000"
      },
      "committer": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Thu Nov 13 23:39:14 2008 +0000"
      },
      "message": "dm: avoid destroying table in dm_any_congested\n\ndm_any_congested() just checks for the DMF_BLOCK_IO and has no\ncode to make sure that suspend waits for dm_any_congested() to\ncomplete.  This patch adds such a check.\n\nWithout it, a race can occur with dm_table_put() attempting to\ndestroying the table in the wrong thread, the one running\ndm_any_congested() which is meant to be quick and return\nimmediately.\n\nTwo examples of problems:\n1. Sleeping functions called from congested code, the caller\n   of which holds a spin lock.\n2. An ABBA deadlock between pdflush and multipathd. The two locks\n   in contention are inode lock and kernel lock.\n\nSigned-off-by: Chandra Seetharaman \u003csekharan@us.ibm.com\u003e\nSigned-off-by: Mikulas Patocka \u003cmpatocka@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\n"
    },
    {
      "commit": "d221d2e77696e70e94b13989ea15db2ba5b34f8e",
      "tree": "82afcee59db83104d31848e2304eb51baeee3aa4",
      "parents": [
        "14e98c5ca8bed825f65cbf11cb0ffd2c09dac2f4"
      ],
      "author": {
        "name": "Mikulas Patocka",
        "email": "mpatocka@redhat.com",
        "time": "Thu Nov 13 23:39:10 2008 +0000"
      },
      "committer": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Thu Nov 13 23:39:10 2008 +0000"
      },
      "message": "dm: move pending queue wake_up end_io_acct\n\nThis doesn\u0027t fix any bug, just moves wake_up immediately after decrementing\nmd-\u003epending, for better code readability.\n\nIt must be clear to anyone manipulating md-\u003epending to wake up\nthe queue if md-\u003epending reaches zero, so move the wakeup as close to\nthe decrementing as possible.\n\nSigned-off-by: Mikulas Patocka \u003cmpatocka@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\n"
    },
    {
      "commit": "14e98c5ca8bed825f65cbf11cb0ffd2c09dac2f4",
      "tree": "62cb7234d156c0523584343796d0e3c89d7a80bf",
      "parents": [
        "b81aa1c79201cb424114fd198607951900babe18"
      ],
      "author": {
        "name": "Chandra Seetharaman",
        "email": "sekharan@us.ibm.com",
        "time": "Thu Nov 13 23:39:06 2008 +0000"
      },
      "committer": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Thu Nov 13 23:39:06 2008 +0000"
      },
      "message": "dm mpath: warn if args ignored\n\nCurrently dm ignores the parameters provided to hardware handlers\nwithout providing any notifications to the user.\n\nThis patch just prints a warning message so that the user knows that\nthe arguments are ignored.\n\nSigned-off-by: Chandra Seetharaman \u003csekharan@us.ibm.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\n"
    },
    {
      "commit": "b81aa1c79201cb424114fd198607951900babe18",
      "tree": "f05501c670fd9919779b6759e2ff816f574186fe",
      "parents": [
        "6edebdee48729ab4ba564bbfcb8dbf6a6cd68a39"
      ],
      "author": {
        "name": "Chandra Seetharaman",
        "email": "sekharan@us.ibm.com",
        "time": "Thu Nov 13 23:39:00 2008 +0000"
      },
      "committer": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Thu Nov 13 23:39:00 2008 +0000"
      },
      "message": "dm mpath: avoid attempting to activate null path\n\nPath activation code is called even when the pgpath is NULL. This could\nlead to a panic in activate_path(). Such a panic is seen in -rt kernel.\n\nThis problem has been there before the pg_init() was moved to a\nworkqueue.\n\nSigned-off-by: Chandra Seetharaman \u003csekharan@us.ibm.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\n"
    },
    {
      "commit": "6edebdee48729ab4ba564bbfcb8dbf6a6cd68a39",
      "tree": "29b92a961e503e9257e3f34fc2e933d51315ec42",
      "parents": [
        "18776c7316545482a02bfaa2629a2aa1afc48357"
      ],
      "author": {
        "name": "Heinz Mauelshagen",
        "email": "heinzm@redhat.com",
        "time": "Thu Nov 13 23:38:56 2008 +0000"
      },
      "committer": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Thu Nov 13 23:38:56 2008 +0000"
      },
      "message": "dm stripe: fix init failure\n\nDon\u0027t proceed if dm_stripe_init() fails to register itself as a dm target.\n\nSigned-off-by: Heinz Mauelshagen \u003cheinzm@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\n"
    },
    {
      "commit": "18776c7316545482a02bfaa2629a2aa1afc48357",
      "tree": "ecd30db869eff5968921af7df8f055794ed3730f",
      "parents": [
        "4ffaf869c7780bbdfc11291e5fd4b61dde662b1c"
      ],
      "author": {
        "name": "Mikulas Patocka",
        "email": "mpatocka@redhat.com",
        "time": "Thu Nov 13 23:38:52 2008 +0000"
      },
      "committer": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Thu Nov 13 23:38:52 2008 +0000"
      },
      "message": "dm raid1: flush workqueue before destruction\n\nWe queue work on keventd queue --- so this queue must be flushed in the\ndestructor. Otherwise, keventd could access mirror_set after it was freed.\n\nSigned-off-by: Mikulas Patocka \u003cmpatocka@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\nCc: stable@kernel.org\n"
    },
    {
      "commit": "ccf95402d0ae6f433f29ce88cfd589cec8fc81ad",
      "tree": "00437af01d7321779470641ee51cd612484d3e72",
      "parents": [
        "e50ae572b33646656fa7037541613834dcadedfb"
      ],
      "author": {
        "name": "Jason Cooper",
        "email": "jason@lakedaemon.net",
        "time": "Tue Nov 11 13:02:53 2008 -0500"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Nov 13 14:45:06 2008 -0800"
      },
      "message": "USB: net: asix: add support for Cables-to-Go USB Ethernet adapter\n\nAdd support to drivers/net/usb/asix.c for the Cables-to-Go \"USB 2.0 to\n10/100 Ethernet Adapter\". USB id 0b95:772a.\n\nSigned-off-by: Jason Cooper \u003cjason@lakedaemon.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "e50ae572b33646656fa7037541613834dcadedfb",
      "tree": "8b6399e374401dea2ee7e170a39b596c62605f88",
      "parents": [
        "372dd6e8ed924e876f3beb598721e813ad7fa323"
      ],
      "author": {
        "name": "David Brownell",
        "email": "dbrownell@users.sourceforge.net",
        "time": "Wed Nov 12 11:35:13 2008 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Nov 13 14:45:06 2008 -0800"
      },
      "message": "USB: gadget: cdc-acm deadlock fix\n\nThis fixes a deadlock appearing with some USB peripheral drivers\nwhen running CDC ACM gadget code.\n\nThe newish (2.6.27) CDC ACM event notification mechanism sends\nmessages (IN to the host) which are short enough to fit in most\nFIFOs.  That means that with some peripheral controller drivers\n(evidently not the ones used to verify the notification code!!)\nthe completion callback can be issued before queue() returns.\n\nThe deadlock would come because the completion callback and the\nevent-issuing code shared a spinlock.  Fix is trivial:  drop\nthat lock while queueing the message.\n\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nCc: stable \u003cstable@kernel.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "372dd6e8ed924e876f3beb598721e813ad7fa323",
      "tree": "840e634b3ff67c0a337de02947dc1b7e1b36817b",
      "parents": [
        "67b2e029743a52670d77864723b4d0d40f7733b5"
      ],
      "author": {
        "name": "Alan Stern",
        "email": "stern@rowland.harvard.edu",
        "time": "Wed Nov 12 17:02:57 2008 -0500"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Nov 13 14:45:06 2008 -0800"
      },
      "message": "USB: EHCI: fix divide-by-zero bug\n\nThis patch (as1164) fixes a bug in the EHCI scheduler.  The interval\nvalue it uses is already in linear format, not logarithmically coded.\nThe existing code can sometimes crash the system by trying to divide\nby zero.\n\nSigned-off-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nCc: David Brownell \u003cdavid-b@pacbell.net\u003e\nCc: Stable \u003cstable@kernel.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "67b2e029743a52670d77864723b4d0d40f7733b5",
      "tree": "56b9168cd6e99a9fad6a821bd86377e2a586984a",
      "parents": [
        "5863964608489f6dbf4b5f3118b45b3750a8274d"
      ],
      "author": {
        "name": "Alan Stern",
        "email": "stern@rowland.harvard.edu",
        "time": "Wed Nov 12 17:04:53 2008 -0500"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Nov 13 14:45:05 2008 -0800"
      },
      "message": "USB: EHCI: fix handling of dead controllers\n\nThis patch (as1165) makes a few small changes in the logic used by\nehci-hcd when it encounters a controller error:\n\n\tInstead of printing out the masked status, it prints the\n\toriginal status as read directly from the hardware.\n\n\tIt doesn\u0027t check for the STS_HALT status bit before taking\n\taction.  The mere fact that the STS_FATAL bit is set means\n\tthat something bad has happened and the controller needs to\n\tbe reset.  With the old code this test could never succeed\n\tbecause the STS_HALT bit was masked out from the status.\n\nI anticipate that this will prevent the occasional \"irq X: nobody cared\"\nproblem people encounter when their EHCI controllers die.\n\nSigned-off-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nCc: David Brownell \u003cdavid-b@pacbell.net\u003e\nCc: stable \u003cstable@kernel.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "5863964608489f6dbf4b5f3118b45b3750a8274d",
      "tree": "32cabd19b399c3fdb5ce7fef4b7f306678b02824",
      "parents": [
        "d73b7aff28bc53c04e1f2e5ccaa5ea43089fb4a4"
      ],
      "author": {
        "name": "Yoshihiro Shimoda",
        "email": "shimoda.yoshihiro@renesas.com",
        "time": "Tue Nov 11 16:47:21 2008 +0900"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Nov 13 14:45:04 2008 -0800"
      },
      "message": "usb: r8a66597-hcd: fix wrong data access in SuperH on-chip USB\n\nWhen I used SuperH on-chip USB, there was the problem that accessed\nr8a66597_root_hub which was not allocated.\n\nSigned-off-by: Yoshihiro Shimoda \u003cshimoda.yoshihiro@renesas.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "d73b7aff28bc53c04e1f2e5ccaa5ea43089fb4a4",
      "tree": "05918d1868cff57a9ae2818b75ad39e47f4716d1",
      "parents": [
        "859ff4072027ea7741121b902c59763f090e00c2"
      ],
      "author": {
        "name": "Pete Zaitcev",
        "email": "zaitcev@redhat.com",
        "time": "Mon Nov 10 21:11:11 2008 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Nov 13 14:45:04 2008 -0800"
      },
      "message": "ub: stub pre_reset and post_reset to fix oops\n\nDue to recent changes to usb_reset_device, the following hang occurs:\n\nevents/0      D 0000000000000000     0     6      2\n ffff880037477cc0 0000000000000046 ffff880037477c50 ffffffff80237434\n ffffffff80574c80 00000001000a015c 0000000000000286 ffff8800374757d0\n ffff88002a31c860 ffff880037475a00 0000000036779140 ffff880037475a00\nCall Trace:\n [\u003cffffffff80237434\u003e] try_to_del_timer_sync+0x52/0x5b\n [\u003cffffffff8026f86c\u003e] dma_pool_free+0x1a7/0x1ec\n [\u003cffffffffa02a928a\u003e] ub_disconnect+0x8e/0x1ad [ub]\n [\u003cffffffff802407c9\u003e] autoremove_wake_function+0x0/0x2e\n [\u003cffffffff80378959\u003e] usb_unbind_interface+0x5c/0xb7\n [\u003cffffffff8036ab70\u003e] __device_release_driver+0x95/0xbd\n [\u003cffffffff8036ac70\u003e] device_release_driver+0x21/0x2d\n [\u003cffffffff803789f8\u003e] usb_driver_release_interface+0x44/0x83\n [\u003cffffffff80378ab9\u003e] usb_forced_unbind_intf+0x17/0x1d\n [\u003cffffffff80371ba4\u003e] usb_reset_device+0x7d/0x114\n [\u003cffffffffa02aaffd\u003e] ub_reset_task+0x0/0x293 [ub]\n [\u003cffffffffa02ab1c1\u003e] ub_reset_task+0x1c4/0x293 [ub]\n [\u003cffffffff8033dd1e\u003e] flush_to_ldisc+0x0/0x1cd\n [\u003cffffffffa02aaffd\u003e] ub_reset_task+0x0/0x293 [ub]\n [\u003cffffffff8023d302\u003e] run_workqueue+0x87/0x114\n [\u003cffffffff8023d467\u003e] worker_thread+0xd8/0xe7\n [\u003cffffffff802407c9\u003e] autoremove_wake_function+0x0/0x2e\n [\u003cffffffff8023d38f\u003e] worker_thread+0x0/0xe7\n [\u003cffffffff802404c1\u003e] kthread+0x47/0x73\n [\u003cffffffff8022c8dd\u003e] schedule_tail+0x27/0x60\n [\u003cffffffff8020c249\u003e] child_rip+0xa/0x11\n [\u003cffffffff8024047a\u003e] kthread+0x0/0x73\n [\u003cffffffff8020c23f\u003e] child_rip+0x0/0x11\n\nThis is because usb_reset_device now unbinds, and that calls disconnect,\nwhich in case of ub waits until the reset completes... which deadlocks.\nWorse, this deadlocks keventd and this takes whole box down.\n\nI\u0027m going to fix this properly later, but let\u0027s unbreak the driver\nquickly for non-composite devices at least.\n\nSigned-off-by: Pete Zaitcev \u003czaitcev@redhat.com\u003e\nCc: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "859ff4072027ea7741121b902c59763f090e00c2",
      "tree": "e611a92b29fdfa2965cc83e74ec8d25f748b19eb",
      "parents": [
        "ed4103b3fcf38985995e732dab6c3e2b9693f6cb"
      ],
      "author": {
        "name": "Albert Comerma",
        "email": "albert@ecm.ub.es",
        "time": "Tue Nov 04 10:44:01 2008 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Nov 13 14:45:03 2008 -0800"
      },
      "message": "USB: SISUSB2VGA driver: add 0x0711, 0x0903\n\nSigned-off-by: Albert Comerma \u003calbert.comerma@gmail.com\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nCc: David Brownell \u003cdavid-b@pacbell.net\u003e\nCc: Mauro Carvalho Chehab \u003cmchehab@infradead.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    }
  ],
  "next": "ed4103b3fcf38985995e732dab6c3e2b9693f6cb"
}
