)]}'
{
  "log": [
    {
      "commit": "788e7dd4c22e6f41b3a118fd8c291f831f6fddbb",
      "tree": "cbe2d2a360aaf7dc243bef432e1c50507ae6db7b",
      "parents": [
        "3232c110b56bd01c5f0fdfd16b4d695f2e05b0a9"
      ],
      "author": {
        "name": "Yuichi Nakamura",
        "email": "ynakam@hitachisoft.jp",
        "time": "Fri Sep 14 09:27:07 2007 +0900"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Wed Oct 17 08:59:31 2007 +1000"
      },
      "message": "SELinux: Improve read/write performance\n\nIt reduces the selinux overhead on read/write by only revalidating\npermissions in selinux_file_permission if the task or inode labels have\nchanged or the policy has changed since the open-time check.  A new LSM\nhook, security_dentry_open, is added to capture the necessary state at open\ntime to allow this optimization.\n\n(see http://marc.info/?l\u003dselinux\u0026m\u003d118972995207740\u0026w\u003d2)\n\nSigned-off-by: Yuichi Nakamura\u003cynakam@hitachisoft.jp\u003e\nAcked-by: Stephen Smalley \u003csds@tycho.nsa.gov\u003e\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "92d15c2ccbb3e31a3fc71ad28fdb55e1319383c0",
      "tree": "8d83c0dc3c6b935d8367e331872f242b742f0a8a",
      "parents": [
        "f20bf6125605acbbc7eb8c9420d7221c91aa83eb",
        "644bd2f048972d75eb1979b1fdca257d528ce687"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 10:09:16 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 10:09:16 2007 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.dk/data/git/linux-2.6-block\n\n* \u0027for-linus\u0027 of git://git.kernel.dk/data/git/linux-2.6-block: (63 commits)\n  Fix memory leak in dm-crypt\n  SPARC64: sg chaining support\n  SPARC: sg chaining support\n  PPC: sg chaining support\n  PS3: sg chaining support\n  IA64: sg chaining support\n  x86-64: enable sg chaining\n  x86-64: update pci-gart iommu to sg helpers\n  x86-64: update nommu to sg helpers\n  x86-64: update calgary iommu to sg helpers\n  swiotlb: sg chaining support\n  i386: enable sg chaining\n  i386 dma_map_sg: convert to using sg helpers\n  mmc: need to zero sglist on init\n  Panic in blk_rq_map_sg() from CCISS driver\n  remove sglist_len\n  remove blk_queue_max_phys_segments in libata\n  revert sg segment size ifdefs\n  Fixup u14-34f ENABLE_SG_CHAINING\n  qla1280: enable use_sg_chaining option\n  ...\n"
    },
    {
      "commit": "1e89a5e15a2c88b3fd1ed3fa17fd767efe44727a",
      "tree": "840cb2badbbd568c44fa0ed2b3a467d3143381ea",
      "parents": [
        "e744fdea546abf7a794898a99a26f85c63a83648"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue Oct 16 06:47:54 2007 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 10:01:50 2007 -0700"
      },
      "message": "lockdep: fixup the inode dir annotation\n\nA slight oversight tripped lockdep debugging code, each lockdep\nclass should have but a single init site.\n\nRearange the code to make this true.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "16a72c455a67bb23eed7292a31c6ba17729e78e6",
      "tree": "d2cc7d116730348375ce0d06ad45e24744cd0b5f",
      "parents": [
        "ecbdc93639f69c1f237ccce6a9aaff1e83f1182f"
      ],
      "author": {
        "name": "Michael Halcrow",
        "email": "mhalcrow@us.ibm.com",
        "time": "Tue Oct 16 01:28:14 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:43:12 2007 -0700"
      },
      "message": "ecryptfs: clean up page flag handling\n\nThe functions that eventually call down to ecryptfs_read_lower(),\necryptfs_decrypt_page(), and ecryptfs_copy_up_encrypted_with_header()\nshould have the responsibility of managing the page Uptodate\nstatus. This patch gets rid of some of the ugliness that resulted from\ntrying to push some of the page flag setting too far down the stack.\n\nSigned-off-by: Michael Halcrow \u003cmhalcrow@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ecbdc93639f69c1f237ccce6a9aaff1e83f1182f",
      "tree": "0d3ad7c2d3f87ec4a51997f322aa066298156970",
      "parents": [
        "b6c1d8fcbadeb9bb4c3dbca57a007629d0483544"
      ],
      "author": {
        "name": "Michael Halcrow",
        "email": "mhalcrow@us.ibm.com",
        "time": "Tue Oct 16 01:28:14 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:43:12 2007 -0700"
      },
      "message": "eCryptfs: replace magic numbers\n\nReplace some magic numbers with sizeof() equivalents.\n\nSigned-off-by: Michael Halcrow \u003cmhalcrow@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b6c1d8fcbadeb9bb4c3dbca57a007629d0483544",
      "tree": "ba786993ce9b16f0dcc25cdab05af8a3fef636ed",
      "parents": [
        "035241d30e273519195a9987e6eb56bbe2297872"
      ],
      "author": {
        "name": "Michael Halcrow",
        "email": "mhalcrow@us.ibm.com",
        "time": "Tue Oct 16 01:28:13 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:43:12 2007 -0700"
      },
      "message": "eCryptfs: remove unused functions and kmem_cache\n\nThe switch to read_write.c routines and the persistent file make a number of\nfunctions unnecessary.  This patch removes them.\n\nSigned-off-by: Michael Halcrow \u003cmhalcrow@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "035241d30e273519195a9987e6eb56bbe2297872",
      "tree": "56865416d10597588c00957766d3e6189b19a014",
      "parents": [
        "d6a13c17164fccab8aa96ca435ddacbf428335ca"
      ],
      "author": {
        "name": "Michael Halcrow",
        "email": "mhalcrow@us.ibm.com",
        "time": "Tue Oct 16 01:28:12 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:43:12 2007 -0700"
      },
      "message": "eCryptfs: initialize persistent lower file on inode create\n\nInitialize persistent lower file on inode create.\n\nSigned-off-by: Michael Halcrow \u003cmhalcrow@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d6a13c17164fccab8aa96ca435ddacbf428335ca",
      "tree": "8995bb0b5c22a97c8f6c86eff797ff2de0421ee2",
      "parents": [
        "bf12be1cc851cface331b0e74713a6bb1cb046b0"
      ],
      "author": {
        "name": "Michael Halcrow",
        "email": "mhalcrow@us.ibm.com",
        "time": "Tue Oct 16 01:28:12 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:43:12 2007 -0700"
      },
      "message": "eCryptfs: fix data types\n\nUpdate data types and add casts in order to avoid potential overflow\nissues.\n\nSigned-off-by: Michael Halcrow \u003cmhalcrow@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "bf12be1cc851cface331b0e74713a6bb1cb046b0",
      "tree": "c20afee72af830fce2bf8255d63aed59a6db3c4e",
      "parents": [
        "2ed92554abc5c40d4450f9869c9565a1919a9242"
      ],
      "author": {
        "name": "Michael Halcrow",
        "email": "mhalcrow@us.ibm.com",
        "time": "Tue Oct 16 01:28:11 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:43:12 2007 -0700"
      },
      "message": "eCryptfs: convert mmap functions to use persistent file\n\nConvert readpage, prepare_write, and commit_write to use read_write.c\nroutines.  Remove sync_page; I cannot think of a good reason for implementing\nthat in eCryptfs.\n\nSigned-off-by: Michael Halcrow \u003cmhalcrow@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2ed92554abc5c40d4450f9869c9565a1919a9242",
      "tree": "3b9be8b86474ad61d357990185476fc56ac2f490",
      "parents": [
        "d7cdc5febf9f2664755002c3a2f84bd348389fe9"
      ],
      "author": {
        "name": "Michael Halcrow",
        "email": "mhalcrow@us.ibm.com",
        "time": "Tue Oct 16 01:28:10 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:43:12 2007 -0700"
      },
      "message": "eCryptfs: make open, truncate, and setattr use persistent file\n\nRather than open a new lower file for every eCryptfs file that is opened,\ntruncated, or setattr\u0027d, instead use the existing lower persistent file for\nthe eCryptfs inode.  Change truncate to use read_write.c functions.  Change\necryptfs_getxattr() to use the common ecryptfs_getxattr_lower() function.\n\nSigned-off-by: Michael Halcrow \u003cmhalcrow@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d7cdc5febf9f2664755002c3a2f84bd348389fe9",
      "tree": "ad770ac2031d87474220cc20eb7b99a246dea8bb",
      "parents": [
        "4981e081cfe2c3f4abcfa3924ebd999cdbed4914"
      ],
      "author": {
        "name": "Michael Halcrow",
        "email": "mhalcrow@us.ibm.com",
        "time": "Tue Oct 16 01:28:10 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:43:12 2007 -0700"
      },
      "message": "eCryptfs: update metadata read/write functions\n\nUpdate the metadata read/write functions and grow_file() to use the\nread_write.c routines.  Do not open another lower file; use the persistent\nlower file instead.  Provide a separate function for\ncrypto.c::ecryptfs_read_xattr_region() to get to the lower xattr without\nhaving to go through the eCryptfs getxattr.\n\nSigned-off-by: Michael Halcrow \u003cmhalcrow@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4981e081cfe2c3f4abcfa3924ebd999cdbed4914",
      "tree": "066d56ba49195eb0e733236fef4bb98f2d5f0114",
      "parents": [
        "0216f7f7921759211e48e8b940eae29f0fe43902"
      ],
      "author": {
        "name": "Michael Halcrow",
        "email": "mhalcrow@us.ibm.com",
        "time": "Tue Oct 16 01:28:09 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:43:12 2007 -0700"
      },
      "message": "eCryptfs: set up and destroy persistent lower file\n\nThis patch sets up and destroys the persistent lower file for each eCryptfs\ninode.\n\nSigned-off-by: Michael Halcrow \u003cmhalcrow@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0216f7f7921759211e48e8b940eae29f0fe43902",
      "tree": "44999b1dfb49944bfd83881c8d9e0cbe3a90e2b7",
      "parents": [
        "da0102a10aed2244d8fc34f289e81e502622b81e"
      ],
      "author": {
        "name": "Michael Halcrow",
        "email": "mhalcrow@us.ibm.com",
        "time": "Tue Oct 16 01:28:08 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:43:12 2007 -0700"
      },
      "message": "eCryptfs: replace encrypt, decrypt, and inode size write\n\nReplace page encryption and decryption routines and inode size write routine\nwith versions that utilize the read_write.c functions.\n\nSigned-off-by: Michael Halcrow \u003cmhalcrow@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "da0102a10aed2244d8fc34f289e81e502622b81e",
      "tree": "a3c939a25b12efb94c3fd36f98d65708ae09b964",
      "parents": [
        "cf81f89d9a85b1825d8c8cf1f8f0e2c98cc72823"
      ],
      "author": {
        "name": "Michael Halcrow",
        "email": "mhalcrow@us.ibm.com",
        "time": "Tue Oct 16 01:28:07 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:43:12 2007 -0700"
      },
      "message": "eCryptfs: read_write.c routines\n\nAdd a set of functions through which all I/O to lower files is consolidated.\nThis patch adds a new inode_info reference to a persistent lower file for each\neCryptfs inode; another patch later in this series will set that up.  This\npersistent lower file is what the read_write.c functions use to call\nvfs_read() and vfs_write() on the lower filesystem, so even when reads and\nwrites come in through aops-\u003ereadpage and aops-\u003ewritepage, we can satisfy them\nwithout resorting to direct access to the lower inode\u0027s address space.\nSeveral function declarations are going to be changing with this patchset.\nFor now, in order to keep from breaking the build, I am putting dummy\nparameters in for those functions.\n\nSigned-off-by: Michael Halcrow \u003cmhalcrow@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cf81f89d9a85b1825d8c8cf1f8f0e2c98cc72823",
      "tree": "ff22f49549bf5caeb3069fffd1e01ab76c8ec218",
      "parents": [
        "5dda6992a3138f3839dcaecbcd2fbea4dd514c7c"
      ],
      "author": {
        "name": "Michael Halcrow",
        "email": "mhalcrow@us.ibm.com",
        "time": "Tue Oct 16 01:28:07 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:43:12 2007 -0700"
      },
      "message": "ecryptfs: fix error handling\n\nThe error paths and the module exit code need work. sysfs\nunregistration is not the right place to tear down the crypto\nsubsystem, and the code to undo subsystem initializations on various\nerror paths is unnecessarily duplicated. This patch addresses those\nissues.\n\nSigned-off-by: Michael Halcrow \u003cmhalcrow@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5dda6992a3138f3839dcaecbcd2fbea4dd514c7c",
      "tree": "c9ca012364edc18a2baed74721052b7da9d39f53",
      "parents": [
        "45eaab79678b9e27e08f0cf250eb2df9d6a48df0"
      ],
      "author": {
        "name": "Michael Halcrow",
        "email": "mhalcrow@us.ibm.com",
        "time": "Tue Oct 16 01:28:06 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:43:12 2007 -0700"
      },
      "message": "eCryptfs: remove assignments in if-statements\n\nRemove assignments in if-statements.\n\nSigned-off-by: Michael Halcrow \u003cmhalcrow@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "45eaab79678b9e27e08f0cf250eb2df9d6a48df0",
      "tree": "ff13018aa1d66f1b1d9abbba6df7a361518bacb7",
      "parents": [
        "e9f6a99cb844a61b04cab5b82e333d6efef1f735"
      ],
      "author": {
        "name": "Michael Halcrow",
        "email": "mhalcrow@us.ibm.com",
        "time": "Tue Oct 16 01:28:05 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:43:12 2007 -0700"
      },
      "message": "eCryptfs: remove header_extent_size\n\nThere is no point to keeping a separate header_extent_size and an extent_size.\n The total size of the header can always be represented as some multiple of\nthe regular data extent size.\n\n[randy.dunlap@oracle.com: ecryptfs: fix printk format warning]\nSigned-off-by: Michael Halcrow \u003cmhalcrow@us.ibm.com\u003e\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e9f6a99cb844a61b04cab5b82e333d6efef1f735",
      "tree": "1e7c20b39f1bfe3c583b27d1fd74ff988c754dd9",
      "parents": [
        "cd9d67dfd2b4db5fdbf9dfa69e202b8571f1db20"
      ],
      "author": {
        "name": "Michael Halcrow",
        "email": "mhalcrow@us.ibm.com",
        "time": "Tue Oct 16 01:28:04 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:43:12 2007 -0700"
      },
      "message": "eCryptfs: Use generic_file_splice_read()\n\neCryptfs is currently just passing through splice reads to the lower\nfilesystem.  This is obviously incorrect behavior; the decrypted data is\nwhat needs to be read, not the lower encrypted data.  I cannot think of any\ngood reason for eCryptfs to implement splice_read, so this patch points the\neCryptfs fops splice_read to use generic_file_splice_read.\n\nSigned-off-by: Michael Halcrow \u003cmhalcrow@us.ibm.com\u003e\nReviewed-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cd9d67dfd2b4db5fdbf9dfa69e202b8571f1db20",
      "tree": "77682cc92d32d2bb3ce745bdbb7e76ec09c246c5",
      "parents": [
        "dd8e2902d0c02ee28043071023f8fa6063fe8e8f"
      ],
      "author": {
        "name": "Michael Halcrow",
        "email": "mhalcrow@us.ibm.com",
        "time": "Tue Oct 16 01:28:04 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:43:11 2007 -0700"
      },
      "message": "eCryptfs: make needlessly global symbols static\n\nAndrew Morton wrote:\n\u003e Please check that all the newly-added global symbols do indeed need\n\u003e to be global.\n\nChange symbols in keystore.c and crypto.o to static if they do not\nneed to be global.\n\nSigned-off-by: Michael Halcrow \u003cmhalcrow@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "dd8e2902d0c02ee28043071023f8fa6063fe8e8f",
      "tree": "d69f643551948c6bc08929759fee4b281b8aa404",
      "parents": [
        "22e78fafbdf84883f70eb4944cf658fc23c4a1f4"
      ],
      "author": {
        "name": "Michael Halcrow",
        "email": "mhalcrow@us.ibm.com",
        "time": "Tue Oct 16 01:28:03 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:43:11 2007 -0700"
      },
      "message": "eCryptfs: remove unnecessary variable initializations\n\nAndrew Morton wrote:\n\u003e \u003e       struct mutex *tfm_mutex \u003d NULL;\n\u003e\n\u003e This initialisation looks like it\u0027s here to kill bogus gcc warning\n\u003e (if it is, it should have been commented).  Please investigate\n\u003e uninitialized_var() and __maybe_unused sometime.\n\nRemove some unnecessary variable initializations. There may be a few\nmore such intializations remaining in the code base; a future patch\nwill take care of those.\n\nSigned-off-by: Michael Halcrow \u003cmhalcrow@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "22e78fafbdf84883f70eb4944cf658fc23c4a1f4",
      "tree": "1b922f289e05f01d5c8d02427617cdb9bd66707c",
      "parents": [
        "6c6f57f3bee1e3c3d31b08a0161c435bfaeb77eb"
      ],
      "author": {
        "name": "Michael Halcrow",
        "email": "mhalcrow@us.ibm.com",
        "time": "Tue Oct 16 01:28:02 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:43:11 2007 -0700"
      },
      "message": "eCryptfs: kerneldoc fixes for crypto.c and keystore.c\n\nAndrew Morton wrote:\nFrom: mhalcrow@us.ibm.com \u003cmhalcrow@halcrow.austin.ibm.com\u003e\n\u003e \u003e +/**\n\u003e \u003e + * decrypt_passphrase_encrypted_session_key - Decrypt the session key\n\u003e \u003e + * with the given auth_tok.\n\u003e \u003e   *\n\u003e \u003e   * Returns Zero on success; non-zero error otherwise.\n\u003e \u003e   */\n\u003e\n\u003e That comment purports to be a kerneldoc-style comment.  But\n\u003e\n\u003e - kerneldoc doesn\u0027t support multiple lines on the introductory line\n\u003e   which identifies the name of the function (alas).  So you\u0027ll need to\n\u003e   overflow 80 cols here.\n\u003e\n\u003e - the function args weren\u0027t documented\n\u003e\n\u003e But the return value is!  People regularly forget to do that.  And\n\u003e they frequently forget to document the locking prerequisites and the\n\u003e permissible calling contexts (process/might_sleep/hardirq, etc)\n\u003e\n\u003e (please check all ecryptfs kerneldoc for this stuff sometime)\n\nThis patch cleans up some of the existing comments and makes a couple\nof line break tweaks. There is more work to do to bring eCryptfs into\nfull kerneldoc-compliance.\n\nSigned-off-by: Michael Halcrow \u003cmhalcrow@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6c6f57f3bee1e3c3d31b08a0161c435bfaeb77eb",
      "tree": "55d1f1ded5f56784d1529189fcb7df49e266f1db",
      "parents": [
        "fcd12835666b059b95613778819eb3ae9bc73642"
      ],
      "author": {
        "name": "Michael Halcrow",
        "email": "mhalcrow@us.ibm.com",
        "time": "Tue Oct 16 01:28:01 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:43:11 2007 -0700"
      },
      "message": "eCryptfs: comments for some structs\n\nAndrew Morton wrote:\n\u003e \u003e +struct ecryptfs_global_auth_tok {\n\u003e \u003e +#define ECRYPTFS_AUTH_TOK_INVALID 0x00000001\n\u003e \u003e +     u32 flags;\n\u003e \u003e +     struct list_head mount_crypt_stat_list;\n\u003e \u003e +     struct key *global_auth_tok_key;\n\u003e \u003e +     struct ecryptfs_auth_tok *global_auth_tok;\n\u003e \u003e +     unsigned char sig[ECRYPTFS_SIG_SIZE_HEX + 1];\n\u003e \u003e +};\n\u003e \u003e +\n\u003e \u003e +struct ecryptfs_key_tfm {\n\u003e \u003e +     struct crypto_blkcipher *key_tfm;\n\u003e \u003e +     size_t key_size;\n\u003e \u003e +     struct mutex key_tfm_mutex;\n\u003e \u003e +     struct list_head key_tfm_list;\n\u003e \u003e +     unsigned char cipher_name[ECRYPTFS_MAX_CIPHER_NAME_SIZE + 1];\n\u003e \u003e +};\n\u003e\n\u003e Please consider commenting your struct fields carefully: it\u0027s a\n\u003e great way to help other to understand your code.\n\nAdd some comments to the ecryptfs_global_auth_tok and ecryptfs_key_tfm\nstructs to make their functions more easily ascertained.\n\nSigned-off-by: Michael Halcrow \u003cmhalcrow@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "fcd12835666b059b95613778819eb3ae9bc73642",
      "tree": "bd825395368d5039e039f930288b3997a2a96263",
      "parents": [
        "af655dc6a9d5028d89aa35b65781631451aadc19"
      ],
      "author": {
        "name": "Michael Halcrow",
        "email": "mhalcrow@us.ibm.com",
        "time": "Tue Oct 16 01:28:01 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:43:11 2007 -0700"
      },
      "message": "eCryptfs: grammatical fix (destruct to destroy)\n\nAndrew Morton wrote:\n\u003e \u003e +int ecryptfs_destruct_crypto(void)\n\u003e\n\u003e ecryptfs_destroy_crypto would be more grammatically correct ;)\n\nGrammatical fix for some function names.\n\nSigned-off-by: Michael Halcrow \u003cmhalcrow@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "af655dc6a9d5028d89aa35b65781631451aadc19",
      "tree": "aab30213366f9077b44fc09387a61bb140ca8240",
      "parents": [
        "c59c2eb53f002de96f48dbc51e4f3bd946cf2458"
      ],
      "author": {
        "name": "Michael Halcrow",
        "email": "mhalcrow@us.ibm.com",
        "time": "Tue Oct 16 01:28:00 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:43:11 2007 -0700"
      },
      "message": "eCryptfs: collapse flag set into one statement\n\nAndrew Morton wrote:\n\u003e \u003e +     crypt_stat-\u003eflags |\u003d ECRYPTFS_ENCRYPTED;\n\u003e \u003e +     crypt_stat-\u003eflags |\u003d ECRYPTFS_KEY_VALID;\n\u003e\n\u003e Maybe the compiler can optimise those two statements, but we\u0027d\n\u003e normally provide it with some manual help.\n\nThis patch provides the compiler with some manual help for\noptimizing the setting of some flags.\n\nSigned-off-by: Michael Halcrow \u003cmhalcrow@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c59c2eb53f002de96f48dbc51e4f3bd946cf2458",
      "tree": "af9c826e357e1edd2c8f3410b98833141a154365",
      "parents": [
        "81acbcd6c54c89a9eb09c1b9ca3bd952f6989c10"
      ],
      "author": {
        "name": "Michael Halcrow",
        "email": "mhalcrow@us.ibm.com",
        "time": "Tue Oct 16 01:28:00 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:43:11 2007 -0700"
      },
      "message": "eCryptfs: remove unnecessary BUG_ON\n\nAndrew Morton wrote:\n\u003e \u003e +     mutex_lock(\u0026mount_crypt_stat-\u003eglobal_auth_tok_list_mutex);\n\u003e \u003e +     BUG_ON(mount_crypt_stat-\u003enum_global_auth_toks \u003d\u003d 0);\n\u003e \u003e +     mutex_unlock(\u0026mount_crypt_stat-\u003eglobal_auth_tok_list_mutex);\n\u003e\n\u003e That\u0027s odd-looking.  If it was a bug for num_global_auth_toks to be\n\u003e zero, and if that mutex protects num_global_auth_toks then as soon\n\u003e as the lock gets dropped, another thread can make\n\u003e num_global_auth_toks zero, hence the bug is present.  Perhaps?\n\nThat was serving as an internal sanity check that should not have made\nit into the final patch set in the first place. This patch removes it.\n\nSigned-off-by: Michael Halcrow \u003cmhalcrow@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "81acbcd6c54c89a9eb09c1b9ca3bd952f6989c10",
      "tree": "2a01d767ea559811ee552d3c69d5a8be67159bac",
      "parents": [
        "ca939e79e395ce2b9ffb8e97763024b61b1e2ad8"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Tue Oct 16 01:27:59 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:43:11 2007 -0700"
      },
      "message": "ecryptfs: printk warning fixes\n\nfs/ecryptfs/keystore.c: In function \u0027parse_tag_1_packet\u0027:\nfs/ecryptfs/keystore.c:557: warning: format \u0027%d\u0027 expects type \u0027int\u0027, but argument 2 has type \u0027size_t\u0027\nfs/ecryptfs/keystore.c: In function \u0027parse_tag_3_packet\u0027:\nfs/ecryptfs/keystore.c:690: warning: format \u0027%d\u0027 expects type \u0027int\u0027, but argument 2 has type \u0027size_t\u0027\nfs/ecryptfs/keystore.c: In function \u0027parse_tag_11_packet\u0027:\nfs/ecryptfs/keystore.c:836: warning: format \u0027%d\u0027 expects type \u0027int\u0027, but argument 2 has type \u0027size_t\u0027\nfs/ecryptfs/keystore.c: In function \u0027write_tag_1_packet\u0027:\nfs/ecryptfs/keystore.c:1413: warning: format \u0027%d\u0027 expects type \u0027int\u0027, but argument 2 has type \u0027size_t\u0027\nfs/ecryptfs/keystore.c:1413: warning: format \u0027%d\u0027 expects type \u0027int\u0027, but argument 3 has type \u0027long unsigned int\u0027\nfs/ecryptfs/keystore.c: In function \u0027write_tag_11_packet\u0027:\nfs/ecryptfs/keystore.c:1472: warning: format \u0027%d\u0027 expects type \u0027int\u0027, but argument 2 has type \u0027size_t\u0027\nfs/ecryptfs/keystore.c: In function \u0027write_tag_3_packet\u0027:\nfs/ecryptfs/keystore.c:1663: warning: format \u0027%d\u0027 expects type \u0027int\u0027, but argument 2 has type \u0027size_t\u0027\nfs/ecryptfs/keystore.c:1663: warning: format \u0027%d\u0027 expects type \u0027int\u0027, but argument 3 has type \u0027long unsigned int\u0027\nfs/ecryptfs/keystore.c: In function \u0027ecryptfs_generate_key_packet_set\u0027:\nfs/ecryptfs/keystore.c:1778: warning: passing argument 2 of \u0027write_tag_11_packet\u0027 from incompatible pointer type\nfs/ecryptfs/main.c: In function \u0027ecryptfs_parse_options\u0027:\nfs/ecryptfs/main.c:363: warning: format \u0027%d\u0027 expects type \u0027int\u0027, but argument 3 has type \u0027size_t\u0027\n\nCc: Michael Halcrow \u003cmhalcrow@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ca939e79e395ce2b9ffb8e97763024b61b1e2ad8",
      "tree": "3bde47fb58c071b5fe4a654d7275b21ab63aa39f",
      "parents": [
        "146a46063b282375015d4b2dad4a94f206bbea4e"
      ],
      "author": {
        "name": "Michael Halcrow",
        "email": "mhalcrow@us.ibm.com",
        "time": "Tue Oct 16 01:27:58 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:43:11 2007 -0700"
      },
      "message": "eCryptfs: update comment and debug statement\n\nTrivial updates to comment and debug statement.\n\nSigned-off-by: Michael Halcrow \u003cmhalcrow@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "146a46063b282375015d4b2dad4a94f206bbea4e",
      "tree": "6cda58777b94ab8c402e34df5cc24449776ad87f",
      "parents": [
        "f648104a0d44d7c551f8025ad7e50c4815d3b6eb"
      ],
      "author": {
        "name": "Michael Halcrow",
        "email": "mhalcrow@us.ibm.com",
        "time": "Tue Oct 16 01:27:58 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:43:11 2007 -0700"
      },
      "message": "eCryptfs: fix Tag 11 writing code\n\nFix up the Tag 11 writing code to handle size limits and boundaries more\nexplicitly.  It looks like the packet length was 1 shorter than it should have\nbeen, chopping off the last byte of the key identifier.  This is largely\ninconsequential, since it is not much more likely that a key identifier\ncollision will occur with 7 bytes rather than 8.  This patch fixes the packet\nto use the full number of bytes that were originally intended to be used for\nthe key identifier.\n\nSigned-off-by: Michael Halcrow \u003cmhalcrow@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f648104a0d44d7c551f8025ad7e50c4815d3b6eb",
      "tree": "f02a40f291c67171f86facc9e2fa80c01a0bd03b",
      "parents": [
        "c59becfceea8de57c35a3de5ee45a7bb883cf90a"
      ],
      "author": {
        "name": "Michael Halcrow",
        "email": "mhalcrow@us.ibm.com",
        "time": "Tue Oct 16 01:27:57 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:43:11 2007 -0700"
      },
      "message": "eCryptfs: fix Tag 11 parsing code\n\nFix up the Tag 11 parsing code to handle size limits and boundaries more\nexplicitly.  Pay attention to *8* bytes for the key identifier (literal data),\nno more, no less.\n\nSigned-off-by: Michael Halcrow \u003cmhalcrow@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c59becfceea8de57c35a3de5ee45a7bb883cf90a",
      "tree": "1e3721371ddf6d37ba08f528a21595a2ace1dd31",
      "parents": [
        "132181796af08273ab9fa835420b9f5f78d70234"
      ],
      "author": {
        "name": "Michael Halcrow",
        "email": "mhalcrow@us.ibm.com",
        "time": "Tue Oct 16 01:27:56 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:43:11 2007 -0700"
      },
      "message": "eCryptfs: fix Tag 3 parsing code\n\nFix up the Tag 3 parsing code to handle size limits and boundaries more\nexplicitly.\n\nSigned-off-by: Michael Halcrow \u003cmhalcrow@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "132181796af08273ab9fa835420b9f5f78d70234",
      "tree": "87d016885edb62138facbdc098894909855e0db4",
      "parents": [
        "956159c3d6e7eed61da0aaee740fbfba52849ff8"
      ],
      "author": {
        "name": "Michael Halcrow",
        "email": "mhalcrow@us.ibm.com",
        "time": "Tue Oct 16 01:27:56 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:43:10 2007 -0700"
      },
      "message": "eCryptfs: fix Tag 1 parsing code\n\nFix up the Tag 1 parsing code to handle size limits and boundaries more\nexplicitly.  Initialize the new auth_tok\u0027s flags.\n\nSigned-off-by: Michael Halcrow \u003cmhalcrow@us.ibm.com\u003e\nCc: Josef Sipek \u003cjsipek@fsl.cs.sunysb.edu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "956159c3d6e7eed61da0aaee740fbfba52849ff8",
      "tree": "b4b14bbda404eda6ce6d9604e6024f3a647dfc8c",
      "parents": [
        "e0869cc144174c5e3e2671cb40fdecac44d71855"
      ],
      "author": {
        "name": "Michael Halcrow",
        "email": "mhalcrow@us.ibm.com",
        "time": "Tue Oct 16 01:27:55 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:43:10 2007 -0700"
      },
      "message": "eCryptfs: kmem_cache objects for multiple keys; init/exit functions\n\nIntroduce kmem_cache objects for handling multiple keys per inode.  Add calls\nin the module init and exit code to call the key list\ninitialization/destruction functions.\n\nSigned-off-by: Michael Halcrow \u003cmhalcrow@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e0869cc144174c5e3e2671cb40fdecac44d71855",
      "tree": "ac070caeb12df93b5861e7e6e37ac159de1b2d9c",
      "parents": [
        "f4aad16adfb8f0a2d666fdf8af4bd0dff2ce75e4"
      ],
      "author": {
        "name": "Michael Halcrow",
        "email": "mhalcrow@us.ibm.com",
        "time": "Tue Oct 16 01:27:55 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:43:10 2007 -0700"
      },
      "message": "eCryptfs: use list_for_each_entry_safe() when wiping auth toks\n\nUse list_for_each_entry_safe() when wiping the authentication token list.\n\nSigned-off-by: Michael Halcrow \u003cmhalcrow@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f4aad16adfb8f0a2d666fdf8af4bd0dff2ce75e4",
      "tree": "42e7f191d1a3a1e1375af24acc5c336b30c5c4d1",
      "parents": [
        "cce76f9b9696a59974be9ed43478c000c57e597a"
      ],
      "author": {
        "name": "Michael Halcrow",
        "email": "mhalcrow@us.ibm.com",
        "time": "Tue Oct 16 01:27:53 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:43:10 2007 -0700"
      },
      "message": "eCryptfs: add key list structure; search keyring\n\nAdd support structures for handling multiple keys.  The list in crypt_stat\ncontains the key identifiers for all of the keys that should be used for\nencrypting each file\u0027s File Encryption Key (FEK).  For now, each inode\ninherits this list from the mount-wide crypt_stat struct, via the\necryptfs_copy_mount_wide_sigs_to_inode_sigs() function.\n\nThis patch also removes the global key tfm from the mount-wide crypt_stat\nstruct, instead keeping a list of tfm\u0027s meant for dealing with the various\ninode FEK\u0027s.  eCryptfs will now search the user\u0027s keyring for FEK\u0027s parsed\nfrom the existing file metadata, so the user can make keys available at any\ntime before or after mounting.\n\nNow that multiple FEK packets can be written to the file metadata, we need to\nbe more meticulous about size limits.  The updates to the code for writing out\npackets to the file metadata makes sizes and limits more explicit, uniformly\nexpressed, and (hopefully) easier to follow.\n\nSigned-off-by: Michael Halcrow \u003cmhalcrow@us.ibm.com\u003e\nCc: \"Serge E. Hallyn\" \u003cserge@hallyn.com\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cce76f9b9696a59974be9ed43478c000c57e597a",
      "tree": "b7b6f64c1c175a569411c39f57d86f41e6b3e652",
      "parents": [
        "e8a285b7b10029c3da7e9bbaa1659e7e08178912"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Tue Oct 16 01:27:52 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:43:10 2007 -0700"
      },
      "message": "fs/nfsd/export.c: make 3 functions static\n\nThis patch makes the following needlessly global functions static:\n- exp_get_by_name()\n- exp_parent()\n- exp_find()\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nCc: Neil Brown \u003cneilb@suse.de\u003e\nCc: \"J. Bruce Fields\" \u003cbfields@fieldses.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "84b3db04ca15a90273745e391462faf658b1e825",
      "tree": "0a2d3e591ab26d0a98d492119396497210a351ec",
      "parents": [
        "baabd156e243e513873417b62e51346ece609934"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Tue Oct 16 01:27:13 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:43:07 2007 -0700"
      },
      "message": "uml: fix hostfs style\n\nStyle fixes in hostfs.\n\nSigned-off-by: Jeff Dike \u003cjdike@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": "baabd156e243e513873417b62e51346ece609934",
      "tree": "1096cb3a2038ff59ec18ae9a7ef19736cbdffa10",
      "parents": [
        "1466abf2d03207b42980ddf8cde1fba17b7cd301"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Tue Oct 16 01:27:13 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:43:06 2007 -0700"
      },
      "message": "uml: remove unneeded if from hostfs\n\nGet rid of an empty if statement which might look like a bug to a\ncasual reader.\n\nSigned-off-by: Jeff Dike \u003cjdike@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": "a1ff5878d2628bbe1e42821c024c96f48318f683",
      "tree": "4198cc2f9707553c0cc47c0b9ee440128212c088",
      "parents": [
        "ad43c3565bebada7e5a13288e37542fd940369e8"
      ],
      "author": {
        "name": "Miklos Szeredi",
        "email": "mszeredi@suse.cz",
        "time": "Tue Oct 16 01:26:49 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:43:05 2007 -0700"
      },
      "message": "UML: remove unnecessary hostfs_getattr()\n\nCurrently hostfs_getattr() just defines the default behavior.\n\nSigned-off-by: Miklos Szeredi \u003cmszeredi@suse.cz\u003e\nCc: Jeff Dike \u003cjdike@addtoit.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e63e1e5a6b75416ab758025fd80e247c4f103b1b",
      "tree": "cfc15590308980ebc1794d5a44cb02120868a025",
      "parents": [
        "7aa91e104028b87ff13f5eeb7a0d7ffe7b5a2348"
      ],
      "author": {
        "name": "Badari Pulavarty",
        "email": "pbadari@us.ibm.com",
        "time": "Tue Oct 16 01:26:22 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:43:03 2007 -0700"
      },
      "message": "hugetlbfs read() support\n\nSupport for reading from hugetlbfs files.  libhugetlbfs lets application\ntext/data to be placed in large pages.  When we do that, oprofile doesn\u0027t\nwork - since libbfd tries to read from it.\n\nThis code is very similar to what do_generic_mapping_read() does, but I\ncan\u0027t use it since it has PAGE_CACHE_SIZE assumptions.\n\n[akpm@linux-foundation.org: cleanups, fix leak]\n[bunk@stusta.de: make hugetlbfs_read() static]\nSigned-off-by: Badari Pulavarty \u003cpbadari@us.ibm.com\u003e\nAcked-by: William Irwin \u003cbill.irwin@oracle.com\u003e\nTested-by: Nishanth Aravamudan \u003cnacc@us.ibm.com\u003e\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7aa91e104028b87ff13f5eeb7a0d7ffe7b5a2348",
      "tree": "e6084d025a03e3b097c0a710e50fcae1d82f2fba",
      "parents": [
        "54f9f80d6543fb7b157d3b11e2e7911dc1379790"
      ],
      "author": {
        "name": "Ken Chen",
        "email": "kenchen@google.com",
        "time": "Tue Oct 16 01:26:21 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:43:02 2007 -0700"
      },
      "message": "hugetlb: allow extending ftruncate on hugetlbfs\n\nFor historical reason, expanding ftruncate that increases file size on\nhugetlbfs is not allowed due to pages were pre-faulted and lack of fault\nhandler.  Now that we have demand faulting on hugetlb since 2.6.15, there\nis no reason to hold back that limitation.\n\nThis will make hugetlbfs behave more like a normal fs.  I\u0027m writing a user\nlevel code that uses hugetlbfs but will fall back to tmpfs if there are no\nhugetlb page available in the system.  Having hugetlbfs specific ftruncate\nbehavior is a bit quirky and I would like to remove that artificial\nlimitation.\n\nSigned-off-by: \u003ckenchen@google.com\u003e\nAcked-by: Wiliam Irwin \u003cwli@holomorphy.com\u003e\nCc: Adam Litke \u003cagl@us.ibm.com\u003e\nCc: David Gibson \u003cdavid@gibson.dropbear.id.au\u003e\nCc: Nishanth Aravamudan \u003cnacc@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "467c996c1e1910633fa8e7adc9b052aa3ed5f97c",
      "tree": "09e0e70160386be1bdaa12801afddf287e12c8a1",
      "parents": [
        "d9c2340052278d8eb2ffb16b0484f8f794def4de"
      ],
      "author": {
        "name": "Mel Gorman",
        "email": "mel@csn.ul.ie",
        "time": "Tue Oct 16 01:26:02 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:43:00 2007 -0700"
      },
      "message": "Print out statistics in relation to fragmentation avoidance to /proc/pagetypeinfo\n\nThis patch provides fragmentation avoidance statistics via /proc/pagetypeinfo.\n The information is collected only on request so there is no runtime overhead.\n The statistics are in three parts:\n\nThe first part prints information on the size of blocks that pages are\nbeing grouped on and looks like\n\nPage block order: 10\nPages per block:  1024\n\nThe second part is a more detailed version of /proc/buddyinfo and looks like\n\nFree pages count per migrate type at order       0      1      2      3      4      5      6      7      8      9     10\nNode    0, zone      DMA, type    Unmovable      0      0      0      0      0      0      0      0      0      0      0\nNode    0, zone      DMA, type  Reclaimable      1      0      0      0      0      0      0      0      0      0      0\nNode    0, zone      DMA, type      Movable      0      0      0      0      0      0      0      0      0      0      0\nNode    0, zone      DMA, type      Reserve      0      4      4      0      0      0      0      1      0      1      0\nNode    0, zone   Normal, type    Unmovable    111      8      4      4      2      3      1      0      0      0      0\nNode    0, zone   Normal, type  Reclaimable    293     89      8      0      0      0      0      0      0      0      0\nNode    0, zone   Normal, type      Movable      1      6     13      9      7      6      3      0      0      0      0\nNode    0, zone   Normal, type      Reserve      0      0      0      0      0      0      0      0      0      0      4\n\nThe third part looks like\n\nNumber of blocks type     Unmovable  Reclaimable      Movable      Reserve\nNode 0, zone      DMA            0            1            2            1\nNode 0, zone   Normal            3           17           94            4\n\nTo walk the zones within a node with interrupts disabled, walk_zones_in_node()\nis introduced and shared between /proc/buddyinfo, /proc/zoneinfo and\n/proc/pagetypeinfo to reduce code duplication.  It seems specific to what\nvmstat.c requires but could be broken out as a general utility function in\nmmzone.c if there were other other potential users.\n\nSigned-off-by: Mel Gorman \u003cmel@csn.ul.ie\u003e\nAcked-by: Andy Whitcroft \u003capw@shadowen.org\u003e\nAcked-by: Christoph Lameter \u003cclameter@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": "e12ba74d8ff3e2f73a583500d7095e406df4d093",
      "tree": "a0d3385b65f0b3e1e00b0bbf11b75e7538a93edb",
      "parents": [
        "c361be55b3128474aa66d31092db330b07539103"
      ],
      "author": {
        "name": "Mel Gorman",
        "email": "mel@csn.ul.ie",
        "time": "Tue Oct 16 01:25:52 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:43:00 2007 -0700"
      },
      "message": "Group short-lived and reclaimable kernel allocations\n\nThis patch marks a number of allocations that are either short-lived such as\nnetwork buffers or are reclaimable such as inode allocations.  When something\nlike updatedb is called, long-lived and unmovable kernel allocations tend to\nbe spread throughout the address space which increases fragmentation.\n\nThis patch groups these allocations together as much as possible by adding a\nnew MIGRATE_TYPE.  The MIGRATE_RECLAIMABLE type is for allocations that can be\nreclaimed on demand, but not moved.  i.e.  they can be migrated by deleting\nthem and re-reading the information from elsewhere.\n\nSigned-off-by: Mel Gorman \u003cmel@csn.ul.ie\u003e\nCc: Andy Whitcroft \u003capw@shadowen.org\u003e\nCc: Christoph Lameter \u003cclameter@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": "55144768e100b68447f44c5e5c9deb155ad661bd",
      "tree": "9889682ee3b64627ad9eb504f30672fad844752f",
      "parents": [
        "03158cd7eb3374843de68421142ca5900df845d9"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Tue Oct 16 01:25:26 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:42:58 2007 -0700"
      },
      "message": "fs: remove some AOP_TRUNCATED_PAGE\n\nprepare/commit_write no longer returns AOP_TRUNCATED_PAGE since OCFS2 and\nGFS2 were converted to the new aops, so we can make some simplifications\nfor that.\n\n[michal.k.k.piotrowski@gmail.com: fix warning]\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Michael Halcrow \u003cmhalcrow@us.ibm.com\u003e\nCc: Mark Fasheh \u003cmark.fasheh@oracle.com\u003e\nCc: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\nSigned-off-by: Michal Piotrowski \u003cmichal.k.k.piotrowski@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "03158cd7eb3374843de68421142ca5900df845d9",
      "tree": "5e1bfc1f981651e7f7d7cf30afd15d7bd96b2a57",
      "parents": [
        "b6af1bcd8720cb3062c8c4d4c8ba02bee10ff03f"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Tue Oct 16 01:25:25 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:42:58 2007 -0700"
      },
      "message": "fs: restore nobh\n\nImplement nobh in new aops.  This is a bit tricky.  FWIW, nobh_truncate is\nnow implemented in a way that does not create blocks in sparse regions,\nwhich is a silly thing for it to have been doing (isn\u0027t it?)\n\next2 survives fsx and fsstress. jfs is converted as well... ext3\nshould be easy to do (but not done yet).\n\n[akpm@linux-foundation.org: coding-style fixes]\nCc: Badari Pulavarty \u003cpbadari@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b6af1bcd8720cb3062c8c4d4c8ba02bee10ff03f",
      "tree": "e6cb27498f649dd3addc48fb4d92ac20ae8de7cb",
      "parents": [
        "f2b6a16eb8f5b4851b01625a21e0c71207c2ce77"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Tue Oct 16 01:25:24 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:42:58 2007 -0700"
      },
      "message": "ocfs2: convert to new aops\n\nPlug ocfs2 into the -\u003ewrite_begin and -\u003ewrite_end aops.\n\nA bunch of custom code is now gone - the iovec iteration stuff during write\nand the ocfs2 splice write actor.\n\nSigned-off-by: Mark Fasheh \u003cmark.fasheh@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f2b6a16eb8f5b4851b01625a21e0c71207c2ce77",
      "tree": "6903e844147078f8f8d817b17eada5a65b4a7623",
      "parents": [
        "b4585729f0b616c95aacafb8c8cb5e1af0d4242f"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Tue Oct 16 01:25:24 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:42:58 2007 -0700"
      },
      "message": "fs: affs convert to new aops\n\nCc: Roman Zippel \u003czippel@linux-m68k.org\u003e\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b4585729f0b616c95aacafb8c8cb5e1af0d4242f",
      "tree": "d87045fed9cf165dca1e3e41802f5c2f7e2bbf09",
      "parents": [
        "d5c5f84ba9b9138b03ba90f1b7f83a379cfaea6a"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Tue Oct 16 01:25:23 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:42:57 2007 -0700"
      },
      "message": "fs: adfs convert to new aops\n\nAcked-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d5c5f84ba9b9138b03ba90f1b7f83a379cfaea6a",
      "tree": "6b4ec3492101c30de0b1062e20543063cbb16cad",
      "parents": [
        "4a66af9eaa9531372cfcb9e20103ed147c729ff9"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Tue Oct 16 01:25:22 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:42:57 2007 -0700"
      },
      "message": "jfs: convert to new aops\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nAcked-by: Dave Kleikamp \u003cshaggy@linux.vnet.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4a66af9eaa9531372cfcb9e20103ed147c729ff9",
      "tree": "8c766cdab76be6369e450b783c61d168e8374762",
      "parents": [
        "26a6441aadde864132672750b3cf0892e5acaaf4"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Tue Oct 16 01:25:21 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:42:57 2007 -0700"
      },
      "message": "minixfs: convert to new aops\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Andries Brouwer \u003cAndries.Brouwer@cwi.nl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "26a6441aadde864132672750b3cf0892e5acaaf4",
      "tree": "2e85db7e46c956f5e0d7150e09accb67235983b6",
      "parents": [
        "be021ee41a8b65d181fe22799de6be62adf72efb"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Tue Oct 16 01:25:21 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:42:57 2007 -0700"
      },
      "message": "sysv: convert to new aops\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "be021ee41a8b65d181fe22799de6be62adf72efb",
      "tree": "d02e79ac30c6b03ea361bc425a566a402a8db0c0",
      "parents": [
        "82b9d1d0da8046088b0f505f92a97d12d9804613"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Tue Oct 16 01:25:20 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:42:57 2007 -0700"
      },
      "message": "udf: convert to new aops\n\nConvert udf to new aops.  Also seem to have fixed pagecache corruption in\nudf_adinicb_commit_write -- page was marked uptodate when it is not.  Also,\nfixed the silly setup where prepare_write was doing a kmap to be used in\ncommit_write: just do kmap_atomic in write_end.  Use libfs helpers to make\nthis easier.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: \u003cbfennema@falcon.csc.calpoly.edu\u003e\nCc: Jan Kara \u003cjack@ucw.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "82b9d1d0da8046088b0f505f92a97d12d9804613",
      "tree": "de9d6f5a0fa7482a097bcf97152c25dedf68e19e",
      "parents": [
        "205c109a7a96d9a3d8ffe64c4068b70811fef5e8"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Tue Oct 16 01:25:19 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:42:57 2007 -0700"
      },
      "message": "ufs: convert to new aops\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Evgeniy Dushistov \u003cdushistov@mail.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "205c109a7a96d9a3d8ffe64c4068b70811fef5e8",
      "tree": "2822c27a8d51045bb55821517dc763e73fe19871",
      "parents": [
        "ae361ff46ba93b2644675d9de19e885185f0d0c1"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Tue Oct 16 01:25:18 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:42:57 2007 -0700"
      },
      "message": "jffs2: convert to new aops\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: David Woodhouse \u003cdwmw2@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": "ae361ff46ba93b2644675d9de19e885185f0d0c1",
      "tree": "b5af5dd9b66382e5681ae9195147c38cc8f1f3b4",
      "parents": [
        "5e6f58a1d7ce2fd5ef099f9aec5b3e3f7ba176b4"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Tue Oct 16 01:25:17 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:42:57 2007 -0700"
      },
      "message": "hostfs: convert to new aops\n\nThis also gets rid of a lot of useless read_file stuff. And also\noptimises the full page write case by marking a !uptodate page uptodate.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Jeff Dike \u003cjdike@addtoit.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5e6f58a1d7ce2fd5ef099f9aec5b3e3f7ba176b4",
      "tree": "2a63f0587a60d30d00cbadb6d33756725173576f",
      "parents": [
        "fb53b3094888be0cf8ddf052277654268904bdf5"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Tue Oct 16 01:25:17 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:42:57 2007 -0700"
      },
      "message": "fuse: convert to new aops\n\n[mszeredi]\n - don\u0027t send zero length write requests\n - it is not legal for the filesystem to return with zero written bytes\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Miklos Szeredi \u003cmszeredi@suse.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "fb53b3094888be0cf8ddf052277654268904bdf5",
      "tree": "49c63bf1c06c207443fe14b4a5f8e3c479e2ea2d",
      "parents": [
        "4899f9c852564ce7b6d0ca932ac6674bf471fd28"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Tue Oct 16 01:25:16 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:42:57 2007 -0700"
      },
      "message": "smbfs: convert to new aops\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4899f9c852564ce7b6d0ca932ac6674bf471fd28",
      "tree": "4248794207b9b82077f48ce08655a018d89d2683",
      "parents": [
        "a20fa20c549ed569885d871f689a59cfd2f6ff77"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Tue Oct 16 01:25:16 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:42:57 2007 -0700"
      },
      "message": "nfs: convert to new aops\n\n[akpm@linux-foundation.org: fix against git-nfs]\n[peterz@infradead.org: fix against git-nfs]\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nAcked-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\nCc: \"J. Bruce Fields\" \u003cbfields@fieldses.org\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a20fa20c549ed569885d871f689a59cfd2f6ff77",
      "tree": "bc6f7119cec83032eb43c27d6ec7bbbebd2fdddb",
      "parents": [
        "f7557e8f7ff785d6c2b5bc914cd1675314ff0fcf"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Tue Oct 16 01:25:15 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:42:56 2007 -0700"
      },
      "message": "With reiserfs no longer using the weird generic_cont_expand, remove it completely.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f7557e8f7ff785d6c2b5bc914cd1675314ff0fcf",
      "tree": "ad00de4fd519ff462df289f23dfb21d395e1e011",
      "parents": [
        "ba9d8cec6c7165e440f9b2413a0464cf3c12fb25"
      ],
      "author": {
        "name": "Vladimir Saveliev",
        "email": "vs@namesys.com",
        "time": "Tue Oct 16 01:25:14 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:42:56 2007 -0700"
      },
      "message": "reiserfs: use generic_cont_expand_simple\n\nThis patch makes reiserfs to use AOP_FLAG_CONT_EXPAND\nin order to get rid of the special generic_cont_expand routine\n\nSigned-off-by: Vladimir Saveliev \u003cvs@namesys.com\u003e\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ba9d8cec6c7165e440f9b2413a0464cf3c12fb25",
      "tree": "7fc05b10cdd18da51fce987b3323754ecdc53973",
      "parents": [
        "797b4cffdf79b9ed66759b8d2d5252eba965fb18"
      ],
      "author": {
        "name": "Vladimir Saveliev",
        "email": "vs@namesys.com",
        "time": "Tue Oct 16 01:25:14 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:42:56 2007 -0700"
      },
      "message": "reiserfs: convert to new aops\n\nConvert reiserfs to new aops\n\nSigned-off-by: Vladimir Saveliev \u003cvs@namesys.com\u003e\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "797b4cffdf79b9ed66759b8d2d5252eba965fb18",
      "tree": "5704fe75e0e9ff45ccd078d0b34420ad71f242a8",
      "parents": [
        "f87061842877cf822251c65b39cc624cc94046da"
      ],
      "author": {
        "name": "Vladimir Saveliev",
        "email": "vs@namesys.com",
        "time": "Tue Oct 16 01:25:12 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:42:56 2007 -0700"
      },
      "message": "reiserfs: use generic write\n\nMake reiserfs to write via generic routines.\nOriginal reiserfs write optimized for big writes is deadlock rone\n\nSigned-off-by: Vladimir Saveliev \u003cvs@namesys.com\u003e\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f87061842877cf822251c65b39cc624cc94046da",
      "tree": "d1d5b57b32ced0e4ac657ca1aee2ecdbec57bb77",
      "parents": [
        "eedcbba5e012978ec1bf972723aa02ab4df972e6"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Tue Oct 16 01:25:12 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:42:56 2007 -0700"
      },
      "message": "qnx4: convert to new aops\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nAcked-by: Anders Larsen \u003cal@alarsen.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "eedcbba5e012978ec1bf972723aa02ab4df972e6",
      "tree": "6b31163962fb96fa58c5198777efd515db821788",
      "parents": [
        "d6091b720184c72909ef4dc4059b73bf68abea56"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Tue Oct 16 01:25:11 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:42:56 2007 -0700"
      },
      "message": "bfs: convert to new aops\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Tigran Aivazian \u003ctigran@aivazian.fsnet.co.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d6091b720184c72909ef4dc4059b73bf68abea56",
      "tree": "75b6bee2f5d4c928687de680f0be5eb7ebac11e2",
      "parents": [
        "7c0efc627738c840a685ea0f2c23d09aad7d5d3b"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Tue Oct 16 01:25:10 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:42:56 2007 -0700"
      },
      "message": "hpfs: convert to new aops\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: \u003cmikulas@artax.karlin.mff.cuni.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7c0efc627738c840a685ea0f2c23d09aad7d5d3b",
      "tree": "e51573472f37260d57541bb4456ae1a948307cc7",
      "parents": [
        "7903d9eed82db81c15ee8b4114187dfdcad7650f"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Tue Oct 16 01:25:09 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:42:56 2007 -0700"
      },
      "message": "hfsplus: convert to new aops\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Roman Zippel \u003czippel@linux-m68k.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7903d9eed82db81c15ee8b4114187dfdcad7650f",
      "tree": "44037552fb748df45ff2ad60e5467b81bfaeee7a",
      "parents": [
        "d7777a25a07e88fcfceb30f1a6f799e2ed87abb5"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Tue Oct 16 01:25:09 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:42:56 2007 -0700"
      },
      "message": "hfs: convert to new aops\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Roman Zippel \u003czippel@linux-m68k.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d7777a25a07e88fcfceb30f1a6f799e2ed87abb5",
      "tree": "6aaee0ed9b821d5c189d411248f0c77e4d6e502d",
      "parents": [
        "89e107877b65bf6eff1d63a1302dee9a091586f5"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Tue Oct 16 01:25:08 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:42:55 2007 -0700"
      },
      "message": "fat: convert to new aops\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: OGAWA Hirofumi \u003chirofumi@mail.parknet.co.jp\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "89e107877b65bf6eff1d63a1302dee9a091586f5",
      "tree": "8a120a04c46f19229d1cf9b9c546f1818cf84c44",
      "parents": [
        "7765ec26ae1c01bb29bedf910e4efcced8cc81d2"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Tue Oct 16 01:25:07 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:42:55 2007 -0700"
      },
      "message": "fs: new cont helpers\n\nRework the generic block \"cont\" routines to handle the new aops.  Supporting\ncont_prepare_write would take quite a lot of code to support, so remove it\ninstead (and we later convert all filesystems to use it).\n\nwrite_begin gets passed AOP_FLAG_CONT_EXPAND when called from\ngeneric_cont_expand, so filesystems can avoid the old hacks they used.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: OGAWA Hirofumi \u003chirofumi@mail.parknet.co.jp\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7765ec26ae1c01bb29bedf910e4efcced8cc81d2",
      "tree": "8ce0e877daf805e5e546f10b389cd1c686ec0365",
      "parents": [
        "d79689c7038ea07182e8d7340786f7fcf8c77780"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Tue Oct 16 01:25:07 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:42:55 2007 -0700"
      },
      "message": "gfs2: convert to new aops\n\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nCc: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d79689c7038ea07182e8d7340786f7fcf8c77780",
      "tree": "8275c8ab209a8ecd03838f41e42228b053de00af",
      "parents": [
        "bfc1af650a8f36feba6b90a6c398325f885c00bc"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Tue Oct 16 01:25:06 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:42:55 2007 -0700"
      },
      "message": "xfs: convert to new aops\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: David Chinner \u003cdgc@sgi.com\u003e\nCc: Timothy Shimmin \u003ctes@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": "bfc1af650a8f36feba6b90a6c398325f885c00bc",
      "tree": "c7db5bbfad01d2c18533e7a128027e26d1992a42",
      "parents": [
        "f4fc66a894546bdc88a775d0e83ad20a65210bcb"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Tue Oct 16 01:25:05 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:42:55 2007 -0700"
      },
      "message": "ext4: convert to new aops\n\nConvert ext4 to use write_begin()/write_end() methods.\n\nSigned-off-by: Badari Pulavarty \u003cpbadari@us.ibm.com\u003e\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Dmitriy Monakhov \u003cdmonakhov@sw.ru\u003e\nCc: Mark Fasheh \u003cmark.fasheh@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f4fc66a894546bdc88a775d0e83ad20a65210bcb",
      "tree": "87d725ad4e579eb353f615eab26dbf705e2e4bc2",
      "parents": [
        "f34fb6eccc962e4137b77c4bbe1e9a31d27a30e6"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Tue Oct 16 01:25:05 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:42:55 2007 -0700"
      },
      "message": "ext3: convert to new aops\n\nVarious fixes and improvements\n\nSigned-off-by: Badari Pulavarty \u003cpbadari@us.ibm.com\u003e\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f34fb6eccc962e4137b77c4bbe1e9a31d27a30e6",
      "tree": "58fd363d892ee2d341a17e52a297632a10219af9",
      "parents": [
        "6272b5a5868f3d5fbf9815f9984891ced343dabc"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Tue Oct 16 01:25:04 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:42:55 2007 -0700"
      },
      "message": "ext2: convert to new aops\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6272b5a5868f3d5fbf9815f9984891ced343dabc",
      "tree": "350eb309221242119901f1f4fcdb04a52abaea36",
      "parents": [
        "800d15a53e7d14fa26495b7b95d3bfe7877dd69d"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Tue Oct 16 01:25:04 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:42:55 2007 -0700"
      },
      "message": "block_dev: convert to new aops\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "800d15a53e7d14fa26495b7b95d3bfe7877dd69d",
      "tree": "09a59e32043f1b601b73ad6105e7634679337884",
      "parents": [
        "674b892ede247ef4fb8d00918f02e29c32b9bbaf"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Tue Oct 16 01:25:03 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:42:55 2007 -0700"
      },
      "message": "implement simple fs aops\n\nImplement new aops for some of the simpler filesystems.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "afddba49d18f346e5cc2938b6ed7c512db18ca68",
      "tree": "4726e3d3b0e9e8e5b5d3b2b0cccb36446bbdf3ca",
      "parents": [
        "637aff46f94a754207c80c8c64bf1b74f24b967d"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Tue Oct 16 01:25:01 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:42:55 2007 -0700"
      },
      "message": "fs: introduce write_begin, write_end, and perform_write aops\n\nThese are intended to replace prepare_write and commit_write with more\nflexible alternatives that are also able to avoid the buffered write\ndeadlock problems efficiently (which prepare_write is unable to do).\n\n[mark.fasheh@oracle.com: API design contributions, code review and fixes]\n[akpm@linux-foundation.org: various fixes]\n[dmonakhov@sw.ru: new aop block_write_begin fix]\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Mark Fasheh \u003cmark.fasheh@oracle.com\u003e\nSigned-off-by: Dmitriy Monakhov \u003cdmonakhov@openvz.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "637aff46f94a754207c80c8c64bf1b74f24b967d",
      "tree": "837fb3196236998c3c3ae44762ed3167ef0256f4",
      "parents": [
        "2f718ffc16c43a435d12919c75dbfad518abd056"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Tue Oct 16 01:25:00 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:42:55 2007 -0700"
      },
      "message": "fs: fix data-loss on error\n\nNew buffers against uptodate pages are simply be marked uptodate, while the\nbuffer_new bit remains set.  This causes error-case code to zero out parts of\nthose buffers because it thinks they contain stale data: wrong, they are\nactually uptodate so this is a data loss situation.\n\nFix this by actually clearning buffer_new and marking the buffer dirty.  It\nmakes sense to always clear buffer_new before setting a buffer uptodate.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "eb2be189317d031895b5ca534fbf735eb546158b",
      "tree": "8f1eda7af3be7285244a6f1ad77682e90d403c7b",
      "parents": [
        "64649a58919e66ec21792dbb6c48cb3da22cbd7f"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Tue Oct 16 01:24:57 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:42:54 2007 -0700"
      },
      "message": "mm: buffered write cleanup\n\nQuite a bit of code is used in maintaining these \"cached pages\" that are\nprobably pretty unlikely to get used. It would require a narrow race where\nthe page is inserted concurrently while this process is allocating a page\nin order to create the spare page. Then a multi-page write into an uncached\npart of the file, to make use of it.\n\nNext, the buffered write path (and others) uses its own LRU pagevec when it\nshould be just using the per-CPU LRU pagevec (which will cut down on both data\nand code size cacheline footprint). Also, these private LRU pagevecs are\nemptied after just a very short time, in contrast with the per-CPU pagevecs\nthat are persistent. Net result: 7.3 times fewer lru_lock acquisitions required\nto add the pages to pagecache for a bulk write (in 4K chunks).\n\n[this gets rid of some cond_resched() calls in readahead.c and mpage.c due\n to clashes in -mm. What put them there, and why? ]\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a4b0672db3a698d0684ee6e54f44e2e162a3da1b",
      "tree": "d53c52b251856520b0fd02969bfcdd4b5d332da6",
      "parents": [
        "68671f35fe8d785277118a333c88768a4f894917"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Tue Oct 16 01:24:48 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:42:54 2007 -0700"
      },
      "message": "fs: fix nobh error handling\n\nnobh mode error handling is not just pretty slack, it\u0027s wrong.\n\nOne cannot zero out the whole page to ensure new blocks are zeroed, because\nit just brings the whole page \"uptodate\" with zeroes even if that may not\nbe the correct uptodate data.  Also, other parts of the page may already\ncontain dirty data which would get lost by zeroing it out.  Thirdly, the\nwriteback of zeroes to the new blocks will also erase existing blocks.  All\nthese conditions are pagecache and/or filesystem corruption.\n\nThe problem comes about because we didn\u0027t keep track of which buffers\nactually are new or old.  However it is not enough just to keep only this\nstate, because at the point we start dirtying parts of the page (new\nblocks, with zeroes), the handling of IO errors becomes impossible without\nbuffers because the page may only be partially uptodate, in which case the\npage flags allone cannot capture the state of the parts of the page.\n\nSo allocate all buffers for the page upfront, but leave them unattached so\nthat they don\u0027t pick up any other references and can be freed when we\u0027re\ndone.  If the error path is hit, then zero the new buffers as the regular\nbuffer path does, then attach the buffers to the page so that it can\nactually be written out correctly and be subject to the normal IO error\nhandling paths.\n\nAs an upshot, we save 1K of kernel stack on ia64 or powerpc 64K page\nsystems.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "68671f35fe8d785277118a333c88768a4f894917",
      "tree": "50cb5a378db1b021c2ec3573388af3480df49791",
      "parents": [
        "ef8b4520bd9f8294ffce9abd6158085bde5dc902"
      ],
      "author": {
        "name": "Dmitry Monakhov",
        "email": "dmonakhov@openvz.org",
        "time": "Tue Oct 16 01:24:47 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:42:53 2007 -0700"
      },
      "message": "mm: add end_buffer_read helper function\n\nMove duplicated code from end_buffer_read_XXX methods to separate helper\nfunction.\n\nSigned-off-by: Dmitry Monakhov \u003cdmonakhov@openvz.org\u003e\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "557ed1fa2620dc119adb86b34c614e152a629a80",
      "tree": "d00b31a7f197583c2bd8fffa1fd135fbbb5d6abc",
      "parents": [
        "aadb4bc4a1f9108c1d0fbd121827c936c2ed4217"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Tue Oct 16 01:24:40 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:42:53 2007 -0700"
      },
      "message": "remove ZERO_PAGE\n\nThe commit b5810039a54e5babf428e9a1e89fc1940fabff11 contains the note\n\n  A last caveat: the ZERO_PAGE is now refcounted and managed with rmap\n  (and thus mapcounted and count towards shared rss).  These writes to\n  the struct page could cause excessive cacheline bouncing on big\n  systems.  There are a number of ways this could be addressed if it is\n  an issue.\n\nAnd indeed this cacheline bouncing has shown up on large SGI systems.\nThere was a situation where an Altix system was essentially livelocked\ntearing down ZERO_PAGE pagetables when an HPC app aborted during startup.\nThis situation can be avoided in userspace, but it does highlight the\npotential scalability problem with refcounting ZERO_PAGE, and corner\ncases where it can really hurt (we don\u0027t want the system to livelock!).\n\nThere are several broad ways to fix this problem:\n1. add back some special casing to avoid refcounting ZERO_PAGE\n2. per-node or per-cpu ZERO_PAGES\n3. remove the ZERO_PAGE completely\n\nI will argue for 3. The others should also fix the problem, but they\nresult in more complex code than does 3, with little or no real benefit\nthat I can see.\n\nWhy? Inserting a ZERO_PAGE for anonymous read faults appears to be a\nfalse optimisation: if an application is performance critical, it would\nnot be doing many read faults of new memory, or at least it could be\nexpected to write to that memory soon afterwards. If cache or memory use\nis critical, it should not be working with a significant number of\nZERO_PAGEs anyway (a more compact representation of zeroes should be\nused).\n\nAs a sanity check -- mesuring on my desktop system, there are never many\nmappings to the ZERO_PAGE (eg. 2 or 3), thus memory usage here should not\nincrease much without it.\n\nWhen running a make -j4 kernel compile on my dual core system, there are\nabout 1,000 mappings to the ZERO_PAGE created per second, but about 1,000\nZERO_PAGE COW faults per second (less than 1 ZERO_PAGE mapping per second\nis torn down without being COWed). So removing ZERO_PAGE will save 1,000\npage faults per second when running kbuild, while keeping it only saves\nless than 1 page clearing operation per second. 1 page clear is cheaper\nthan a thousand faults, presumably, so there isn\u0027t an obvious loss.\n\nNeither the logical argument nor these basic tests give a guarantee of no\nregressions. However, this is a reasonable opportunity to try to remove\nthe ZERO_PAGE from the pagefault path. If it is found to cause regressions,\nwe can reintroduce it and just avoid refcounting it.\n\nThe /dev/zero ZERO_PAGE usage and TLB tricks also get nuked.  I don\u0027t see\nmuch use to them except on benchmarks.  All other users of ZERO_PAGE are\nconverted just to use ZERO_PAGE(0) for simplicity. We can look at\nreplacing them all and maybe ripping out ZERO_PAGE completely when we are\nmore satisfied with this solution.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus \"snif\" Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f4e6b498d6e06742d72706ef50593a9c4dd72214",
      "tree": "74a573302b2ea086c0d21907175be604f110f5b1",
      "parents": [
        "0bb7ba6b9c358c12084a3cbc6ac08c8d1e973937"
      ],
      "author": {
        "name": "Fengguang Wu",
        "email": "wfg@mail.ustc.edu.cn",
        "time": "Tue Oct 16 01:24:33 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:42:52 2007 -0700"
      },
      "message": "readahead: combine file_ra_state.prev_index/prev_offset into prev_pos\n\nCombine the file_ra_state members\n\t\t\t\tunsigned long prev_index\n\t\t\t\tunsigned int prev_offset\ninto\n\t\t\t\tloff_t prev_pos\n\nIt is more consistent and better supports huge files.\n\nThanks to Peter for the nice proposal!\n\n[akpm@linux-foundation.org: fix shift overflow]\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nSigned-off-by: Fengguang Wu \u003cwfg@mail.ustc.edu.cn\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a39d113936370ba524fa9e34d6954c3625c8aa64",
      "tree": "6e4334d4fe9018a6032a2cf47f144e1716ca30ad",
      "parents": [
        "8b6800fbced0c6745a9b8f5f72f15ef8bce8a6be",
        "7e3da6c4b9a69f44b758b2c88190ac33ac4ea1a1"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Oct 16 12:29:29 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Oct 16 12:29:29 2007 +0200"
      },
      "message": "Merge branch \u0027barrier\u0027 into for-linus\n"
    },
    {
      "commit": "992c5ddaf1b8b85d2252339c4c89adf7469c09ca",
      "tree": "67c802af524f923cf20ebcdde2220d72e539121b",
      "parents": [
        "2b94de552e07610dfa79fc49ea49d1cfa5cd9ce8"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed Jul 18 13:18:08 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Oct 16 11:03:52 2007 +0200"
      },
      "message": "bio: make freeing of -\u003ebi_io_vec conditional in bio_free()\n\nThe empty barrier patches do not carry data, so they have no\niovec attached.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "2b94de552e07610dfa79fc49ea49d1cfa5cd9ce8",
      "tree": "4ead48b312a7faf00e0c0373156e1e92cab618f0",
      "parents": [
        "4fa253f33c1d4d6402de9eaacefdb45a47ed116d"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed Jul 18 13:14:03 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Oct 16 11:03:51 2007 +0200"
      },
      "message": "bio: use memset() in bio_init()\n\nUse memset() to clear the bio, instead of doing each field manually.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "6866bef40d06f7c2baac3a855b1917a8ca75456c",
      "tree": "d6f34589657d91d60e9b3ed847eeba4c7a3c8c5a",
      "parents": [
        "23c76983e23628c7762137a00651e3e371aa97d3"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Oct 16 10:01:29 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Oct 16 10:01:29 2007 +0200"
      },
      "message": "splice: fix double kunmap() in vmsplice copy path\n\nThe out label should not include the unmap, the only way to jump\nthere already has unmapped the source.\n\n00002000\n       f7c21a00 00000000 00000000 c0489036 00018e32 00000002 00000000\n00001000\nCall Trace:\n [\u003cc0487dd9\u003e] pipe_to_user+0xca/0xd3\n [\u003cc0488233\u003e] __splice_from_pipe+0x53/0x1bd\n [\u003cc0454947\u003e] ------------[ cut here ]------------\nfilemap_fault+0x221/0x380\n [\u003cc0487d0f\u003e] pipe_to_user+0x0/0xd3\n [\u003cc0489036\u003e] sys_vmsplice+0x3b7/0x422\n [\u003cc045ec3f\u003e] kernel BUG at mm/highmem.c:206!\nhandle_mm_fault+0x4d5/0x8eb\n [\u003cc041ed5b\u003e] kmap_atomic+0x1c/0x20\n [\u003cc045d33d\u003e] unmap_vmas+0x3d1/0x584\n [\u003cc045f717\u003e] free_pgtables+0x90/0xa0\n [\u003cc041d84b\u003e] pgd_dtor+0x0/0x1\n [\u003cc044d665\u003e] audit_syscall_exit+0x2aa/0x2c6\n [\u003cc0407817\u003e] do_syscall_trace+0x124/0x169\n [\u003cc0404df2\u003e] syscall_call+0x7/0xb\n \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\nCode: 2d 00 d0 5b 00 25 00 00 e0 ff 29 invalid opcode: 0000 [#1]\nc2 89 d0 c1 e8 0c 8b 14 85 a0 6c 7c c0 4a 85 d2 89 14 85 a0 6c 7c c0 74 07\n31 c9 4a 75 15 eb 04 \u003c0f\u003e 0b eb fe 31 c9 81 3d 78 38 6d c0 78 38 6d c0 0f\n95 c1 b0 01\nEIP: [\u003cc045bbc3\u003e] kunmap_high+0x51/0x8e SS:ESP 0068:f5960df0\nSMP\nModules linked in: netconsole autofs4 hidp nfs lockd nfs_acl rfcomm l2cap\nbluetooth sunrpc ipv6 ib_iser rdma_cm ib_cm iw_cmib_sa ib_mad ib_core\nib_addr iscsi_tcp libiscsi scsi_transport_iscsi dm_mirror dm_multipath\ndm_mod video output sbs batteryac parport_pc lp parport sg i2c_piix4\ni2c_core floppy cfi_probe gen_probe scb2_flash mtd chipreg tg3 e1000 button\nide_cd serio_raw cdrom aic7xxx scsi_transport_spi sd_mod scsi_mod ext3 jbd\nehci_hcd ohci_hcd uhci_hcd\nCPU:    3\nEIP:    0060:[\u003cc045bbc3\u003e]    Not tainted VLI\nEFLAGS: 00010246   (2.6.23 #1)\nEIP is at kunmap_high+0x51/0x8e\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "e6716b87d5c9edf19c711212785cd30c6ec21868",
      "tree": "0059d64ffe0828252b3639ead94a47122eb9f135",
      "parents": [
        "fd39c86b3d8910fbafe41207135c1d72bc895614"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Mon Oct 15 17:30:19 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Oct 15 17:56:36 2007 -0700"
      },
      "message": "docbook: fix filesystems content\n\nFix filesystems docbook warnings.\n\nWarning(linux-2.6.23-git8//fs/debugfs/file.c:241): No description found for parameter \u0027name\u0027\nWarning(linux-2.6.23-git8//fs/debugfs/file.c:241): No description found for parameter \u0027mode\u0027\nWarning(linux-2.6.23-git8//fs/debugfs/file.c:241): No description found for parameter \u0027parent\u0027\nWarning(linux-2.6.23-git8//fs/debugfs/file.c:241): No description found for parameter \u0027value\u0027\nWarning(linux-2.6.23-git8//include/linux/jbd.h:404): No description found for parameter \u0027h_lockdep_map\u0027\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "541010e4b8921cd781ff02ae68028501457045b6",
      "tree": "58bd529d4c6e69899a0aa20afa2d7f1c23326417",
      "parents": [
        "e457f790d8b05977853aa238bbc667b3bb375671",
        "5e7fc436426b1f9e106f511a049de91c82ec2c53"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Oct 15 16:07:40 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Oct 15 16:07:40 2007 -0700"
      },
      "message": "Merge branch \u0027locks\u0027 of git://linux-nfs.org/~bfields/linux\n\n* \u0027locks\u0027 of git://linux-nfs.org/~bfields/linux:\n  nfsd: remove IS_ISMNDLCK macro\n  Rework /proc/locks via seq_files and seq_list helpers\n  fs/locks.c: use list_for_each_entry() instead of list_for_each()\n  NFS: clean up explicit check for mandatory locks\n  AFS: clean up explicit check for mandatory locks\n  9PFS: clean up explicit check for mandatory locks\n  GFS2: clean up explicit check for mandatory locks\n  Cleanup macros for distinguishing mandatory locks\n  Documentation: move locks.txt in filesystems/\n  locks: add warning about mandatory locking races\n  Documentation: move mandatory locking documentation to filesystems/\n  locks: Fix potential OOPS in generic_setlease()\n  Use list_first_entry in locks_wake_up_blocks\n  locks: fix flock_lock_file() comment\n  Memory shortage can result in inconsistent flocks state\n  locks: kill redundant local variable\n  locks: reverse order of posix_locks_conflict() arguments\n"
    },
    {
      "commit": "f4921aff5b174349bc36551f142a5dbac782ea3f",
      "tree": "bdff8ca1531977ad1d04ac8d70e10f8dfbb26c38",
      "parents": [
        "419217cb1d0266f62cbea6cdc6b1d1324350bc34",
        "05c88babab957dfd63bd351b25042d80bd854dd0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Oct 15 10:46:05 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Oct 15 10:47:35 2007 -0700"
      },
      "message": "Merge git://git.linux-nfs.org/pub/linux/nfs-2.6\n\n* git://git.linux-nfs.org/pub/linux/nfs-2.6: (131 commits)\n  NFSv4: Fix a typo in nfs_inode_reclaim_delegation\n  NFS: Add a boot parameter to disable 64 bit inode numbers\n  NFS: nfs_refresh_inode should clear cache_validity flags on success\n  NFS: Fix a connectathon regression in NFSv3 and NFSv4\n  NFS: Use nfs_refresh_inode() in ops that aren\u0027t expected to change the inode\n  SUNRPC: Don\u0027t call xprt_release in call refresh\n  SUNRPC: Don\u0027t call xprt_release() if call_allocate fails\n  SUNRPC: Fix buggy UDP transmission\n  [23/37] Clean up duplicate includes in\n  [2.6 patch] net/sunrpc/rpcb_clnt.c: make struct rpcb_program static\n  SUNRPC: Use correct type in buffer length calculations\n  SUNRPC: Fix default hostname created in rpc_create()\n  nfs: add server port to rpc_pipe info file\n  NFS: Get rid of some obsolete macros\n  NFS: Simplify filehandle revalidation\n  NFS: Ensure that nfs_link() returns a hashed dentry\n  NFS: Be strict about dentry revalidation when doing exclusive create\n  NFS: Don\u0027t zap the readdir caches upon error\n  NFS: Remove the redundant nfs_reval_fsid()\n  NFSv3: Always use directory post-op attributes in nfs3_proc_lookup\n  ...\n\nFix up trivial conflict due to sock_owned_by_user() cleanup manually in\nnet/sunrpc/xprtsock.c\n"
    },
    {
      "commit": "419217cb1d0266f62cbea6cdc6b1d1324350bc34",
      "tree": "01f80c026cc94dfc13b3a16d2fce3ba41c69d54f",
      "parents": [
        "4937ce87959629d31e9b09cf5bdf1e12a305c805",
        "14358e6ddaed27499d7d366b3e65c3e46b39e1c4"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Oct 15 10:40:41 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Oct 15 10:40:41 2007 -0700"
      },
      "message": "Merge branch \u0027v2.6.24-lockdep\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/peterz/linux-2.6-lockdep\n\n* \u0027v2.6.24-lockdep\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/peterz/linux-2.6-lockdep:\n  lockdep: annotate dir vs file i_mutex\n  lockdep: per filesystem inode lock class\n  lockdep: annotate kprobes irq fiddling\n  lockdep: annotate rcu_read_{,un}lock{,_bh}\n  lockdep: annotate journal_start()\n  lockdep: s390: connect the sysexit hook\n  lockdep: x86_64: connect the sysexit hook\n  lockdep: i386: connect the sysexit hook\n  lockdep: syscall exit check\n  lockdep: fixup mutex annotations\n  lockdep: fix mismatched lockdep_depth/curr_chain_hash\n  lockdep: Avoid /proc/lockdep \u0026 lock_stat infinite output\n  lockdep: maintainers\n"
    },
    {
      "commit": "b5869ce7f68b233ceb81465a7644be0d9a5f3dbb",
      "tree": "e3611e7f038a4a4fa813532ae57a9a626fa1434d",
      "parents": [
        "df3d80f5a5c74168be42788364d13cf6c83c7b9c",
        "9c63d9c021f375a2708ad79043d6f4dd1291a085"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Oct 15 08:22:16 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Oct 15 08:22:16 2007 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/mingo/linux-2.6-sched\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/mingo/linux-2.6-sched: (140 commits)\n  sched: sync wakeups preempt too\n  sched: affine sync wakeups\n  sched: guest CPU accounting: maintain guest state in KVM\n  sched: guest CPU accounting: maintain stats in account_system_time()\n  sched: guest CPU accounting: add guest-CPU /proc/\u003cpid\u003e/stat fields\n  sched: guest CPU accounting: add guest-CPU /proc/stat field\n  sched: domain sysctl fixes: add terminator comment\n  sched: domain sysctl fixes: do not crash on allocation failure\n  sched: domain sysctl fixes: unregister the sysctl table before domains\n  sched: domain sysctl fixes: use for_each_online_cpu()\n  sched: domain sysctl fixes: use kcalloc()\n  Make scheduler debug file operations const\n  sched: enable wake-idle on CONFIG_SCHED_MC\u003dy\n  sched: reintroduce topology.h tunings\n  sched: allow the immediate migration of cache-cold tasks\n  sched: debug, improve migration statistics\n  sched: debug: increase width of debug line\n  sched: activate task_hot() only on fair-scheduled tasks\n  sched: reintroduce cache-hot affinity\n  sched: speed up context-switches a bit\n  ...\n"
    },
    {
      "commit": "37ca506adc395a028cd12760eca419dd0dc14b5c",
      "tree": "bab6f2644ef6bda4df1518f7063852012b69f458",
      "parents": [
        "b9090071a57185707c27b9d61b81bf941dbdf122",
        "a16e92edcd0a2846455a30823e1bac964e743baa"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Oct 15 08:16:53 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Oct 15 08:16:53 2007 -0700"
      },
      "message": "Merge branch \u0027nfs-server-stable\u0027 of git://linux-nfs.org/~bfields/linux\n\n* \u0027nfs-server-stable\u0027 of git://linux-nfs.org/~bfields/linux:\n  knfsd: query filesystem for NFSv4 getattr of FATTR4_MAXNAME\n  knfsd: nfsv4 delegation recall should take reference on client\n  knfsd: don\u0027t shutdown callbacks until nfsv4 client is freed\n  knfsd: let nfsd manage timing out its own leases\n  knfsd: Add source address to sunrpc svc errors\n  knfsd: 64 bit ino support for NFS server\n  svcgss: move init code into separate function\n  knfsd: remove code duplication in nfsd4_setclientid()\n  nfsd warning fix\n  knfsd: fix callback rpc cred\n  knfsd: move nfsv4 slab creation/destruction to module init/exit\n  knfsd: spawn kernel thread to probe callback channel\n  knfsd: nfs4 name-\u003eid mapping not correctly parsing negative downcall\n  knfsd: demote some printk()s to dprintk()s\n  knfsd: cleanup of nfsd4 cmp_* functions\n  knfsd: delete code made redundant by map_new_errors\n  nfsd: fix horrible indentation in nfsd_setattr\n  nfsd: remove unused cache_for_each macro\n  nfsd: tone down inaccurate dprintk\n"
    },
    {
      "commit": "71e20f1873d46e138c26ce83f8fe54b7221f572f",
      "tree": "3b5c5083d3ffcf7c9d7ddad81acf30c09197ef99",
      "parents": [
        "d172fcd3ae1ca7ac27ec8904242fd61e0e11d332"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Oct 15 17:00:19 2007 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Oct 15 17:00:19 2007 +0200"
      },
      "message": "sched: affine sync wakeups\n\nmake sync wakeups affine for cache-cold tasks: if a cache-cold task\nis woken up by a sync wakeup then use the opportunity to migrate it\nstraight away. (the two tasks are \u0027related\u0027 because they communicate)\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "9ac52315d4cf5f561f36dabaf0720c00d3553162",
      "tree": "afe7284f34a65d2540fcb2a9b764834f9d790fa7",
      "parents": [
        "5e84cfde51cf303d368fcb48f22059f37b3872de"
      ],
      "author": {
        "name": "Laurent Vivier",
        "email": "Laurent.Vivier@bull.net",
        "time": "Mon Oct 15 17:00:19 2007 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Oct 15 17:00:19 2007 +0200"
      },
      "message": "sched: guest CPU accounting: add guest-CPU /proc/\u003cpid\u003e/stat fields\n\nlike for cpustat, introduce the \"gtime\" (guest time of the task) and\n\"cgtime\" (guest time of the task children) fields for the\ntasks. Modify signal_struct and task_struct.\n\nModify /proc/\u003cpid\u003e/stat to display these new fields.\n\nSigned-off-by: Laurent Vivier \u003cLaurent.Vivier@bull.net\u003e\nAcked-by: Avi Kivity \u003cavi@qumranet.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "5e84cfde51cf303d368fcb48f22059f37b3872de",
      "tree": "59a55bbc56944e06c8e5940a58ff667939b92f69",
      "parents": [
        "6323469f9b72530eb90c96ba162cc70f2f4611de"
      ],
      "author": {
        "name": "Laurent Vivier",
        "email": "Laurent.Vivier@bull.net",
        "time": "Mon Oct 15 17:00:19 2007 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Oct 15 17:00:19 2007 +0200"
      },
      "message": "sched: guest CPU accounting: add guest-CPU /proc/stat field\n\nas recent CPUs introduce a third running state, after \"user\" and\n\"system\", we need a new field, \"guest\", in cpustat to store the time\nused by the CPU to run virtual CPU. Modify /proc/stat to display this\nnew field.\n\nSigned-off-by: Laurent Vivier \u003cLaurent.Vivier@bull.net\u003e\nAcked-by: Avi Kivity \u003cavi@qumranet.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "af92723262f3e0c431083f668b605a1dcdbe8f3d",
      "tree": "872eb5c473fabdbe0b67b309805e3f705c759d93",
      "parents": [
        "a2a2d680735ad7c3b5250704b3863abf54ff4020"
      ],
      "author": {
        "name": "Mike Galbraith",
        "email": "efault@gmx.de",
        "time": "Mon Oct 15 17:00:13 2007 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Oct 15 17:00:13 2007 +0200"
      },
      "message": "sched: cleanup, remove the TASK_NONINTERACTIVE flag\n\nHere\u0027s another piece of low hanging obsolete fruit.\n\nRemove obsolete TASK_NONINTERACTIVE.\n\nSigned-off-by: Mike Galbraith \u003cefault@gmx.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "2d72376b3af1e7d4d4515ebfd0f4383f2e92c343",
      "tree": "a9f36173883f1309640f3a1e58b03a53422262d8",
      "parents": [
        "2b1e315dd2822c99793485f9e53a73459fb399c1"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Oct 15 17:00:12 2007 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Oct 15 17:00:12 2007 +0200"
      },
      "message": "sched: clean up schedstats, cnt -\u003e count\n\nrename all \u0027cnt\u0027 fields and variables to the less yucky \u0027count\u0027 name.\n\nyuckage noticed by Andrew Morton.\n\nno change in code, other than the /proc/sched_debug bkl_count string got\na bit larger:\n\n   text    data     bss     dec     hex filename\n  38236    3506      24   41766    a326 sched.o.before\n  38240    3506      24   41770    a32a sched.o.after\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nReviewed-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "5ba253313d014364a9b87b6fa975ce2fc9759aa6",
      "tree": "b6f7b222b980d7a28e8d73d6cf939454a77205b1",
      "parents": [
        "b4482a4b2e2ff5ed96d8d16d72e83e75064062c5"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Sun Oct 14 19:35:50 2007 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Oct 14 12:41:52 2007 -0700"
      },
      "message": "more low-hanging fruits - kernel, fs, lib signedness\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b1519d047ca55406e0fc3dd2b8de266f971ea210",
      "tree": "eddb95968b1a8ce1ccf0339656ff56b17607e90a",
      "parents": [
        "1ccc9147f6a063c42fef67acff34de18435a4a6b"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Sun Oct 14 19:34:50 2007 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Oct 14 12:41:51 2007 -0700"
      },
      "message": "fs/partitions/sun.c endianness annotations\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "14358e6ddaed27499d7d366b3e65c3e46b39e1c4",
      "tree": "de5a8919db855568577d0388fe30b5d7689e1f90",
      "parents": [
        "d475fd428ce77aa2a8bc650d230e17663a4f49c3"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Sun Oct 14 01:38:33 2007 +0200"
      },
      "committer": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Sun Oct 14 01:38:33 2007 +0200"
      },
      "message": "lockdep: annotate dir vs file i_mutex\n\nOn Mon, 2007-09-24 at 22:13 -0400, Steven Rostedt wrote:\n\u003e The circular lock seems to be this:\n\u003e \n\u003e #1:\n\u003e \n\u003e   sys_mmap2:              down_write(\u0026mm-\u003emmap_sem);\n\u003e   nfs_revalidate_mapping: mutex_lock(\u0026inode-\u003ei_mutex);\n\u003e \n\u003e \n\u003e #0:\n\u003e \n\u003e   vfs_readdir:     mutex_lock(\u0026inode-\u003ei_mutex);\n\u003e    - during the readdir (filldir64), we take a user fault (missing page?)\n\u003e     and call do_page_fault -\n\u003e   do_page_fault:   down_read(\u0026mm-\u003emmap_sem);\n\u003e \n\u003e \n\u003e So it does indeed look like a circular locking. Now the question is, \"is\n\u003e this a bug?\".  Looking like the inode of #1 must be a file or something\n\u003e else that you can mmap and the inode of #0 seems it must be a directory.\n\u003e I would say \"no\".\n\u003e \n\u003e Now if you can readdir on a file or mmap a directory, then this could be\n\u003e an issue.\n\u003e \n\u003e Otherwise, I\u0027d love to see someone teach lockdep about this issue! ;-)\n\nMake a distinction between file and dir usage of i_mutex.\nThe inode should be complete and unused at unlock_new_inode(), re-init\ni_mutex depending on its type.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\n"
    }
  ],
  "next": "d475fd428ce77aa2a8bc650d230e17663a4f49c3"
}
