)]}'
{
  "log": [
    {
      "commit": "8563f8786ee389c7861938d1d25336706f6de187",
      "tree": "aba82cbaa5111ec9a55b5e25add4fdb7100f6720",
      "parents": [
        "532bfc851a7475fb6a36c1e953aa395798a7cca7",
        "4b0180a49f08dd1c681cdc99edc9e0cec0a833fa"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 28 18:05:54 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 28 18:05:54 2012 -0700"
      },
      "message": "Merge tag \u0027squashfs-updates\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/pkl/squashfs-next\n\nPull squashfs updates from Phillip Lougher:\n \"Add an extra mount time sanity check, plus some code cleanups and bug\n  fixes.\"\n\n* tag \u0027squashfs-updates\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/pkl/squashfs-next:\n  Squashfs: add mount time sanity check for block_size and block_log match\n  Squashfs: fix f_pos check in get_dir_index_using_offset\n  Squashfs: get rid of obsolete definitions in header file\n  Squashfs: remove redundant length initialisation in squashfs_lookup\n  Squashfs: remove redundant length initialisation in squashfs_readdir\n  Squashfs: update comment removing reference to zlib only\n  Squashfs: use define instead of constant\n"
    },
    {
      "commit": "e2a0883e4071237d09b604a342c28b96b44a04b3",
      "tree": "aa56f4d376b5eb1c32358c19c2669c2a94e0e1fd",
      "parents": [
        "3a990a52f9f25f45469e272017a31e7a3fda60ed",
        "07c0c5d8b8c122b2f2df9ee574ac3083daefc981"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 21 13:36:41 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 21 13:36:41 2012 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs\n\nPull vfs pile 1 from Al Viro:\n \"This is _not_ all; in particular, Miklos\u0027 and Jan\u0027s stuff is not there\n  yet.\"\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs: (64 commits)\n  ext4: initialization of ext4_li_mtx needs to be done earlier\n  debugfs-related mode_t whack-a-mole\n  hfsplus: add an ioctl to bless files\n  hfsplus: change finder_info to u32\n  hfsplus: initialise userflags\n  qnx4: new helper - try_extent()\n  qnx4: get rid of qnx4_bread/qnx4_getblk\n  take removal of PF_FORKNOEXEC to flush_old_exec()\n  trim includes in inode.c\n  um: uml_dup_mmap() relies on -\u003emmap_sem being held, but activate_mm() doesn\u0027t hold it\n  um: embed -\u003estub_pages[] into mmu_context\n  gadgetfs: list_for_each_safe() misuse\n  ocfs2: fix leaks on failure exits in module_init\n  ecryptfs: make register_filesystem() the last potential failure exit\n  ntfs: forgets to unregister sysctls on register_filesystem() failure\n  logfs: missing cleanup on register_filesystem() failure\n  jfs: mising cleanup on register_filesystem() failure\n  make configfs_pin_fs() return root dentry on success\n  configfs: configfs_create_dir() has parent dentry in dentry-\u003ed_parent\n  configfs: sanitize configfs_create()\n  ...\n"
    },
    {
      "commit": "48fde701aff662559b38d9a609574068f22d00fe",
      "tree": "aa6b203dc671b51d58575b65eb08310ff8309b60",
      "parents": [
        "6b4231e2f92adbcf96fb2a3fa751d7ca0a61b21f"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Jan 08 22:15:13 2012 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Mar 20 21:29:35 2012 -0400"
      },
      "message": "switch open-coded instances of d_make_root() to new helper\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "53b55e55893fbce8d78caeb22e17a28d909a2132",
      "tree": "e884fec0becc6816a768bed778b857644104dc0d",
      "parents": [
        "883da600b00eb6fa9f8db5687759732b3c6dd357"
      ],
      "author": {
        "name": "Cong Wang",
        "email": "amwang@redhat.com",
        "time": "Fri Nov 25 23:14:36 2011 +0800"
      },
      "committer": {
        "name": "Cong Wang",
        "email": "xiyou.wangcong@gmail.com",
        "time": "Tue Mar 20 21:48:25 2012 +0800"
      },
      "message": "squashfs: remove the second argument of k[un]map_atomic()\n\nSigned-off-by: Cong Wang \u003camwang@redhat.com\u003e\n"
    },
    {
      "commit": "4b0180a49f08dd1c681cdc99edc9e0cec0a833fa",
      "tree": "816d9a9095b816683c8edc2089d510880fd59d35",
      "parents": [
        "2158d3fd2769546cd9004eaeb776fee946155238"
      ],
      "author": {
        "name": "Phillip Lougher",
        "email": "phillip@squashfs.org.uk",
        "time": "Fri Mar 09 03:02:59 2012 +0000"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@squashfs.org.uk",
        "time": "Sat Mar 10 03:01:02 2012 +0000"
      },
      "message": "Squashfs: add mount time sanity check for block_size and block_log match\n\nSquashfs currently has a sanity check for block_size less than or\nequal to the maximum block_size (1 Mbyte).  This catches some\nsuperblock corruption, but obviously with a block_size maximum\nof 1 Mbyte there\u0027s 7 correct values (4K, 8K, 16K, 32K, ... etc) and\na lot of incorrect values which are not caught by this check.\n\nThe Squashfs superblock, however, has both a block_size and\na block_log (2^block_log \u003d\u003d block_size).  Checking that the block_size\nmatches the block_log is a much more robust check.  Corruption of the\nsuperblock is unlikely to produce values which match, and it also\nensures the block_size is an exact power of two.\n\nSigned-off-by: Phillip Lougher \u003cphillip@squashfs.org.uk\u003e\n"
    },
    {
      "commit": "2158d3fd2769546cd9004eaeb776fee946155238",
      "tree": "fbaa85fc0635c7a968b969ac1795cf2e79ddbcfa",
      "parents": [
        "47f4396e516639eb8cbd660e1c1c356b5a80aa25"
      ],
      "author": {
        "name": "Phillip Lougher",
        "email": "phillip@squashfs.org.uk",
        "time": "Fri Mar 09 02:27:49 2012 +0000"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@squashfs.org.uk",
        "time": "Sat Mar 10 03:01:02 2012 +0000"
      },
      "message": "Squashfs: fix f_pos check in get_dir_index_using_offset\n\nOne off error in the f_pos check.  If f_pos is 3 or less don\u0027t\nbother reading the index because we\u0027re at the start of the\ndirectory, and we obviously already know where that is on disk.\n\nThis eliminates an unnecessary read.\n\nSigned-off-by: Phillip Lougher \u003cphillip@squashfs.org.uk\u003e\n"
    },
    {
      "commit": "47f4396e516639eb8cbd660e1c1c356b5a80aa25",
      "tree": "dda69225ba8c1e8f94d84fec00fa278bb8578a7f",
      "parents": [
        "bd3a518948a9b5fa869d096cd9bc062e0320449f"
      ],
      "author": {
        "name": "Phillip Lougher",
        "email": "phillip@squashfs.org.uk",
        "time": "Thu Mar 08 00:45:57 2012 +0000"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@squashfs.org.uk",
        "time": "Sat Mar 10 03:01:01 2012 +0000"
      },
      "message": "Squashfs: get rid of obsolete definitions in header file\n\nMost of these were never used by the kernel code, but belong to\nthe time when the header file was used by both the kernel code\nand the user space tools.\n\nSigned-off-by: Phillip Lougher \u003cphillip@squashfs.org.uk\u003e\n"
    },
    {
      "commit": "bd3a518948a9b5fa869d096cd9bc062e0320449f",
      "tree": "230b2166e71815510839b7b63e7f9465a48f9d30",
      "parents": [
        "68a8c397bf1bc16640e87d229025ffd4e4b54e6c"
      ],
      "author": {
        "name": "Phillip Lougher",
        "email": "phillip@squashfs.org.uk",
        "time": "Wed Mar 07 21:21:07 2012 +0000"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@squashfs.org.uk",
        "time": "Sat Mar 10 03:01:01 2012 +0000"
      },
      "message": "Squashfs: remove redundant length initialisation in squashfs_lookup\n\nSigned-off-by: Phillip Lougher \u003cphillip@squashfs.org.uk\u003e\n"
    },
    {
      "commit": "68a8c397bf1bc16640e87d229025ffd4e4b54e6c",
      "tree": "ac5193c774e945d32cdd7e1251a9b080e3a78b05",
      "parents": [
        "ec9267b61dca524ccd111b593dcfa4bbcb81ecd6"
      ],
      "author": {
        "name": "Phillip Lougher",
        "email": "phillip@squashfs.org.uk",
        "time": "Tue Mar 06 23:02:49 2012 +0000"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@squashfs.org.uk",
        "time": "Sat Mar 10 03:01:01 2012 +0000"
      },
      "message": "Squashfs: remove redundant length initialisation in squashfs_readdir\n\nSigned-off-by: Phillip Lougher \u003cphillip@squashfs.org.uk\u003e\n"
    },
    {
      "commit": "ec9267b61dca524ccd111b593dcfa4bbcb81ecd6",
      "tree": "00fbaa21005a66fe1eaed6b1c47cec1104d6a2f2",
      "parents": [
        "4826d83d9c4f6bbf61f997e7b68547b4bffd8a49"
      ],
      "author": {
        "name": "Phillip Lougher",
        "email": "phillip@squashfs.org.uk",
        "time": "Tue Mar 06 01:18:49 2012 +0000"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@squashfs.org.uk",
        "time": "Sat Mar 10 03:01:00 2012 +0000"
      },
      "message": "Squashfs: update comment removing reference to zlib only\n\nComment was written when Squashfs only supported zlib compression.\nThis comment is now misleading given Squashfs supports other\ncompression algorithms.\n\nSigned-off-by: Phillip Lougher \u003cphillip@squashfs.org.uk\u003e\n"
    },
    {
      "commit": "4826d83d9c4f6bbf61f997e7b68547b4bffd8a49",
      "tree": "097311a82c02b3d0d8fc35ed1589e3edd6bccbcb",
      "parents": [
        "192cfd58774b4d17b2fe8bdc77d89c2ef4e0591d"
      ],
      "author": {
        "name": "Ajeet Yadav",
        "email": "ajeet.yadav.77@gmail.com",
        "time": "Thu Feb 02 13:04:49 2012 +0530"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@squashfs.org.uk",
        "time": "Sat Mar 10 03:00:54 2012 +0000"
      },
      "message": "Squashfs: use define instead of constant\n\nIts better to use defined name instead of constant\n\nSigned-off-by: Ajeet Yadav \u003cajeet.yadav.77@gmail.com\u003e\nSigned-off-by: Phillip Lougher \u003cphillip@squashfs.org.uk\u003e\n"
    },
    {
      "commit": "96e80a7851b44f3decaac0625665cd64e550b71d",
      "tree": "a24d9f46c43b5fcf824c49b93d37982ab668aade",
      "parents": [
        "57e6a7dde8cfca9ac1d6702cf9104d22bc11ba90",
        "3d4a1c80c4eb97187b3a61b3bfa8c804327f7a45"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 13 10:34:57 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 13 10:34:57 2012 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/pkl/squashfs-next\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/pkl/squashfs-next:\n  Squashfs: fix i_blocks calculation with extended regular files\n  Squashfs: fix mount time sanity check for corrupted superblock\n  Squashfs: optimise squashfs_cache_get entry search\n  Squashfs: Update documentation to include xattrs\n  Squashfs: add missing block release on error condition\n"
    },
    {
      "commit": "6b520e0565422966cdf1c3759bd73df77b0f248c",
      "tree": "f63a26afa7342eb59b125271b16e30a219b59094",
      "parents": [
        "2a79f17e4a641a2f463cb512cb0ec349844a147b"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Dec 12 15:51:45 2011 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jan 03 22:52:40 2012 -0500"
      },
      "message": "vfs: fix the stupidity with i_dentry in inode destructors\n\nSeeing that just about every destructor got that INIT_LIST_HEAD() copied into\nit, there is no point whatsoever keeping this INIT_LIST_HEAD in inode_init_once();\nthe cost of taking it into inode_init_always() will be negligible for pipes\nand sockets and negative for everything else.  Not to mention the removal of\nboilerplate code from -\u003edestroy_inode() instances...\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "3d4a1c80c4eb97187b3a61b3bfa8c804327f7a45",
      "tree": "f845494ae3eaa257256095e009b55885517de0c5",
      "parents": [
        "cc37f75a9ffbbfcb1c3297534f293c8284e3c5a6"
      ],
      "author": {
        "name": "Phillip Lougher",
        "email": "phillip@squashfs.org.uk",
        "time": "Tue Jan 03 02:58:13 2012 +0000"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@squashfs.org.uk",
        "time": "Tue Jan 03 04:00:43 2012 +0000"
      },
      "message": "Squashfs: fix i_blocks calculation with extended regular files\n\nThe le64_to_cpu() forces the calculation to be unsigned, with\nthe effect that it can underflow leading to an incorrect large\nvalue.\n\nThis bug only triggers in rare(ish) circumstances, an empty file\nencoded as an extended regular file or a completely sparse file.\nNormally empty files are encoded as a regular file rather than as\nan extended regular file (and the regular file i_blocks calculation\ndoesn\u0027t have this bug).  To save space regular file inodes are\noptimised to encode the most commonly occurring files.  Less\ncommon regular files are encoded using extended regular file inodes\nwhich contain extra information.\n\nEmpty files with nlinks greater than 1, and or empty files\nwith extended attributes are encoded using extended regular file\ninodes and they will hit this bug.\n\nSigned-off-by: Phillip Lougher \u003cphillip@squashfs.org.uk\u003e\n"
    },
    {
      "commit": "cc37f75a9ffbbfcb1c3297534f293c8284e3c5a6",
      "tree": "f7cb651315e55e96245ba0495848fd07369a2faf",
      "parents": [
        "d7fbd893388d9e86d29b7cfbd5457bcf03496fbf"
      ],
      "author": {
        "name": "Phillip Lougher",
        "email": "phillip@squashfs.org.uk",
        "time": "Mon Jan 02 17:47:14 2012 +0000"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@squashfs.org.uk",
        "time": "Mon Jan 02 17:47:14 2012 +0000"
      },
      "message": "Squashfs: fix mount time sanity check for corrupted superblock\n\nA Squashfs filesystem containing nothing but an empty directory,\nalthough unusual and ultimately pointless, is still valid.\n\nThe directory_table \u003e\u003d next_table sanity check rejects these\nfilesystems as invalid because the directory_table is empty and\nequal to next_table.\n\nSigned-off-by: Phillip Lougher \u003cphillip@squashfs.org.uk\u003e\n"
    },
    {
      "commit": "d7fbd893388d9e86d29b7cfbd5457bcf03496fbf",
      "tree": "ea94d043ee3e842f7273391b143a5949afb39975",
      "parents": [
        "89cab5b5727d3139adc247e3a3d4ee5b10e3eda5"
      ],
      "author": {
        "name": "Ajeet Yadav",
        "email": "ajeet.yadav.77@gmail.com",
        "time": "Tue Dec 27 15:10:04 2011 +0530"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@squashfs.org.uk",
        "time": "Fri Dec 30 01:24:13 2011 +0000"
      },
      "message": "Squashfs: optimise squashfs_cache_get entry search\n\nsquashfs_cache_get() iterates over all entries to search for\n block its looking for. Often get() / put() are called for\n same block.\n\nIf we cache the current entry index, then we can optimise the\nsubsequent *_get() calls.\n\nSigned-off-by: Ajeet Yadav \u003cajeet.yadav.77@gmail.com\u003e\nSigned-off-by: Phillip Lougher \u003cphillip@squashfs.org.uk\u003e\n"
    },
    {
      "commit": "e552a596687bf0e1802c744a7bb113afbd2bf4d4",
      "tree": "3080861e7587446872ed1886c2b2d031680a1b04",
      "parents": [
        "5f0a6e2d503896062f641639dacfe5055c2f593b"
      ],
      "author": {
        "name": "Phillip Lougher",
        "email": "phillip@squashfs.org.uk",
        "time": "Thu Dec 29 03:50:20 2011 +0000"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@squashfs.org.uk",
        "time": "Fri Dec 30 01:20:14 2011 +0000"
      },
      "message": "Squashfs: add missing block release on error condition\n\nsquashfs_read_metadata forgets to release the cache block if\nan error has occurred.\n\nSigned-off-by: Phillip Lougher \u003cphillip@squashfs.org.uk\u003e\n"
    },
    {
      "commit": "044595d4e448305fbaec472eb7d22636d24e7d8c",
      "tree": "5faee830194d778a9bb63317bc6ff7f8962a976b",
      "parents": [
        "1583171492eb514e267c7b51e96846b38de0f544",
        "7657cacf478940b995c2c73fdff981c13cc62c5c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Nov 04 16:48:37 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Nov 04 16:48:37 2011 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/pkl/squashfs-next\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/pkl/squashfs-next:\n  Squashfs: Add an option to set dev block size to 4K\n"
    },
    {
      "commit": "7657cacf478940b995c2c73fdff981c13cc62c5c",
      "tree": "b25b27a5ba475ebc3923657dcc14ee958d244493",
      "parents": [
        "c3b92c8787367a8bb53d57d9789b558f1295cc96"
      ],
      "author": {
        "name": "Phillip Lougher",
        "email": "phillip@squashfs.org.uk",
        "time": "Sat Oct 22 01:34:48 2011 +0100"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@squashfs.org.uk",
        "time": "Wed Nov 02 17:25:50 2011 +0000"
      },
      "message": "Squashfs: Add an option to set dev block size to 4K\n\nThis commit adds an option to set the device block size used to 4K.\n\nBy default Squashfs sets the device block size (sb_min_blocksize) to 1K\nor the smallest block size supported by the block device (if larger).\nThis, because blocks are packed together and unaligned in Squashfs,\nshould reduce latency.\n\nThis, however, gives poor performance on MTD NAND devices where\nthe optimal I/O size is 4K (even though the devices can support\nsmaller block sizes).\n\nUsing a 4K device block size may also improve overall I/O\nperformance for some file access patterns (e.g. sequential\naccesses of files in filesystem order) on all media.\n\nSigned-off-by: Phillip Lougher \u003cphillip@squashfs.org.uk\u003e\n"
    },
    {
      "commit": "bfe8684869601dacfcb2cd69ef8cfd9045f62170",
      "tree": "4e213aaa766b26f43f0f9ec7998a7745239d9377",
      "parents": [
        "6d6b77f163c7eabedbba00ed2abb7d4a570bff76"
      ],
      "author": {
        "name": "Miklos Szeredi",
        "email": "mszeredi@suse.cz",
        "time": "Fri Oct 28 14:13:29 2011 +0200"
      },
      "committer": {
        "name": "Christoph Hellwig",
        "email": "hch@serles.lst.de",
        "time": "Wed Nov 02 12:53:43 2011 +0100"
      },
      "message": "filesystems: add set_nlink()\n\nReplace remaining direct i_nlink updates with a new set_nlink()\nupdater function.\n\nSigned-off-by: Miklos Szeredi \u003cmszeredi@suse.cz\u003e\nTested-by: Toshiyuki Okajima \u003ctoshi.okajima@jp.fujitsu.com\u003e\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\n"
    },
    {
      "commit": "395cf9691d72173d8cdaa613c5f0255f993af94b",
      "tree": "813be524794fe1c0850805d7faca90e45fd0e60b",
      "parents": [
        "e060c38434b2caa78efe7cedaff4191040b65a15"
      ],
      "author": {
        "name": "Paul Bolle",
        "email": "pebolle@tiscali.nl",
        "time": "Mon Aug 15 02:02:26 2011 +0200"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Tue Sep 27 18:08:04 2011 +0200"
      },
      "message": "doc: fix broken references\n\nThere are numerous broken references to Documentation files (in other\nDocumentation files, in comments, etc.). These broken references are\ncaused by typo\u0027s in the references, and by renames or removals of the\nDocumentation files. Some broken references are simply odd.\n\nFix these broken references, sometimes by dropping the irrelevant text\nthey were part of.\n\nSigned-off-by: Paul Bolle \u003cpebolle@tiscali.nl\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "91d44d99992ff2587104df5760bfffbb3564b3c2",
      "tree": "71316dfc11385f5594962f91d7192fdd851e86a8",
      "parents": [
        "2dad3206db5c3832cde1f58650027fea3ff7adf3",
        "cc6d3497141adedb71de8ddce62bf4cd4817832d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 22:50:35 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 22:50:35 2011 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/pkl/squashfs-linus\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/pkl/squashfs-linus:\n  Squashfs: Make ZLIB compression support optional\n  Squashfs: Update documentation for XZ and add squashfs-tools devel tree\n"
    },
    {
      "commit": "cc6d3497141adedb71de8ddce62bf4cd4817832d",
      "tree": "7fb205e8f8c393b27a89a5c08c97563ead1f32fa",
      "parents": [
        "812753d66f5a45e59a9e0904c77a661c2410a3b4"
      ],
      "author": {
        "name": "Phillip Lougher",
        "email": "phillip@squashfs.org.uk",
        "time": "Fri Jul 22 03:01:28 2011 +0100"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@squashfs.org.uk",
        "time": "Fri Jul 22 03:01:28 2011 +0100"
      },
      "message": "Squashfs: Make ZLIB compression support optional\n\nSquashfs now supports XZ and LZO compression in addition to ZLIB.\nAs such it no longer makes sense to always include ZLIB support.\nIn particular embedded systems may only use LZO or XZ compression, and\nthe ability to exclude ZLIB support will reduce kernel size.\n\nSigned-off-by: Phillip Lougher \u003cphillip@squashfs.org.uk\u003e\n"
    },
    {
      "commit": "a9049376ee05bf966bfe2b081b5071326856890a",
      "tree": "efb3cbfc7760537f201bb28dacbb0d39ec39f04c",
      "parents": [
        "0c1aa9a952c3608eb17bf990466f1491d1ee8b6c"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Jul 08 21:20:11 2011 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Jul 20 01:44:26 2011 -0400"
      },
      "message": "make d_splice_alias(ERR_PTR(err), dentry) \u003d ERR_PTR(err)\n\n... and simplify the living hell out of callers\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "0c1aa9a952c3608eb17bf990466f1491d1ee8b6c",
      "tree": "93c044f5700db46f056fb7f57924ff9f9f8fee98",
      "parents": [
        "5b4b299cc7b6adfb9401bf7f826a80f190b971be"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Jul 08 20:57:47 2011 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Jul 20 01:44:24 2011 -0400"
      },
      "message": "deuglify squashfs_lookup()\n\nd_splice_alias(NULL, dentry) is equivalent to d_add(dentry, NULL), NULL\nso no need for that if (inode) ... in there (or ERR_PTR(0), for that\nmatter)\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "2ff55e98d6e662a4887d2c688a4ab2ae510a97df",
      "tree": "fcf2ede834a2b61b00cbe7c38fdd34fbf8b2e7b5",
      "parents": [
        "daa94222b638bfe34f745d0982de7a165ce7f67c",
        "d5b72ce15ea99a0b8f0d1973074c584daf92d70e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun May 29 11:19:45 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun May 29 11:19:45 2011 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/pkl/squashfs-linus\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/pkl/squashfs-linus:\n  Squashfs: Fix sanity check patches on big-endian systems\n"
    },
    {
      "commit": "d5b72ce15ea99a0b8f0d1973074c584daf92d70e",
      "tree": "ead92ef8a1251f6e1bffd62bd9de9d98daa6c7a2",
      "parents": [
        "d7f2ff6718efa155fd92e481a5960496d084c63f"
      ],
      "author": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Sun May 29 00:38:46 2011 +0100"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Sun May 29 10:03:09 2011 +0100"
      },
      "message": "Squashfs: Fix sanity check patches on big-endian systems\n\nle64 values should be swapped when accessing on\nbig-endian systems.\n\nSigned-off-by: Phillip Lougher \u003cphillip@lougher.demon.co.uk\u003e\n"
    },
    {
      "commit": "bc9bc72e2f9bb07384c00604d1a40d0b5f62be6c",
      "tree": "99fc71a5d5889445fb39279d7ff3f0d66c1cca0d",
      "parents": [
        "968d803c98410910fbadca031b6a873d4bc12dd5",
        "d7f2ff6718efa155fd92e481a5960496d084c63f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:27:35 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:27:35 2011 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/pkl/squashfs-linus\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/pkl/squashfs-linus:\n  Squashfs: update email address\n  Squashfs: add extra sanity checks at mount time\n  Squashfs: add sanity checks to fragment reading at mount time\n  Squashfs: add sanity checks to lookup table reading at mount time\n  Squashfs: add sanity checks to id reading at mount time\n  Squashfs: add sanity checks to xattr reading at mount time\n  Squashfs: reverse order of filesystem table reading\n  Squashfs: move table allocation into squashfs_read_table()\n"
    },
    {
      "commit": "d7f2ff6718efa155fd92e481a5960496d084c63f",
      "tree": "531a5bd805e1acb23a1fc073ab7dacc677153ef6",
      "parents": [
        "1094a4a6118019255bf0e4adaa96bb17ccec3a82"
      ],
      "author": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Thu May 26 10:39:56 2011 +0100"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Thu May 26 10:49:11 2011 +0100"
      },
      "message": "Squashfs: update email address\n\nMy existing email address may stop working in a month or two, so update\nemail to one that will continue working.\n\nSigned-off-by: Phillip Lougher \u003cphillip@lougher.demon.co.uk\u003e\n"
    },
    {
      "commit": "1094a4a6118019255bf0e4adaa96bb17ccec3a82",
      "tree": "06a8f2667681ae591e3a35c16c33fe4830d9b75f",
      "parents": [
        "1cac63cc9b2ff0d16ab2d16232b1a6ee8676a47b"
      ],
      "author": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Tue May 24 04:45:33 2011 +0100"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Wed May 25 18:21:33 2011 +0100"
      },
      "message": "Squashfs: add extra sanity checks at mount time\n\nAdd some extra sanity checks of the inode and directory structures.\n\nSigned-off-by: Phillip Lougher \u003cphillip@lougher.demon.co.uk\u003e\n"
    },
    {
      "commit": "1cac63cc9b2ff0d16ab2d16232b1a6ee8676a47b",
      "tree": "31ee36dac4a1b351c153058ffa0799a959ba0272",
      "parents": [
        "ac51a0a7139aa93bf1176b701c86fa3d2bdf6106"
      ],
      "author": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Tue May 24 04:33:34 2011 +0100"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Wed May 25 18:21:33 2011 +0100"
      },
      "message": "Squashfs: add sanity checks to fragment reading at mount time\n\nFsfuzzer generates corrupted filesystems which throw a warn_on in\nkmalloc.  One of these is due to a corrupted superblock fragments field.\nFix this by checking that the number of bytes to be read (and allocated)\ndoes not extend into the next filesystem structure.\n\nAlso add a couple of other sanity checks of the mount-time fragment table\nstructures.\n\nSigned-off-by: Phillip Lougher \u003cphillip@lougher.demon.co.uk\u003e\n"
    },
    {
      "commit": "ac51a0a7139aa93bf1176b701c86fa3d2bdf6106",
      "tree": "776d75b5cd1712d43feecc698b855173ed6ee57f",
      "parents": [
        "37986f63c81bf23c856f65fc5e4830550e7f3d5b"
      ],
      "author": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Tue May 24 04:15:21 2011 +0100"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Wed May 25 18:21:32 2011 +0100"
      },
      "message": "Squashfs: add sanity checks to lookup table reading at mount time\n\nFsfuzzer generates corrupted filesystems which throw a warn_on in\nkmalloc.  One of these is due to a corrupted superblock inodes field.\nFix this by checking that the number of bytes to be read (and allocated)\ndoes not extend into the next filesystem structure.\n\nAlso add a couple of other sanity checks of the mount-time lookup table\nstructures.\n\nSigned-off-by: Phillip Lougher \u003cphillip@lougher.demon.co.uk\u003e\n"
    },
    {
      "commit": "37986f63c81bf23c856f65fc5e4830550e7f3d5b",
      "tree": "aafcc2078b469fb8fdb6e43255e136fcc7059dc9",
      "parents": [
        "6f04864515365e135adc9f1cee4ac1251bb0ed35"
      ],
      "author": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Tue May 24 04:05:22 2011 +0100"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Wed May 25 18:21:32 2011 +0100"
      },
      "message": "Squashfs: add sanity checks to id reading at mount time\n\nFsfuzzer generates corrupted filesystems which throw a warn_on in\nkmalloc.  One of these is due to a corrupted superblock no_ids field.\nFix this by checking that the number of bytes to be read (and allocated)\ndoes not extend into the next filesystem structure.\n\nAlso add a couple of other sanity checks of the mount-time id table\nstructures.\n\nSigned-off-by: Phillip Lougher \u003cphillip@lougher.demon.co.uk\u003e\n"
    },
    {
      "commit": "6f04864515365e135adc9f1cee4ac1251bb0ed35",
      "tree": "f5c6181d52217b66606cc878536b2225c692f25a",
      "parents": [
        "76e002f755b61aa79228f4e751bbca8674aba0f6"
      ],
      "author": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Tue May 24 03:20:27 2011 +0100"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Wed May 25 18:21:31 2011 +0100"
      },
      "message": "Squashfs: add sanity checks to xattr reading at mount time\n\nThese checks add sanity checking of the mount-time xattr structures.\n\nSigned-off-by: Phillip Lougher \u003cphillip@lougher.demon.co.uk\u003e\n"
    },
    {
      "commit": "76e002f755b61aa79228f4e751bbca8674aba0f6",
      "tree": "9f0ff663ffddd2e4a9d0c5f20a350ee3824485d7",
      "parents": [
        "82de647e1f81fd89afc48608d889dd3b33cb8983"
      ],
      "author": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Tue May 24 02:57:05 2011 +0100"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Wed May 25 18:21:31 2011 +0100"
      },
      "message": "Squashfs: reverse order of filesystem table reading\n\nReverse order of table reading from mostly first to last in placement\norder, to last to first.  This is to enable extra superblock sanity\nchecks to be added in later patches.\n\nSigned-off-by: Phillip Lougher \u003cphillip@lougher.demon.co.uk\u003e\n"
    },
    {
      "commit": "82de647e1f81fd89afc48608d889dd3b33cb8983",
      "tree": "847b7b40ed273eaa755c27bef6b1a20d201273c2",
      "parents": [
        "117a91e0f25fd7698e20ac3dfa62086be3dc82a3"
      ],
      "author": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Fri May 20 02:26:43 2011 +0100"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Wed May 25 18:21:31 2011 +0100"
      },
      "message": "Squashfs: move table allocation into squashfs_read_table()\n\nThis eliminates a lot of duplicate code.\n\nSigned-off-by: Phillip Lougher \u003cphillip@lougher.demon.co.uk\u003e\n"
    },
    {
      "commit": "70f23fd66bc821a0e99647f70a809e277cc93c4c",
      "tree": "3e768b77e63c6364ef32cf257c9449369afd215f",
      "parents": [
        "c719864f15676af92b705589c93ba1468b89cd24"
      ],
      "author": {
        "name": "Justin P. Mattock",
        "email": "justinmattock@gmail.com",
        "time": "Tue May 10 10:16:21 2011 +0200"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Tue May 10 10:16:21 2011 +0200"
      },
      "message": "treewide: fix a few typos in comments\n\n- kenrel -\u003e kernel\n- whetehr -\u003e whether\n- ttt -\u003e tt\n- sss -\u003e ss\n\nSigned-off-by: Justin P. Mattock \u003cjustinmattock@gmail.com\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "25985edcedea6396277003854657b5f3cb31a628",
      "tree": "f026e810210a2ee7290caeb737c23cb6472b7c38",
      "parents": [
        "6aba74f2791287ec407e0f92487a725a25908067"
      ],
      "author": {
        "name": "Lucas De Marchi",
        "email": "lucas.demarchi@profusion.mobi",
        "time": "Wed Mar 30 22:57:33 2011 -0300"
      },
      "committer": {
        "name": "Lucas De Marchi",
        "email": "lucas.demarchi@profusion.mobi",
        "time": "Thu Mar 31 11:26:23 2011 -0300"
      },
      "message": "Fix common misspellings\n\nFixes generated by \u0027codespell\u0027 and manually reviewed.\n\nSigned-off-by: Lucas De Marchi \u003clucas.demarchi@profusion.mobi\u003e\n"
    },
    {
      "commit": "117a91e0f25fd7698e20ac3dfa62086be3dc82a3",
      "tree": "a8c032d5aa97ede9e369bf66d2dd39ad60859ac4",
      "parents": [
        "44cff8a9ee8a974f9e931df910688e7fc1f0b0f9"
      ],
      "author": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Tue Mar 22 23:01:26 2011 +0000"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Tue Mar 22 23:01:26 2011 +0000"
      },
      "message": "Squashfs: Use vmalloc rather than kmalloc for zlib workspace\n\nBugzilla bug 31422 reports occasional \"page allocation failure. order:4\"\nat Squashfs mount time.  Fix this by making zlib workspace allocation\nuse vmalloc rather than kmalloc.\n\nReported-by: Mehmet Giritli \u003cmehmet@giritli.eu\u003e\nSigned-off-by: Phillip Lougher \u003cphillip@lougher.demon.co.uk\u003e\n"
    },
    {
      "commit": "44cff8a9ee8a974f9e931df910688e7fc1f0b0f9",
      "tree": "4bb7011f0f5be9047d601c889a8bf02da096cefd",
      "parents": [
        "003a3194d36dc22c29cacda4d0c6fede2753c9d0"
      ],
      "author": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Tue Mar 15 22:09:55 2011 +0000"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Wed Mar 16 01:04:18 2011 +0000"
      },
      "message": "Squashfs: handle corruption of directory structure\n\nHandle the rare case where a directory metadata block is uncompressed and\ncorrupted, leading to a kernel oops in directory scanning (memcpy).\nNormally corruption is detected at the decompression stage and dealt with\nthen, however, this will not happen if:\n\n- metadata isn\u0027t compressed (users can optionally request no metadata\n  compression), or\n- the compressed metadata block was larger than the original, in which\n  case the uncompressed version was used, or\n- the data was corrupt after decompression\n\nThis patch fixes this by adding some sanity checks against known maximum\nvalues.\n\nSigned-off-by: Phillip Lougher \u003cphillip@lougher.demon.co.uk\u003e\n"
    },
    {
      "commit": "003a3194d36dc22c29cacda4d0c6fede2753c9d0",
      "tree": "01d25d5331295b6ea14a95df50fe13ba88586f7b",
      "parents": [
        "3ad126641c05f93d2fa153bb8ff762fb4cdbb885"
      ],
      "author": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Mon Feb 28 18:43:48 2011 +0000"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Mon Feb 28 18:43:48 2011 +0000"
      },
      "message": "Squashfs: wrap squashfs_mount() definition\n\nSquashfs_get_sb() to squashfs_mount() conversion (commit 152a0836)\nresults in line over 80 characters.\n\nSigned-off-by: Phillip Lougher \u003cphillip@lougher.demon.co.uk\u003e\n"
    },
    {
      "commit": "3ad126641c05f93d2fa153bb8ff762fb4cdbb885",
      "tree": "9b19bd1eaf11ca6efd15dda2db13212f9f27f082",
      "parents": [
        "4c1d204cde1470863e78aa0e6f55246c57f15038"
      ],
      "author": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Mon Feb 28 16:42:20 2011 +0000"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Mon Feb 28 18:35:44 2011 +0000"
      },
      "message": "Squashfs: xz_wrapper doesn\u0027t need to include squashfs_fs_i.h anymore\n\nSigned-off-by: Phillip Lougher \u003cphillip@lougher.demon.co.uk\u003e\n"
    },
    {
      "commit": "681ffe2e4316801529fdafe379743d1d41fe2086",
      "tree": "f678631dec4a4d0eac0976333cd3401f5acd17f3",
      "parents": [
        "ff750311d30acc9564ef577050794953eee59f01"
      ],
      "author": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Mon Feb 28 16:21:34 2011 +0000"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Mon Feb 28 18:35:28 2011 +0000"
      },
      "message": "Squashfs: Update Kconfig help text to include xz compression\n\nSigned-off-by: Phillip Lougher \u003cphillip@lougher.demon.co.uk\u003e\n"
    },
    {
      "commit": "ff750311d30acc9564ef577050794953eee59f01",
      "tree": "03c576ee30624dd94c130747c841e95ae64318a5",
      "parents": [
        "b7fc0ff09d24b372dc04b0c02b80659c0a66fdfe"
      ],
      "author": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Mon Feb 28 15:31:46 2011 +0000"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Mon Feb 28 18:34:24 2011 +0000"
      },
      "message": "Squashfs: add compression options support to xz decompressor\n\nPass the dictionary size used to compress datablocks.  Using a\ndictionary size less than the block size saves memory overhead, in many\ncases without adversely affecting compression ratio.\n\nSigned-off-by: Phillip Lougher \u003cphillip@lougher.demon.co.uk\u003e\n"
    },
    {
      "commit": "b7fc0ff09d24b372dc04b0c02b80659c0a66fdfe",
      "tree": "9cd9a94c3b07ef8064e1952a376d964776aa4571",
      "parents": [
        "100b33c8bd8a3235fd0b7948338d6cbb3db3c63d"
      ],
      "author": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Mon Feb 28 01:45:42 2011 +0000"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Mon Feb 28 18:21:59 2011 +0000"
      },
      "message": "Squashfs: extend decompressor framework to handle compression options\n\nExtend decompressor framework to handle compression options stored in\nthe filesystem.  These options can be used by the relevant decompressor\nat initialisation time to over-ride defaults.\n\nThe presence of compression options in the filesystem is indicated by\nthe COMP_OPT filesystem flag.  If present the data is read from the\nfilesystem and passed to the decompressor init function.  The decompressor\ninit function signature has been extended to take this data.\n\nAlso update the init function signature in the glib, lzo and xz\ndecompressor wrappers.\n\nSigned-off-by: Phillip Lougher \u003cphillip@lougher.demon.co.uk\u003e\n"
    },
    {
      "commit": "3689456b4bd36027022b3215eb2acba51cd0e6b5",
      "tree": "8233856d31d744feacf6d91b0fb7dbe7fbcf2803",
      "parents": [
        "ac15ee691fe84cb46cbd2497ddcb10e246f7ee47"
      ],
      "author": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Tue Jan 25 15:07:34 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jan 26 10:50:05 2011 +1000"
      },
      "message": "squashfs: fix use of uninitialised variable in zlib \u0026 xz decompressors\n\nFix potential use of uninitialised variable caused by recent\ndecompressor code optimisations.\n\nIn zlib_uncompress (zlib_wrapper.c) we have\n\n\tint zlib_err, zlib_init \u003d 0;\n\t...\n\tdo {\n\t\t...\n\t\t\tif (avail \u003d\u003d 0) {\n\t\t\t\toffset \u003d 0;\n\t\t\t\tput_bh(bh[k++]);\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t...\n\t\tzlib_err \u003d zlib_inflate(stream, Z_SYNC_FLUSH);\n\t\t...\n\t} while (zlib_err \u003d\u003d Z_OK);\n\nIf continue is executed (avail \u003d\u003d 0) then the while condition will be\nevaluated testing zlib_err, which is uninitialised first time around the\nloop.\n\nFix this by getting rid of the \u0027if (avail \u003d\u003d 0)\u0027 condition test, this\nedge condition should not be being handled in the decompressor code, and\ninstead handle it generically in the caller code.\n\nSimilarly for xz_wrapper.c.\n\nIncidentally, on most architectures (bar Mips and Parisc), no\nuninitialised variable warning is generated by gcc, this is because the\nwhile condition test on continue is optimised out and not performed\n(when executing continue zlib_err has not been changed since entering\nthe loop, and logically if the while condition was true previously, then\nit\u0027s still true).\n\nSigned-off-by: Phillip Lougher \u003cphillip@lougher.demon.co.uk\u003e\nReported-by: Jesper Juhl \u003cjj@chaosbits.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "01a678c5a2f41663b8faf03d17e2bbdbf44158a9",
      "tree": "ec93dc906fae7acfb7355bdc7ea690cde702ad83",
      "parents": [
        "8fcd97216f45b1691f8f91f35cc108d06e0bfca8"
      ],
      "author": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Wed Jan 05 18:23:53 2011 +0000"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Thu Jan 13 21:38:46 2011 +0000"
      },
      "message": "Squashfs: simplify CONFIG_SQUASHFS_LZO handling\n\nGet rid of messy repeated #if(n)def CONFIG_SQUASHFS_LZO code\nin decompressor.c\n\nSigned-off-by: Phillip Lougher \u003cphillip@lougher.demon.co.uk\u003e\n"
    },
    {
      "commit": "8fcd97216f45b1691f8f91f35cc108d06e0bfca8",
      "tree": "f22ddb09a78512768e6e4f766e8b61721175aee5",
      "parents": [
        "6197fd86789a28760f8375b5ae8885cd7258042f"
      ],
      "author": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Thu Jan 06 06:08:50 2011 +0000"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Thu Jan 13 21:24:15 2011 +0000"
      },
      "message": "Squashfs: move squashfs_i() definition from squashfs.h\n\nMove squashfs_i() definition out of squashfs.h, this eliminates\nthe need to #include squashfs_fs_i.h from numerous files.\n\nSigned-off-by: Phillip Lougher \u003cphillip@lougher.demon.co.uk\u003e\n"
    },
    {
      "commit": "6197fd86789a28760f8375b5ae8885cd7258042f",
      "tree": "67d4f46dfb5cfc90037c1400d0d290d892fdddc6",
      "parents": [
        "e7ee11f0ecd587caed0063c5f68ca20fef699f32"
      ],
      "author": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Wed Jan 05 18:15:58 2011 +0000"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Thu Jan 13 21:21:52 2011 +0000"
      },
      "message": "Squashfs: get rid of default n in Kconfig\n\nAs pointed out by Geert Uytterhoeven, \"default n\" is the default,\nno reason to specify it.\n\nSigned-off-by: Phillip Lougher \u003cphillip@lougher.demon.co.uk\u003e\n"
    },
    {
      "commit": "e7ee11f0ecd587caed0063c5f68ca20fef699f32",
      "tree": "34a4075c1c42b6aa192a323a72f7c0c24a37caef",
      "parents": [
        "170cf02165272dfe026eba183563bad973ca4f05"
      ],
      "author": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Wed Jan 05 18:02:37 2011 +0000"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Thu Jan 13 21:21:00 2011 +0000"
      },
      "message": "Squashfs: add missing check in zlib_wrapper\n\nOn file system corruption zlib can return Z_STREAM_OK with\ninput buffers remaining, which will not be released.\n\nSigned-off-by: Phillip Lougher \u003cphillip@lougher.demon.co.uk\u003e\n"
    },
    {
      "commit": "170cf02165272dfe026eba183563bad973ca4f05",
      "tree": "ac67de416d11ba535909d982fcfd4d68d21c3551",
      "parents": [
        "7a43ae523744c01b6187013e781f44c2281c579c"
      ],
      "author": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Wed Jan 05 17:52:26 2011 +0000"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Thu Jan 13 21:20:52 2011 +0000"
      },
      "message": "Squashfs: remove unnecessary variable in zlib_wrapper\n\nGet rid of unnecessary bytes variable, and remove redundant\ninitialisation of zlib_err.\n\nSigned-off-by: Phillip Lougher \u003cphillip@lougher.demon.co.uk\u003e\n"
    },
    {
      "commit": "7a43ae523744c01b6187013e781f44c2281c579c",
      "tree": "7f122fb883ef7cd86f08f90b770e03cae601efd3",
      "parents": [
        "81bb8debd0d570dc67dc1e9d8b612632cb941893"
      ],
      "author": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Thu Dec 09 02:08:31 2010 +0000"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Thu Jan 13 21:16:52 2011 +0000"
      },
      "message": "Squashfs: Add XZ compression configuration option\n\nSigned-off-by: Phillip Lougher \u003cphillip@lougher.demon.co.uk\u003e\n"
    },
    {
      "commit": "81bb8debd0d570dc67dc1e9d8b612632cb941893",
      "tree": "c76e83b286af6c6f44785afe95d7bbcf89eb73ce",
      "parents": [
        "581548db3b3c0f6e25b500329eb02e3c72e7acbe"
      ],
      "author": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Thu Dec 09 02:02:29 2010 +0000"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Thu Jan 13 20:51:20 2011 +0000"
      },
      "message": "Squashfs: add XZ compression support\n\nAdd support for reading file systems compressed with the\nXZ compression algorithm.\n\nThis patch adds the XZ decompressor wrapper code.\n\nSigned-off-by: Phillip Lougher \u003cphillip@lougher.demon.co.uk\u003e\n"
    },
    {
      "commit": "fa0d7e3de6d6fc5004ad9dea0dd6b286af8f03e9",
      "tree": "203e0f73883e4c26b5597e36042386a1237dab35",
      "parents": [
        "77812a1ef139d84270d27faacc0630c887411013"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@kernel.dk",
        "time": "Fri Jan 07 17:49:49 2011 +1100"
      },
      "committer": {
        "name": "Nick Piggin",
        "email": "npiggin@kernel.dk",
        "time": "Fri Jan 07 17:50:26 2011 +1100"
      },
      "message": "fs: icache RCU free inodes\n\nRCU free the struct inode. This will allow:\n\n- Subsequent store-free path walking patch. The inode must be consulted for\n  permissions when walking, so an RCU inode reference is a must.\n- sb_inode_list_lock to be moved inside i_lock because sb list walkers who want\n  to take i_lock no longer need to take sb_inode_list_lock to walk the list in\n  the first place. This will simplify and optimize locking.\n- Could remove some nested trylock loops in dcache code\n- Could potentially simplify things a bit in VM land. Do not need to take the\n  page lock to follow page-\u003emapping.\n\nThe downsides of this is the performance cost of using RCU. In a simple\ncreat/unlink microbenchmark, performance drops by about 10% due to inability to\nreuse cache-hot slab objects. As iterations increase and RCU freeing starts\nkicking over, this increases to about 20%.\n\nIn cases where inode lifetimes are longer (ie. many inodes may be allocated\nduring the average life span of a single inode), a lot of this cache reuse is\nnot applicable, so the regression caused by this patch is smaller.\n\nThe cache-hot regression could largely be avoided by using SLAB_DESTROY_BY_RCU,\nhowever this adds some complexity to list walking and store-free path walking,\nso I prefer to implement this at a later date, if it is shown to be a win in\nreal situations. I haven\u0027t found a regression in any non-micro benchmark so I\ndoubt it will be a problem.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@kernel.dk\u003e\n"
    },
    {
      "commit": "162164f7e92da970666e7492fd58644f3c1f8574",
      "tree": "c69448e73d24bf83cd412c04d525eb541a84cdc0",
      "parents": [
        "d8d048f69a618c531575cb1f398a7186f0532ef2",
        "5f3b321da1aa5936c85ed6dec67358239a9d3cfd"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 29 08:48:58 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 29 08:48:58 2010 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/pkl/squashfs-linus\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/pkl/squashfs-linus:\n  Squashfs: fix function prototype\n  Squashfs: fix use of __le64 annotated variable\n"
    },
    {
      "commit": "152a08366671080f27b32e0c411ad620c5f88b57",
      "tree": "d13d16028f74839c678bce355ba8aac75d939fa8",
      "parents": [
        "c96e41e92b4aaf11e1f9775ecf0d1c8cbff829ed"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Jul 25 00:46:55 2010 +0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Oct 29 04:16:13 2010 -0400"
      },
      "message": "new helper: mount_bdev()\n\n... and switch of the obvious get_sb_bdev() users to -\u003emount()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "5f3b321da1aa5936c85ed6dec67358239a9d3cfd",
      "tree": "9bc7953dab4a4df88fc7e5874e5659981d583781",
      "parents": [
        "07724586b44e69a08af3102be3f9afd350eda1e3"
      ],
      "author": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Mon Oct 25 00:17:24 2010 +0100"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Thu Oct 28 17:44:19 2010 +0100"
      },
      "message": "Squashfs: fix function prototype\n\nThe fourth argument should be unsigned.  Also add missing include\nso that the function prototype is defined in xattr_id.c\n\nThis fixes a couple of sparse warnings.\n\nSigned-off-by: Phillip Lougher \u003cphillip@lougher.demon.co.uk\u003e\n"
    },
    {
      "commit": "07724586b44e69a08af3102be3f9afd350eda1e3",
      "tree": "e2b821739c7c9e27969a0fcf3748983317df13da",
      "parents": [
        "f6f94e2ab1b33f0082ac22d71f66385a60d8157f"
      ],
      "author": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Sun Oct 24 23:13:57 2010 +0100"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Thu Oct 28 17:44:11 2010 +0100"
      },
      "message": "Squashfs: fix use of __le64 annotated variable\n\nThis fixes a sparse with endian checking warning.\n\nSigned-off-by: Phillip Lougher \u003cphillip@lougher.demon.co.uk\u003e\n"
    },
    {
      "commit": "092e0e7e520a1fca03e13c9f2d157432a8657ff2",
      "tree": "451897252c4c08c4b5a8ef535da156f1e817e80b",
      "parents": [
        "79f14b7c56d3b3ba58f8b43d1f70b9b71477a800",
        "776c163b1b93c8dfa5edba885bc2bfbc2d228a5f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 22 10:52:56 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 22 10:52:56 2010 -0700"
      },
      "message": "Merge branch \u0027llseek\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/bkl\n\n* \u0027llseek\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/bkl:\n  vfs: make no_llseek the default\n  vfs: don\u0027t use BKL in default_llseek\n  llseek: automatically add .llseek fop\n  libfs: use generic_file_llseek for simple_attr\n  mac80211: disallow seeks in minstrel debug code\n  lirc: make chardev nonseekable\n  viotape: use noop_llseek\n  raw: use explicit llseek file operations\n  ibmasmfs: use generic_file_llseek\n  spufs: use llseek in all file operations\n  arm/omap: use generic_file_llseek in iommu_debug\n  lkdtm: use generic_file_llseek in debugfs\n  net/wireless: use generic_file_llseek in debugfs\n  drm: use noop_llseek\n"
    },
    {
      "commit": "6038f373a3dc1f1c26496e60b6c40b164716f07e",
      "tree": "a0d3bbd026eea41b9fc36b8c722cbaf56cd9f825",
      "parents": [
        "1ec5584e3edf9c4bf2c88c846534d19cf986ba11"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Sun Aug 15 18:52:59 2010 +0200"
      },
      "committer": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Fri Oct 15 15:53:27 2010 +0200"
      },
      "message": "llseek: automatically add .llseek fop\n\nAll file_operations should get a .llseek operation so we can make\nnonseekable_open the default for future file operations without a\n.llseek pointer.\n\nThe three cases that we can automatically detect are no_llseek, seq_lseek\nand default_llseek. For cases where we can we can automatically prove that\nthe file offset is always ignored, we use noop_llseek, which maintains\nthe current behavior of not returning an error from a seek.\n\nNew drivers should normally not use noop_llseek but instead use no_llseek\nand call nonseekable_open at open time.  Existing drivers can be converted\nto do the same when the maintainer knows for certain that no user code\nrelies on calling seek on the device file.\n\nThe generated code is often incorrectly indented and right now contains\ncomments that clarify for each added line why a specific variant was\nchosen. In the version that gets submitted upstream, the comments will\nbe gone and I will manually fix the indentation, because there does not\nseem to be a way to do that using coccinelle.\n\nSome amount of new code is currently sitting in linux-next that should get\nthe same modifications, which I will do at the end of the merge window.\n\nMany thanks to Julia Lawall for helping me learn to write a semantic\npatch that does all this.\n\n\u003d\u003d\u003d\u003d\u003d begin semantic patch \u003d\u003d\u003d\u003d\u003d\n// This adds an llseek\u003d method to all file operations,\n// as a preparation for making no_llseek the default.\n//\n// The rules are\n// - use no_llseek explicitly if we do nonseekable_open\n// - use seq_lseek for sequential files\n// - use default_llseek if we know we access f_pos\n// - use noop_llseek if we know we don\u0027t access f_pos,\n//   but we still want to allow users to call lseek\n//\n@ open1 exists @\nidentifier nested_open;\n@@\nnested_open(...)\n{\n\u003c+...\nnonseekable_open(...)\n...+\u003e\n}\n\n@ open exists@\nidentifier open_f;\nidentifier i, f;\nidentifier open1.nested_open;\n@@\nint open_f(struct inode *i, struct file *f)\n{\n\u003c+...\n(\nnonseekable_open(...)\n|\nnested_open(...)\n)\n...+\u003e\n}\n\n@ read disable optional_qualifier exists @\nidentifier read_f;\nidentifier f, p, s, off;\ntype ssize_t, size_t, loff_t;\nexpression E;\nidentifier func;\n@@\nssize_t read_f(struct file *f, char *p, size_t s, loff_t *off)\n{\n\u003c+...\n(\n   *off \u003d E\n|\n   *off +\u003d E\n|\n   func(..., off, ...)\n|\n   E \u003d *off\n)\n...+\u003e\n}\n\n@ read_no_fpos disable optional_qualifier exists @\nidentifier read_f;\nidentifier f, p, s, off;\ntype ssize_t, size_t, loff_t;\n@@\nssize_t read_f(struct file *f, char *p, size_t s, loff_t *off)\n{\n... when !\u003d off\n}\n\n@ write @\nidentifier write_f;\nidentifier f, p, s, off;\ntype ssize_t, size_t, loff_t;\nexpression E;\nidentifier func;\n@@\nssize_t write_f(struct file *f, const char *p, size_t s, loff_t *off)\n{\n\u003c+...\n(\n  *off \u003d E\n|\n  *off +\u003d E\n|\n  func(..., off, ...)\n|\n  E \u003d *off\n)\n...+\u003e\n}\n\n@ write_no_fpos @\nidentifier write_f;\nidentifier f, p, s, off;\ntype ssize_t, size_t, loff_t;\n@@\nssize_t write_f(struct file *f, const char *p, size_t s, loff_t *off)\n{\n... when !\u003d off\n}\n\n@ fops0 @\nidentifier fops;\n@@\nstruct file_operations fops \u003d {\n ...\n};\n\n@ has_llseek depends on fops0 @\nidentifier fops0.fops;\nidentifier llseek_f;\n@@\nstruct file_operations fops \u003d {\n...\n .llseek \u003d llseek_f,\n...\n};\n\n@ has_read depends on fops0 @\nidentifier fops0.fops;\nidentifier read_f;\n@@\nstruct file_operations fops \u003d {\n...\n .read \u003d read_f,\n...\n};\n\n@ has_write depends on fops0 @\nidentifier fops0.fops;\nidentifier write_f;\n@@\nstruct file_operations fops \u003d {\n...\n .write \u003d write_f,\n...\n};\n\n@ has_open depends on fops0 @\nidentifier fops0.fops;\nidentifier open_f;\n@@\nstruct file_operations fops \u003d {\n...\n .open \u003d open_f,\n...\n};\n\n// use no_llseek if we call nonseekable_open\n////////////////////////////////////////////\n@ nonseekable1 depends on !has_llseek \u0026\u0026 has_open @\nidentifier fops0.fops;\nidentifier nso ~\u003d \"nonseekable_open\";\n@@\nstruct file_operations fops \u003d {\n...  .open \u003d nso, ...\n+.llseek \u003d no_llseek, /* nonseekable */\n};\n\n@ nonseekable2 depends on !has_llseek @\nidentifier fops0.fops;\nidentifier open.open_f;\n@@\nstruct file_operations fops \u003d {\n...  .open \u003d open_f, ...\n+.llseek \u003d no_llseek, /* open uses nonseekable */\n};\n\n// use seq_lseek for sequential files\n/////////////////////////////////////\n@ seq depends on !has_llseek @\nidentifier fops0.fops;\nidentifier sr ~\u003d \"seq_read\";\n@@\nstruct file_operations fops \u003d {\n...  .read \u003d sr, ...\n+.llseek \u003d seq_lseek, /* we have seq_read */\n};\n\n// use default_llseek if there is a readdir\n///////////////////////////////////////////\n@ fops1 depends on !has_llseek \u0026\u0026 !nonseekable1 \u0026\u0026 !nonseekable2 \u0026\u0026 !seq @\nidentifier fops0.fops;\nidentifier readdir_e;\n@@\n// any other fop is used that changes pos\nstruct file_operations fops \u003d {\n... .readdir \u003d readdir_e, ...\n+.llseek \u003d default_llseek, /* readdir is present */\n};\n\n// use default_llseek if at least one of read/write touches f_pos\n/////////////////////////////////////////////////////////////////\n@ fops2 depends on !fops1 \u0026\u0026 !has_llseek \u0026\u0026 !nonseekable1 \u0026\u0026 !nonseekable2 \u0026\u0026 !seq @\nidentifier fops0.fops;\nidentifier read.read_f;\n@@\n// read fops use offset\nstruct file_operations fops \u003d {\n... .read \u003d read_f, ...\n+.llseek \u003d default_llseek, /* read accesses f_pos */\n};\n\n@ fops3 depends on !fops1 \u0026\u0026 !fops2 \u0026\u0026 !has_llseek \u0026\u0026 !nonseekable1 \u0026\u0026 !nonseekable2 \u0026\u0026 !seq @\nidentifier fops0.fops;\nidentifier write.write_f;\n@@\n// write fops use offset\nstruct file_operations fops \u003d {\n... .write \u003d write_f, ...\n+\t.llseek \u003d default_llseek, /* write accesses f_pos */\n};\n\n// Use noop_llseek if neither read nor write accesses f_pos\n///////////////////////////////////////////////////////////\n\n@ fops4 depends on !fops1 \u0026\u0026 !fops2 \u0026\u0026 !fops3 \u0026\u0026 !has_llseek \u0026\u0026 !nonseekable1 \u0026\u0026 !nonseekable2 \u0026\u0026 !seq @\nidentifier fops0.fops;\nidentifier read_no_fpos.read_f;\nidentifier write_no_fpos.write_f;\n@@\n// write fops use offset\nstruct file_operations fops \u003d {\n...\n .write \u003d write_f,\n .read \u003d read_f,\n...\n+.llseek \u003d noop_llseek, /* read and write both use no f_pos */\n};\n\n@ depends on has_write \u0026\u0026 !has_read \u0026\u0026 !fops1 \u0026\u0026 !fops2 \u0026\u0026 !has_llseek \u0026\u0026 !nonseekable1 \u0026\u0026 !nonseekable2 \u0026\u0026 !seq @\nidentifier fops0.fops;\nidentifier write_no_fpos.write_f;\n@@\nstruct file_operations fops \u003d {\n... .write \u003d write_f, ...\n+.llseek \u003d noop_llseek, /* write uses no f_pos */\n};\n\n@ depends on has_read \u0026\u0026 !has_write \u0026\u0026 !fops1 \u0026\u0026 !fops2 \u0026\u0026 !has_llseek \u0026\u0026 !nonseekable1 \u0026\u0026 !nonseekable2 \u0026\u0026 !seq @\nidentifier fops0.fops;\nidentifier read_no_fpos.read_f;\n@@\nstruct file_operations fops \u003d {\n... .read \u003d read_f, ...\n+.llseek \u003d noop_llseek, /* read uses no f_pos */\n};\n\n@ depends on !has_read \u0026\u0026 !has_write \u0026\u0026 !fops1 \u0026\u0026 !fops2 \u0026\u0026 !has_llseek \u0026\u0026 !nonseekable1 \u0026\u0026 !nonseekable2 \u0026\u0026 !seq @\nidentifier fops0.fops;\n@@\nstruct file_operations fops \u003d {\n...\n+.llseek \u003d noop_llseek, /* no read or write fn */\n};\n\u003d\u003d\u003d\u003d\u003d End semantic patch \u003d\u003d\u003d\u003d\u003d\n\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nCc: Julia Lawall \u003cjulia@diku.dk\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\n"
    },
    {
      "commit": "3dbc4b32d0b39701cbec65582e196a20889155fb",
      "tree": "f2ce90d3850a37f1e6cbb9ed556b1535d62e80cb",
      "parents": [
        "1a028dd2dd589c3924d9711a1b073a13c820b6b5"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Thu Sep 16 15:35:54 2010 +0200"
      },
      "committer": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Mon Oct 04 21:10:50 2010 +0200"
      },
      "message": "BKL: Remove BKL from squashfs\n\nThe BKL is only used in put_super and fill_super, which are both protected\nby the superblocks s_umount rw_semaphore. Therefore it is safe to remove\nthe BKL entirely.\n\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nCc: Phillip Lougher \u003cphillip@lougher.demon.co.uk\u003e\n"
    },
    {
      "commit": "db71922217a214e5c9268448e537b54fc1f301ea",
      "tree": "9c9afbf29411547891f6968e5ade29ce59d66c07",
      "parents": [
        "899611ee7d373e5eeda08e9a8632684e1ebbbf00"
      ],
      "author": {
        "name": "Jan Blunck",
        "email": "jblunck@infradead.org",
        "time": "Sun Aug 15 22:51:10 2010 +0200"
      },
      "committer": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Mon Oct 04 21:10:10 2010 +0200"
      },
      "message": "BKL: Explicitly add BKL around get_sb/fill_super\n\nThis patch is a preparation necessary to remove the BKL from do_new_mount().\nIt explicitly adds calls to lock_kernel()/unlock_kernel() around\nget_sb/fill_super operations for filesystems that still uses the BKL.\n\nI\u0027ve read through all the code formerly covered by the BKL inside\ndo_kern_mount() and have satisfied myself that it doesn\u0027t need the BKL\nany more.\n\ndo_kern_mount() is already called without the BKL when mounting the rootfs\nand in nfsctl. do_kern_mount() calls vfs_kern_mount(), which is called\nfrom various places without BKL: simple_pin_fs(), nfs_do_clone_mount()\nthrough nfs_follow_mountpoint(), afs_mntpt_do_automount() through\nafs_mntpt_follow_link(). Both later functions are actually the filesystems\nfollow_link inode operation. vfs_kern_mount() is calling the specified\nget_sb function and lets the filesystem do its job by calling the given\nfill_super function.\n\nTherefore I think it is safe to push down the BKL from the VFS to the\nlow-level filesystems get_sb/fill_super operation.\n\n[arnd: do not add the BKL to those file systems that already\n       don\u0027t use it elsewhere]\n\nSigned-off-by: Jan Blunck \u003cjblunck@infradead.org\u003e\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nCc: Matthew Wilcox \u003cmatthew@wil.cx\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\n"
    },
    {
      "commit": "66048c381bb1e3a7c6fc69c28721843d6ec11c8c",
      "tree": "b73f9f08b5e40bb6144c36df4d3264828425e23b",
      "parents": [
        "4f86b8fd48cb9b9a5b45aa0249e44c9d4fd7d796"
      ],
      "author": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Sun Aug 08 22:29:33 2010 +0000"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Sun Aug 08 22:29:33 2010 +0000"
      },
      "message": "Squashfs: fix checkpatch.pl warnings\n\nCheckpatch.pl in 2.6.34 added a check for spaces between tabs.\n\nSigned-off-by: Phillip Lougher \u003cphillip@lougher.demon.co.uk\u003e\n"
    },
    {
      "commit": "4f86b8fd48cb9b9a5b45aa0249e44c9d4fd7d796",
      "tree": "b60c1c1e0ba225e73489c1ca851fb90c31182355",
      "parents": [
        "4b676d2dbed3dadc6ef913d58f85360547fa071e"
      ],
      "author": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Thu Aug 05 23:52:53 2010 +0100"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Thu Aug 05 23:52:53 2010 +0100"
      },
      "message": "Squashfs: fix filename typo\n\nSigned-off-by: Phillip Lougher \u003cphillip@lougher.demon.co.uk\u003e\n"
    },
    {
      "commit": "4b676d2dbed3dadc6ef913d58f85360547fa071e",
      "tree": "7af04b23f20cda409ce71bd857fb140d3d8770f1",
      "parents": [
        "f3065f60ddfd4b5e34a412851d91d0cf27cdbf7e"
      ],
      "author": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Thu Aug 05 23:42:54 2010 +0100"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Thu Aug 05 23:42:54 2010 +0100"
      },
      "message": "Squashfs: update Kconfig and documentation for LZO\n\nUpdate compression types supported and add some help text for\nthe LZO Kconfig option.\n\nAlso add missing \"default n\" line and make some trivial whitespace\ncleanups too.\n\nSigned-off-by: Phillip Lougher \u003cphillip@lougher.demon.co.uk\u003e\n"
    },
    {
      "commit": "f3065f60ddfd4b5e34a412851d91d0cf27cdbf7e",
      "tree": "08d77b60ee6ffa601d230d4b978a3dad03d8bd7c",
      "parents": [
        "79cb8ced7eef53856b5a877db0544acf52e00c80"
      ],
      "author": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Thu Aug 05 04:51:50 2010 +0100"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Thu Aug 05 04:51:50 2010 +0100"
      },
      "message": "Squashfs: fix block size use in LZO decompressor\n\nSizing the buffer using block size alone is incorrect leading\nto a potential buffer over-run on 4K block size file systems\n(because the metadata block size is always 8K).  Srclength is\nset to the maximum expected size of the decompressed block and\nit is block_size or 8K depending on whether a data or metadata\nblock is being decompressed.\n\nSigned-off-by: Phillip Lougher \u003cphillip@lougher.demon.co.uk\u003e\n"
    },
    {
      "commit": "79cb8ced7eef53856b5a877db0544acf52e00c80",
      "tree": "fd39e0c73f15fd5b86a816a4c6ebc10d12cb6622",
      "parents": [
        "4690148f77f90ec132b5eb780650ba8769b9ed39"
      ],
      "author": {
        "name": "Chan Jeong",
        "email": "chan.jeong@lge.com",
        "time": "Thu Aug 05 02:29:59 2010 +0100"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Thu Aug 05 02:29:59 2010 +0100"
      },
      "message": "Squashfs: Add LZO compression support\n\nSigned-off-by: Chan Jeong \u003cchan.jeong@lge.com\u003e\nSigned-off-by: Phillip Lougher \u003cphillip@lougher.demon.co.uk\u003e\n"
    },
    {
      "commit": "4690148f77f90ec132b5eb780650ba8769b9ed39",
      "tree": "d77d840db95ec30ca1d7d1366d771746086633c3",
      "parents": [
        "637d5c9a36bcb2b101401d52191ff3c7580f9068"
      ],
      "author": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Mon May 31 18:50:22 2010 +0100"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Mon May 31 18:50:22 2010 +0100"
      },
      "message": "squashfs: fix filename in header comment\n\nSigned-off-by: Phillip Lougher \u003cphillip@lougher.demon.co.uk\u003e\n"
    },
    {
      "commit": "637d5c9a36bcb2b101401d52191ff3c7580f9068",
      "tree": "b8c7ea745302a9e9f59768484ca3c895837970c2",
      "parents": [
        "a02956e4cc655f746134806119cce1bccfc2c610"
      ],
      "author": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Mon May 31 18:46:29 2010 +0100"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Mon May 31 18:46:29 2010 +0100"
      },
      "message": "Squashfs: Make XATTR config name consistent with other file systems\n\nReported-by: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nSigned-off-by: Phillip Lougher \u003cphillip@lougher.demon.co.uk\u003e\n"
    },
    {
      "commit": "a02956e4cc655f746134806119cce1bccfc2c610",
      "tree": "1322a19fa706281aa402499c22810162ddbae9e7",
      "parents": [
        "899f4530334da9292556e1f8f5791468e0136ff1"
      ],
      "author": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Mon May 31 18:32:17 2010 +0100"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Mon May 31 18:32:17 2010 +0100"
      },
      "message": "squashfs: fix compiler inline warning\n\nFix compiler warning where inline conflicts with non-inline\nprototype.\n\nReported-by: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nSigned-off-by: Phillip Lougher \u003cphillip@lougher.demon.co.uk\u003e\n"
    },
    {
      "commit": "5c80f5aa409b211ab193c56fb6b77d73b61966e5",
      "tree": "8559d669666b1174067f29294015164251d2088b",
      "parents": [
        "f6db25a87643fa6108e211da0397423593ca36fe"
      ],
      "author": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Sun May 23 08:27:42 2010 +0100"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Sun May 23 08:27:42 2010 +0100"
      },
      "message": "squashfs: fix name reading in squashfs_xattr_get\n\nOnly read potentially matching names into the target buffer, all\nobviously non matching names don\u0027t need to be read into the\ntarget buffer.\n\nSigned-off-by: Phillip Lougher \u003cphillip@lougher.demon.co.uk\u003e\n"
    },
    {
      "commit": "f6db25a87643fa6108e211da0397423593ca36fe",
      "tree": "5bf431bf1efea38a57186f4dc595966d4187e324",
      "parents": [
        "0f87ee08564b95389e609699990725efd282021c"
      ],
      "author": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Sun May 23 03:29:26 2010 +0100"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Sun May 23 03:35:05 2010 +0100"
      },
      "message": "squashfs: constify xattr handlers\n\nSigned-off-by: Phillip Lougher \u003cphillip@lougher.demon.co.uk\u003e\n"
    },
    {
      "commit": "0f87ee08564b95389e609699990725efd282021c",
      "tree": "57d6655eab77057968557e2a414536cb56a7c2ba",
      "parents": [
        "aa5b1894cbc700d7462947c017ca9b7bcda1e8ed"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Thu May 13 16:32:22 2010 -0700"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Mon May 17 20:06:56 2010 +0100"
      },
      "message": "squashfs: xattr fix sparse warnings\n\nSparse does not like inline function declared without body,\nbecause it is not part of the standard kernel practice.\n\nThe xattr_handler tables can be declared static.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: Phillip Lougher \u003cphillip@lougher.demon.co.uk\u003e\n"
    },
    {
      "commit": "aa5b1894cbc700d7462947c017ca9b7bcda1e8ed",
      "tree": "88bf6d219243075a752f6b7e0b17911116bad176",
      "parents": [
        "01e5b4e4e897fce8c7e6236bc933c9721c7ee237"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Thu May 13 16:32:21 2010 -0700"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Mon May 17 20:02:03 2010 +0100"
      },
      "message": "squashfs: xattr_lookup sparse fix\n\nSparse detected that unsigned pointer was being passed as int pointer.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\n[fixed up to deal with code refactoring]\nSigned-off-by: Phillip Lougher \u003cphillip@lougher.demon.co.uk\u003e\n"
    },
    {
      "commit": "01e5b4e4e897fce8c7e6236bc933c9721c7ee237",
      "tree": "2bdd0afded0c862929f6826fe254542894697c0c",
      "parents": [
        "67f66cc6c728de183d9d43c243cb163c1ebd8e04"
      ],
      "author": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Mon May 17 19:39:02 2010 +0100"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Mon May 17 19:54:07 2010 +0100"
      },
      "message": "squashfs: add xattr support configure option\n\nSigned-off-by: Phillip Lougher \u003cphillip@lougher.demon.co.uk\u003e\n"
    },
    {
      "commit": "67f66cc6c728de183d9d43c243cb163c1ebd8e04",
      "tree": "bd175ed5f66594ad76d099461560c3fe8a01181c",
      "parents": [
        "f41d207cbedecd82f797adcce83890aa96f1c9e9"
      ],
      "author": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Mon May 17 04:06:56 2010 +0100"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Mon May 17 19:54:06 2010 +0100"
      },
      "message": "squashfs: add new extended inode types\n\nAdd new extended inode types that store the xattr_id field.\nAlso add the necessary code changes to make xattrs visibile.\n\nSigned-off-by: Phillip Lougher \u003cphillip@lougher.demon.co.uk\u003e\n"
    },
    {
      "commit": "f41d207cbedecd82f797adcce83890aa96f1c9e9",
      "tree": "76322fb62237fe3f5ad65d3c4a74f825e9e016fe",
      "parents": [
        "4b5397dc24ab12afaac85be3d0863b7f6eb8b0f0"
      ],
      "author": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Mon May 17 03:17:04 2010 +0100"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Mon May 17 19:54:06 2010 +0100"
      },
      "message": "squashfs: add support for xattr reading\n\nAdd support for listxattr and getxattr.  Also add xattr definitions.\n\nSigned-off-by: Phillip Lougher \u003cphillip@lougher.demon.co.uk\u003e\n"
    },
    {
      "commit": "4b5397dc24ab12afaac85be3d0863b7f6eb8b0f0",
      "tree": "bd385be428cfefcdf520f19c532196df1202d687",
      "parents": [
        "b57f95a38233a2e73b679bea4a5453a1cc2a1cc9"
      ],
      "author": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Fri May 14 20:48:47 2010 +0100"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Mon May 17 19:54:05 2010 +0100"
      },
      "message": "squashfs: add xattr id support\n\nThis patch adds support for mapping xattr ids (stored in inodes)\ninto the on-disk location of the xattrs themselves.\n\nSigned-off-by: Phillip Lougher \u003cphillip@lougher.demon.co.uk\u003e\n"
    },
    {
      "commit": "e0d1f70010dce062ccce1bbd940a661e60b82631",
      "tree": "1a0844867f6aa1600a07a8a5321325ddf016a6e6",
      "parents": [
        "370ec3d1ed9d76ba992e5b9b7d7d10700014d436"
      ],
      "author": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Fri Apr 23 02:32:02 2010 +0100"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Sun Apr 25 02:09:05 2010 +0100"
      },
      "message": "squashfs: fix potential buffer over-run on 4K block file systems\n\nSizing the buffer based on block size is incorrect, leading\nto a potential buffer over-run on 4K block size file systems\n(because the metadata block size is always 8K).  This bug\ndoesn\u0027t seem have triggered because 4K block size file systems\nare not default, and also because metadata blocks after\ncompression tend to be less than 4K.\n\nSigned-off-by: Phillip Lougher \u003cphillip@lougher.demon.co.uk\u003e\n"
    },
    {
      "commit": "370ec3d1ed9d76ba992e5b9b7d7d10700014d436",
      "tree": "87065ba9c5f19b29c172267bcd971d655a7d6af6",
      "parents": [
        "1cb08e97389bb603e1b999312d9686c8faf0187a"
      ],
      "author": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Fri Apr 23 00:24:22 2010 +0100"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Sun Apr 25 02:09:05 2010 +0100"
      },
      "message": "squashfs: add missing buffer free\n\nSigned-off-by: Phillip Lougher \u003cphillip@lougher.demon.co.uk\u003e\n"
    },
    {
      "commit": "1cb08e97389bb603e1b999312d9686c8faf0187a",
      "tree": "eb09f54f0eae17a29c5f09418558d7ed141d4454",
      "parents": [
        "792590c72376649b4e315df386fd208b83db05b9"
      ],
      "author": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Fri Apr 16 01:01:36 2010 +0100"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Sun Apr 25 01:49:17 2010 +0100"
      },
      "message": "squashfs: fix warn_on when root inode is corrupted\n\nFix warn_on triggered by mounting a fsfuzzer corrupted file system, where\nthe root inode has been corrupted.\n\nSigned-off-by: Phillip Lougher \u003cphillip@lougher.demon.co.uk\u003e\nReported-by: Steve Grubb \u003csgrubb@redhat.com\u003e\n"
    },
    {
      "commit": "792590c72376649b4e315df386fd208b83db05b9",
      "tree": "fefe4c18d12b4ef9d1977998286da63e93d815b4",
      "parents": [
        "0d0fb0f9c5fddef4a10242fe3337f00f528a3099"
      ],
      "author": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Sun Apr 04 22:20:58 2010 +0100"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Fri Apr 23 02:54:54 2010 +0100"
      },
      "message": "squashfs: fix locking bug in zlib wrapper\n\nFix locking bug in zlib wrapper introduced by recent decompressor changes.\n\nSigned-off-by: Phillip Lougher \u003cphillip@lougher.demon.co.uk\u003e\n"
    },
    {
      "commit": "5a0e3ad6af8660be21ca98a971cd00f331318c05",
      "tree": "5bfb7be11a03176a87296a43ac6647975c00a1d1",
      "parents": [
        "ed391f4ebf8f701d3566423ce8f17e614cde9806"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Mar 24 17:04:11 2010 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Mar 30 22:02:32 2010 +0900"
      },
      "message": "include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h\n\npercpu.h is included by sched.h and module.h and thus ends up being\nincluded when building most .c files.  percpu.h includes slab.h which\nin turn includes gfp.h making everything defined by the two files\nuniversally available and complicating inclusion dependencies.\n\npercpu.h -\u003e slab.h dependency is about to be removed.  Prepare for\nthis change by updating users of gfp and slab facilities include those\nheaders directly instead of assuming availability.  As this conversion\nneeds to touch large number of source files, the following script is\nused as the basis of conversion.\n\n  http://userweb.kernel.org/~tj/misc/slabh-sweep.py\n\nThe script does the followings.\n\n* Scan files for gfp and slab usages and update includes such that\n  only the necessary includes are there.  ie. if only gfp is used,\n  gfp.h, if slab is used, slab.h.\n\n* When the script inserts a new include, it looks at the include\n  blocks and try to put the new include such that its order conforms\n  to its surrounding.  It\u0027s put in the include block which contains\n  core kernel includes, in the same order that the rest are ordered -\n  alphabetical, Christmas tree, rev-Xmas-tree or at the end if there\n  doesn\u0027t seem to be any matching order.\n\n* If the script can\u0027t find a place to put a new include (mostly\n  because the file doesn\u0027t have fitting include block), it prints out\n  an error message indicating which .h file needs to be added to the\n  file.\n\nThe conversion was done in the following steps.\n\n1. The initial automatic conversion of all .c files updated slightly\n   over 4000 files, deleting around 700 includes and adding ~480 gfp.h\n   and ~3000 slab.h inclusions.  The script emitted errors for ~400\n   files.\n\n2. Each error was manually checked.  Some didn\u0027t need the inclusion,\n   some needed manual addition while adding it to implementation .h or\n   embedding .c file was more appropriate for others.  This step added\n   inclusions to around 150 files.\n\n3. The script was run again and the output was compared to the edits\n   from #2 to make sure no file was left behind.\n\n4. Several build tests were done and a couple of problems were fixed.\n   e.g. lib/decompress_*.c used malloc/free() wrappers around slab\n   APIs requiring slab.h to be added manually.\n\n5. The script was run on all .h files but without automatically\n   editing them as sprinkling gfp.h and slab.h inclusions around .h\n   files could easily lead to inclusion dependency hell.  Most gfp.h\n   inclusion directives were ignored as stuff from gfp.h was usually\n   wildly available and often used in preprocessor macros.  Each\n   slab.h inclusion directive was examined and added manually as\n   necessary.\n\n6. percpu.h was updated not to include slab.h.\n\n7. Build test were done on the following configurations and failures\n   were fixed.  CONFIG_GCOV_KERNEL was turned off for all tests (as my\n   distributed build env didn\u0027t work with gcov compiles) and a few\n   more options had to be turned off depending on archs to make things\n   build (like ipr on powerpc/64 which failed due to missing writeq).\n\n   * x86 and x86_64 UP and SMP allmodconfig and a custom test config.\n   * powerpc and powerpc64 SMP allmodconfig\n   * sparc and sparc64 SMP allmodconfig\n   * ia64 SMP allmodconfig\n   * s390 SMP allmodconfig\n   * alpha SMP allmodconfig\n   * um on x86_64 SMP allmodconfig\n\n8. percpu.h modifications were reverted so that it could be applied as\n   a separate patch and serve as bisection point.\n\nGiven the fact that I had only a couple of failures from tests on step\n6, I\u0027m fairly confident about the coverage of this conversion patch.\nIf there is a breakage, it\u0027s likely to be something in one of the arch\nheaders which should be easily discoverable easily on most builds of\nthe specific arch.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nGuess-its-ok-by: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: Lee Schermerhorn \u003cLee.Schermerhorn@hp.com\u003e\n"
    },
    {
      "commit": "06862f884d9c2453daaf0c1d070c69cf444f10b1",
      "tree": "43f3f5124675e3c38c1093d22a1230c584246c99",
      "parents": [
        "ae4a3179b11a97a5b36a768ae6ac1662d0315ff0"
      ],
      "author": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Thu Feb 25 01:31:13 2010 +0000"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Fri Mar 05 15:35:35 2010 +0000"
      },
      "message": "Squashfs: get rid of obsolete definition in header file\n\nSigned-off-by: Phillip Lougher \u003cphillip@lougher.demon.co.uk\u003e\n"
    },
    {
      "commit": "ae4a3179b11a97a5b36a768ae6ac1662d0315ff0",
      "tree": "bd762d892c4abc6fcfc9bbec146452776c299f81",
      "parents": [
        "dc3256782f88602953676c447b243dedb1be99ad"
      ],
      "author": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Thu Feb 25 00:54:48 2010 +0000"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Fri Mar 05 15:35:20 2010 +0000"
      },
      "message": "Squashfs: get rid of obsolete variable in struct squashfs_sb_info\n\nSigned-off-by: Phillip Lougher \u003cphillip@lougher.demon.co.uk\u003e\n"
    },
    {
      "commit": "dc3256782f88602953676c447b243dedb1be99ad",
      "tree": "db94f1e5aa06f8260631a5a21bea332c1b6e14c8",
      "parents": [
        "4c0f0bb2351bee3de8dd7715ee199454a59f1230"
      ],
      "author": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Wed Oct 14 03:58:11 2009 +0100"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Wed Jan 20 21:47:48 2010 +0000"
      },
      "message": "Squashfs: add decompressor entries for lzma and lzo\n\nAdd knowledge of lzma/lzo compression formats to the decompressor\nframework.  For now these are added as unsupported.  Without\nthese entries lzma/lzo compressed filesystems will be flagged as\nhaving unknown compression which is undesirable.\n\nSigned-off-by: Phillip Lougher \u003cphillip@lougher.demon.co.uk\u003e\n"
    },
    {
      "commit": "4c0f0bb2351bee3de8dd7715ee199454a59f1230",
      "tree": "c552993587a8e87f7ebc0fe0955efdde94cc8884",
      "parents": [
        "f1a40359f8d8ba073257ed31a513e492621bcbc5"
      ],
      "author": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Tue Oct 06 04:04:15 2009 +0100"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Wed Jan 20 21:47:47 2010 +0000"
      },
      "message": "Squashfs: add a decompressor framework\n\nThis adds a decompressor framework which allows multiple compression\nalgorithms to be cleanly supported.\n\nAlso update zlib wrapper and other code to use the new framework.\n\nSigned-off-by: Phillip Lougher \u003cphillip@lougher.demon.co.uk\u003e\n"
    },
    {
      "commit": "f1a40359f8d8ba073257ed31a513e492621bcbc5",
      "tree": "313f81085e0e3e3606cecf4cc6ed4ead59cea3ee",
      "parents": [
        "e6a6d3795565b8ccb957afc6ca0e50db40b2d899"
      ],
      "author": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Wed Sep 23 19:04:49 2009 +0100"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Wed Jan 20 21:47:47 2010 +0000"
      },
      "message": "Squashfs: factor out remaining zlib dependencies into separate wrapper file\n\nMove zlib buffer init/destroy code into separate wrapper file.  Also\nmake zlib z_stream field a void * removing the need to include zlib.h\nfor most files.\n\nSigned-off-by: Phillip Lougher \u003cphillip@lougher.demon.co.uk\u003e\n"
    },
    {
      "commit": "e6a6d3795565b8ccb957afc6ca0e50db40b2d899",
      "tree": "5ab7020e28652f3db91dffcce06d5ec1723a4394",
      "parents": [
        "7284ce6c9f6153d1777df5f310c959724d1bd446"
      ],
      "author": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Tue Sep 22 19:25:24 2009 +0100"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Wed Jan 20 21:47:46 2010 +0000"
      },
      "message": "Squashfs: move zlib decompression wrapper code into a separate file\n\nSigned-off-by: Phillip Lougher \u003cphillip@lougher.demon.co.uk\u003e\n"
    },
    {
      "commit": "b87221de6a4934eda856475a0065688d12973a04",
      "tree": "6bcf0628e106c4833538f4c23d710fbbe3d7609a",
      "parents": [
        "0d54b217a247f39605361f867fefbb9e099a5432"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Mon Sep 21 17:01:09 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:24 2009 -0700"
      },
      "message": "const: mark remaining super_operations const\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "405f55712dfe464b3240d7816cc4fe4174831be2",
      "tree": "96c425ea7fa8b31058b8f83a433c5e5265c8ebc7",
      "parents": [
        "f9fabcb58a6d26d6efde842d1703ac7cfa9427b6"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Sat Jul 11 22:08:37 2009 +0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jul 12 12:22:34 2009 -0700"
      },
      "message": "headers: smp_lock.h redux\n\n* Remove smp_lock.h from files which don\u0027t need it (including some headers!)\n* Add smp_lock.h to files which do need it\n* Make smp_lock.h include conditional in hardirq.h\n  It\u0027s needed only for one kernel_locked() usage which is under CONFIG_PREEMPT\n\n  This will make hardirq.h inclusion cheaper for every PREEMPT\u003dn config\n  (which includes allmodconfig/allyesconfig, BTW)\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6cfd0148425e528b859b26e436b01f23f6926224",
      "tree": "60e3257053554ff198fe5825e6f12a00c3b4422a",
      "parents": [
        "a9e220f8322e2b0e0b8903fe00265461cffad3f0"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Tue May 05 15:40:36 2009 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:07 2009 -0400"
      },
      "message": "push BKL down into -\u003eput_super\n\nMove BKL into -\u003eput_super from the only caller.  A couple of\nfilesystems had trivial enough -\u003eput_super (only kfree and NULLing of\ns_fs_info + stuff in there) to not get any locking: coda, cramfs, efs,\nhugetlbfs, omfs, qnx4, shmem, all others got the full treatment.  Most\nof them probably don\u0027t need it, but I\u0027d rather sort that out individually.\nPreferably after all the other BKL pushdowns in that area.\n\n[AV: original used to move lock_super() down as well; these changes are\nremoved since we don\u0027t do lock_super() at all in generic_shutdown_super()\nnow]\n[AV: fuse, btrfs and xfs are known to need no damn BKL, exempt]\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "e5d287539dba264a1d9d7607a25b8c8c61c9d658",
      "tree": "e2066c4754d0662680abb6decaf1510930edb0a1",
      "parents": [
        "fffb47b80e8bb3f171ef02b90b1ae22c63983979"
      ],
      "author": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Wed May 13 03:25:20 2009 +0100"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Wed May 13 03:25:20 2009 +0100"
      },
      "message": "Squashfs: cody tidying, remove commented out line in Makefile\n\nSigned-off-by: Phillip Lougher \u003cphillip@lougher.demon.co.uk\u003e\n"
    },
    {
      "commit": "fffb47b80e8bb3f171ef02b90b1ae22c63983979",
      "tree": "0acc4268092856c30ed4640b42f3223593eda12f",
      "parents": [
        "a37b06d589f2c687a38d07569f4ef97c650fde39"
      ],
      "author": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Wed May 13 02:59:26 2009 +0100"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Wed May 13 02:59:26 2009 +0100"
      },
      "message": "Squashfs: check page size is not larger than the filesystem block size\n\nNormally the block size (by default 128K) will be larger than the\npage size, unless a non-standard block size has been specified in\nMksquashfs, and the page size is larger than 4K.\n\nSigned-off-by: Phillip Lougher \u003cphillip@lougher.demon.co.uk\u003e\n"
    },
    {
      "commit": "a37b06d589f2c687a38d07569f4ef97c650fde39",
      "tree": "596689185fb6ca381e185815a3f3179902cab9ba",
      "parents": [
        "1d80cac0fe44fb87b2a3d35fddd7f534ea81cd90"
      ],
      "author": {
        "name": "Doug Chapman",
        "email": "doug.chapman@hp.com",
        "time": "Wed May 13 02:56:39 2009 +0100"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Wed May 13 02:56:39 2009 +0100"
      },
      "message": "Squashfs: fix breakage when page size \u003e metadata block size\n\nSquashfs is broken on any system where the page size is larger than\nthe metadata size (8192).  This is easily fixed by ensuring cache-\u003epages\nis always \u003e 0.\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Doug Chapman \u003cdoug.chapman@hp.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Phillip Lougher \u003cphillip@lougher.demon.co.uk\u003e\n"
    },
    {
      "commit": "12fe32e4f942ac5c71a4ab70b039fee65c0dc29d",
      "tree": "b0878e49e9fab1fd154fde1dd57057391831b668",
      "parents": [
        "a63856252d2112e7c452696037a86ceb12f47f80",
        "2121db74ba0fd2259f0e2265511684fadda9ac49"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 06 13:30:00 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 06 13:30:00 2009 -0700"
      },
      "message": "Merge branch \u0027kmemtrace-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027kmemtrace-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  kmemtrace: trace kfree() calls with NULL or zero-length objects\n  kmemtrace: small cleanups\n  kmemtrace: restore original tracing data binary format, improve ABI\n  kmemtrace: kmemtrace_alloc() must fill type_id\n  kmemtrace: use tracepoints\n  kmemtrace, rcu: don\u0027t include unnecessary headers, allow kmemtrace w/ tracepoints\n  kmemtrace, rcu: fix rcupreempt.c data structure dependencies\n  kmemtrace, rcu: fix rcu_tree_trace.c data structure dependencies\n  kmemtrace, rcu: fix linux/rcutree.h and linux/rcuclassic.h dependencies\n  kmemtrace, mm: fix slab.h dependency problem in mm/failslab.c\n  kmemtrace, kbuild: fix slab.h dependency problem in lib/decompress_unlzma.c\n  kmemtrace, kbuild: fix slab.h dependency problem in lib/decompress_bunzip2.c\n  kmemtrace, kbuild: fix slab.h dependency problem in lib/decompress_inflate.c\n  kmemtrace, squashfs: fix slab.h dependency problem in squasfs\n  kmemtrace, befs: fix slab.h dependency problem\n  kmemtrace, security: fix linux/key.h header file dependencies\n  kmemtrace, fs: fix linux/fdtable.h header file dependencies\n  kmemtrace, fs: uninline simple_transaction_set()\n  kmemtrace, fs, security: move alloc_secdata() and free_secdata() to linux/security.h\n"
    },
    {
      "commit": "23516dc709914845f18fbe379b3524b8156e5c85",
      "tree": "83bfd021b4c8ad4d067620120226bccc03287263",
      "parents": [
        "c325962b68bbeeddcd4f755f7d34ada4d007b5f8"
      ],
      "author": {
        "name": "Pekka Enberg",
        "email": "penberg@cs.helsinki.fi",
        "time": "Tue Mar 24 10:56:39 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Apr 03 12:21:34 2009 +0200"
      },
      "message": "kmemtrace, squashfs: fix slab.h dependency problem in squasfs\n\nImpact: cleanup\n\nfs/squashfs/export.c depends on slab.h without including it:\n\n    CC      fs/squashfs/export.o\n  fs/squashfs/export.c: In function ‘squashfs_read_inode_lookup_table’:\n  fs/squashfs/export.c:133: error: implicit declaration of function ‘kmalloc’\n  fs/squashfs/export.c:133: warning: assignment makes pointer from integer without a cast\n  fs/squashfs/export.c:143: error: implicit declaration of function ‘kfree’\n  make[1]: *** [fs/squashfs/export.o] Error 1\n  make: *** [fs/squashfs/] Error 2\n\nIt gets included implicitly currently - but this will not be the\ncase with upcoming kmemtrace changes.\n\nSigned-off-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: Eduard - Gabriel Munteanu \u003ceduard.munteanu@linux360.ro\u003e\nLKML-Reference: \u003c1237884999.25315.41.camel@penberg-laptop\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "2fc7f562b439a361c62b9d8a67733a164fb6136f",
      "tree": "9b340f94fd0d14dde27efc42cbc91246c3a74983",
      "parents": [
        "651d0623045d3265a21ab9803b3a1e0f24a17461"
      ],
      "author": {
        "name": "Coly Li",
        "email": "coly.li@suse.de",
        "time": "Thu Apr 02 16:59:42 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 02 19:05:10 2009 -0700"
      },
      "message": "fs/squashfs: return f_fsid for statfs(2)\n\nMake squashfs return f_fsid info for statfs(2).\n\nSigned-off-by: Coly Li \u003ccoly.li@suse.de\u003e\nCc: Phillip Lougher \u003cphillip@lougher.demon.co.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "363911d027d1de1c6df79eb3f487f5476b9619f4",
      "tree": "6aa93b837f9719b0f51c11330f56288bc5acf51b",
      "parents": [
        "ebdcc81c71937b30e09110c02a1e8a21fa770b6f"
      ],
      "author": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Thu Mar 12 03:23:48 2009 +0000"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Thu Mar 12 03:23:48 2009 +0000"
      },
      "message": "Squashfs: Valid filesystems are flagged as bad by the corrupted fs patch\n\nThe corrupted filesystem patch added a check against zlib trying to\noutput too much data in the presence of data corruption.  This check\ntriggered if zlib_inflate asked to be called again (Z_OK) with\navail_out \u003d\u003d 0 and no more output buffers available.  This check proves\nto be rather dumb, as it incorrectly catches the case where zlib has\ngenerated all the output, but there are still input bytes to be processed.\n\nThis patch does a number of things.  It removes the original check and\nreplaces it with code to not move to the next output buffer if there\nare no more output buffers available, relying on zlib to error if it\nwants an extra output buffer in the case of data corruption.  It\nalso replaces the Z_NO_FLUSH flag with the more correct Z_SYNC_FLUSH\nflag, and makes the error messages more understandable to\nnon-technical users.\n\nSigned-off-by: Phillip Lougher \u003cphillip@lougher.demon.co.uk\u003e\nReported-by: Stefan Lippers-Hollmann \u003cs.L-H@gmx.de\u003e\n"
    },
    {
      "commit": "f4f8056a862a9950320429dfda708c88b4ce6025",
      "tree": "5dc5874e703b35864d328269f12ef9840fb10bb5",
      "parents": [
        "edf2e2811efa9304ebe14f778d33b764cfd58b7a"
      ],
      "author": {
        "name": "Roel Kluin",
        "email": "roel.kluin@gmail.com",
        "time": "Thu Mar 05 00:55:31 2009 +0000"
      },
      "committer": {
        "name": "Phillip Lougher",
        "email": "phillip@lougher.demon.co.uk",
        "time": "Thu Mar 05 00:55:31 2009 +0000"
      },
      "message": "Squashfs: frag_size should be signed, as it can hold an error result\n\nSigned-off-by: Roel Kluin \u003croel.kluin@gmail.com\u003e\nSigned-off-by: Phillip Lougher \u003cphillip@lougher.demon.co.uk\u003e\n"
    }
  ],
  "next": "118e1ef6fabfc023126e6075f6ac0fc729cb5285"
}
