)]}'
{
  "log": [
    {
      "commit": "2f1936b87783a3a56c9441b27b9ba7a747f11e8e",
      "tree": "024a0f3da74ba6365f209d03685133760146149b",
      "parents": [
        "c82e42da8a6b2f3a85dc4d4278cb8238702f8f64"
      ],
      "author": {
        "name": "Miklos Szeredi",
        "email": "mszeredi@suse.cz",
        "time": "Tue Jun 24 16:50:14 2008 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jul 26 20:53:16 2008 -0400"
      },
      "message": "[patch 3/5] vfs: change remove_suid() to file_remove_suid()\n\nAll calls to remove_suid() are made with a file pointer, because\n(similarly to file_update_time) it is called when the file is written.\n\nClean up callers by passing in a file instead of a dentry.\n\nSigned-off-by: Miklos Szeredi \u003cmszeredi@suse.cz\u003e\n"
    },
    {
      "commit": "eebd2aa355692afaf9906f62118620f1a1c19dbb",
      "tree": "207eead3a736963c3e50942038c463f2f611ccce",
      "parents": [
        "b98348bdd08dc4ec11828aa98a78edde15c53cfa"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Mon Feb 04 22:28:29 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:13 2008 -0800"
      },
      "message": "Pagecache zeroing: zero_user_segment, zero_user_segments and zero_user\n\nSimplify page cache zeroing of segments of pages through 3 functions\n\nzero_user_segments(page, start1, end1, start2, end2)\n\n        Zeros two segments of the page. It takes the position where to\n        start and end the zeroing which avoids length calculations and\n\tmakes code clearer.\n\nzero_user_segment(page, start, end)\n\n        Same for a single segment.\n\nzero_user(page, start, length)\n\n        Length variant for the case where we know the length.\n\nWe remove the zero_user_page macro. Issues:\n\n1. Its a macro. Inline functions are preferable.\n\n2. The KM_USER0 macro is only defined for HIGHMEM.\n\n   Having to treat this special case everywhere makes the\n   code needlessly complex. The parameter for zeroing is always\n   KM_USER0 except in one single case that we open code.\n\nAvoiding KM_USER0 makes a lot of code not having to be dealing\nwith the special casing for HIGHMEM anymore. Dealing with\nkmap is only necessary for HIGHMEM configurations. In those\nconfigurations we use KM_USER0 like we do for a series of other\nfunctions defined in highmem.h.\n\nSince KM_USER0 is depends on HIGHMEM the existing zero_user_page\nfunction could not be a macro. zero_user_* functions introduced\nhere can be be inline because that constant is not used when these\nfunctions are called.\n\nAlso extract the flushing of the caches to be outside of the kmap.\n\n[akpm@linux-foundation.org: fix nfs and ntfs build]\n[akpm@linux-foundation.org: fix ntfs build some more]\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nCc: Steven French \u003csfrench@us.ibm.com\u003e\nCc: Michael Halcrow \u003cmhalcrow@us.ibm.com\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nCc: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\nCc: Trond Myklebust \u003ctrond.myklebust@fys.uio.no\u003e\nCc: \"J. Bruce Fields\" \u003cbfields@fieldses.org\u003e\nCc: Anton Altaparmakov \u003caia21@cantab.net\u003e\nCc: Mark Fasheh \u003cmark.fasheh@oracle.com\u003e\nCc: David Chinner \u003cdgc@sgi.com\u003e\nCc: Michael Halcrow \u003cmhalcrow@us.ibm.com\u003e\nCc: Steven French \u003csfrench@us.ibm.com\u003e\nCc: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\nCc: Trond Myklebust \u003ctrond.myklebust@fys.uio.no\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a9c62a18a291499d15a370d08771e781fbaf91e6",
      "tree": "5d608ba9dfefce643060c1d9ab18d9f4bff18360",
      "parents": [
        "28e3fed8b79c76450f264e77c58d0f5fbd2dd739"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Tue Oct 16 23:30:22 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:43:01 2007 -0700"
      },
      "message": "fs: correct SuS compliance for open of large file without options\n\nThe early LFS work that Linux uses favours EFBIG in various places. SuSv3\nspecifically uses EOVERFLOW for this as noted by Michael (Bug 7253)\n\n[EOVERFLOW]\n    The named file is a regular file and the size of the file cannot be\nrepresented correctly in an object of type off_t. We should therefore\ntransition to the proper error return code\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nCc: Theodore Tso \u003ctytso@mit.edu\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nCc: Arjan van de Ven \u003carjan@infradead.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.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": "5ffc4ef45b3b0a57872f631b4e4ceb8ace0d7496",
      "tree": "437ec32a58ac5e4794565b2bbb3da6611f0d6a04",
      "parents": [
        "534f2aaa6ab07cd71164180bc958a7dcde41db11"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri Jun 01 11:49:19 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jul 10 08:04:13 2007 +0200"
      },
      "message": "sendfile: remove .sendfile from filesystems that use generic_file_sendfile()\n\nThey can use generic_file_splice_read() instead. Since sys_sendfile() now\nprefers that, there should be no change in behaviour.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "e8edc6e03a5c8562dc70a6d969f732bdb355a7e7",
      "tree": "fc86c863655128a7041dfe613d14393d761fa7b9",
      "parents": [
        "ff1be9ad61e3e17ba83702d8ed0b534e5b8ee15c"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Mon May 21 01:22:52 2007 +0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon May 21 09:18:19 2007 -0700"
      },
      "message": "Detach sched.h from mm.h\n\nFirst thing mm.h does is including sched.h solely for can_do_mlock() inline\nfunction which has \"current\" dereference inside. By dealing with can_do_mlock()\nmm.h can be detached from sched.h which is good. See below, why.\n\nThis patch\na) removes unconditional inclusion of sched.h from mm.h\nb) makes can_do_mlock() normal function in mm/mlock.c\nc) exports can_do_mlock() to not break compilation\nd) adds sched.h inclusions back to files that were getting it indirectly.\ne) adds less bloated headers to some files (asm/signal.h, jiffies.h) that were\n   getting them indirectly\n\nNet result is:\na) mm.h users would get less code to open, read, preprocess, parse, ... if\n   they don\u0027t need sched.h\nb) sched.h stops being dependency for significant number of files:\n   on x86_64 allmodconfig touching sched.h results in recompile of 4083 files,\n   after patch it\u0027s only 3744 (-8.3%).\n\nCross-compile tested on\n\n\tall arm defconfigs, all mips defconfigs, all powerpc defconfigs,\n\talpha alpha-up\n\tarm\n\ti386 i386-up i386-defconfig i386-allnoconfig\n\tia64 ia64-up\n\tm68k\n\tmips\n\tparisc parisc-up\n\tpowerpc powerpc-up\n\ts390 s390-up\n\tsparc sparc-up\n\tsparc64 sparc64-up\n\tum-x86_64\n\tx86_64 x86_64-up x86_64-defconfig x86_64-allnoconfig\n\nas well as my two usual configs.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e3bf460f3eb86cdbc76725a0dac1f191e796676c",
      "tree": "7f11e16b4196735f62d4e3848f9084000b5e6b55",
      "parents": [
        "6d690dcac92a84f98fd774862628ff871b713660"
      ],
      "author": {
        "name": "Nate Diller",
        "email": "nate.diller@gmail.com",
        "time": "Sat May 12 10:36:54 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sat May 12 10:55:39 2007 -0700"
      },
      "message": "ntfs: use zero_user_page\n\nUse zero_user_page() instead of open-coding it.\n\n[akpm@linux-foundation.org: kmap-type fixes]\nSigned-off-by: Nate Diller \u003cnate.diller@gmail.com\u003e\nAcked-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0ceb331433e8aad9c5f441a965d7c681f8b9046f",
      "tree": "fd3d679a4015242dd65f0721f52242ad47619910",
      "parents": [
        "b46b8f19c9cd435ecac4d9d12b39d78c137ecd66"
      ],
      "author": {
        "name": "Dmitriy Monakhov",
        "email": "dmonakhov@openvz.org",
        "time": "Tue May 08 00:23:02 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue May 08 11:14:57 2007 -0700"
      },
      "message": "mm: move common segment checks to separate helper function\n\n[akpm@linux-foundation.org: cleanup]\nSigned-off-by: Monakhov Dmitriy \u003cdmonakhov@openvz.org\u003e\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nAcked-by: Anton Altaparmakov \u003caia21@cam.ac.uk\u003e\nAcked-by: David Chinner \u003cdgc@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6fe6900e1e5b6fa9e5c59aa5061f244fe3f467e2",
      "tree": "8bbfe5072279227cc50a941ad4813908082426a1",
      "parents": [
        "714b8171af9c930a59a0da8f6fe50518e70ab035"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Sun May 06 14:49:04 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon May 07 12:12:51 2007 -0700"
      },
      "message": "mm: make read_cache_page synchronous\n\nEnsure pages are uptodate after returning from read_cache_page, which allows\nus to cut out most of the filesystem-internal PageUptodate calls.\n\nI didn\u0027t have a great look down the call chains, but this appears to fixes 7\npossible use-before uptodate in hfs, 2 in hfsplus, 1 in jfs, a few in\necryptfs, 1 in jffs2, and a possible cleared data overwritten with readpage in\nblock2mtd.  All depending on whether the filler is async and/or can return\nwith a !uptodate page.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "92e1d5be91a0e3ffa5c4697eeb09b2aa22792122",
      "tree": "4eb22a9f6c38e9f4cc2a5100cd6659b0af08b7ae",
      "parents": [
        "754661f143e70d66eae6c48532ca245aa05dec0e"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Mon Feb 12 00:55:39 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:46 2007 -0800"
      },
      "message": "[PATCH] mark struct inode_operations const 2\n\nMany struct inode_operations in the kernel can be \"const\".  Marking them const\nmoves these to the .rodata section, which avoids false sharing with potential\ndirty data.  In addition it\u0027ll catch accidental writes at compile time to\nthese shared resources.\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "20d29372d3facfd078b4c7703637b951914d6759",
      "tree": "8f2a03e07f0175cce053f3bdb895a875ed82f9e9",
      "parents": [
        "7eaa36e2d470ed63bf0c4e4dd8b09cc4a9e1c481"
      ],
      "author": {
        "name": "Josef \"Jeff\" Sipek",
        "email": "jsipek@cs.sunysb.edu",
        "time": "Fri Dec 08 02:36:41 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Fri Dec 08 08:28:42 2006 -0800"
      },
      "message": "[PATCH] ntfs: change uses of f_{dentry, vfsmnt} to use f_path\n\nChange all the uses of f_{dentry,vfsmnt} to f_path.{dentry,mnt} in the ntfs\nfilesystem code.\n\nSigned-off-by: Josef \"Jeff\" Sipek \u003cjsipek@cs.sunysb.edu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "543ade1fc901db4c3dbe9fb27241fb977f1f3eea",
      "tree": "cdd1a1f67a718adf71e92fe08e4b3d33bf3dbadc",
      "parents": [
        "ee0b3e671baff681d69fbf0db33b47603c0a8280"
      ],
      "author": {
        "name": "Badari Pulavarty",
        "email": "pbadari@us.ibm.com",
        "time": "Sat Sep 30 23:28:48 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 01 00:39:28 2006 -0700"
      },
      "message": "[PATCH] Streamline generic_file_* interfaces and filemap cleanups\n\nThis patch cleans up generic_file_*_read/write() interfaces.  Christoph\nHellwig gave me the idea for this clean ups.\n\nIn a nutshell, all filesystems should set .aio_read/.aio_write methods and use\ndo_sync_read/ do_sync_write() as their .read/.write methods.  This allows us\nto cleanup all variants of generic_file_* routines.\n\nFinal available interfaces:\n\ngeneric_file_aio_read() - read handler\ngeneric_file_aio_write() - write handler\ngeneric_file_aio_write_nolock() - no lock write handler\n\n__generic_file_aio_write_nolock() - internal worker routine\n\nSigned-off-by: Badari Pulavarty \u003cpbadari@us.ibm.com\u003e\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "ee0b3e671baff681d69fbf0db33b47603c0a8280",
      "tree": "3202ff815b2196c6c353bc5b28d7a2800df273ec",
      "parents": [
        "027445c37282bc1ed26add45e573ad2d3e4860a5"
      ],
      "author": {
        "name": "Badari Pulavarty",
        "email": "pbadari@us.ibm.com",
        "time": "Sat Sep 30 23:28:47 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 01 00:39:28 2006 -0700"
      },
      "message": "[PATCH] Remove readv/writev methods and use aio_read/aio_write instead\n\nThis patch removes readv() and writev() methods and replaces them with\naio_read()/aio_write() methods.\n\nSigned-off-by: Badari Pulavarty \u003cpbadari@us.ibm.com\u003e\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "027445c37282bc1ed26add45e573ad2d3e4860a5",
      "tree": "93eab101a938ffebaea64703033c8649df4d73f0",
      "parents": [
        "9ea0f9499d15c49df23e7aac4332d830c40e12d0"
      ],
      "author": {
        "name": "Badari Pulavarty",
        "email": "pbadari@us.ibm.com",
        "time": "Sat Sep 30 23:28:46 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 01 00:39:28 2006 -0700"
      },
      "message": "[PATCH] Vectorize aio_read/aio_write fileop methods\n\nThis patch vectorizes aio_read() and aio_write() methods to prepare for\ncollapsing all aio \u0026 vectored operations into one interface - which is\naio_read()/aio_write().\n\nSigned-off-by: Badari Pulavarty \u003cpbadari@us.ibm.com\u003e\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Michael Holzheu \u003cHOLZHEU@de.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c49c31115067bc7c9a51ffdc735a515151dfa3eb",
      "tree": "1ffeddacb5cf06fbdb8a1fc385eb9ee5f1c3174c",
      "parents": [
        "6e21828743247270d09a86756a0c11702500dbfb"
      ],
      "author": {
        "name": "Richard Knutsson",
        "email": "ricknu-0@student.ltu.se",
        "time": "Sat Sep 30 23:27:12 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 01 00:39:19 2006 -0700"
      },
      "message": "[PATCH] fs/ntfs: Conversion to generic boolean\n\nConversion of booleans to: generic-boolean.patch (2006-08-23)\n\nSigned-off-by: Richard Knutsson \u003cricknu-0@student.ltu.se\u003e\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "01408c4939479ec46c15aa7ef6e2406be50eeeca",
      "tree": "106ee144cc7214cc5cb78bc35a49fc654ef16fe9",
      "parents": [
        "5f507d9e05b4dbfee34f3d967623ad3fbf0f28b3"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Sun Jun 25 05:47:58 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Jun 25 10:01:09 2006 -0700"
      },
      "message": "[PATCH] Prepare for __copy_from_user_inatomic to not zero missed bytes\n\nThe problem is that when we write to a file, the copy from userspace to\npagecache is first done with preemption disabled, so if the source address is\nnot immediately available the copy fails *and* *zeros* *the* *destination*.\n\nThis is a problem because a concurrent read (which admittedly is an odd thing\nto do) might see zeros rather that was there before the write, or what was\nthere after, or some mixture of the two (any of these being a reasonable thing\nto see).\n\nIf the copy did fail, it will immediately be retried with preemption\nre-enabled so any transient problem with accessing the source won\u0027t cause an\nerror.\n\nThe first copying does not need to zero any uncopied bytes, and doing so\ncauses the problem.  It uses copy_from_user_atomic rather than copy_from_user\nso the simple expedient is to change copy_from_user_atomic to *not* zero out\nbytes on failure.\n\nThe first of these two patches prepares for the change by fixing two places\nwhich assume copy_from_user_atomic does zero the tail.  The two usages are\nvery similar pieces of code which copy from a userspace iovec into one or more\npage-cache pages.  These are changed to remove the assumption.\n\nThe second patch changes __copy_from_user_inatomic* to not zero the tail.\nOnce these are accepted, I will look at similar patches of other architectures\nwhere this is important (ppc, mips and sparc being the ones I can find).\n\nThis patch:\n\nThere is a problem with __copy_from_user_inatomic zeroing the tail of the\nbuffer in the case of an error.  As it is called in atomic context, the error\nmay be transient, so it results in zeros being written where maybe they\nshouldn\u0027t be.\n\nIn the usage in filemap, this opens a window for a well timed read to see data\n(zeros) which is not consistent with any ordering of reads and writes.\n\nMost cases where __copy_from_user_inatomic is called, a failure results in\n__copy_from_user being called immediately.  As long as the latter zeros the\ntail, the former doesn\u0027t need to.  However in *copy_from_user_iovec\nimplementations (in both filemap and ntfs/file), it is assumed that\ncopy_from_user_inatomic will zero the tail.\n\nThis patch removes that assumption, so that after this patch it will\nbe safe for copy_from_user_inatomic to not zero the tail.\n\nThis patch also adds some commentary to filemap.h and asm-i386/uaccess.h.\n\nAfter this patch, all architectures that might disable preempt when\nkmap_atomic is called need to have their __copy_from_user_inatomic* \"fixed\".\nThis includes\n - powerpc\n - i386\n - mips\n - sparc\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: Anton Altaparmakov \u003caia21@cantab.net\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nCc: William Lee Irwin III \u003cwli@holomorphy.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "090d2b185d8680fc26a2eaf4245d4171dcf4baf1",
      "tree": "67e604e3cd1bad3cfd034bced19a0fbff6a80c30",
      "parents": [
        "c330dda908b5a46469a997eea90b66f2f9f02b34"
      ],
      "author": {
        "name": "Pekka Enberg",
        "email": "penberg@cs.helsinki.fi",
        "time": "Fri Jun 23 02:05:08 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 23 07:43:02 2006 -0700"
      },
      "message": "[PATCH] read_mapping_page for address space\n\nAdd read_mapping_page() which is used for callers that pass\nmapping-\u003ea_ops-\u003ereadpage as the filler for read_cache_page.  This removes\nsome duplication from filesystem code.\n\nSigned-off-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f893afbe1262e27e91234506f72e17716190dd2f",
      "tree": "4352204e9c53e278f7d494d2564f8ae78244feef",
      "parents": [
        "5d2170ad1092b2940138dc3ae4a944d7bf87ae9e"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cam.ac.uk",
        "time": "Thu Jun 22 14:47:15 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jun 22 15:05:55 2006 -0700"
      },
      "message": "[PATCH] NTFS: Critical bug fix (affects MIPS and possibly others)\n\nMany thanks to Pauline Ng for the detailed bug report and analysis!\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4b6f5d20b04dcbc3d888555522b90ba6d36c4106",
      "tree": "420f271eaef7d3def7d4433b151c3cb6d7a54770",
      "parents": [
        "99ac48f54a91d02140c497edc31dc57d4bc5c85d"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@infradead.org",
        "time": "Tue Mar 28 01:56:42 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 28 09:16:06 2006 -0800"
      },
      "message": "[PATCH] Make most file operations structs in fs/ const\n\nThis is a conversion to make the various file_operations structs in fs/\nconst.  Basically a regexp job, with a few manual fixups\n\nThe goal is both to increase correctness (harder to accidentally write to\nshared datastructures) and reducing the false sharing of cachelines with\nthings that get dirty in .data (while .rodata is nicely read only and thus\ncache clean)\n\nSigned-off-by: Arjan van de Ven \u003carjan@infradead.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\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": "bb8047d3540affd6b8c2adac3fe792e07143be0f",
      "tree": "8396d13b1400225470eef6e48406bb74a81bd925",
      "parents": [
        "1cf3109ffb26a6ea572fd02436bd10458b4b2187"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Tue Mar 07 11:53:46 2006 +0000"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Tue Mar 07 11:53:46 2006 +0000"
      },
      "message": "NTFS: Fix two compiler warnings on Alpha.  Thanks to Andrew Morton for\n      reporting them.\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": "944d79559d154c12becde0dab327016cf438f46c",
      "tree": "50c101806f4d3b6585222dda060559eb4f3e005a",
      "parents": [
        "d087e4bdd24ebe3ae3d0b265b6573ec901af4b4b",
        "0f36b018b2e314d45af86449f1a97facb1fbe300"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Jan 19 16:39:33 2006 +0000"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Jan 19 16:39:33 2006 +0000"
      },
      "message": "Merge branch \u0027master\u0027 of /usr/src/ntfs-2.6/\n"
    },
    {
      "commit": "870f481793b585323fbda3e87c54efc116f46351",
      "tree": "08dce269f14c18ae1b1682d3cb0f149b938d40bb",
      "parents": [
        "3542c6e18f6470bad2bde1e94331e4f488a8d3f1"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Mon Jan 09 20:52:01 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jan 10 08:01:30 2006 -0800"
      },
      "message": "[PATCH] replace inode_update_time with file_update_time\n\nTo allow various options to work per-mount instead of per-sb we need a\nstruct vfsmount when updating ctime and mtime.  This preparation patch\nreplaces the inode_update_time routine with a file_update_atime routine so\nwe can easily get at the vfsmount.  (and the file makes more sense in this\ncontext anyway).  Also get rid of the unused second argument - we always\nwant to update the ctime when calling this routine.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Al Viro \u003cviro@ftp.linux.org.uk\u003e\nCc: Anton Altaparmakov \u003caia21@cantab.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "1b1dcc1b57a49136f118a0f16367256ff9994a69",
      "tree": "b0b36d4f41d28c9d6514fb309d33c1a084d6309b",
      "parents": [
        "794ee1baee1c26be40410233e6c20bceb2b03c08"
      ],
      "author": {
        "name": "Jes Sorensen",
        "email": "jes@sgi.com",
        "time": "Mon Jan 09 15:59:24 2006 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@hera.kernel.org",
        "time": "Mon Jan 09 15:59:24 2006 -0800"
      },
      "message": "[PATCH] mutex subsystem, semaphore to mutex: VFS, -\u003ei_sem\n\nThis patch converts the inode semaphore to a mutex. I have tested it on\nXFS and compiled as much as one can consider on an ia64. Anyway your\nluck with it might be different.\n\nModified-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n\n(finished the conversion)\n\nSigned-off-by: Jes Sorensen \u003cjes@sgi.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "3c6af7fa787f21f8873a050568ed892312899eb5",
      "tree": "39f8df4d83f0f60ab9a1581a4ff2588ae870b5a8",
      "parents": [
        "33bc227e4e48ddadcf2eacb381c19df338f0a6c8"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Nov 24 13:41:33 2005 +0000"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Thu Nov 24 13:41:33 2005 +0000"
      },
      "message": "NTFS: Fix a potential overflow by casting (index + 1) to s64 before doing a\n      left shift using PAGE_CACHE_SHIFT in fs/ntfs/file.c.  Thanks to Andrew\n      Morton pointing this out to.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "3aebf25bdcf030f3e4afeb9340486d5b46deb46e",
      "tree": "d4a0d4e1f0aff3a808846807f3b4d2fd9fa35667",
      "parents": [
        "1f04c0a24b2f3cfe89c802a24396263623e3512d"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Tue Nov 01 15:49:31 2005 +0000"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Tue Nov 01 15:49:31 2005 +0000"
      },
      "message": "NTFS: Fix a stupid bug causing writes to non-initialized pages to segfault.\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": "d5aeaef37dc9cb009ab5cb8abf325338d21d2b1a",
      "tree": "462b8caf5a1f787398a93485e4170605f81ea8d9",
      "parents": [
        "7d0ffdb279105d9a87b447758ce4a634496abfd1"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Wed Oct 19 12:23:10 2005 +0100"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Wed Oct 19 12:23:10 2005 +0100"
      },
      "message": "NTFS: Fix serious data corruption issue when writing.\n      Many thanks to Alberto Patino for testing and reporting the data\n      corruption.  And many apologies for corrupting his partition.\n\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": "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": "d4b9ba7bf6f38cff55b5d95a0db7dd91311ce20a",
      "tree": "b86c83f8c04e159bb8f806990cbf61e88ceebf30",
      "parents": [
        "db30d160cd8dfe1e53435fd76f4189778f1c728e"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Wed Nov 17 15:45:08 2004 +0000"
      },
      "committer": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cantab.net",
        "time": "Wed May 04 17:02:25 2005 +0100"
      },
      "message": "NTFS: Use i_size_read() in fs/ntfs/file.c::ntfs_file_open().\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\n"
    },
    {
      "commit": "1da177e4c3f41524e886b7f1b8a0c1fc7321cac2",
      "tree": "0bba044c4ce775e45a88a51686b5d9f90697ea9d",
      "parents": [],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:20:36 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:20:36 2005 -0700"
      },
      "message": "Linux-2.6.12-rc2\n\nInitial git repository build. I\u0027m not bothering with the full history,\neven though we have it. We can create a separate \"historical\" git\narchive of that later if we want to, and in the meantime it\u0027s about\n3.2GB when imported into git - space that would just make the early\ngit days unnecessarily complicated, when we don\u0027t have a lot of good\ninfrastructure for it.\n\nLet it rip!\n"
    }
  ]
}
