)]}'
{
  "log": [
    {
      "commit": "dbe7f76dd6e7ed4991870f0c779d758b605d9787",
      "tree": "5c915198932698906ed689d495f8ec88c087d729",
      "parents": [
        "94547426db2f4f2aad2f640ca074ccb1c6f7e660"
      ],
      "author": {
        "name": "Uwe Kleine-König",
        "email": "ukleinek@informatik.uni-freiburg.de",
        "time": "Sat Oct 20 01:55:04 2007 +0200"
      },
      "committer": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Sat Oct 20 01:55:04 2007 +0200"
      },
      "message": "fix typo \"insted\" -\u003e \"instead\"\n\nSigned-off-by: Uwe Kleine-König \u003cukleinek@informatik.uni-freiburg.de\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\n"
    },
    {
      "commit": "96de0e252cedffad61b3cb5e05662c591898e69a",
      "tree": "e3eb7d3e65ec27d39e1da13a17f6f0f91b28f5e9",
      "parents": [
        "3f5b98a2a0cba3351f96fcaa6d79aa1a0d93ee78"
      ],
      "author": {
        "name": "Jan Engelhardt",
        "email": "jengelh@gmx.de",
        "time": "Fri Oct 19 23:21:04 2007 +0200"
      },
      "committer": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Fri Oct 19 23:21:04 2007 +0200"
      },
      "message": "Convert files to UTF-8 and some cleanups\n\n* Convert files to UTF-8.\n\n  * Also correct some people\u0027s names\n    (one example is Eißfeldt, which was found in a source file.\n    Given that the author used an ß at all in a source file\n    indicates that the real name has in fact a \u0027ß\u0027 and not an \u0027ss\u0027,\n    which is commonly used as a substitute for \u0027ß\u0027 when limited to\n    7bit.)\n\n  * Correct town names (Goettingen -\u003e Göttingen)\n\n  * Update Eberhard Mönkeberg\u0027s address (http://lkml.org/lkml/2007/1/8/313)\n\nSigned-off-by: Jan Engelhardt \u003cjengelh@gmx.de\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\n"
    },
    {
      "commit": "bfab36e81611e60573b84eb4e4b4c8d8545b2320",
      "tree": "acd151a4c85459dcd2f6575ceb385090ebaaf984",
      "parents": [
        "f26e51f67ae6a75ffc57b96cf5fe096f75e778cb"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cam.ac.uk",
        "time": "Fri Oct 12 09:37:15 2007 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 12 09:16:30 2007 -0700"
      },
      "message": "NTFS: Fix a mount time deadlock.\n\nBig thanks go to Mathias Kolehmainen for reporting the bug, providing\ndebug output and testing the patches I sent him to get it working.\n\nThe fix was to stop calling ntfs_attr_set() at mount time as that causes\nbalance_dirty_pages_ratelimited() to be called which on systems with\nlittle memory actually tries to go and balance the dirty pages which tries\nto take the s_umount semaphore but because we are still in fill_super()\nacross which the VFS holds s_umount for writing this results in a\ndeadlock.\n\nWe now do the dirty work by hand by submitting individual buffers.  This\nhas the annoying \"feature\" that mounting can take a few seconds if the\njournal is large as we have clear it all.  One day someone should improve\non this by deferring the journal clearing to a helper kernel thread so it\ncan be done in the background but I don\u0027t have time for this at the moment\nand the current solution works fine so I am leaving it like this for now.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8331191e56802f0155772a3d56bc2a750acc38e1",
      "tree": "556f3b8f395d7c66b9eca9d35309644b9f1c027d",
      "parents": [
        "a8b3485287731978899ced11f24628c927890e78"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Jan 18 09:42:48 2007 +0000"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Jan 18 09:42:48 2007 +0000"
      },
      "message": "NTFS: 2.1.28 - Fix deadlock reported by Sergey Vlasov due to ntfs_put_inode().\n\n- Fix deadlock in fs/ntfs/inode.c::ntfs_put_inode().  Thanks to Sergey\n  Vlasov for the report and detailed analysis of the deadlock.  The fix\n  involved getting rid of ntfs_put_inode() altogether and hence NTFS no\n  longer has a -\u003eput_inode super operation.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "4e5e529ad684f1b3fba957f5dd4eb7c2b534ee92",
      "tree": "fdd2fd4ef26dc758b28dfb13d56075129a2cbdec",
      "parents": [
        "834ba600cefe6847acaebe5e8e984476dfeebf55"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 23 16:57:48 2006 +0000"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Mar 23 16:57:48 2006 +0000"
      },
      "message": "NTFS: Semaphore to mutex conversion.\n\nThe conversion was generated via scripts, and the result was validated\nautomatically via a script as well.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "834ba600cefe6847acaebe5e8e984476dfeebf55",
      "tree": "55b67a2883e7ad67288ba7a2ad94ff195e7b6ed5",
      "parents": [
        "20fdcf1d543b1285ef8b1c1993a9221f2eda52dc"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Mar 23 16:25:23 2006 +0000"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Mar 23 16:25:23 2006 +0000"
      },
      "message": "NTFS: Handle the recently introduced -ENAMETOOLONG return value from\n      fs/ntfs/unistr.c::ntfs_nlstoucs() in fs/ntfs/namei.c::ntfs_lookup().\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "20fdcf1d543b1285ef8b1c1993a9221f2eda52dc",
      "tree": "476002aa4a3af68a5986ac38c51ab0f083d6c520",
      "parents": [
        "a778f217328a7391e0919b6463ec7f143851d12d"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Mar 23 16:21:02 2006 +0000"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Mar 23 16:21:02 2006 +0000"
      },
      "message": "NTFS: Add a missing call to flush_dcache_mft_record_page() in\n      fs/ntfs/inode.c::ntfs_write_inode().\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "a778f217328a7391e0919b6463ec7f143851d12d",
      "tree": "2f6837d70e52d9c3a46678c1efb975cd61a5dcf0",
      "parents": [
        "2c2c8c1c211c75d0cc9d7642a569ceac1aecd96d"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Mar 23 16:18:23 2006 +0000"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Mar 23 16:18:23 2006 +0000"
      },
      "message": "NTFS: Fix a bug in fs/ntfs/inode.c::ntfs_read_locked_index_inode() where we\n      forgot to update a temporary variable so loading index inodes which\n      have an index allocation attribute failed.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "2c2c8c1c211c75d0cc9d7642a569ceac1aecd96d",
      "tree": "59cc527665d49ec7882a03302f25bcb4bd69525d",
      "parents": [
        "d4faf636d6f8d8940174e38317161eb08a7a57ec"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Mar 23 16:09:40 2006 +0000"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Mar 23 16:09:40 2006 +0000"
      },
      "message": "NTFS: Improve comments on file attribute flags in fs/ntfs/layout.h.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "d4faf636d6f8d8940174e38317161eb08a7a57ec",
      "tree": "9d9b54e5c41fa5c4c1f4cd8f8d5e3363ec71ffde",
      "parents": [
        "f95c4018fd4b0bdef9b1bcb4eac7056e2a07282a"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Mar 23 16:05:11 2006 +0000"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Mar 23 16:05:11 2006 +0000"
      },
      "message": "NTFS: Limit name length in fs/ntfs/unistr.c::ntfs_nlstoucs() to maximum\n      allowed by NTFS, i.e. 255 Unicode characters, not including the\n      terminating NULL (which is not stored on disk).\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "f95c4018fd4b0bdef9b1bcb4eac7056e2a07282a",
      "tree": "44014b7cb3aff48f008033c23425ff2b37fed34b",
      "parents": [
        "a0646a1f04f1ec4c7514e5b00496b54e054a2c99"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Mar 23 15:59:32 2006 +0000"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Mar 23 15:59:32 2006 +0000"
      },
      "message": "NTFS: Remove all the make_bad_inode() calls.  This should only be called\n      from read inode and new inode code paths.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "a0646a1f04f1ec4c7514e5b00496b54e054a2c99",
      "tree": "2cdf9023dd85b968a1cd3e4150019e1bbac19f1a",
      "parents": [
        "949763b2b8822c6dc6da0d0e1d4af092152546c2"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Mar 23 15:53:03 2006 +0000"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Mar 23 15:53:03 2006 +0000"
      },
      "message": "NTFS: Add support for sparse files which have a compression unit of 0.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "949763b2b8822c6dc6da0d0e1d4af092152546c2",
      "tree": "241f024e5eb4e8aeb3aa89e0e3972211e3e1c07b",
      "parents": [
        "78264bd9c239237fe356c32d08abf8e52a2d8737"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Mar 23 15:34:13 2006 +0000"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Mar 23 15:34:13 2006 +0000"
      },
      "message": "NTFS: Fix comparison of $MFT and $MFTMirr to not bail out when there are\n      unused, invalid mft records which are the same in both $MFT and\n      $MFTMirr.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "78264bd9c239237fe356c32d08abf8e52a2d8737",
      "tree": "c06736b2677be53b7ec1aafe4e0ad9f42763e35a",
      "parents": [
        "3ccc7384db3d762e834dfdae13c1d6434b2fdeab"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Mar 23 15:06:18 2006 +0000"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Mar 23 15:06:18 2006 +0000"
      },
      "message": "NTFS: Use buffer_migrate_page() for the -\u003emigratepage function of all ntfs\n       address space operations.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "3ccc7384db3d762e834dfdae13c1d6434b2fdeab",
      "tree": "2bddfd2b0c5e1f2098c95d0c6bd611e33971591d",
      "parents": [
        "67b1dfe77a2eb2a88b37cd77b8979cbdb7695bd6"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Mar 23 15:03:11 2006 +0000"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Mar 23 15:03:11 2006 +0000"
      },
      "message": "NTFS: Fix a buggette in an \"should be impossible\" case handling where we\n      continued the attribute lookup loop instead of aborting it.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "67b1dfe77a2eb2a88b37cd77b8979cbdb7695bd6",
      "tree": "95383ef7826a451dea08d58518219ce30b96880d",
      "parents": [
        "b4d8d1a93c6ea042b29bb66fbb1cf6bc556c18f7"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Mar 23 14:57:43 2006 +0000"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Mar 23 14:57:43 2006 +0000"
      },
      "message": "NTFS: Fix an (innocent) off-by-one error in the runlist code.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "1cf3109ffb26a6ea572fd02436bd10458b4b2187",
      "tree": "446f6e1c2160565f8dd1bf4da0e211c00fcce284",
      "parents": [
        "78af34f03d33d2ba179c9d35685860170b94a285"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Fri Feb 24 10:48:14 2006 +0000"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Fri Feb 24 10:48:14 2006 +0000"
      },
      "message": "NTFS: Do more detailed reporting of why we cannot mount read-write by\n     special casing the VOLUME_MODIFIED_BY_CHKDSK flag.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "78af34f03d33d2ba179c9d35685860170b94a285",
      "tree": "dc41d99f07193a581e7dd3734671c3854aa185eb",
      "parents": [
        "7b875affd49fbc8978a1a898a0a80ebfff11f8c6"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Fri Feb 24 10:32:33 2006 +0000"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Fri Feb 24 10:32:33 2006 +0000"
      },
      "message": "NTFS: Implement support for sector sizes above 512 bytes (up to the maximum\n      supported by NTFS which is 4096 bytes).\n"
    },
    {
      "commit": "3672b638ec1d5b1020ea27986060b830f09c96c1",
      "tree": "dca562635528062a8c04c416978a1133b95310fc",
      "parents": [
        "fab8d6ddf6dee2608869005d45fe97f70e4f5bdd"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Fri Feb 24 09:55:07 2006 +0000"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Fri Feb 24 09:55:07 2006 +0000"
      },
      "message": "NTFS: - Cope with attribute list attribute having invalid flags.\n\tWindows copes with this and even chkdsk does not detect or fix this\n\tso we have to cope with it, too.  Thanks to Pawel Kot for reporting\n\tthe problem.\n      - Miscellaneous updates to layout.h.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "f4b09ebc8baa51ec8394c4173e3de9d62b2cc97a",
      "tree": "d91c611e6f43e1775f584f796c6990d746d4ef6c",
      "parents": [
        "e3e1bfe4f28de86d065bc041456161a3f3a9aef7"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Tue Jan 03 13:37:51 2006 +0100"
      },
      "committer": {
        "name": "Adrian Bunk",
        "email": "bunk@r063144.stusta.swh.mhn.de",
        "time": "Tue Jan 03 13:37:51 2006 +0100"
      },
      "message": "update the email address of Randy Dunlap\n\nThis patch removes all references to the bouncing address\nrddunlap@osdl.org and one dead web page from the kernel.\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nAcked-by: Randy Dunlap \u003crdunlap@xenotime.net\u003e\n"
    },
    {
      "commit": "c9c2009a4e915db17f32701d1f0535b400e61b58",
      "tree": "bc91f1853e1b14069b00c52f7a7cfada55280254",
      "parents": [
        "dda65b941f992ab10fda3d9f09539c68206b7114"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Mon Oct 24 09:00:51 2005 +0100"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Mon Oct 24 09:00:51 2005 +0100"
      },
      "message": "NTFS: Document extended attribute ($EA) NEED_EA flag.  (Based on libntfs\n      patch by Yura Pakhuchiy.)\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "dda65b941f992ab10fda3d9f09539c68206b7114",
      "tree": "27468ef642b1d6e7a8b3c7f7f9a842e5ad92456e",
      "parents": [
        "d04bd1fb60252f30f4f41a56613ade48df130588"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Mon Oct 24 08:57:59 2005 +0100"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Mon Oct 24 08:57:59 2005 +0100"
      },
      "message": "NTFS: Fix compilation warnings with gcc-4.0.2 on SUSE 10.0.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "d04bd1fb60252f30f4f41a56613ade48df130588",
      "tree": "53086f94589ecf35912e47fa14b8d8a5bc4714c0",
      "parents": [
        "d5aeaef37dc9cb009ab5cb8abf325338d21d2b1a"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Mon Oct 24 08:41:24 2005 +0100"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Mon Oct 24 08:41:24 2005 +0100"
      },
      "message": "NTFS: Use %z for size_t to fix compilation warnings.  (Andrew Morton)\n\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "7d0ffdb279105d9a87b447758ce4a634496abfd1",
      "tree": "66bd4d6307a81ae65a01acace5fd8ae6f5a30032",
      "parents": [
        "e087a412b45543a87497f0a213dbd5d55099f267"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Wed Oct 19 12:21:19 2005 +0100"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Wed Oct 19 12:21:19 2005 +0100"
      },
      "message": "NTFS: $EA attributes can be both resident non-resident.\n      Minor tidying.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "98b270362bb9ea6629732e7f5b65b8a6ce4743c7",
      "tree": "2ca1f46a426628a16cc8cef2a4d4fba657d7ac1f",
      "parents": [
        "29f5f3c141c58b0a4c0765c77da612271875bcce"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Tue Oct 11 15:40:40 2005 +0100"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Tue Oct 11 15:40:40 2005 +0100"
      },
      "message": "NTFS: The big ntfs write(2) rewrite has arrived.  We now implement our own\n      file operations -\u003ewrite(), -\u003eaio_write(), and -\u003ewritev() for regular\n      files.  This replaces the old use of generic_file_write(), et al and\n      the address space operations -\u003eprepare_write and -\u003ecommit_write.\n      This means that both sparse and non-sparse (unencrypted and\n      uncompressed) files can now be extended using the normal write(2)\n      code path.  There are two limitations at present and these are that\n      we never create sparse files and that we only have limited support\n      for highly fragmented files, i.e. ones whose data attribute is split\n      across multiple extents.   When such a case is encountered,\n      EOPNOTSUPP is returned.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "29b8990513b077dc388b0756acd31465e5c21441",
      "tree": "b7de34b7cf3c33d99af1579433f7e2b66a4cd37f",
      "parents": [
        "29d8699ebb1e8948a612306c69e6d9c4ef23342f"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Tue Oct 11 14:54:42 2005 +0100"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Tue Oct 11 14:54:42 2005 +0100"
      },
      "message": "NTFS: In attrib.c::ntfs_attr_set() call balance_dirty_pages_ratelimited()\n      and cond_resched() in the main loop as we could be dirtying a lot of\n      pages and this ensures we play nice with the VM and the system as a\n      whole.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "e9438250b635f7832e99a8c8d2e394dd1522ce65",
      "tree": "e91de9667aa45e9f02387a2dc013982af245d029",
      "parents": [
        "dd072330d1a60be11a5c284fa1e645350750a4fc"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Tue Oct 04 16:01:06 2005 +0100"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Tue Oct 04 16:01:06 2005 +0100"
      },
      "message": "NTFS: Enable ATTR_SIZE attribute changes in ntfs_setattr().  This completes\n      the initial implementation of file truncation.  Now both open(2)ing\n      a file with the O_TRUNC flag and the {,f}truncate(2) system calls\n      will resize a file appropriately.  The limitations are that only\n      uncompressed and unencrypted files are supported.  Also, there is\n      only very limited support for highly fragmented files (the ones whose\n      $DATA attribute is split into multiple attribute extents).\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "dd072330d1a60be11a5c284fa1e645350750a4fc",
      "tree": "d0282b4667e3fcedc893802bd54c90c9e12b2dc7",
      "parents": [
        "2d86829b846d1447a6ab5af4060fc9f301521317"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Tue Oct 04 15:39:02 2005 +0100"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Tue Oct 04 15:39:02 2005 +0100"
      },
      "message": "NTFS: Implement fs/ntfs/inode.[hc]::ntfs_truncate().  It only supports\n      uncompressed and unencrypted files.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "2d86829b846d1447a6ab5af4060fc9f301521317",
      "tree": "deec965c0fb9681376fc4317846eaf5d0e922f21",
      "parents": [
        "2a6fc4e1b0f7d2ec3711d5b1782fb30f78cca765"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Tue Oct 04 15:18:56 2005 +0100"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Tue Oct 04 15:18:56 2005 +0100"
      },
      "message": "NTFS: Add fs/ntfs/attrib.[hc]::ntfs_attr_extend_allocation(), a function to\n      extend the allocation of an attributes.  Optionally, the data size,\n      but not the initialized size can be extended, too.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "2a6fc4e1b0f7d2ec3711d5b1782fb30f78cca765",
      "tree": "a123e9bb2c7d17aade84b1d1cc2decafdeace121",
      "parents": [
        "8925d4f0d3479b9c5ed7e49acc648beccca95f21"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Tue Oct 04 14:57:15 2005 +0100"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Tue Oct 04 14:57:15 2005 +0100"
      },
      "message": "NTFS: Fix ntfs_attr_make_non_resident() to update the vfs inode i_blocks\n      which is zero for a resident attribute but should no longer be zero\n      once the attribute is non-resident as it then has real clusters\n      allocated.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "8925d4f0d3479b9c5ed7e49acc648beccca95f21",
      "tree": "fc740f0fbc17edc8b855c27c02d074679a0f0f03",
      "parents": [
        "fc0fa7dc7d243afabdb3fb6a11d59a944a9c91f8"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Tue Oct 04 14:48:20 2005 +0100"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Tue Oct 04 14:48:20 2005 +0100"
      },
      "message": "NTFS: Change ntfs_attr_make_non_resident to take the attribute value size\n      as an extra parameter.  This is needed since we need to know the size\n      before we can map the mft record and our callers always know it.  The\n      reason we cannot simply read the size from the vfs inode i_size is\n      that this is not necessarily uptodate.  This happens when\n      ntfs_attr_make_non_resident() is called in the -\u003etruncate call path.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "fc0fa7dc7d243afabdb3fb6a11d59a944a9c91f8",
      "tree": "67f28282e658eba6ed0daac0553a77f8352c21bc",
      "parents": [
        "511bea5ea2b2b330e67c9e58ffb5027caebf9052"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Tue Oct 04 14:36:56 2005 +0100"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Tue Oct 04 14:36:56 2005 +0100"
      },
      "message": "NTFS: - Change ntfs_cluster_alloc() to take an extra boolean parameter\n        specifying whether the cluster are being allocated to extend an\n        attribute or to fill a hole.\n      - Change ntfs_attr_make_non_resident() to call ntfs_cluster_alloc()\n        with @is_extension set to TRUE and remove the runlist terminator\n        fixup code as this is now done by ntfs_cluster_alloc().\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "511bea5ea2b2b330e67c9e58ffb5027caebf9052",
      "tree": "142b89f44ebb15f2db326a246e0eb6c454ade6e7",
      "parents": [
        "69b41e3c0223bd38cf23e3d8f1385963089fbf22"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Tue Oct 04 14:24:21 2005 +0100"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Tue Oct 04 14:24:21 2005 +0100"
      },
      "message": "NTFS: - Change {__,}ntfs_cluster_free() to also take an optional attribute\n        search context as argument.  This allows calling it with the mft\n        record mapped.  Update all callers.\n      - Fix potential deadlock in ntfs_mft_data_extend_allocation_nolock()\n\terror handling by passing in the active search context when calling\n\tntfs_cluster_free().\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "69b41e3c0223bd38cf23e3d8f1385963089fbf22",
      "tree": "6a1fc55f654d6f7cb745bba032115d5590cc5931",
      "parents": [
        "fd9d63678d42ffd4312815ac720a12920642eb36"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Tue Oct 04 14:01:14 2005 +0100"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Tue Oct 04 14:01:14 2005 +0100"
      },
      "message": "NTFS: Change ntfs_attr_find_vcn_nolock() to also take an optional attribute\n      search context as argument.  This allows calling it with the mft\n      record mapped.  Update all callers.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "fd9d63678d42ffd4312815ac720a12920642eb36",
      "tree": "34dcdb5b47c9d89b4dbc8c98cd93617bb14eaca7",
      "parents": [
        "c394e458b69632902d65f9e2f39df79314f72908"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Tue Oct 04 13:44:48 2005 +0100"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Tue Oct 04 13:44:48 2005 +0100"
      },
      "message": "NTFS: Change ntfs_map_runlist_nolock() to also take an optional attribute\n      search context.  This allows calling it with the mft record mapped.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "18efefa9355119b4f6d9b73b074ebbf9882c37c3",
      "tree": "06be664fb85896e6506c3cc8e79ba33e963ce79c",
      "parents": [
        "ed39f731ab2e77e58122232f6e27333331d7793d"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Tue Oct 04 13:06:00 2005 +0100"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Tue Oct 04 13:06:00 2005 +0100"
      },
      "message": "NTFS: Fix a stupid bug in __ntfs_bitmap_set_bits_in_run() which caused the\n      count to become negative and hence we had a wild memset() scribbling\n      all over the system\u0027s ram.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "5a8c0cc32bb6e029cd9c36f655c6b0955b0d9967",
      "tree": "115b84c84ba7aa031c5db8f6e3988ba90f3849b9",
      "parents": [
        "838bf9675a3d1ede01408aa105357b9ab43faf1b"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Mon Sep 26 10:48:54 2005 +0100"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Mon Sep 26 10:48:54 2005 +0100"
      },
      "message": "NTFS: More $LogFile handling fixes: when chkdsk has been run, it can leave the\n      restart pages in the journal without multi sector transfer protection\n      fixups (i.e. the update sequence array is empty and in fact does not\n      exist).\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "715dc636b64b57aee7aee7e8b5bf4f5267a6df48",
      "tree": "967c70011391cb38e232015902189623eb9c5193",
      "parents": [
        "91fbc6edfa7086b5fcdb74ea82ab747104541f1f"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Fri Sep 23 11:24:28 2005 +0100"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Fri Sep 23 11:24:28 2005 +0100"
      },
      "message": "NTFS: Change ntfs_cluster_free() to require a write locked runlist on entry\n      since we otherwise get into a lock reversal deadlock if a read locked\n      runlist is passed in. In the process also change it to take an ntfs\n      inode instead of a vfs inode as parameter.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "91fbc6edfa7086b5fcdb74ea82ab747104541f1f",
      "tree": "37fc00d0402e634d9de6b880098bba68bdc2da78",
      "parents": [
        "efb0372bbaf5b829ff8c39db372779928af542a7"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Sep 22 13:26:44 2005 +0100"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Sep 22 13:26:44 2005 +0100"
      },
      "message": "NTFS: Fix sparse warnings that have crept in over time.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "5c9f6de3b80ca46000bd1b63d892820f9ee32138",
      "tree": "a4ed592a130837cf35052c6496073b4b93f58355",
      "parents": [
        "065d9cac98a5406ecd5a1368f8fd38f55739dee9"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Mon Sep 19 09:33:40 2005 +0100"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Mon Sep 19 09:33:40 2005 +0100"
      },
      "message": "NTFS: Fix various bugs in the runlist merging code.  (Based on libntfs\n      changes by Richard Russon.)\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "89ecf38c7aee6eb3f6aaf40a6d196ddff4b6d4a8",
      "tree": "5ef720a9cb7fa8320e4a813ce53bcb82c2d42aff",
      "parents": [
        "5d46770f5f8bb0eff0a82596860958be13e7baf1"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Mon Sep 12 15:43:03 2005 +0100"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Mon Sep 12 15:43:03 2005 +0100"
      },
      "message": "NTFS: Mask out __GFP_HIGHMEM when doing kmalloc() in __ntfs_malloc() as it\n      otherwise causes a BUG().\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "5d46770f5f8bb0eff0a82596860958be13e7baf1",
      "tree": "72e99a7eb6cc236706b056dc0af53e9b5d78d899",
      "parents": [
        "c93a777103263c2a610a49771c6336f7a53d8ab7"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Mon Sep 12 14:33:47 2005 +0100"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Mon Sep 12 14:33:47 2005 +0100"
      },
      "message": "NTFS: Change the mount options {u,f,d}mask to always parse the number as\n      an octal number to conform to how chmod(1) works, too.  Thanks to\n      Giuseppe Bilotta and Horst von Brand for pointing out the errors of\n      my ways.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "7d333d6c739a5cd6d60102ea1a9940cbbb0546ec",
      "tree": "aa8563971adea0f7b2bdb91cda07057e2a85722e",
      "parents": [
        "e604635c8bea16f6177e6133eb3efbfb4a029ef6"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Sep 08 23:01:16 2005 +0100"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Sep 08 23:01:16 2005 +0100"
      },
      "message": "NTFS: 2.1.24 release and some minor final fixes.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "e604635c8bea16f6177e6133eb3efbfb4a029ef6",
      "tree": "d0d7237d58ee4200123701c61ffb35a88872c04c",
      "parents": [
        "a01ac532b519dc0e0b4d8bc4e12373e4e4cd1b1a"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Sep 08 22:13:02 2005 +0100"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Sep 08 22:13:02 2005 +0100"
      },
      "message": "NTFS: Improve scalability by changing the driver global spin lock in\n      fs/ntfs/aops.c::ntfs_end_buffer_async_read() to a bit spin lock\n      in the first buffer head of a page.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "a01ac532b519dc0e0b4d8bc4e12373e4e4cd1b1a",
      "tree": "6d6021b5f951790b32f332d05106b9ff82ebb5a1",
      "parents": [
        "311120eca0013083f5eb0aff13ffb8aa9fdd050c"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Sep 08 22:08:11 2005 +0100"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Sep 08 22:08:11 2005 +0100"
      },
      "message": "NTFS: Fix page_has_buffers()/page_buffers() handling in fs/ntfs/aops.c.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "311120eca0013083f5eb0aff13ffb8aa9fdd050c",
      "tree": "f93f77b4fc129b45d7b72c180e9e30a592959d4e",
      "parents": [
        "8273d5d4c28a9fde68f830cc6ff61e37e8ae1dca"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Sep 08 22:04:20 2005 +0100"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Sep 08 22:04:20 2005 +0100"
      },
      "message": "NTFS: Fixup handling of sparse, compressed, and encrypted attributes in\n      fs/ntfs/aops.c::ntfs_readpage().\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "8273d5d4c28a9fde68f830cc6ff61e37e8ae1dca",
      "tree": "d4abd74f9b9b5ea9d84f1b9bcfe80e75f72f36d3",
      "parents": [
        "54b02eb01c0172294e43e2b54d6815f65637c111"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Sep 08 22:00:33 2005 +0100"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Sep 08 22:00:33 2005 +0100"
      },
      "message": "NTFS: Fix fs/ntfs/aops.c::ntfs_{read,write}_block() to handle the case\n      where a concurrent truncate has truncated the runlist under our feet.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "54b02eb01c0172294e43e2b54d6815f65637c111",
      "tree": "0dec3c7f9553f96e3edeab769077723d1ab922e1",
      "parents": [
        "bd45fdd209ca49c5010ac9af469c41ae6dd3f145"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Sep 08 21:43:47 2005 +0100"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Sep 08 21:43:47 2005 +0100"
      },
      "message": "NTFS: Optimize fs/ntfs/aops.c::ntfs_write_block() by extending the page\n      lock protection over the buffer submission for i/o which allows the\n      removal of the get_bh()/put_bh() pairs for each buffer.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "bd45fdd209ca49c5010ac9af469c41ae6dd3f145",
      "tree": "eae397a23bda1ae88b2923a54751a22c46e23f72",
      "parents": [
        "8dcdebafb848415eae25924b00c4f0b9ec907da0"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Sep 08 21:38:05 2005 +0100"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Sep 08 21:38:05 2005 +0100"
      },
      "message": "NTFS: Fixup handling of sparse, compressed, and encrypted attributes in\n      fs/ntfs/aops.c::ntfs_writepage().\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "8dcdebafb848415eae25924b00c4f0b9ec907da0",
      "tree": "5e7289dca23148d6b157817c6272c0fc3460f449",
      "parents": [
        "67bb103725e4cde322cb4ddb160a12933c5c7072"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Sep 08 21:25:48 2005 +0100"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Sep 08 21:25:48 2005 +0100"
      },
      "message": "NTFS: Make ntfs_write_block() not instantiate sparse blocks if they are zero.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "67bb103725e4cde322cb4ddb160a12933c5c7072",
      "tree": "161c6d47cf8029acd650f946c2492fec1c2ee7d0",
      "parents": [
        "1c7d469d47668f4664b892a6cd1c452a0c02d710"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Sep 08 21:19:45 2005 +0100"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Sep 08 21:19:45 2005 +0100"
      },
      "message": "NTFS: Fixup handling of sparse, compressed, and encrypted attributes in\n      fs/ntfs/inode.c::ntfs_read_locked_{,attr_,index_}inode().\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "1c7d469d47668f4664b892a6cd1c452a0c02d710",
      "tree": "b91793f34092eaa312d9f96bed80af8dfd19ad6f",
      "parents": [
        "bbf1813fb8ff9d21171bf22e6d1f0e0393601e86"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Sep 08 21:15:09 2005 +0100"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Sep 08 21:15:09 2005 +0100"
      },
      "message": "NTFS: Truncate {a,c,m}time to the ntfs supported time granularity when\n      updating the times in the inode in ntfs_setattr().\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "bbf1813fb8ff9d21171bf22e6d1f0e0393601e86",
      "tree": "2b8474019c1320df290d5df03514eaed56e44cc6",
      "parents": [
        "807c453de7c5487d2e5eece76bafdea8f39d249e"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Sep 08 21:09:06 2005 +0100"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Sep 08 21:09:06 2005 +0100"
      },
      "message": "NTFS: Fix cluster (de)allocators to work when the runlist is NULL and more\n      importantly to take a locked runlist rather than them locking it\n      which leads to lock reversal.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "807c453de7c5487d2e5eece76bafdea8f39d249e",
      "tree": "3930ef9ddf9c754517bef4c6cf9969d888300ecd",
      "parents": [
        "2983d1bd1a596e88cdddc0c2d45b9e97728f3f41"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Sep 08 21:01:17 2005 +0100"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Sep 08 21:01:17 2005 +0100"
      },
      "message": "NTFS: Fix handling of sparse attributes in ntfs_attr_make_non_resident().\n      Also, add BUG() checks to ntfs_attr_make_non_resident() and\n      ntfs_attr_set() to ensure that these functions are never called\n      for compressed or encrypted attributes.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "2983d1bd1a596e88cdddc0c2d45b9e97728f3f41",
      "tree": "ae064cdea63edcf081ed9bc7a746426e28488e11",
      "parents": [
        "0aacceacf35451ffb771ec825555e98c5dce8b01"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Sep 08 20:56:09 2005 +0100"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Sep 08 20:56:09 2005 +0100"
      },
      "message": "NTFS: Fix several bugs in fs/ntfs/attrib.c.\n\n- Fix a bug in ntfs_map_runlist_nolock() where we forgot to protect\n  access to the allocated size in the ntfs inode with the size lock.\n- Fix ntfs_attr_vcn_to_lcn_nolock() and ntfs_attr_find_vcn_nolock() to\n  return LCN_ENOENT when there is no runlist and the allocated size is\n  zero.\n- Fix load_attribute_list() to handle the case of a NULL runlist.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "0aacceacf35451ffb771ec825555e98c5dce8b01",
      "tree": "91ee974bcc56bf4bb55352098fa1b69131a2fe89",
      "parents": [
        "f25dfb5e44fa8641961780d681bc1871abcfb861"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Sep 08 20:40:32 2005 +0100"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Sep 08 20:40:32 2005 +0100"
      },
      "message": "NTFS: Add fs/ntfs/attrib.[hc]::ntfs_resident_attr_value_resize().\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "f25dfb5e44fa8641961780d681bc1871abcfb861",
      "tree": "f51bfcdd7baa9ee52f27bf196a32e44ee5cb5d5a",
      "parents": [
        "8e08ceaeacd5d300aaad166f2eef8bfc37e09831"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Sep 08 20:35:33 2005 +0100"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Sep 08 20:35:33 2005 +0100"
      },
      "message": "NTFS: Remove bogus setting of PageError in ntfs_read_compressed_block().\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "8e08ceaeacd5d300aaad166f2eef8bfc37e09831",
      "tree": "ab4bb4330cf47b188c5aa02c58d9fa04d93d348d",
      "parents": [
        "6e48321a40610f7213e3ac75ba234f6f8b3ed5f5"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Sep 08 20:29:50 2005 +0100"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Sep 08 20:29:50 2005 +0100"
      },
      "message": "NTFS: Fix a bug in fs/ntfs/index.c::ntfs_index_lookup().  When the returned\n      index entry is in the index root, we forgot to set the @ir pointer in\n      the index context.  Thanks for Yura Pakhuchiy for finding this bug.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "6e48321a40610f7213e3ac75ba234f6f8b3ed5f5",
      "tree": "6ba4b289e1fd0c8a3554a75206c4d2a88b54d1bc",
      "parents": [
        "3ffc5a443824fcf426d8d35dc632acc4dd9fb6d1"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Sep 08 20:26:34 2005 +0100"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Sep 08 20:26:34 2005 +0100"
      },
      "message": "NTFS: Add ntfs_rl_punch_nolock() which punches a caller specified hole into a runlist.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "3ffc5a443824fcf426d8d35dc632acc4dd9fb6d1",
      "tree": "7d8108fed6ed170766ffc0bd95945c69498e740a",
      "parents": [
        "f94ad38e68e1623660fdbb063d0c580ba6661c29"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Sep 08 20:23:06 2005 +0100"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Sep 08 20:23:06 2005 +0100"
      },
      "message": "NTFS: Change ntfs_rl_truncate_nolock() to throw away the runlist if the new\n      length is zero.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "f94ad38e68e1623660fdbb063d0c580ba6661c29",
      "tree": "e1ba4ba85b82c636b7c9fd2645422a485a6bf40b",
      "parents": [
        "2b0ada2b8e086c267dd116a39ad41ff0a717b665"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Sep 08 17:04:11 2005 +0100"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Sep 08 17:04:11 2005 +0100"
      },
      "message": "NTFS: Report unrepresentable inodes during ntfs_readdir() as KERN_WARNING\n      messages and include the inode number.  Thanks to Yura Pakhuchiy for\n      pointing this out.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "2b0ada2b8e086c267dd116a39ad41ff0a717b665",
      "tree": "37bf95af38d5a829edb322663d26df69a1287b94",
      "parents": [
        "8bb735216a0675e247bbe8b8b92c09d6884d1a17"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Sep 08 16:52:31 2005 +0100"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Sep 08 16:52:31 2005 +0100"
      },
      "message": "NTFS: Fix handling of valid but empty mapping pairs array in\n      fs/ntfs/runlist.c::ntfs_mapping_pairs_decompress().\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "8bb735216a0675e247bbe8b8b92c09d6884d1a17",
      "tree": "7d98e06d0f093e205f21090a123617f2913cb7b3",
      "parents": [
        "84d6ebe63f50b6efd8be252b58a207132157c60f"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Sep 08 16:48:28 2005 +0100"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Sep 08 16:48:28 2005 +0100"
      },
      "message": "NTFS: Remove two bogus BUG_ON()s from fs/ntfs/mft.c.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "84d6ebe63f50b6efd8be252b58a207132157c60f",
      "tree": "5e78199877a800c92528c2ed0272c863d2c9733c",
      "parents": [
        "9529d461d0992959026264b8fc002ac01d226708"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Sep 08 16:46:55 2005 +0100"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Sep 08 16:46:55 2005 +0100"
      },
      "message": "NTFS: Fix two nasty runlist merging bugs that had gone unnoticed so far.\n      Thanks to Stefano Picerno for the bug report.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "9529d461d0992959026264b8fc002ac01d226708",
      "tree": "25e08068af33bf8fe05cdca944e0100642b87190",
      "parents": [
        "06d0e3cf3d527f927681773c6ffbe697ccc5db7f"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Sep 08 16:33:12 2005 +0100"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Sep 08 16:33:12 2005 +0100"
      },
      "message": "NTFS: Use ntfs_malloc_nofs_nofail() in runlist.c::ntfs_runlists_merge()\n      in the two critical regions.  This means we no longer need to\n      panic() when the allocation fails as it now cannot fail.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "06d0e3cf3d527f927681773c6ffbe697ccc5db7f",
      "tree": "e9692f00331c8951752785481c893d242bf9a29d",
      "parents": [
        "e7a1033b946f4f2622f2b338ab107f559aad542c"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Sep 08 16:28:25 2005 +0100"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Sep 08 16:28:25 2005 +0100"
      },
      "message": "NTFS: Allow highmem kmalloc() in ntfs_malloc_nofs() and add _nofail() version.\n\n- Modify fs/ntfs/malloc.h::ntfs_malloc_nofs() to do the kmalloc() based\n  allocations with __GFP_HIGHMEM, analogous to how the vmalloc() based\n  allocations are done.\n- Add fs/ntfs/malloc.h::ntfs_malloc_nofs_nofail() which is analogous to\n  ntfs_malloc_nofs() but it performs allocations with __GFP_NOFAIL and\n  hence cannot fail.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "e7a1033b946f4f2622f2b338ab107f559aad542c",
      "tree": "333b235d6903392d269e0e5cab807631ab652854",
      "parents": [
        "caf39e87cc1182f7dae84eefc43ca14d54c78ef9"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Sep 08 16:12:28 2005 +0100"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Sep 08 16:12:28 2005 +0100"
      },
      "message": "NTFS: Support more clean journal ($LogFile) states.\n\n      - Support journals ($LogFile) which have been modified by chkdsk.  This\n        means users can boot into Windows after we marked the volume dirty.\n        The Windows boot will run chkdsk and then reboot.  The user can then\n        immediately boot into Linux rather than having to do a full Windows\n        boot first before rebooting into Linux and we will recognize such a\n        journal and empty it as it is clean by definition.\n      - Support journals ($LogFile) with only one restart page as well as\n        journals with two different restart pages.  We sanity check both and\n        either use the only sane one or the more recent one of the two in the\n        case that both are valid.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "481d0374217f3fefaf98efbd8d21d73c138dd928",
      "tree": "a48cb569e03337a3ae0ffed5b30bc60c991fb498",
      "parents": [
        "cf59001235c5a36f3e3701bd593a78cf955a4242"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Tue Aug 16 19:42:56 2005 +0100"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Tue Aug 16 19:42:56 2005 +0100"
      },
      "message": "NTFS: Complete the previous fix for the unset device when mapping buffers\n      for  mft record writing.  I had missed the writepage based mft record\n      write code path.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "e74589ac250e463973361774a90fee2c9d71da02",
      "tree": "d66e3870b1ad88cd174628411fd8e85a6af0fdc4",
      "parents": [
        "3edea4833a1efcd43e1dff082bc8001fdfe74b34"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Tue Aug 16 16:38:28 2005 +0100"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Tue Aug 16 16:38:28 2005 +0100"
      },
      "message": "NTFS: Fix bug in mft record writing where we forgot to set the device in\n      the buffers when mapping them after the VM had discarded them.\n      Thanks to Martin MOKREJŠ for the bug report.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "ba6d2377c85c9b8a793f455d8c9b6cf31985d70f",
      "tree": "21e65c76db693869c84864af02e91c4b997a6ba5",
      "parents": [
        "af859a42d798f047fbfe198ed315a942662c39d2"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Sun Jun 26 22:12:02 2005 +0100"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Sun Jun 26 22:12:02 2005 +0100"
      },
      "message": "NTFS: Fix a nasty deadlock that appeared in recent kernels.\n      The situation: VFS inode X on a mounted ntfs volume is dirty.  For\n      same inode X, the ntfs_inode is dirty and thus corresponding on-disk\n      inode, i.e. mft record, which is in a dirty PAGE_CACHE_PAGE belonging\n      to the table of inodes, i.e. $MFT, inode 0.\n      What happens:\n      Process 1: sys_sync()/umount()/whatever...  calls\n      __sync_single_inode() for $MFT -\u003e do_writepages() -\u003e write_page for\n      the dirty page containing the on-disk inode X, the page is now locked\n      -\u003e ntfs_write_mst_block() which clears PageUptodate() on the page to\n      prevent anyone else getting hold of it whilst it does the write out.\n      This is necessary as the on-disk inode needs \"fixups\" applied before\n      the write to disk which are removed again after the write and\n      PageUptodate is then set again.  It then analyses the page looking\n      for dirty on-disk inodes and when it finds one it calls\n      ntfs_may_write_mft_record() to see if it is safe to write this\n      on-disk inode.  This then calls ilookup5() to check if the\n      corresponding VFS inode is in icache().  This in turn calls ifind()\n      which waits on the inode lock via wait_on_inode whilst holding the\n      global inode_lock.\n      Process 2: pdflush results in a call to __sync_single_inode for the\n      same VFS inode X on the ntfs volume.  This locks the inode (I_LOCK)\n      then calls write-inode -\u003e ntfs_write_inode -\u003e map_mft_record() -\u003e\n      read_cache_page() for the page (in page cache of table of inodes\n      $MFT, inode 0) containing the on-disk inode.  This page has\n      PageUptodate() clear because of Process 1 (see above) so\n      read_cache_page() blocks when it tries to take the page lock for the\n      page so it can call ntfs_read_page().\n      Thus Process 1 is holding the page lock on the page containing the\n      on-disk inode X and it is waiting on the inode X to be unlocked in\n      ifind() so it can write the page out and then unlock the page.\n      And Process 2 is holding the inode lock on inode X and is waiting for\n      the page to be unlocked so it can call ntfs_readpage() or discover\n      that Process 1 set PageUptodate() again and use the page.\n      Thus we have a deadlock due to ifind() waiting on the inode lock.\n      The solution: The fix is to use the newly introduced\n      ilookup5_nowait() which does not wait on the inode\u0027s lock and hence\n      avoids the deadlock.  This is safe as we do not care about the VFS\n      inode and only use the fact that it is in the VFS inode cache and the\n      fact that the vfs and ntfs inodes are one struct in memory to find\n      the ntfs inode in memory if present.  Also, the ntfs inode has its\n      own locking so it does not matter if the vfs inode is locked.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "af859a42d798f047fbfe198ed315a942662c39d2",
      "tree": "6c892cbd43284e98cc879f0518dde8efc09740c7",
      "parents": [
        "4757d7dff65b56f2115038ad1615725f31806787"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Sat Jun 25 21:07:27 2005 +0100"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Sat Jun 25 21:07:27 2005 +0100"
      },
      "message": "NTFS: Prepare for 2.1.23 release: Update documentation and bump version.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "4757d7dff65b56f2115038ad1615725f31806787",
      "tree": "b4a17ecec51c9b1175a22513699ae97c099c5d63",
      "parents": [
        "fa3be92317c4ae34edcf5274e8bbeff181e20b7a"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Sat Jun 25 17:24:08 2005 +0100"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Sat Jun 25 17:24:08 2005 +0100"
      },
      "message": "NTFS: Change ntfs_map_runlist_nolock() to only decompress the mapping pairs\n      if the requested vcn is inside it.  Otherwise we get into problems\n      when we try to map an out of bounds vcn because we then try to map\n      the already mapped runlist fragment which causes\n      ntfs_mapping_pairs_decompress() to fail and return error.  Update\n      ntfs_attr_find_vcn_nolock() accordingly.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "fa3be92317c4ae34edcf5274e8bbeff181e20b7a",
      "tree": "84ae4ace6c891aa95b804950283e1f8f3e46c730",
      "parents": [
        "1d58b27b8d77ecb816cfa8f846b78c845675eb89"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Sat Jun 25 17:15:36 2005 +0100"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Sat Jun 25 17:15:36 2005 +0100"
      },
      "message": "NTFS: Add an extra parameter @last_vcn to ntfs_get_size_for_mapping_pairs()\n      and ntfs_mapping_pairs_build() to allow the runlist encoding to be\n      partial which is desirable when filling holes in sparse attributes.\n      Update all callers.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "1d58b27b8d77ecb816cfa8f846b78c845675eb89",
      "tree": "7c10e4182f87d00511aeb1d0583e3c09eeb807de",
      "parents": [
        "3bd1f4a173a3445f9919c21e775de2d8b9deacf8"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Sat Jun 25 17:04:55 2005 +0100"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Sat Jun 25 17:04:55 2005 +0100"
      },
      "message": "NTFS: Change the runlist terminator of the newly allocated cluster(s) to\n      LCN_ENOENT in ntfs_attr_make_non_resident().  Otherwise the runlist\n      code gets confused.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "3bd1f4a173a3445f9919c21e775de2d8b9deacf8",
      "tree": "6b32056b5b63d41fc5d032318ed0f94dbc562288",
      "parents": [
        "ca8fd7a0c6aa835e8014830b290cb965e85ac88e"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Sat Jun 25 16:51:58 2005 +0100"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Sat Jun 25 16:51:58 2005 +0100"
      },
      "message": "NTFS: Fix several occurences of a bug where we would perform \u0027var \u0026 ~const\u0027\n      with a 64-bit variable and a int, i.e. 32-bit, constant.  This causes\n      the higher order 32-bits of the 64-bit variable to be zeroed.  To fix\n      this cast the \u0027const\u0027 to the same 64-bit type as \u0027var\u0027.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "ca8fd7a0c6aa835e8014830b290cb965e85ac88e",
      "tree": "504929d2a4beacb86fbc420c85f5c102f2a27fed",
      "parents": [
        "9f993fe4634b39ca4404ba278053b03f360ec08a"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Sat Jun 25 16:31:27 2005 +0100"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Sat Jun 25 16:31:27 2005 +0100"
      },
      "message": "NTFS: Detect the case when Windows has been suspended to disk on the volume\n      to be mounted and if this is the case do not allow (re)mounting\n      read-write.  This is done by parsing hiberfil.sys if present.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "9f993fe4634b39ca4404ba278053b03f360ec08a",
      "tree": "36e62a3d384fa9c313cacd73b7aea086d7f74e82",
      "parents": [
        "3f2faef00c6af17542ea8672ed7d09367222b2d0"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Sat Jun 25 16:15:36 2005 +0100"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Sat Jun 25 16:15:36 2005 +0100"
      },
      "message": "NTFS: Fix a bug in address space operations error recovery code paths where\n      if the runlist was not mapped at all and a mapping error occured we\n      would leave the runlist locked on exit to the function so that the\n      next access to the same file would try to take the lock and deadlock.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "3f2faef00c6af17542ea8672ed7d09367222b2d0",
      "tree": "8b5cf2d76f2af684988d79b04e21ae92aaea8711",
      "parents": [
        "38b22b6e9f46ab8f73ef5734f0e0a000766a9258"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Sat Jun 25 15:28:56 2005 +0100"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Sat Jun 25 15:28:56 2005 +0100"
      },
      "message": "NTFS: Stamp the transaction log ($UsnJrnl), aka user space journal, if it\n      is active on the volume and we are mounting read-write or remounting\n      from read-only to read-write.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "442d207eb0b4e7047c4fedccd900c425e689d502",
      "tree": "2c23dc98fba6912417164ba65b258a9da1241ae1",
      "parents": [
        "2fb21db2548fc8b196eb8d8425f05ee1965d5344"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Fri May 27 16:42:56 2005 +0100"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Fri May 27 16:42:56 2005 +0100"
      },
      "message": "NTFS: Use C99 style structure initialization after memory allocation where\n      possible (fs/ntfs/{attrib.c,index.c,super.c}).  Thanks to Al Viro and\n      Pekka Enberg.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "2fb21db2548fc8b196eb8d8425f05ee1965d5344",
      "tree": "b319e97bfb3e50bcde9a82cf089d86a7dcb03df5",
      "parents": [
        "5eac51462f340b7c4a03b9220cf157c40b4990a5"
      ],
      "author": {
        "name": "Pekka Enberg",
        "email": "penberg@cs.helsinki.fi",
        "time": "Wed May 25 21:15:34 2005 +0300"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Fri May 27 16:00:53 2005 +0100"
      },
      "message": "NTFS: Remove spurious void pointer casts from fs/ntfs/.\n\nSigned-off-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "d53ee3222459f347cb18985a845864bc81a44eaf",
      "tree": "e9f8a061e958579a6de1d3ee133fd30ca4139f9c",
      "parents": [
        "7fafb8b634121f4fa35ff92f85737f8bc2259f06"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Wed Apr 06 16:11:20 2005 +0100"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu May 05 11:49:42 2005 +0100"
      },
      "message": "NTFS: Use MAX_BUF_PER_PAGE instead of variable sized array allocation for\n      better code generation and one less sparse warning in fs/ntfs/aops.c.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "7fafb8b634121f4fa35ff92f85737f8bc2259f06",
      "tree": "ed581b567781b6b2a99a9f2059e3f3c324a0c928",
      "parents": [
        "bb3cf33509009132cf8c7a7729f9d26c0c5fa961"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Wed Apr 06 16:09:21 2005 +0100"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu May 05 11:48:00 2005 +0100"
      },
      "message": "NTFS: Minor cleanup: Define and use NTFS_MAX_CLUSTER_SIZE constant instead\n      of hard coded 0x10000 in fs/ntfs/super.c.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "bb3cf33509009132cf8c7a7729f9d26c0c5fa961",
      "tree": "1e5a6a8bdf12e158a792b26b1d24b1743ce8a975",
      "parents": [
        "b0d2374d62faed034dd80e6524efb98a6341597c"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Wed Apr 06 13:34:31 2005 +0100"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu May 05 11:46:17 2005 +0100"
      },
      "message": "NTFS: Update attribute definition handling.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "b0d2374d62faed034dd80e6524efb98a6341597c",
      "tree": "99ae91efcc90ead7b8aa1cc44f286a528adc6545",
      "parents": [
        "251c8427c9c418674fc3c04a11de95dc3661b560"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Mon Apr 04 16:20:14 2005 +0100"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu May 05 11:44:41 2005 +0100"
      },
      "message": "NTFS: Some utilities modify the boot sector but do not update the checksum.\n      Thus, relax the checking in fs/ntfs/super.c::is_boot_sector_ntfs() to\n      only emit a warning when the checksum is incorrect rather than\n      refusing the mount.  Thanks to Bernd Casimir for pointing this\n      problem out.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "251c8427c9c418674fc3c04a11de95dc3661b560",
      "tree": "b67bab32762a4a64083de64281b1249bccfd9402",
      "parents": [
        "53d59aad9326199ef5749c97513db498309a057e"
      ],
      "author": {
        "name": "Jesper Juhl",
        "email": "juhl-lkml@dif.dk",
        "time": "Mon Apr 04 14:59:56 2005 +0100"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu May 05 11:42:27 2005 +0100"
      },
      "message": "NTFS: Remove checks for NULL before calling kfree() since kfree() does the\n      checking itself.  (Jesper Juhl)\n\nSigned-off-by: Jesper Juhl \u003cjuhl-lkml@dif.dk\u003e\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "905685f68fc72844b8c2689c39a5c6c35e840152",
      "tree": "0ff1d145a7771b24643c1b685ecbb3f791cda6fb",
      "parents": [
        "43b01fda8b17b2b63e7dcdeed11c2ebba56b1fc9"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Mar 10 11:06:19 2005 +0000"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu May 05 11:26:01 2005 +0100"
      },
      "message": "NTFS: - Modify -\u003ereadpage and -\u003ewritepage (fs/ntfs/aops.c) so they detect\n        and handle the case where an attribute is converted from resident\n        to non-resident by a concurrent file write.\n      - Reorder some operations when converting an attribute from resident\n        to non-resident (fs/ntfs/attrib.c) so it is safe wrt concurrent\n        -\u003ereadpage and -\u003ewritepage.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "43b01fda8b17b2b63e7dcdeed11c2ebba56b1fc9",
      "tree": "fd925e409efa2787469689180afa78152947c4a0",
      "parents": [
        "2bfb4fff3e9731ecfe745881e53cfb2e646c47bb"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Wed Mar 09 15:18:43 2005 +0000"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu May 05 11:23:20 2005 +0100"
      },
      "message": "NTFS: Fix sign of various error return values to be negative in\n      fs/ntfs/lcnalloc.c.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "2bfb4fff3e9731ecfe745881e53cfb2e646c47bb",
      "tree": "a607df8a7d0532803584dab19bf13b69acbb668d",
      "parents": [
        "c0c1cc0e46b36347f11b566f99087dc5e6fc1b89"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Wed Mar 09 15:15:06 2005 +0000"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu May 05 11:22:07 2005 +0100"
      },
      "message": "NTFS: Add fs/ntfs/attrib.[hc]::ntfs_attr_make_non_resident().\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "c0c1cc0e46b36347f11b566f99087dc5e6fc1b89",
      "tree": "773105bdde7454d10dccc127048a9847f7e01f11",
      "parents": [
        "271849a98849394ea85fa7caa8a1aaa2b3a849b7"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Mon Mar 07 21:43:38 2005 +0000"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu May 05 11:20:49 2005 +0100"
      },
      "message": "NTFS: - Fix bug in fs/ntfs/attrib.c::ntfs_find_vcn_nolock() where after\n        dropping the read lock and taking the write lock we were not checking\n        whether someone else did not already do the work we wanted to do.\n      - Rename ntfs_find_vcn_nolock() to ntfs_attr_find_vcn_nolock().\n      - Tidy up some comments in fs/ntfs/runlist.c.\n      - Add LCN_ENOMEM and LCN_EIO definitions to fs/ntfs/runlist.h.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "271849a98849394ea85fa7caa8a1aaa2b3a849b7",
      "tree": "08e932656e463845faaa3610059c67e16aa92b7d",
      "parents": [
        "7e693073a940c7484c0c21e3e1603e29ce46f30c"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Mon Mar 07 21:36:18 2005 +0000"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu May 05 11:18:43 2005 +0100"
      },
      "message": "NTFS: Add fs/ntfs/attrib.[hc]::ntfs_attr_vcn_to_lcn_nolock() used by the new\n      write code.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "7e693073a940c7484c0c21e3e1603e29ce46f30c",
      "tree": "865f7c9374fd2c4f072c17b97aff2225bfc06a75",
      "parents": [
        "9451f8519c5e6d5d064c30033fc3d4ce77de321c"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Mar 03 16:38:59 2005 +0000"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu May 05 11:17:08 2005 +0100"
      },
      "message": "NTFS: Add AT_EA in addition to AT_DATA to whitelist for being allowed to be\n      non-resident in fs/ntfs/attrib.c::ntfs_attr_can_be_non_resident().\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "9451f8519c5e6d5d064c30033fc3d4ce77de321c",
      "tree": "104eedf065c4091838a27f6e674875a035c30820",
      "parents": [
        "413826868fb49d200b741bcaeaf58ea5c5e45321"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Mar 03 14:43:43 2005 +0000"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu May 05 11:15:46 2005 +0100"
      },
      "message": "NTFS: Correct sparse file handling.  The compressed values need to be\n      checked and set in the ntfs inode as done for compressed files\n      and the compressed size needs to be used for vfs inode-\u003ei_blocks\n      instead of the allocated size, again, as done for compressed files.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "413826868fb49d200b741bcaeaf58ea5c5e45321",
      "tree": "a106b6e0bae52a68a0b824f1999ab694d894a1f2",
      "parents": [
        "8907547d4b099e67762ea4891c127ea1f6dd1cb7"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Mar 03 13:44:15 2005 +0000"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu May 05 11:13:56 2005 +0100"
      },
      "message": "NTFS: Make fs/ntfs/namei.c::ntfs_get_{parent,dentry} static and move the\n      definition of ntfs_export_ops from fs/ntfs/super.c to namei.c.\n      Also, declare ntfs_export_ops in fs/ntfs/ntfs.h.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "8907547d4b099e67762ea4891c127ea1f6dd1cb7",
      "tree": "74fa9c887db8a7915325ad9a76d874ed134c0d9a",
      "parents": [
        "5ae9fcf8f329baba4bada8719cb0337eef083a1a"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "rddunlap@osdl.org",
        "time": "Thu Mar 03 11:19:53 2005 +0000"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu May 05 11:11:47 2005 +0100"
      },
      "message": "NTFS: Fix printk format warnings on ia64. (Randy Dunlap)\n\nSigned-off-by: Randy Dunlap \u003crddunlap@osdl.org\u003e\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "5ae9fcf8f329baba4bada8719cb0337eef083a1a",
      "tree": "28f268908b5bd780a114825879d7bc35d98d9dca",
      "parents": [
        "37e4c13b987a7923ec13bda7368901b3e094fecb"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Wed Mar 02 17:03:24 2005 +0000"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu May 05 11:04:54 2005 +0100"
      },
      "message": "NTFS: - Set the ntfs_inode-\u003eallocated_size to the real allocated size in the\n        mft record for resident attributes (fs/ntfs/inode.c).\n      - Small readability cleanup to use \"a\" instead of \"ctx-\u003eattr\"\n        everywhere (fs/ntfs/inode.c).\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "37e4c13b987a7923ec13bda7368901b3e094fecb",
      "tree": "781dcc0990fc42c26492206261d4b5f325715821",
      "parents": [
        "d8ec785e0bf2941ed546711c2f240a3e030c39c7"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Fri Feb 18 10:03:13 2005 +0000"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu May 05 11:03:01 2005 +0100"
      },
      "message": "NTFS: Fix a nasty runlist merge bug when merging two holes.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "d8ec785e0bf2941ed546711c2f240a3e030c39c7",
      "tree": "c4b69ce75a331731d9616fa9868cceba4e90325e",
      "parents": [
        "b6ad6c52fe36ab35d0fe28c064f59de2ba670c2a"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Fri Feb 18 09:23:39 2005 +0000"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu May 05 11:01:13 2005 +0100"
      },
      "message": "NTFS: Change time to u64 in time.h::ntfs2utc() as it otherwise generates a\n      warning in the do_div() call on sparc32.  Thanks to Meelis Roos for the\n      report and analysis of the warning.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "b6ad6c52fe36ab35d0fe28c064f59de2ba670c2a",
      "tree": "d888c28a2c3c7fa733045dc7dc9c9bc7f157bf4a",
      "parents": [
        "1a0df15acdae065789446aca83021c72b71db9a5"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Tue Feb 15 10:08:43 2005 +0000"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu May 05 10:56:31 2005 +0100"
      },
      "message": "NTFS: - Split ntfs_map_runlist() into ntfs_map_runlist() and a non-locking\n\thelper ntfs_map_runlist_nolock() which is used by ntfs_map_runlist().\n\tThis allows us to map runlist fragments with the runlist lock already\n\theld without having to drop and reacquire it around the call.  Adapt\n\tall callers.\n      - Change ntfs_find_vcn() to ntfs_find_vcn_nolock() which takes a locked\n\trunlist.  This allows us to find runlist elements with the runlist\n\tlock already held without having to drop and reacquire it around the\n\tcall.  Adapt all callers.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "1a0df15acdae065789446aca83021c72b71db9a5",
      "tree": "bb3bf97da4f2753aba46e1dd4855c0ef9f7c55b8",
      "parents": [
        "c002f42543e155dd2b5b5039ea2637ab26c82513"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Feb 03 12:04:36 2005 +0000"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu May 05 10:54:37 2005 +0100"
      },
      "message": "NTFS: Fix a bug in fs/ntfs/runlist.c::ntfs_mapping_pairs_decompress() in\n      the creation of the unmapped runlist element for the base attribute\n      extent.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "c002f42543e155dd2b5b5039ea2637ab26c82513",
      "tree": "ea408493d2e0e9096166ab39a8657689c15c7dfa",
      "parents": [
        "f40661be038ce6ed9ef6a8b80307a9153bd95769"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Feb 03 12:02:56 2005 +0000"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu May 05 10:53:01 2005 +0100"
      },
      "message": "NTFS: - Add disable_sparse mount option together with a per volume sparse\n\tenable bit which is set appropriately and a per inode sparse disable\n\tbit which is preset on some system file inodes as appropriate.\n      - Enforce that sparse support is disabled on NTFS volumes pre 3.0.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    }
  ],
  "next": "946929d813a3bde095678526dd037ab9ac6efe35"
}
