)]}'
{
  "log": [
    {
      "commit": "4b8561521dbaa3d766b198496b220e984e3bf756",
      "tree": "af96d2bd09d7a1e0349b4dbfc879e009a8ca13eb",
      "parents": [
        "36fd71d293898a59b14e49da1f6e81c1a58f2035"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Tue Sep 02 14:35:53 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 02 19:21:38 2008 -0700"
      },
      "message": "mm: show quicklist usage in /proc/meminfo\n\nQuicklists can consume several GB of memory.  We should provide a means of\nmonitoring this.\n\nAfter this patch is applied, /proc/meminfo will output the following:\n\n% cat /proc/meminfo\n\nMemTotal:      7715392 kB\nMemFree:       5401600 kB\nBuffers:         80384 kB\nCached:         300800 kB\nSwapCached:          0 kB\nActive:         235584 kB\nInactive:       262656 kB\nSwapTotal:     2031488 kB\nSwapFree:      2031488 kB\nDirty:            3520 kB\nWriteback:           0 kB\nAnonPages:      117696 kB\nMapped:          38528 kB\nSlab:          1589952 kB\nSReclaimable:    23104 kB\nSUnreclaim:    1566848 kB\nPageTables:      14656 kB\nNFS_Unstable:        0 kB\nBounce:              0 kB\nWritebackTmp:        0 kB\nCommitLimit:   5889152 kB\nCommitted_AS:   393152 kB\nVmallocTotal: 17592177655808 kB\nVmallocUsed:     29056 kB\nVmallocChunk: 17592177626432 kB\nQuicklists:     130944 kB\nHugePages_Total:     0\nHugePages_Free:      0\nHugePages_Rsvd:      0\nHugePages_Surp:      0\nHugepagesize:    262144 kB\n\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: Keiichiro Tokunaga \u003ctokunaga.keiich@jp.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "169ccbd44eb20f5bb7e4352451eba25397e29749",
      "tree": "f3e82bcbe479bc94a1ccde4334a76b1d1a136b4a",
      "parents": [
        "afa153fd7b6afcd55dd6df6aea06bb53aa1d3608"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Tue Sep 02 14:35:37 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 02 19:21:37 2008 -0700"
      },
      "message": "NTFS: update homepage\n\nUpdate the location of the NTFS homepage in several files.\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nCc: Jeff Garzik \u003cjeff@garzik.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e77295dc9e6b52281ae85af4068f13752524e9f4",
      "tree": "fca6b723f6c91f2af79b28f05c05e114720fbe66",
      "parents": [
        "1136cf11066a32d4ac2a476dac302858d763703d",
        "91b80969ba466ba4b915a4a1d03add8c297add3f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 02 10:58:11 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 02 10:58:11 2008 -0700"
      },
      "message": "Merge branch \u0027for-2.6.27\u0027 of git://linux-nfs.org/~bfields/linux\n\n* \u0027for-2.6.27\u0027 of git://linux-nfs.org/~bfields/linux:\n  nfsd: fix buffer overrun decoding NFSv4 acl\n  sunrpc: fix possible overrun on read of /proc/sys/sunrpc/transports\n  nfsd: fix compound state allocation error handling\n  svcrdma: Fix race between svc_rdma_recvfrom thread and the dto_tasklet\n"
    },
    {
      "commit": "91b80969ba466ba4b915a4a1d03add8c297add3f",
      "tree": "2e35e071d4faa5a57ab6ed4d74cd3ef686e1ba91",
      "parents": [
        "27df6f25ff218072e0e879a96beeb398a79cdbc8"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Fri Aug 29 19:18:45 2008 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Mon Sep 01 14:24:24 2008 -0400"
      },
      "message": "nfsd: fix buffer overrun decoding NFSv4 acl\n\nThe array we kmalloc() here is not large enough.\n\nThanks to Johann Dahm and David Richter for bug report and testing.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nCc: David Richter \u003crichterd@citi.umich.edu\u003e\nTested-by: Johann Dahm \u003cjdahm@umich.edu\u003e\n"
    },
    {
      "commit": "c228c24bf1138d4757dbe20615df655815446da3",
      "tree": "97ee91f5a0eb5f3944f20c3d147a6b3de2d279ab",
      "parents": [
        "24b8b44780a2c53ecb738f4a1c08d114f5eda27c"
      ],
      "author": {
        "name": "Andy Adamson",
        "email": "andros@netapp.com",
        "time": "Thu Aug 21 08:42:16 2008 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Mon Sep 01 14:17:48 2008 -0400"
      },
      "message": "nfsd: fix compound state allocation error handling\n\nMove the cstate_alloc call so that if it fails, the response is setup to\nencode the NFS error. The out label now means that the\nnfsd4_compound_state has not been allocated.\n\nSigned-off-by: Andy Adamson \u003candros@netapp.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "c76da9da1fffa6de263486df54950eb328d58f71",
      "tree": "370120a11b626ba03da03e47a3b31c7cebd2d609",
      "parents": [
        "2e655021b8d50b5d90ce442f3de6bf3667729910"
      ],
      "author": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Thu Aug 28 15:32:22 2008 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Thu Aug 28 15:32:22 2008 +0000"
      },
      "message": "[CIFS] Turn off Unicode during session establishment for plaintext authentication\n\nLANMAN session setup did not support Unicode (after session setup, unicode can\nstill be used though).\n\nFixes samba bug# 5319\n\nCC: Jeff Layton \u003cjlayton@redhat.com\u003e\nCC: Stable Kernel \u003cstable@vger.kernel.org\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "2e655021b8d50b5d90ce442f3de6bf3667729910",
      "tree": "554a083b1d32f25b8c14a2e4929c17cb09f23670",
      "parents": [
        "838726c4756813576078203eb7e1e219db0da870"
      ],
      "author": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Thu Aug 28 15:30:06 2008 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Thu Aug 28 15:30:06 2008 +0000"
      },
      "message": "[CIFS] update cifs change log\n\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "838726c4756813576078203eb7e1e219db0da870",
      "tree": "3ae8b22db6060244d0ab2b23342b04897682e835",
      "parents": [
        "6405c9cd9bf7b1c35ed76ef8ee3e217056285702"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Thu Aug 28 07:54:59 2008 -0400"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Thu Aug 28 14:15:32 2008 +0000"
      },
      "message": "cifs: fix O_APPEND on directio mounts\n\nThe direct I/O write codepath for CIFS is done through\ncifs_user_write(). That function does not currently call\ngeneric_write_checks() so the file position isn\u0027t being properly set\nwhen the file is opened with O_APPEND.  It\u0027s also not doing the other\n\"normal\" checks that should be done for a write call.\n\nThe problem is currently that when you open a file with O_APPEND on a\nmount with the directio mount option, the file position is set to the\nbeginning of the file. This makes any subsequent writes clobber the data\nin the file starting at the beginning.\n\nThis seems to fix the problem in cursory testing. It is, however\nimportant to note that NFS disallows the combination of\n(O_DIRECT|O_APPEND). If my understanding is correct, the concern is\nraces with multiple clients appending to a file clobbering each others\u0027\ndata. Since the write model for CIFS and NFS is pretty similar in this\nregard, CIFS is probably subject to the same sort of races. What\u0027s\nunclear to me is why this is a particular problem with O_DIRECT and not\nwith buffered writes...\n\nRegardless, disallowing O_APPEND on an entire mount is probably not\nreasonable, so we\u0027ll probably just have to deal with it and reevaluate\nthis flag combination when we get proper support for O_DIRECT. In the\nmeantime this patch at least fixes the existing problem.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nCc: Stable Tree \u003cstable@kernel.org\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "6405c9cd9bf7b1c35ed76ef8ee3e217056285702",
      "tree": "0659c9ae17d1375f185f88f4f7fef1a667f375d8",
      "parents": [
        "bcc55c6664a90146149ba0fd93052adc94287b9f",
        "4c246edd2550304df5b766cc841584b2bb058843"
      ],
      "author": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Thu Aug 28 02:47:00 2008 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Thu Aug 28 02:47:00 2008 +0000"
      },
      "message": "Merge branch \u0027master\u0027 of /pub/scm/linux/kernel/git/torvalds/linux-2.6\n"
    },
    {
      "commit": "325a9a3d3990e77c62b771a71239fcd0cb6f6e2c",
      "tree": "5f5a1b61f2730d61b94924cb1f9297d976260a0f",
      "parents": [
        "e4268bd3b2b0380faaa62fad3e8d705eea21d124",
        "87ed1d65fb536a0cd4e84874c0b038f953e448aa"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 27 14:34:49 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 27 14:34:49 2008 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6:\n  [CIFS] Add destroy routine for dns_resolver\n  [CIFS] Reorder cifs config item for better clarity\n  [CIFS] Correct keys dependency for cifs kerberos support\n"
    },
    {
      "commit": "5b51a7e9d84f19df4d532ebf5624dbb8ad0d6c9c",
      "tree": "aa8359921a8039474c7bb1544823184855e59694",
      "parents": [
        "3d87ff3e44bd2a13cbe2d2e02cc5e38953ff260f",
        "4cdfe84b51420c9ac95c7133da2d4c8a191094af"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 27 14:31:44 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 27 14:31:44 2008 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6:\n  [PATCH] deal with the first call of -\u003eshow() generating no output\n  [PATCH] fix -\u003ellseek() for a bunch of directories\n  [PATCH] fix regular readdir() and friends\n  [PATCH] fix hpux_getdents()\n  [PATCH] fix osf_getdirents()\n  [PATCH] ntfs: use d_add_ci\n  [PATCH] change d_add_ci argument ordering\n  [PATCH] fix efs_lookup()\n  [PATCH] proc: inode number fixlet\n"
    },
    {
      "commit": "bcc55c6664a90146149ba0fd93052adc94287b9f",
      "tree": "7b90cd9ea4bad5625b5912a8430038fac6b398f2",
      "parents": [
        "87ed1d65fb536a0cd4e84874c0b038f953e448aa"
      ],
      "author": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Wed Aug 27 21:30:22 2008 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Wed Aug 27 21:30:22 2008 +0000"
      },
      "message": "[CIFS] Fix plaintext authentication\n\nThe last eight bytes of the password field were not cleared when doing lanman plaintext password authentication. This patch fixes that.\n\nI tested it with Samba by setting password\nencryption to no in the server\u0027s smb.conf.  Other servers also can be\nconfigured to force plaintext authentication.    Note that plaintexti\nauthentication requires setting /proc/fs/cifs/SecurityFlags to 0x30030\non the client (enabling both LANMAN and also plaintext password support).\nAlso note that LANMAN support (and thus plaintext password support) requires\nCONFIG_CIFS_WEAK_PW_HASH to be enabled in menuconfig.\n\nCC: Jeff Layton \u003cjlayton@redhat.com\u003e\nCC: Stable Kernel \u003cstable@vger.kernel.org\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "87ed1d65fb536a0cd4e84874c0b038f953e448aa",
      "tree": "c6af45a3605a037a5f53101107da5e4cd4024325",
      "parents": [
        "96c2a1137b9e00bcdbe3a95113ea8f42ca994f76"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Wed Aug 27 17:53:30 2008 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Wed Aug 27 21:17:41 2008 +0000"
      },
      "message": "[CIFS] Add destroy routine for dns_resolver\n\nOtherwise, we\u0027re leaking the payload memory.\n\nCC: Stable Kernel \u003cstable@vger.kernel.org\u003e\nAcked-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "0559bc8e9bf8cb6063b9bc7206fbc28982491a5d",
      "tree": "3ec60750466eea38ae6443100b7213f5122e3d21",
      "parents": [
        "e472233fc52d9556cab7d8a1164ccd93ab36fb91",
        "5168c47b4c294412f079dd3cc891e0276bb0479e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 27 13:55:35 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 27 13:55:35 2008 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.dk/linux-2.6-block\n\n* \u0027for-linus\u0027 of git://git.kernel.dk/linux-2.6-block:\n  block: remove blk_queue_tag_depth() and blk_queue_tag_queue()\n  block: remove unused -\u003ebusy part of the block queue tag map\n  bio: fix __bio_copy_iov() handling of bio-\u003ebv_len\n  bio: fix bio_copy_kern() handling of bio-\u003ebv_len\n  block: submit_bh() inadvertently discards barrier flag on a sync write\n  block: clean up cmdfilter sysfs interface\n  block: rename blk_scsi_cmd_filter to blk_cmd_filter\n  sg: restore command permission for TYPE_SCANNER\n  block: move cmdfilter from gendisk to request_queue\n"
    },
    {
      "commit": "e472233fc52d9556cab7d8a1164ccd93ab36fb91",
      "tree": "9b5f8262ca8517532616cdd537c8867cee915c65",
      "parents": [
        "72e19b3b22f43b20ee84db0deba33c71803cbe34",
        "d6817cdbd143f87f9d7c59a4c3194091190eeb84"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 27 13:54:55 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 27 13:54:55 2008 -0700"
      },
      "message": "Merge branch \u0027upstream-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mfasheh/ocfs2\n\n* \u0027upstream-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mfasheh/ocfs2:\n  ocfs2: Increment the reference count of an already-active stack.\n  [PATCH] configfs: Consolidate locking around configfs_detach_prep() in configfs_rmdir()\n  ocfs2: correctly set i_blocks after inline dir gets expanded\n  ocfs2: Jump to correct label in ocfs2_expand_inline_dir()\n  ocfs2: Fix sleep-with-spinlock recovery regression\n  [PATCH] ocfs2/cluster/netdebug.c: fix warning\n  [PATCH] ocfs2/cluster/tcp.c: make some functions static\n"
    },
    {
      "commit": "aefcc28a3a63ac33a298777aa50ba43641c75241",
      "tree": "d72a23323e80b45da16ea916c9abe03d6a3f6bfd",
      "parents": [
        "76029ff37f31dad64641489c610d98955217bb68"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Mon Aug 25 20:36:08 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed Aug 27 09:50:19 2008 +0200"
      },
      "message": "bio: fix __bio_copy_iov() handling of bio-\u003ebv_len\n\nThe commit c5dec1c3034f1ae3503efbf641ff3b0273b64797 introduced\n__bio_copy_iov() to add bounce support to blk_rq_map_user_iov.\n\n__bio_copy_iov() uses bio-\u003ebv_len to copy data for READ commands after\nthe completion but it doesn\u0027t work with a request that partially\ncompleted. SCSI always completes a PC request as a whole but seems\nsome don\u0027t.\n\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nCc: stable@kernel.org\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "76029ff37f31dad64641489c610d98955217bb68",
      "tree": "e8f729fa6288676be357295141a0950f171a62d8",
      "parents": [
        "48fd4f93a00eac844678629f2f00518e146ed30d"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Mon Aug 25 20:36:08 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed Aug 27 09:50:19 2008 +0200"
      },
      "message": "bio: fix bio_copy_kern() handling of bio-\u003ebv_len\n\nThe commit 68154e90c9d1492d570671ae181d9a8f8530da55 introduced\nbio_copy_kern() to add bounce support to blk_rq_map_kern.\n\nbio_copy_kern() uses bio-\u003ebv_len to copy data for READ commands after\nthe completion but it doesn\u0027t work with a request that partially\ncompleted. SCSI always completes a PC request as a whole but seems\nsome don\u0027t.\n\nThis patch fixes bio_copy_kern to handle the above case. As\nbio_copy_user does, bio_copy_kern uses struct bio_map_data to store\nstruct bio_vec.\n\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nReported-by: Nix \u003cnix@esperi.org.uk\u003e\nTested-by: Nix \u003cnix@esperi.org.uk\u003e\nCc: stable@kernel.org\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "48fd4f93a00eac844678629f2f00518e146ed30d",
      "tree": "c71f6792742886db9912078c70b3e8806e9f260f",
      "parents": [
        "a4a778971b9cfcbedb8648ba502d801f7db04c47"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri Aug 22 10:00:36 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed Aug 27 09:50:19 2008 +0200"
      },
      "message": "block: submit_bh() inadvertently discards barrier flag on a sync write\n\nReported by Milan Broz \u003cmbroz@redhat.com\u003e, commit 18ce3751 inadvertently\nmade submit_bh() discard the barrier bit for a WRITE_SYNC request. Fix\nthat up.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "96c2a1137b9e00bcdbe3a95113ea8f42ca994f76",
      "tree": "f5fe28b9fe703c8be250d32595f139af12bcc487",
      "parents": [
        "e9775843ecb039318dbc9ded6da9c762bff28a0b"
      ],
      "author": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Tue Aug 26 18:32:28 2008 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Tue Aug 26 18:32:28 2008 +0000"
      },
      "message": "[CIFS] Reorder cifs config item for better clarity\n\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "e9775843ecb039318dbc9ded6da9c762bff28a0b",
      "tree": "bec4be16ee1d25e42d44051fedcd4bf570f48f5d",
      "parents": [
        "3dae49abef945c55c10fa7c479cfd8fd13af55db"
      ],
      "author": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Tue Aug 26 18:22:50 2008 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Tue Aug 26 18:22:50 2008 +0000"
      },
      "message": "[CIFS] Correct keys dependency for cifs kerberos support\n\nMust also depend on CIFS ...\n\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "3dae49abef945c55c10fa7c479cfd8fd13af55db",
      "tree": "487c47c6d23cc28a259b913396aeaff0b792d32d",
      "parents": [
        "6ce5eecb9cd3ac97b952c50309b87c31488a45e9",
        "b8e6c91c74e9f0279b7c51048779b3d62da60b88"
      ],
      "author": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Tue Aug 26 16:56:05 2008 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Tue Aug 26 16:56:05 2008 +0000"
      },
      "message": "Merge branch \u0027master\u0027 of /pub/scm/linux/kernel/git/torvalds/linux-2.6\n"
    },
    {
      "commit": "6ce5eecb9cd3ac97b952c50309b87c31488a45e9",
      "tree": "5d28ff051283462f6c927ae87c094b568fb5b1e9",
      "parents": [
        "3d2af3465e91335bd1dbf36b19e92079d901409f"
      ],
      "author": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Tue Aug 26 00:37:14 2008 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Tue Aug 26 00:37:14 2008 +0000"
      },
      "message": "[CIFS] check version in spnego upcall response\n\nCurrently, we don\u0027t check the version in the SPNEGO upcall response\neven though one is provided. Jeff and Q have made the corresponding\nchange to the Samba client (cifs.upcall).\n\nAcked-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "d6817cdbd143f87f9d7c59a4c3194091190eeb84",
      "tree": "5744bb0cb5d3083f37674d845576d61431b4ebb3",
      "parents": [
        "de6bf18e9ce0df807dab08cff08751cac383429d"
      ],
      "author": {
        "name": "Joel Becker",
        "email": "Joel.Becker@oracle.com",
        "time": "Fri Aug 22 14:30:10 2008 -0700"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Mon Aug 25 07:29:47 2008 -0700"
      },
      "message": "ocfs2: Increment the reference count of an already-active stack.\n\nThe ocfs2_stack_driver_request() function failed to increment the\nrefcount of an already-active stack.  It only did the increment on the\nfirst reference.  Whoops.\n\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\nTested-by: Marcos Matsunaga \u003cmarcos.matsunaga@oracle.com\u003e\nSigned-off-by: Mark Fasheh \u003cmfasheh@suse.com\u003e\n"
    },
    {
      "commit": "4cdfe84b51420c9ac95c7133da2d4c8a191094af",
      "tree": "b15ad9cd9d9db1117be13b5da1b00399ee544c70",
      "parents": [
        "59af1584bf33810639cb98d79856021253e2177c"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Aug 24 07:45:33 2008 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Aug 25 01:18:10 2008 -0400"
      },
      "message": "[PATCH] deal with the first call of -\u003eshow() generating no output\n\nseq_read() has a subtle bug - we want the first loop there to go\nuntil at least one *non-empty* record had fit entirely into buffer.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "59af1584bf33810639cb98d79856021253e2177c",
      "tree": "dbb7261a2abdef5f1716b27417f8b2b61d42b418",
      "parents": [
        "8f3f655da7288504c1013621090ecc940173ae1c"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Aug 24 07:24:41 2008 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Aug 25 01:18:09 2008 -0400"
      },
      "message": "[PATCH] fix -\u003ellseek() for a bunch of directories\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "8f3f655da7288504c1013621090ecc940173ae1c",
      "tree": "add84c360aaf940d721166ff2685a27c094cf799",
      "parents": [
        "da574983de9f9283ba35662c8723627096e160de"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Aug 12 00:28:24 2008 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Aug 25 01:18:08 2008 -0400"
      },
      "message": "[PATCH] fix regular readdir() and friends\n\nHandling of -EOVERFLOW.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "2690421743b03c9be05d8e44c3b827986d1329a7",
      "tree": "31948543f6aa652c214089768c9e7ed51f13daf0",
      "parents": [
        "e45b590b976465c258f3e2a6cc84573fc19e16d3"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Thu Aug 07 23:50:21 2008 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Aug 25 01:18:06 2008 -0400"
      },
      "message": "[PATCH] ntfs: use d_add_ci\n\nd_add_ci was lifted 1:1 from ntfs.  Change ntfs to use the common\nversion.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "e45b590b976465c258f3e2a6cc84573fc19e16d3",
      "tree": "54b795a1acd985b9bcc5adbe057706209a2612d3",
      "parents": [
        "2d8a10cd1760e7ecc07a21e409485947c68a3291"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Thu Aug 07 23:49:07 2008 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Aug 25 01:18:05 2008 -0400"
      },
      "message": "[PATCH] change d_add_ci argument ordering\n\nAs pointed out during review d_add_ci argument order should match d_add,\nso switch the dentry and inode arguments.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "2d8a10cd1760e7ecc07a21e409485947c68a3291",
      "tree": "d5fcaac5b05ae344c6250c42ae7ec34114f64ffb",
      "parents": [
        "cc996099174dc05b35b7a29301026987990e7f8c"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Aug 11 11:33:57 2008 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Aug 25 01:18:04 2008 -0400"
      },
      "message": "[PATCH] fix efs_lookup()\n\nit needs to use d_splice_alias(), not d_add()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "cc996099174dc05b35b7a29301026987990e7f8c",
      "tree": "bfdb337167e8d33d5fd88a17503821f189485d3e",
      "parents": [
        "6450f65168bcf3c03b5fb44c2fe96682c0d3086b"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Sat Aug 02 07:30:48 2008 +0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Aug 25 01:18:03 2008 -0400"
      },
      "message": "[PATCH] proc: inode number fixlet\n\nOuch, if number taken from IDA is too big, the intent was to signal an\nerror, not check for overflow and still do overflowing addition.\n\nOne still needs 2^28 proc entries to notice this.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "7a8fc9b248e77a4eab0613acf30a6811799786b3",
      "tree": "24b3beb8bc0633db27ffdb791f94dce95d51b1d0",
      "parents": [
        "d3ee1b405872214609868f3cde631ac157026dd0"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Sun Aug 17 17:36:59 2008 +0300"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Aug 23 12:14:12 2008 -0700"
      },
      "message": "removed unused #include \u003clinux/version.h\u003e\u0027s\n\nThis patch lets the files using linux/version.h match the files that\n#include it.\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "de6bf18e9ce0df807dab08cff08751cac383429d",
      "tree": "3e60e9f88b4da4711a34df273c99a348bdc10236",
      "parents": [
        "9780eb6cfaf7d2d5ccc061eaf94e7aec6a17791e"
      ],
      "author": {
        "name": "Louis Rilling",
        "email": "louis.rilling@kerlabs.com",
        "time": "Fri Aug 15 12:37:23 2008 -0700"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Fri Aug 22 11:09:02 2008 -0700"
      },
      "message": "[PATCH] configfs: Consolidate locking around configfs_detach_prep() in configfs_rmdir()\n\nIt appears that configfs_rmdir() can protect configfs_detach_prep() retries with\nless calls to {spin,mutex}_{lock,unlock}, and a cleaner code.\n\nThis patch does not change any behavior, except that it removes two useless\nlock/unlock pairs having nothing inside to protect and providing a useless\nbarrier.\n\nSigned-off-by: Louis Rilling \u003clouis.rilling@kerlabs.com\u003e\nSigned-off-by: Joel Becker \u003cJoel.Becker@oracle.com\u003e\nSigned-off-by: Mark Fasheh \u003cmfasheh@suse.com\u003e\n"
    },
    {
      "commit": "9780eb6cfaf7d2d5ccc061eaf94e7aec6a17791e",
      "tree": "103ce3e47f06adcf3825902d406d06e6a76fd065",
      "parents": [
        "83cab5338fa8c74f979223698c8d4cc88f2ab68e"
      ],
      "author": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Tue Aug 05 11:32:46 2008 -0700"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Fri Aug 22 11:09:02 2008 -0700"
      },
      "message": "ocfs2: correctly set i_blocks after inline dir gets expanded\n\nWe were setting i_blocks based on allocation before the extent insert, which\nis wrong as the value is a calculation based on ip_clusters which gets\nupdated as a result of the insert. This patch moves the line in question\nto just after the call to ocfs2_insert_extent().\n\nWithout this fix, inline directories were temporarily having an i_blocks\nvalue of zero immediately after expansion to extents.\n\nReported-and-tested-by: Tristan Ye \u003ctristan.ye@oracle.com\u003e\nSigned-off-by: Mark Fasheh \u003cmfasheh@suse.com\u003e\n"
    },
    {
      "commit": "83cab5338fa8c74f979223698c8d4cc88f2ab68e",
      "tree": "3acf8331abe32db8204ba0aba7a708cb1c5a5912",
      "parents": [
        "a1af7d15a18d1e375b0a6fee93789a0bbfe088b4"
      ],
      "author": {
        "name": "Tao Ma",
        "email": "tao.ma@oracle.com",
        "time": "Thu Aug 21 14:14:27 2008 +0800"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Fri Aug 22 11:09:02 2008 -0700"
      },
      "message": "ocfs2: Jump to correct label in ocfs2_expand_inline_dir()\n\nWhen we fail to insert extent in ocfs2_expand_inline_dir(), we should go to\nout_commit, not out.\n\nSigned-off-by: Tao Ma \u003ctao.ma@oracle.com\u003e\nSigned-off-by: Mark Fasheh \u003cmfasheh@suse.com\u003e\n"
    },
    {
      "commit": "a1af7d15a18d1e375b0a6fee93789a0bbfe088b4",
      "tree": "24af83391b39cf787b7579859682c4050970ed76",
      "parents": [
        "a57a874b04e27cb530a0e18c244387452e73ccce"
      ],
      "author": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Tue Aug 19 17:20:28 2008 -0700"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Fri Aug 22 11:08:38 2008 -0700"
      },
      "message": "ocfs2: Fix sleep-with-spinlock recovery regression\n\nThis fixes a bug introduced with 539d8264093560b917ee3afe4c7f74e5da09d6a5:\n    [PATCH 2/2] ocfs2: Fix race between mount and recovery\n\nocfs2_mark_dead_nodes() was reading journal inodes while holding the\nspinlock protecting our in-memory recovery state. The fix is very simple -\nthe disk state is protected by a cluster lock that\u0027s already held, so we\njust move the spinlock down past the read.\n\nReviewed-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\nSigned-off-by: Mark Fasheh \u003cmfasheh@suse.com\u003e\n"
    },
    {
      "commit": "a57a874b04e27cb530a0e18c244387452e73ccce",
      "tree": "95b12c06d13ad9767bf5474bc59fd762e1df5765",
      "parents": [
        "18496e80f729be5f536d0315751b3bbb95ca913e"
      ],
      "author": {
        "name": "Alexander Beregalov",
        "email": "a.beregalov@gmail.com",
        "time": "Wed Aug 06 00:50:41 2008 +0400"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Fri Aug 22 10:56:57 2008 -0700"
      },
      "message": "[PATCH] ocfs2/cluster/netdebug.c: fix warning\n\nocfs2/cluster/netdebug.c: fix warning\n\nfs/ocfs2/cluster/netdebug.c:154: warning: format \u0027%lu\u0027 expects\n     type \u0027long unsigned int\u0027, but argument 17 has type \u0027suseconds_t\u0027\n\nSigned-off-by: Alexander Beregalov \u003ca.beregalov@gmail.com\u003e\nSigned-off-by: Mark Fasheh \u003cmfasheh@suse.com\u003e\n"
    },
    {
      "commit": "18496e80f729be5f536d0315751b3bbb95ca913e",
      "tree": "78b5c43b39bdf41571527f421780eb1d5dd9f778",
      "parents": [
        "d3ee1b405872214609868f3cde631ac157026dd0"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Thu Aug 07 00:11:12 2008 +0300"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Fri Aug 22 10:56:40 2008 -0700"
      },
      "message": "[PATCH] ocfs2/cluster/tcp.c: make some functions static\n\nCommit 0f475b2abed6cbccee1da20a0bef2895eb2a0edd (ocfs2/net: Silence build\nwarnings) made sense as far as it fixed compile warnings, but it was not\nrequired that it made the functions global.\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nSigned-off-by: Mark Fasheh \u003cmfasheh@suse.com\u003e\n"
    },
    {
      "commit": "ee26562772f47a6e2030a79b230226b204a410b6",
      "tree": "339b200c2c8e60e9d4b3c75680d3154b6fcd7f52",
      "parents": [
        "43cc071db83b6311a8135f5cc56ae7fae1023504",
        "4537398d91e6e03811ba971d959b762137058c1a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 22 08:37:07 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 22 08:37:07 2008 -0700"
      },
      "message": "Merge branch \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4\n\n* \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4:\n  ext4: Update documentation to remind users to update mke2fs.conf\n  ext4: Fix small file fragmentation\n  ext4: Initialize writeback_index to 0 when allocating a new inode\n  ext4: make sure ext4_has_free_blocks returns 0 for ENOSPC\n  ext4: journal credit fix for the delayed allocation\u0027s writepages() function\n  ext4: Rework the ext4_da_writepages() function\n  ext4: journal credits reservation fixes for DIO, fallocate\n  ext4: journal credits reservation fixes for extent file writepage\n  ext4: journal credits calulation cleanup and fix for non-extent writepage\n  ext4: Fix bug where we return ENOSPC even though we have plenty of inodes\n  ext4: don\u0027t try to resize if there are no reserved gdt blocks left\n  ext4: Use ext4_discard_reservations instead of mballoc-specific call\n  ext4: Fix ext4_dx_readdir hash collision handling\n  ext4: Fix delalloc release block reservation for truncate\n  ext4: Fix potential truncate BUG due to i_prealloc_list being non-empty\n  ext4: Handle unwritten extent properly with delayed allocation\n"
    },
    {
      "commit": "82d63fc9e30687c055b97928942b8893ea65b0bb",
      "tree": "c767b9a7a41893c434e85532f3e02515433076f1",
      "parents": [
        "d847471d063663b9f36927d265c66a270c0cfaab"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ZenIV.linux.org.uk",
        "time": "Wed Aug 20 14:09:24 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 20 15:40:32 2008 -0700"
      },
      "message": "cramfs: fix named-pipe handling\n\nAfter commit a97c9bf33f4612e2aed6f000f6b1d268b6814f3c (fix cramfs\nmaking duplicate entries in inode cache) in kernel 2.6.14, named-pipe\non cramfs does not work properly.\n\nIt seems the commit make all named-pipe on cramfs share their inode\n(and named-pipe buffer).\n\nMake ..._test() refuse to merge inodes with -\u003ei_ino \u003d\u003d 1, take inode setup\nback to get_cramfs_inode() and make -\u003edrop_inode() evict ones with -\u003ei_ino\n\u003d\u003d 1 immediately.\n\nReported-by: Atsushi Nemoto \u003canemo@mba.ocn.ne.jp\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: \u003cstable@kernel.org\u003e\t\t[2.6.14 and later]\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2d70b68d42b5196a48ccb639e3797f097ef5bea3",
      "tree": "b3040706cd69e0e7bc6d846e08fd91a441b34310",
      "parents": [
        "141d87e7debe3334018e46859c7565c44cebda65"
      ],
      "author": {
        "name": "Ken Chen",
        "email": "kenchen@google.com",
        "time": "Wed Aug 20 14:09:17 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 20 15:40:32 2008 -0700"
      },
      "message": "fix setpriority(PRIO_PGRP) thread iterator breakage\n\nWhen user calls sys_setpriority(PRIO_PGRP ...) on a NPTL style multi-LWP\nprocess, only the task leader of the process is affected, all other\nsibling LWP threads didn\u0027t receive the setting.  The problem was that the\niterator used in sys_setpriority() only iteartes over one task for each\nprocess, ignoring all other sibling thread.\n\nIntroduce a new macro do_each_pid_thread / while_each_pid_thread to walk\neach thread of a process.  Convert 4 call sites in {set/get}priority and\nioprio_{set/get}.\n\nSigned-off-by: Ken Chen \u003ckenchen@google.com\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: Roland McGrath \u003croland@redhat.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: 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": "ff9bc512f198eb47204f55b24c6fe3d36ed89592",
      "tree": "e55d1639a5a3f8c0ef1827fae4ff8529d4ffef04",
      "parents": [
        "c82f2966015a2c9708fb8f20694ef7ba8567d2e1"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Wed Aug 20 14:09:10 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 20 15:40:31 2008 -0700"
      },
      "message": "binfmt_misc: fix false -ENOEXEC when coupled with other binary handlers\n\nIn case the binfmt_misc binary handler is registered *before* the e.g.\nscript one (when for example being compiled as a module) the following\nsituation may occur:\n\n1. user launches a script, whose interpreter is a misc binary;\n2. the load_misc_binary sets the misc_bang and returns -ENOEVEC,\n   since the binary is a script;\n3. the load_script_binary loads one and calls for search_binary_hander\n   to run the interpreter;\n4. the load_misc_binary is called again, but refuses to load the\n   binary due to misc_bang bit set.\n\nThe fix is to move the misc_bang setting lower - prior to the actual\ncall to the search_binary_handler.\n\nCaused by the commit 3a2e7f47 (binfmt_misc.c: avoid potential kernel\nstack overflow)\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nReported-by: Kirill A. Shutemov \u003ckirill@shutemov.name\u003e\nTested-by: Kirill A. Shutemov \u003ckirill@shutemov.name\u003e\nCc: \u003cstable@kernel.org\u003e\t\t[2.6.26.x]\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1804dc6e145f3f24a8c94deddfc0a986d380a27f",
      "tree": "965ad5f3dfa7c6dc52bdfab7d838a82f78c8ad12",
      "parents": [
        "35fc908dc0e7ab0002ef18787886cc1340028020"
      ],
      "author": {
        "name": "Clement Calmels",
        "email": "cboulte@gmail.com",
        "time": "Wed Aug 20 14:09:00 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 20 15:40:30 2008 -0700"
      },
      "message": "/proc/self/maps doesn\u0027t display the real file offset\n\nThis addresses\n\n\thttp://bugzilla.kernel.org/show_bug.cgi?id\u003d11318\n\nIn function show_map (file: fs/proc/task_mmu.c), if vma-\u003evm_pgoff \u003e 2^20\nthan (vma-\u003evm_pgoff \u003c\u003c PAGE_SIZE) is greater than 2^32 (with PAGE_SIZE\nequal to 4096 (i.e.  2^12).  The next seq_printf use an unsigned long for\nthe conversion of (vma-\u003evm_pgoff \u003c\u003c PAGE_SIZE), as a result the offset\nvalue displayed in /proc/self/maps is truncated if the page offset is\ngreater than 2^20.\n\nA test that shows this issue:\n\n#define _GNU_SOURCE\n#include \u003csys/types.h\u003e\n#include \u003csys/stat.h\u003e\n#include \u003csys/mman.h\u003e\n#include \u003cstdlib.h\u003e\n#include \u003cstdio.h\u003e\n#include \u003cfcntl.h\u003e\n#include \u003cunistd.h\u003e\n#include \u003cstring.h\u003e\n\n#define PAGE_SIZE (getpagesize())\n\n#if __i386__\n#   define U64_STR \"%llx\"\n#elif __x86_64\n#   define U64_STR \"%lx\"\n#else\n#   error \"Architecture Unsupported\"\n#endif\n\nint main(int argc, char *argv[])\n{\n\tint fd;\n\tchar *addr;\n\toff64_t offset \u003d 0x10000000;\n\tchar *filename \u003d \"/dev/zero\";\n\n\tfd \u003d open(filename, O_RDONLY);\n\tif (fd \u003c 0) {\n\t\tperror(\"open\");\n\t\treturn 1;\n\t}\n\n\toffset *\u003d 0x10;\n\tprintf(\"offset \u003d \" U64_STR \"\\n\", offset);\n\n\taddr \u003d (char*)mmap64(NULL, PAGE_SIZE, PROT_READ, MAP_PRIVATE, fd,\n\t\t\t     offset);\n\tif ((void*)addr \u003d\u003d MAP_FAILED) {\n\t\tperror(\"mmap64\");\n\t\treturn 1;\n\t}\n\n\t{\n\t\tFILE *fmaps;\n\t\tchar *line \u003d NULL;\n\t\tsize_t len \u003d 0;\n\t\tssize_t read;\n\t\tsize_t filename_len \u003d strlen(filename);\n\n\t\tfmaps \u003d fopen(\"/proc/self/maps\", \"r\");\n\t\tif (!fmaps) {\n\t\t\tperror(\"fopen\");\n\t\t\treturn 1;\n\t\t}\n\t\twhile ((read \u003d getline(\u0026line, \u0026len, fmaps)) !\u003d -1) {\n\t\t\tif ((read \u003e filename_len + 1)\n\t\t\t    \u0026\u0026 (strncmp(\u0026line[read - filename_len - 1], filename, filename_len) \u003d\u003d 0))\n\t\t\t\tprintf(\"%s\", line);\n\t\t}\n\n\t\tif (line)\n\t\t\tfree(line);\n\n\t\tfclose(fmaps);\n\t}\n\n\tclose(fd);\n\treturn 0;\n}\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Clement Calmels \u003ccboulte@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": "1bbe44f69d7ea20740aaf5aba356e331a74b58b3",
      "tree": "4e71676275f2de09672d347244fc1b2bb67f39b1",
      "parents": [
        "8498ffd66774ce0e8550afc61a56b2cbeee77e9c",
        "9b9d6b2a4f6df5544a10de44760755fe757259e5"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 20 08:46:11 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 20 08:46:11 2008 -0700"
      },
      "message": "Merge branch \u0027sh/for-2.6.27\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6\n\n* \u0027sh/for-2.6.27\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6:\n  sh: Provide a FLAT_PLAT_INIT() definition.\n  binfmt_flat: Stub in a FLAT_PLAT_INIT().\n  video: export sh_mobile_lcdc panel size\n  sh: select memchunk size using kernel cmdline\n  sh: export sh7723 VEU as VEU2H\n  input: migor_ts compile and detection fix\n  sh: remove MSTPCR defines from Migo-R header file\n  sh: Update sh7763rdp defconfig\n  sh: Add support sh7760fb to sh7763rdp board\n  sh: Add support sh_eth to sh7763rdp board\n  sh: Disable 64kB hugetlbpage size when using 64kB PAGE_SIZE.\n  sh: Don\u0027t export __{s,u}divsi3_i4i from SH-2 libgcc.\n  fix SH7705_CACHE_32KB compilation\n  sh: mach-x3proto: Fix up smc91x platform data.\n"
    },
    {
      "commit": "5f22ca9b13551debea77a407a8d06cd9c6f15238",
      "tree": "435b5eef62fd4a67f66a690e243b529ca475750b",
      "parents": [
        "395c68464cffbc645919a93d6111bc15201167f3"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 20 08:31:19 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 20 08:31:19 2008 -0700"
      },
      "message": "vfat: fix \u0027sync\u0027 mount deadlock due to BKL-\u003elock_super conversion\n\nThere was another FAT BKL conversion deadlock reported by Bart\nTrojanowski due to the BKL being used as a recursive lock by FAT, which\nwas missed because it only triggers with \u0027sync\u0027 (or \u0027dirsync\u0027) mounts.\n\nThe recursion worked for the BKL, but after the conversion to lock_super\n(which uses a mutex), it just deadlocks.\n\nThanks to Bart for debugging this and testing the fix.  The lock\ndebugging information from the original report:\n\n  \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n  [ INFO: possible recursive locking detected ]\n  2.6.27-rc3-bisect-00448-ga7f5aaf #16\n  ---------------------------------------------\n  mv/4020 is trying to acquire lock:\n   (\u0026type-\u003es_lock_key#9){--..}, at: [\u003cc01a90fe\u003e] lock_super+0x1e/0x20\n\n  but task is already holding lock:\n   (\u0026type-\u003es_lock_key#9){--..}, at: [\u003cc01a90fe\u003e] lock_super+0x1e/0x20\n\n  other info that might help us debug this:\n  3 locks held by mv/4020:\n   #0:  (\u0026sb-\u003es_type-\u003ei_mutex_key#9/1){--..}, at: [\u003cc01b2336\u003e] do_unlinkat+0x66/0x140\n   #1:  (\u0026sb-\u003es_type-\u003ei_mutex_key#9){--..}, at: [\u003cc01b0954\u003e] vfs_unlink+0x84/0x110\n   #2:  (\u0026type-\u003es_lock_key#9){--..}, at: [\u003cc01a90fe\u003e] lock_super+0x1e/0x20\n\n  stack backtrace:\n  Pid: 4020, comm: mv Not tainted 2.6.27-rc3-bisect-00448-ga7f5aaf #16\n   [\u003cc014e694\u003e] validate_chain+0x984/0xea0\n   [\u003cc0108d70\u003e] ? native_sched_clock+0x0/0xf0\n   [\u003cc014ee9c\u003e] __lock_acquire+0x2ec/0x9b0\n   [\u003cc014f5cf\u003e] lock_acquire+0x6f/0x90\n   [\u003cc01a90fe\u003e] ? lock_super+0x1e/0x20\n   [\u003cc044e5fd\u003e] mutex_lock_nested+0xad/0x300\n   [\u003cc01a90fe\u003e] ? lock_super+0x1e/0x20\n   [\u003cc01a90fe\u003e] ? lock_super+0x1e/0x20\n   [\u003cc01a90fe\u003e] lock_super+0x1e/0x20\n   [\u003cf8b3a700\u003e] fat_write_inode+0x60/0x2b0 [fat]\n   [\u003cc0450878\u003e] ? _spin_unlock_irqrestore+0x48/0x80\n   [\u003cf8b3a953\u003e] ? fat_sync_inode+0x3/0x20 [fat]\n   [\u003cf8b3a962\u003e] fat_sync_inode+0x12/0x20 [fat]\n   [\u003cf8b37c7e\u003e] fat_remove_entries+0xbe/0x120 [fat]\n   [\u003cf8b422ef\u003e] vfat_unlink+0x5f/0x90 [vfat]\n   [\u003cf8b42290\u003e] ? vfat_unlink+0x0/0x90 [vfat]\n   [\u003cc01b0968\u003e] vfs_unlink+0x98/0x110\n   [\u003cc01b2400\u003e] do_unlinkat+0x130/0x140\n   [\u003cc016a8f5\u003e] ? audit_syscall_entry+0x105/0x150\n   [\u003cc01b253b\u003e] sys_unlinkat+0x3b/0x40\n   [\u003cc01040d3\u003e] sysenter_do_call+0x12/0x3f\n   \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n\nwhere the deadlock is due to the nesting of lock_super from vfat_unlink\nto fat_write_inode:\n\n - do_unlinkat\n   - vfs_unlink\n     - vfat_unlink\n       * lock_super\n       - fat_remove_entries\n         - fat_sync_inode\n           - fat_write_inode\n             * lock_super\n\nand the fix is to simply remove the use of lock_super() in fat_write_inode.\n\nThe lock_super() there had been just an automatic conversion of the\nkernel lock to the superblock lock, but no locking was actually needed\nthere, since the code in fat_write_inode already protected all relevant\naccesses with a spinlock (sbi-\u003einode_hash_lock to be exact).  The only\ncode inside the BKL (and thus the superblock lock) was accesses tp local\nvariables or calls to functions that have long been SMP-safe (i.e.\nsb_bread, mark_buffe_dirty and brlese).\n\nBart reports:\n \"Looks good.  I ran 10 parallel processes creating 1M files truncating\n  them, writing to them again and then deleting them.  This patch fixes\n  the issue I ran into.\n\n  Signed-off-by: Bart Trojanowski \u003cbart@jukie.net\u003e\"\n\nReported-and-tested-by: Bart Trojanowski \u003cbart@jukie.net\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3d2af3465e91335bd1dbf36b19e92079d901409f",
      "tree": "828c313011e8f70f030ef872012f63238fc14362",
      "parents": [
        "c16fefa56334e8d0197492607e473fdbb813073f"
      ],
      "author": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Tue Aug 19 20:51:09 2008 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Tue Aug 19 20:51:09 2008 +0000"
      },
      "message": "[CIFS] Kerberos support not considered experimental anymore\n\nAcked-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "c16fefa56334e8d0197492607e473fdbb813073f",
      "tree": "8dc227ea6a712939ce216dd93746dc9baa4ee13f",
      "parents": [
        "cb7691b648bddbfaf6dd8d8068273dbb18d2484c"
      ],
      "author": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Tue Aug 19 19:35:33 2008 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Tue Aug 19 19:35:33 2008 +0000"
      },
      "message": "[CIFS] distinguish between Kerberos and MSKerberos in upcall\n\nProperly handle MSKRB5 by passing sec\u003dmskrb5 to the upcall so that the\nspengo blob can be generated appropriately. Also, make\ndecode_negTokenInit prefer whichever mechanism is first in the list.\n\nNeeded for some NetApp servers, and possibly some older\nversions of Windows which treat the two KRB5 mechanisms differently.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "cb7691b648bddbfaf6dd8d8068273dbb18d2484c",
      "tree": "74c896711abf398255cec10c7b6eb67070bc5ca0",
      "parents": [
        "aab3a8c7a3a6a001dd439ed00d4db17a1059803e"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Mon Aug 18 15:41:05 2008 -0400"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Tue Aug 19 17:11:35 2008 +0000"
      },
      "message": "cifs: add local server pointer to cifs_setup_session\n\ncifs_setup_session references pSesInfo-\u003eserver several times. That\npointer shouldn\u0027t change during the life of the function so grab it\nonce and store it in a local var. This makes the code look a little\ncleaner too.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "aab3a8c7a3a6a001dd439ed00d4db17a1059803e",
      "tree": "45e156bc129f9d6276dad3d54d66cfbf3d3ac3d5",
      "parents": [
        "1fca25427482387689fa27594c992a961d98768f"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Tue Aug 19 14:23:37 2008 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Tue Aug 19 14:23:37 2008 +0000"
      },
      "message": "[CIFS] reindent misindented statement\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "45edb89ffd6386f95a7a9e1e5461b0e61c76aa14",
      "tree": "e98cdb2860f6ac4e4bb6b2e233a1032eb18d08bb",
      "parents": [
        "8c9a9dd0fa3a269d380eaae2dc1bee39e865fae1",
        "ad661334b8ae421154b121ee6ad3b56807adbf11"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 15 11:02:35 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 15 11:02:35 2008 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6:\n  [CIFS] mount of IPC$ breaks with iget patch\n  [CIFS] remove trailing whitespace\n  [CIFS] if get root inode fails during mount, cleanup tree connection\n"
    },
    {
      "commit": "21d3bdb1606311a2900eabccfcb5a887952e2c44",
      "tree": "e4aebcff13178d18dc86e5ac760ac5f209243322",
      "parents": [
        "3141eb6c50f1dafa99874e702d8b444034e2bb10",
        "c78c7e35a4709b55d3126624662c8f6d7e3d1a5e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 15 10:33:07 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 15 10:33:07 2008 -0700"
      },
      "message": "Merge branch \u0027linux-next\u0027 of git://git.infradead.org/~dedekind/ubifs-2.6\n\n* \u0027linux-next\u0027 of git://git.infradead.org/~dedekind/ubifs-2.6: (29 commits)\n  UBIFS: xattr bugfixes\n  UBIFS: remove unneeded check\n  UBIFS: few commentary fixes\n  UBIFS: fix budgeting request alignment in xattr code\n  UBIFS: improve arguments checking in debugging messages\n  UBIFS: always set i_generation to 0\n  UBIFS: correct spelling of \"thrice\".\n  UBIFS: support splice_write\n  UBIFS: minor tweaks in commit\n  UBIFS: reserve more space for index\n  UBIFS: print pid in dump function\n  UBIFS: align inode data to eight\n  UBIFS: improve budgeting checks\n  UBIFS: correct orphan deletion order\n  UBIFS: fix typos in comments\n  UBIFS: do not union creat_sqnum and del_cmtno\n  UBIFS: optimize deletions\n  UBIFS: increment commit number earlier\n  UBIFS: remove another unneeded function parameter\n  UBIFS: remove unneeded function parameter\n  ...\n"
    },
    {
      "commit": "9419fc1c957d600093baaea247fef23cca3b4e93",
      "tree": "532606ac97d86d8952ffcdd8f8513b1499c10bf8",
      "parents": [
        "c963343a1150106819773e828c9b237ed977615b"
      ],
      "author": {
        "name": "Bob Copeland",
        "email": "me@bobcopeland.com",
        "time": "Fri Aug 15 00:40:47 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 15 08:35:44 2008 -0700"
      },
      "message": "omfs: fix oops when file metadata is corrupted\n\nA fuzzed fileystem image failed with OMFS when the extent count was\nused in a loop without being checked against the max number of extents.\nIt also provoked a signed division for an array index that was checked\nas if unsigned, leading to index by -1.\n\nomfsck will be updated to fix these cases, in the meantime bail out\ngracefully.\n\nReported-by: Eric Sesterhenn \u003csnakebyte@gmx.de\u003e\nSigned-off-by: Bob Copeland \u003cme@bobcopeland.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c963343a1150106819773e828c9b237ed977615b",
      "tree": "abfcd2e27cb436315f835cd746c45e56c5397080",
      "parents": [
        "be4de35263f59ca1f4740edfffbfb02cc3f2189e"
      ],
      "author": {
        "name": "Bob Copeland",
        "email": "me@bobcopeland.com",
        "time": "Fri Aug 15 00:40:46 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 15 08:35:44 2008 -0700"
      },
      "message": "omfs: fix potential oops when directory size is corrupted\n\nTesting with a modified fsfuzzer reveals a couple of locations in omfs\nwhere filesystem variables are ultimately used as loop counters with\ninsufficient sanity checking.  In this case, dir-\u003ei_size is used to\ncompute the number of buckets in the directory hash.  If too large,\nreaddir will overrun a buffer.\n\nSince it\u0027s an invariant that dir-\u003ei_size is equal to the sysblock\nsize, and we already sanity check that, just use that value instead.\nThis fixes the following oops:\n\nBUG: unable to handle kernel paging request at c978e004\nIP: [\u003cc032298e\u003e] omfs_readdir+0x18e/0x32f\nOops: 0000 [#1] PREEMPT DEBUG_PAGEALLOC\nModules linked in:\n\nPid: 4796, comm: ls Not tainted (2.6.27-rc2 #12)\nEIP: 0060:[\u003cc032298e\u003e] EFLAGS: 00010287 CPU: 0\nEIP is at omfs_readdir+0x18e/0x32f\nEAX: c978d000 EBX: 00000000 ECX: cbfcfaf8 EDX: cb2cf100\nESI: 00001000 EDI: 00000800 EBP: cb2d3f68 ESP: cb2d3f0c\n DS: 007b ES: 007b FS: 0000 GS: 0033 SS: 0068\nProcess ls (pid: 4796, ti\u003dcb2d3000 task\u003dcb175f40 task.ti\u003dcb2d3000)\nStack: 00000002 00000000 00000000 c018a820 cb2d3f94 cb2cf100 cbfb0000 ffffff10\n       cbfb3b80 cbfcfaf8 000001c9 00000a09 00000000 00000000 00000000 cbfcfbc8\n       c9697000 cbfb3b80 22222222 00001000 c08e6cd0 cb2cf100 cbfb3b80 cb2d3f88\nCall Trace:\n [\u003cc018a820\u003e] ? filldir64+0x0/0xcd\n [\u003cc018a9f2\u003e] ? vfs_readdir+0x56/0x82\n [\u003cc018a820\u003e] ? filldir64+0x0/0xcd\n [\u003cc018aa7c\u003e] ? sys_getdents64+0x5e/0xa0\n [\u003cc01038bd\u003e] ? sysenter_do_call+0x12/0x31\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: 00 89 f0 89 f3 0f ac f8 14 81 e3 ff ff 0f 00 48 8d\n14 c5 b8 01 00 00 89 45 cc 89 55 f0 e9 8c 01 00 00 8b 4d c8 8b 75 f0 8b\n41 18 \u003c8b\u003e 54 30 04 8b 04 30 31 f6 89 5d dc 89 d1 8b 55 b8 0f c8 0f c9\n\nReported-by: Eric Sesterhenn \u003csnakebyte@gmx.de\u003e\nSigned-off-by: Bob Copeland \u003cme@bobcopeland.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7d455e0030eeab820773e7786605be4d9e56a04b",
      "tree": "a388a21fac6ab04e75fb7a722a6abd095ab997a1",
      "parents": [
        "75312619e8cd47265da210189cca57ab09640b18"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Fri Aug 15 00:40:43 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 15 08:35:44 2008 -0700"
      },
      "message": "fs/inode.c: properly init address_space-\u003ewriteback_index\n\nwrite_cache_pages() uses i_mapping-\u003ewriteback_index to pick up where it\nleft off the last time a given inode was found by pdflush or\nbalance_dirty_pages (or anyone else who sets wbc-\u003erange_cyclic)\n\nalloc_inode() should set it to a sane value so that writeback doesn\u0027t\nstart in the middle of a file.  It is somewhat difficult to notice the bug\nsince write_cache_pages will loop around to the start of the file and the\nelevator helps hide the resulting seeks.\n\nFor whatever reason, Btrfs hits this often.  Unpatched, untarring 30\ncopies of the linux kernel in series runs at 47MB/s on a single sata\ndrive.  With this fix, it jumps to 62MB/s.\n\nSigned-off-by: Chris Mason \u003cchris.mason@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": "c78c7e35a4709b55d3126624662c8f6d7e3d1a5e",
      "tree": "f36f56651f50f51b7e79451d0986e3656da0269d",
      "parents": [
        "720b499c806200d06f4f22c668d46db784117089"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Tue Aug 12 16:30:12 2008 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Thu Aug 14 12:46:20 2008 +0300"
      },
      "message": "UBIFS: xattr bugfixes\n\nXattr code has not been tested for a while and there were\nserveral bugs. One of them is using wrong inode in\n\u0027ubifs_jnl_change_xattr()\u0027. The other is a deadlock in\n\u0027ubifs_setxattr()\u0027: the i_mutex is locked in\n\u0027cap_inode_need_killpriv()\u0027 path, so deadlock happens when\n\u0027ubifs_setxattr()\u0027 tries to lock it again.\n\nThanks to Zoltan Sogor for finding these bugs.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "ad661334b8ae421154b121ee6ad3b56807adbf11",
      "tree": "64570259dc200d76616acc62aeca5fad8d474dc8",
      "parents": [
        "54b4602d5fe50571362e101138d24edb9cf82d29"
      ],
      "author": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Tue Aug 12 14:14:40 2008 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Thu Aug 14 03:55:14 2008 +0000"
      },
      "message": "[CIFS] mount of IPC$ breaks with iget patch\n\nIn looking at network named pipe support on cifs, I noticed that\nDave Howell\u0027s iget patch:\n\n    iget: stop CIFS from using iget() and read_inode()\n\nbroke mounts to IPC$ (the interprocess communication share), and don\u0027t\nhandle the error case (when getting info on the root inode fails).\n\nThanks to Gunter who noted a typo in a debug line in the original\nversion of this patch.\n\nCC: David Howells \u003cdhowells@redhat.com\u003e\nCC: Gunter Kukkukk \u003clinux@kukkukk.com\u003e\nCC: Stable Kernel \u003cstable@kernel.org\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "9e2b2dc4133f65272a6d3c5dcb2ce63f8a87cae9",
      "tree": "96a9da2c1e733cce2dced4868aaa68b48ced49e1",
      "parents": [
        "8d0968abd03ec6b407df117adc773562386702fa"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Wed Aug 13 16:20:04 2008 +0100"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Thu Aug 14 09:35:23 2008 +1000"
      },
      "message": "CRED: Introduce credential access wrappers\n\nThe patches that are intended to introduce copy-on-write credentials for 2.6.28\nrequire abstraction of access to some fields of the task structure,\nparticularly for the case of one task accessing another\u0027s credentials where RCU\nwill have to be observed.\n\nIntroduced here are trivial no-op versions of the desired accessors for current\nand other tasks so that other subsystems can start to be converted over more\neasily.\n\nWrappers are introduced into a new header (linux/cred.h) for UID/GID,\nEUID/EGID, SUID/SGID, FSUID/FSGID, cap_effective and current\u0027s subscribed\nuser_struct.  These wrappers are macros because the ordering between header\nfiles mitigates against making them inline functions.\n\nlinux/cred.h is #included from linux/sched.h.\n\nFurther, XFS is modified such that it no longer defines and uses parameterised\nversions of current_fs[ug]id(), thus getting rid of the namespace collision\notherwise incurred.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "9ea319b61613085f501a79cf8d405cb221d084f3",
      "tree": "5bf7e1b9f104a0df029d355927fa9eb398db37bb",
      "parents": [
        "3e11acd4306d558249c31cf6cac09f218f2de52e",
        "c6a7b0f8a49aa71792dd108efc535435f462bf79"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 13 15:17:49 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 13 15:17:49 2008 -0700"
      },
      "message": "Merge git://oss.sgi.com:8090/xfs/linux-2.6\n\n* git://oss.sgi.com:8090/xfs/linux-2.6: (45 commits)\n  [XFS] Fix use after free in xfs_log_done().\n  [XFS] Make xfs_bmap_*_count_leaves void.\n  [XFS] Use KM_NOFS for debug trace buffers\n  [XFS] use KM_MAYFAIL in xfs_mountfs\n  [XFS] refactor xfs_mount_free\n  [XFS] don\u0027t call xfs_freesb from xfs_unmountfs\n  [XFS] xfs_unmountfs should return void\n  [XFS] cleanup xfs_mountfs\n  [XFS] move root inode IRELE into xfs_unmountfs\n  [XFS] stop using file_update_time\n  [XFS] optimize xfs_ichgtime\n  [XFS] update timestamp in xfs_ialloc manually\n  [XFS] remove the sema_t from XFS.\n  [XFS] replace dquot flush semaphore with a completion\n  [XFS] replace inode flush semaphore with a completion\n  [XFS] extend completions to provide XFS object flush requirements\n  [XFS] replace the XFS buf iodone semaphore with a completion\n  [XFS] clean up stale references to semaphores\n  [XFS] use get_unaligned_* helpers\n  [XFS] Fix compile failure in xfs_buf_trace()\n  ...\n"
    },
    {
      "commit": "51409340d240dabe66adb49f645588c3a802d055",
      "tree": "a513f2ca81f3638b2608064ef8383b0af86e846a",
      "parents": [
        "cb980d9a3ec3d39e30e0a4c473df528c09e0dcf3"
      ],
      "author": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Thu Jul 31 09:31:53 2008 -0500"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Wed Aug 13 12:47:36 2008 -0500"
      },
      "message": "dlm: rename structs\n\nAdd a dlm_ prefix to the struct names in config.c.  This resolves a\nconflict with struct node in particular, when include/linux/node.h\nhappens to be included.\n\nReported-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "cb980d9a3ec3d39e30e0a4c473df528c09e0dcf3",
      "tree": "817fd390f15904ef0b14b22b4b8c7a2055514337",
      "parents": [
        "30a2f3c60a84092c8084dfe788b710f8d0768cd4"
      ],
      "author": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Tue Jul 29 15:21:19 2008 -0500"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Wed Aug 13 12:47:36 2008 -0500"
      },
      "message": "dlm: add missing kfrees\n\nA couple of unlikely error conditions were missing a kfree on the error\nexit path.\n\nReported-by: Juha Leppanen \u003cjuha_motorsportcom@luukku.com\u003e\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "720b499c806200d06f4f22c668d46db784117089",
      "tree": "2184bc24fe2a60fb4c024e9ea447cb9d3f5dbedf",
      "parents": [
        "0a883a05c54b326bcf99c0902af28dae0386be0a"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Wed Aug 13 16:16:31 2008 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Wed Aug 13 18:59:09 2008 +0300"
      },
      "message": "UBIFS: remove unneeded check\n\nCommit d70b67c8bc72ee23b55381bd6a884f4796692f77 fixed VFS and\nit never calls FS lookup function in deleted directories now.\nWe may remove corresponding UBIFS check.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "0a883a05c54b326bcf99c0902af28dae0386be0a",
      "tree": "991adaf14800c5163440ede4da0076e48c1d4494",
      "parents": [
        "5acd6ff8ac09eb71f3aef2ccccefab658be8aff4"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Wed Aug 13 14:13:26 2008 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Wed Aug 13 18:59:02 2008 +0300"
      },
      "message": "UBIFS: few commentary fixes\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "5acd6ff8ac09eb71f3aef2ccccefab658be8aff4",
      "tree": "595344c0e6acf40b1febc0511d1f7fa5c85e7618",
      "parents": [
        "840dc6b891d521f18bf081bd5a32e4a1f8110abc"
      ],
      "author": {
        "name": "Zoltan Sogor",
        "email": "weth@inf.u-szeged.hu",
        "time": "Tue Aug 12 13:54:54 2008 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Wed Aug 13 11:43:56 2008 +0300"
      },
      "message": "UBIFS: fix budgeting request alignment in xattr code\n\nData length has to be aligned in the budgeting request. Code\nin xattr.c did not do this.\n\nSigned-off-by: Zoltan Sogor \u003cweth@inf.u-szeged.hu\u003e\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "840dc6b891d521f18bf081bd5a32e4a1f8110abc",
      "tree": "facfa219d0136dbcc4f427bcb7826ece7ba42a51",
      "parents": [
        "81ffa38e1558f54db190e2d11e7260ab09c4acf2"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Fri Aug 01 18:13:37 2008 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Wed Aug 13 11:42:47 2008 +0300"
      },
      "message": "UBIFS: improve arguments checking in debugging messages\n\nUse \"if (0) printk()\" construct in debugging print macros to\nmake the debugging messages be checked even if debugging is\noff.\n\nThis patch also removes some unneeded spaces and blank lines.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "81ffa38e1558f54db190e2d11e7260ab09c4acf2",
      "tree": "061dd0d00388d995f6321276f2b1dd4194fc24ef",
      "parents": [
        "3a13252c6f3a029ac992a36910e945f361482797"
      ],
      "author": {
        "name": "Adrian Hunter",
        "email": "ext-adrian.hunter@nokia.com",
        "time": "Fri Aug 01 15:35:08 2008 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Wed Aug 13 11:39:53 2008 +0300"
      },
      "message": "UBIFS: always set i_generation to 0\n\nUBIFS does not presently re-use inode numbers, so leaving\ni_generation zero is most appropriate for now.\n\nSigned-off-by: Adrian Hunter \u003cext-adrian.hunter@nokia.com\u003e\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "3a13252c6f3a029ac992a36910e945f361482797",
      "tree": "c9d62f776c9761bd15d9b1b5c05f032895c7e8a9",
      "parents": [
        "22bc7fa8c5da09805edc6a6199ce81373b2c207d"
      ],
      "author": {
        "name": "Adrian Hunter",
        "email": "ext-adrian.hunter@nokia.com",
        "time": "Wed Jul 30 12:18:02 2008 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Wed Aug 13 11:39:20 2008 +0300"
      },
      "message": "UBIFS: correct spelling of \"thrice\".\n\nSigned-off-by: Adrian Hunter \u003cext-adrian.hunter@nokia.com\u003e\n"
    },
    {
      "commit": "22bc7fa8c5da09805edc6a6199ce81373b2c207d",
      "tree": "a8a93699030cea567f98e0aa4a396175a66418bf",
      "parents": [
        "0010f18afc5f8ba25e1d20e3165894c32a65af02"
      ],
      "author": {
        "name": "Zoltan Sogor",
        "email": "weth@inf.u-szeged.hu",
        "time": "Mon Jul 28 16:28:49 2008 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Wed Aug 13 11:38:43 2008 +0300"
      },
      "message": "UBIFS: support splice_write\n\nSigned-off-by: Zoltan Sogor \u003cweth@inf.u-szeged.hu\u003e\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "0010f18afc5f8ba25e1d20e3165894c32a65af02",
      "tree": "b43d08cf6e51703c1b198badf691c17f769b88e8",
      "parents": [
        "b364b41aeb0289be402be83eebca92eb90bfcb8b"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Fri Jul 25 16:39:44 2008 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Wed Aug 13 11:38:19 2008 +0300"
      },
      "message": "UBIFS: minor tweaks in commit\n\nNo functional changes, just lessen the amount of indentations.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "b364b41aeb0289be402be83eebca92eb90bfcb8b",
      "tree": "8bec0a45617f30e24b112b66973ac3eac72da834",
      "parents": [
        "1de9415906bccab51fb74c6adf575948610f0909"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Fri Jul 25 14:38:51 2008 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Wed Aug 13 11:37:28 2008 +0300"
      },
      "message": "UBIFS: reserve more space for index\n\nAt the moment UBIFS reserves twice old index size space for the\nindex. But this is not enough in some cases, because if the indexing\nnode are very fragmented and there are many small gaps, while the\ndirty index has big znodes - in-the-gaps method would fail.\n\nThus, reserve trise as more, in which case we are guaranteed that\nwe can commit in any case.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "1de9415906bccab51fb74c6adf575948610f0909",
      "tree": "585d0a78393c8a96d8aa031bf248b98af5a79cb7",
      "parents": [
        "dab4b4d2f915a65022343012a795f4ae4ae7e83c"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Fri Jul 25 12:58:38 2008 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Wed Aug 13 11:35:58 2008 +0300"
      },
      "message": "UBIFS: print pid in dump function\n\nUseful when something fails and there are many processes\nracing.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "dab4b4d2f915a65022343012a795f4ae4ae7e83c",
      "tree": "13a1ec2c5f6b18781145bccddf2fb63017a1336b",
      "parents": [
        "547000da6412c45456ff2ff44a171d01027bd727"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Thu Jul 24 14:52:45 2008 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Wed Aug 13 11:35:16 2008 +0300"
      },
      "message": "UBIFS: align inode data to eight\n\nUBIFS aligns node lengths to 8, so budgeting has to do the\nsame. Well, direntry, inode, and page budgets are already\naligned, but not inode data budget (e.g., data in special\ndevices or symlinks). Do this for inode data as well.\nAlso, add corresponding debugging checks.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "547000da6412c45456ff2ff44a171d01027bd727",
      "tree": "2f99e7033dd87273876a36081cc42c9926dc6709",
      "parents": [
        "f769108424a19c7758546d1d7d19f098b1a33759"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Thu Jul 24 14:42:05 2008 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Wed Aug 13 11:34:27 2008 +0300"
      },
      "message": "UBIFS: improve budgeting checks\n\nBudgeting is a crucial UBIFS subsystem - add more assertions\nto improve requests checking. This is not compiled in when\nUBIFS debugging is disabled.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "f769108424a19c7758546d1d7d19f098b1a33759",
      "tree": "324e0ac92b5f02e274f87dd6271c211a127a9b99",
      "parents": [
        "7d62ff2c396470bb62a3853f14d3962eac1da974"
      ],
      "author": {
        "name": "Adrian Hunter",
        "email": "ext-adrian.hunter@nokia.com",
        "time": "Wed Jul 23 16:55:55 2008 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Wed Aug 13 11:32:53 2008 +0300"
      },
      "message": "UBIFS: correct orphan deletion order\n\nThe debug function that checks orphans, does so using the\nTNC mutex. That means it will not see a correct picture\nif the inode is removed from the orphan tree before it is\nremoved from TNC.\n\nSigned-off-by: Adrian Hunter \u003cext-adrian.hunter@nokia.com\u003e\n"
    },
    {
      "commit": "7d62ff2c396470bb62a3853f14d3962eac1da974",
      "tree": "63ca0054aa6898c5dfc937a659ca59e667e6b36c",
      "parents": [
        "bc813355c704e5916a86dd4b96fd226bfa3fc6ca"
      ],
      "author": {
        "name": "Adrian Hunter",
        "email": "ext-adrian.hunter@nokia.com",
        "time": "Wed Jul 23 15:48:39 2008 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Wed Aug 13 11:32:21 2008 +0300"
      },
      "message": "UBIFS: fix typos in comments\n\nSigned-off-by: Adrian Hunter \u003cext-adrian.hunter@nokia.com\u003e\n"
    },
    {
      "commit": "bc813355c704e5916a86dd4b96fd226bfa3fc6ca",
      "tree": "9a130ba25918ab0f0a0e729b76dc3f0afc054027",
      "parents": [
        "de94eb558b542873d3f6f9ede1b8575fb5662248"
      ],
      "author": {
        "name": "Adrian Hunter",
        "email": "ext-adrian.hunter@nokia.com",
        "time": "Wed Jul 23 15:23:11 2008 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Wed Aug 13 11:30:04 2008 +0300"
      },
      "message": "UBIFS: do not union creat_sqnum and del_cmtno\n\nThe values in these two fields need to be preserved independently\nand so a union cannot be used.\n\nSigned-off-by: Adrian Hunter \u003cext-adrian.hunter@nokia.com\u003e\n"
    },
    {
      "commit": "de94eb558b542873d3f6f9ede1b8575fb5662248",
      "tree": "3ba858a1c87870e22886ac3d4774287bbf367131",
      "parents": [
        "014eb04b03202dc75c1c749df4246d98045f5e69"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Tue Jul 22 13:06:20 2008 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Wed Aug 13 11:28:44 2008 +0300"
      },
      "message": "UBIFS: optimize deletions\n\nEvery time anything is deleted, UBIFS writes the deletion inode\nnode twice - once in \u0027ubifs_jnl_update()\u0027 and the second time in\n\u0027ubifs_jnl_write_inode()\u0027. However, the second write is not needed\nif no commit happened after \u0027ubifs_jnl_update()\u0027. This patch\nchecks that condition and avoids writing the deletion inode for\nthe second time.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "014eb04b03202dc75c1c749df4246d98045f5e69",
      "tree": "99edd8f2907b478616bba8d44a308b6b750ead99",
      "parents": [
        "fd6c6b51e3677937090314b20b00f2194900d81b"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Mon Jul 21 17:14:29 2008 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Wed Aug 13 11:27:47 2008 +0300"
      },
      "message": "UBIFS: increment commit number earlier\n\nIncrement the commit number at the beginnig of the commit, instead\nof doing this after the commit. This is needed for further\noptimizations.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "fd6c6b51e3677937090314b20b00f2194900d81b",
      "tree": "4a861dade11a04e37b9417c3de09b5568d1b2a28",
      "parents": [
        "1f28681ad34a0c7e51dc5070c84b53f7bd34f44c"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Tue Jul 22 12:19:09 2008 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Wed Aug 13 11:27:10 2008 +0300"
      },
      "message": "UBIFS: remove another unneeded function parameter\n\nThe \u0027last_reference\u0027 parameter of \u0027pack_inode()\u0027 is not really\nneeded because \u0027inode-\u003ei_nlink\u0027 may be tested instead. Zap it.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "1f28681ad34a0c7e51dc5070c84b53f7bd34f44c",
      "tree": "11f5d3142a76e2e6723c7ae8612ba81cef446249",
      "parents": [
        "fbfa6c884aae2aff479eb8c996c564b1a34eae30"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Tue Jul 22 12:06:13 2008 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Wed Aug 13 11:26:25 2008 +0300"
      },
      "message": "UBIFS: remove unneeded function parameter\n\nSimplify \u0027ubifs_jnl_write_inode()\u0027 by removing the \u0027deletion\u0027\nparameter which is not really needed because we may test\ninode-\u003ei_nlink and check whether this is a deletion or not.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "fbfa6c884aae2aff479eb8c996c564b1a34eae30",
      "tree": "c1dcfd2ba1d1109905274b35833f1db3fe8db5bf",
      "parents": [
        "ff46d7b3e0870a70331b069372c36fbc43018c2d"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Tue Jul 22 11:52:52 2008 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Wed Aug 13 11:25:27 2008 +0300"
      },
      "message": "UBIFS: do not write orphans back\n\nOrphan inodes are deleted inodes which will disappear after FS\nre-mount. There is not need to write orphan inodes back, because\nthey are not needed on the flash media.\n\nSo optimize orphans a little by not writing them back. Just mark\nthem as clean, free the budget, and report success to VFS.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "ff46d7b3e0870a70331b069372c36fbc43018c2d",
      "tree": "8a650ad44c110e2ea3587cf5f8e86137b3bf32dd",
      "parents": [
        "2fb42b11f61cbcef7dfc225c1d26c4511436583d"
      ],
      "author": {
        "name": "Adrian Hunter",
        "email": "ext-adrian.hunter@nokia.com",
        "time": "Mon Jul 21 15:39:05 2008 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Wed Aug 13 11:24:26 2008 +0300"
      },
      "message": "UBIFS: make ubifs_ro_mode() not inline\n\nWe use ubifs_ro_mode() quite a lot, and not in fast-path, so\nthere is no reason to blow the code up by having it inlined.\nAlso, we usually want R/O mode change to be seen to other\nCPUs as soon as possible, so when we make this a function\ncall, we will automatically have a memory barrier.\n\nSigned-off-by: Adrian Hunter \u003cext-adrian.hunter@nokia.com\u003e\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "2fb42b11f61cbcef7dfc225c1d26c4511436583d",
      "tree": "2eb3dd34c8e9a191bd8d9ed84b4605c8afc5c611",
      "parents": [
        "16dfd804b44ef7156d1c201f100bd0d9dc6b7c4b"
      ],
      "author": {
        "name": "Adrian Hunter",
        "email": "ext-adrian.hunter@nokia.com",
        "time": "Fri Jul 18 17:56:37 2008 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Wed Aug 13 11:24:00 2008 +0300"
      },
      "message": "UBIFS: ensure UBIFS switches to read-only on error\n\nUBI transparently handles write errors by automatically copying\nand remapping the affected eraseblock. If UBI is unable to do\nthat, for example its pool of eraseblocks reserved for bad block\nhandling is empty, then the error is propagated to UBIFS. UBIFS\nmust protect the media from falling into an inconsistent state\nby immediately switching to read-only mode. In the case of log\nupdates, this was not being done.\n\nSigned-off-by: Adrian Hunter \u003cext-adrian.hunter@nokia.com\u003e\n"
    },
    {
      "commit": "16dfd804b44ef7156d1c201f100bd0d9dc6b7c4b",
      "tree": "8286d4c108b93037f0775ca5fbaf09985b5f658b",
      "parents": [
        "1e0f358e29cc91c8eb09e10cbf1f6bb58a62c795"
      ],
      "author": {
        "name": "Adrian Hunter",
        "email": "ext-adrian.hunter@nokia.com",
        "time": "Fri Jul 18 16:47:41 2008 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Wed Aug 13 11:22:41 2008 +0300"
      },
      "message": "UBIFS: fix error return in failure mode\n\nUBIFS recovery testing debug facility simulates media failures.\nWhen simulating an IO error, the error code returned must be\n-EIO but it was not always if the user switched off the\ndebug recovery testing option at the same time.\n\nSigned-off-by: Adrian Hunter \u003cext-adrian.hunter@nokia.com\u003e\n"
    },
    {
      "commit": "1e0f358e29cc91c8eb09e10cbf1f6bb58a62c795",
      "tree": "d15490d3381cd19fa5decc7ef1464a60e93283eb",
      "parents": [
        "7d32c2bb143fa1ca3b0c420feb08a832d65395be"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Mon Jul 21 10:59:53 2008 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Wed Aug 13 11:22:09 2008 +0300"
      },
      "message": "UBIFS: free budget in delete_inode as well\n\nAlthough the inode is marked as clean when it is being deleted,\nit might stay and be used as orphan, and be marked as dirty.\nSo we have to free the budget when we delete it.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "7d32c2bb143fa1ca3b0c420feb08a832d65395be",
      "tree": "2929bc914c8e70b2e14d451fa70c1c4273c24ac9",
      "parents": [
        "182854b46f9feb6f1b03abe747bb2beeebf2adb0"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Fri Jul 18 18:54:29 2008 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Wed Aug 13 11:20:07 2008 +0300"
      },
      "message": "UBIFS: improve debugging\n\n1. Print inode mode in some of debugging messages\n2. Add few more useful assertions\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "182854b46f9feb6f1b03abe747bb2beeebf2adb0",
      "tree": "f00db92038f044a3b817799cfd7dd5d5a322d584",
      "parents": [
        "ce769caa50a3fc835b4fc1a6e1463ada127a2e8a"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Fri Jul 18 18:54:29 2008 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Wed Aug 13 11:20:05 2008 +0300"
      },
      "message": "UBIFS: fix budgeting calculations\n\nThe \u0027ubifs_release_dirty_inode_budget()\u0027 was buggy and incorrectly\nfreed the budget, which led to not freeing all dirty data budget.\nThis patch fixes that.\n\nAlso, this patch fixes ubifs_mkdir() which passed 1 in dirty_ino_d,\nwhich makes no sense. Well, it is harmless though.\n\nAlso, add few more useful assertions. And improve few debugging\nmessages.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "ce769caa50a3fc835b4fc1a6e1463ada127a2e8a",
      "tree": "959e6bac1d44f2f34e4d39bffb7267419c38a381",
      "parents": [
        "2e244d08369b510923fe8290d40d51b0e88bfebe"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Fri Jul 18 12:54:21 2008 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Wed Aug 13 11:15:50 2008 +0300"
      },
      "message": "UBIFS: print volume name as well\n\nWe encouredge people to mount using volume name, not device\nnumbers. So print the name of the mounted UBI volume, not just\nIDs.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "c6a7b0f8a49aa71792dd108efc535435f462bf79",
      "tree": "45ffdd756cf4e024a1ab6742b2dfa4ed962ea741",
      "parents": [
        "c94312de223644e2f18e7064ae8cafa14e5c6ef6"
      ],
      "author": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@sgi.com",
        "time": "Wed Aug 13 16:52:50 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Wed Aug 13 16:52:50 2008 +1000"
      },
      "message": "[XFS] Fix use after free in xfs_log_done().\n\nThe ticket allocation code got reworked in 2.6.26 and we now free tickets\nwhereas before we used to cache them so the use-after-free went\nundetected.\n\nSGI-PV: 985525\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31877a\n\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\nSigned-off-by: David Chinner \u003cdavid@fromorbit.com\u003e\n"
    },
    {
      "commit": "c94312de223644e2f18e7064ae8cafa14e5c6ef6",
      "tree": "1e4b346e37e1787f9058a981e6f04e95a2071d8c",
      "parents": [
        "5695ef46ef02ba1c6658daa46e6879a2d4f52f5f"
      ],
      "author": {
        "name": "Ruben Porras",
        "email": "ruben.porras@linworks.de",
        "time": "Wed Aug 13 16:52:25 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Wed Aug 13 16:52:25 2008 +1000"
      },
      "message": "[XFS] Make xfs_bmap_*_count_leaves void.\n\nxfs_bmap_count_leaves and xfs_bmap_disk_count_leaves always return always\n0, make them void.\n\nSGI-PV: 981498\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31844a\n\nSigned-off-by: Ruben Porras \u003cruben.porras@linworks.de\u003e\nSigned-off-by: Donald Douwsma \u003cdonaldd@sgi.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "5695ef46ef02ba1c6658daa46e6879a2d4f52f5f",
      "tree": "885687ac9cdbba4717f01eef26195fd4eef2ee90",
      "parents": [
        "d62c251fe4a06144255291cffd68cbadf3bf002f"
      ],
      "author": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@sgi.com",
        "time": "Wed Aug 13 16:51:57 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Wed Aug 13 16:51:57 2008 +1000"
      },
      "message": "[XFS] Use KM_NOFS for debug trace buffers\n\nUse KM_NOFS to prevent recursion back into the filesystem which can cause\ndeadlocks.\n\nIn the case of xfs_iread() we hold the lock on the inode cluster buffer\nwhile allocating memory for the trace buffers. If we recurse back into XFS\nto flush data that may require a transaction to allocate extents which\nneeds log space. This can deadlock with the xfsaild thread which can\u0027t\npush the tail of the log because it is trying to get the inode cluster\nbuffer lock.\n\nSGI-PV: 981498\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31838a\n\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\nSigned-off-by: David Chinner \u003cdavid@fromorbit.com\u003e\n"
    },
    {
      "commit": "d62c251fe4a06144255291cffd68cbadf3bf002f",
      "tree": "421f1b6c08bde9fa48f8291b9be5d8a94df3109e",
      "parents": [
        "ff4f038c6bbb27044a84adbcd27bc237d7237e66"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Wed Aug 13 16:51:29 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Wed Aug 13 16:51:29 2008 +1000"
      },
      "message": "[XFS] use KM_MAYFAIL in xfs_mountfs\n\nUse KM_MAYFAIL for the m_perag allocation, we can deal with the error\neasily and blocking forever during mount is not a good idea either.\n\nSGI-PV: 981498\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31837a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "ff4f038c6bbb27044a84adbcd27bc237d7237e66",
      "tree": "c6358574b56ae08505d1f914f97a6c772addae4d",
      "parents": [
        "6203300e5e9121440b27d3ed0b9fe2a64cb62b53"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Wed Aug 13 16:50:47 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Wed Aug 13 16:50:47 2008 +1000"
      },
      "message": "[XFS] refactor xfs_mount_free\n\nxfs_mount_free mostly frees the perag data, which is something that is\nduplicated in the mount error path.\n\nMove the XFS_QM_DONE call to the caller and remove the useless\nmutex_destroy/spinlock_destroy calls so that we can re-use it for the\nmount error path. Also rename it to xfs_free_perag to reflect what it\ndoes.\n\nSGI-PV: 981498\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31836a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "6203300e5e9121440b27d3ed0b9fe2a64cb62b53",
      "tree": "df0e5dfe72d73324efcd4835d6b7da1dff72f28b",
      "parents": [
        "41b5c2e77a0221cf07ac127afa122add67ac5418"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Wed Aug 13 16:50:21 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Wed Aug 13 16:50:21 2008 +1000"
      },
      "message": "[XFS] don\u0027t call xfs_freesb from xfs_unmountfs\n\nxfs_readsb is called before xfs_mount so xfs_freesb should be called after\nxfs_unmountfs, too. This means it now happens after a few things during\nthe of xfs_unmount which all have nothing to do with the superblock.\n\nSGI-PV: 981498\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31835a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "41b5c2e77a0221cf07ac127afa122add67ac5418",
      "tree": "7ba8db919624d68c5db2b2dd022d4742cc9ea104",
      "parents": [
        "4249023a5d14f28d4e68ba15d24d25c0e5be71a6"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Wed Aug 13 16:49:57 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Wed Aug 13 16:49:57 2008 +1000"
      },
      "message": "[XFS] xfs_unmountfs should return void\n\nxfs_unmounts can\u0027t and shouldn\u0027t return errors so declare it as returning\nvoid.\n\nSGI-PV: 981498\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31833a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "4249023a5d14f28d4e68ba15d24d25c0e5be71a6",
      "tree": "30d3d7992dc05879835bf96a5d7a6ab437d5a54b",
      "parents": [
        "77508ec8e6ed72c9ba8ca74248a7aabd664e3f57"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Wed Aug 13 16:49:32 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Wed Aug 13 16:49:32 2008 +1000"
      },
      "message": "[XFS] cleanup xfs_mountfs\n\nRemove all the useless flags and code keyed off it in xfs_mountfs.\n\nSGI-PV: 981498\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31831a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "77508ec8e6ed72c9ba8ca74248a7aabd664e3f57",
      "tree": "d43fbde9c21fa21b8d3b791a18ee0d98af2f6102",
      "parents": [
        "3a76c1ea07ee4e9da7c8e476e43be7e1b2bf24fb"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Wed Aug 13 16:49:04 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Wed Aug 13 16:49:04 2008 +1000"
      },
      "message": "[XFS] move root inode IRELE into xfs_unmountfs\n\nThe root inode is allocated in xfs_mountfs so it should be release in\nxfs_unmountfs. For the unmount case that means we do it after the the\nxfs_sync(mp, SYNC_WAIT | SYNC_CLOSE) in the forced shutdown case and the\ndmapi unmount event. Note that both reference the rip variable which might\nbe freed by that time in case inode flushing has kicked in, so strictly\nspeaking this might count as a bug fix\n\nSGI-PV: 981498\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31830a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "3a76c1ea07ee4e9da7c8e476e43be7e1b2bf24fb",
      "tree": "710ff6b462d1e43d7c5d77d72f47f297e196ccf8",
      "parents": [
        "8e5975c82f66bce36955f38e9abc259d5143a72a"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Wed Aug 13 16:48:12 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Wed Aug 13 16:48:12 2008 +1000"
      },
      "message": "[XFS] stop using file_update_time\n\nxfs_ichtime updates the xfs_inode and Linux inode timestamps just fine, no\nneed to call file_update_time and then copy the values over to the XFS\ninode. The only additional thing in file_update_time are checks not\napplicable to the write path.\n\nSGI-PV: 981498\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31829a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\nSigned-off-by: David Chinner \u003cdavid@fromorbit.com\u003e\n"
    },
    {
      "commit": "8e5975c82f66bce36955f38e9abc259d5143a72a",
      "tree": "def4ae55c36f02f920037b769a268f389c5b513a",
      "parents": [
        "dff35fd41f252476cba7f761d7204dd9f47d739e"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Wed Aug 13 16:45:13 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Wed Aug 13 16:45:13 2008 +1000"
      },
      "message": "[XFS] optimize xfs_ichgtime\n\nPort a little optmization from file_update_time to xfs_ichgtime, and only\nupdate the timestamp and mark the inode dirty if the timestamp actually\nchanges in the timer tick resultion supported by the running kernel.\n\nSGI-PV: 981498\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31827a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "dff35fd41f252476cba7f761d7204dd9f47d739e",
      "tree": "3f4da55c3e5aede3de6d97a11bd0d53656aa6781",
      "parents": [
        "ab4a9b04a33c97dd17495f943447f5a15ecf2b51"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Wed Aug 13 16:44:15 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Wed Aug 13 16:44:15 2008 +1000"
      },
      "message": "[XFS] update timestamp in xfs_ialloc manually\n\nIn xfs_ialloc we just want to set all timestamps to the current time. We\ndon\u0027t need to mark the inode dirty like xfs_ichgtime does, and we don\u0027t\nneed nor want the opimizations in xfs_ichgtime that I will introduce in\nthe next patch.\n\nSo just opencode the timestamp update in xfs_ialloc, and remove the new\nunused XFS_ICHGTIME_ACC case in xfs_ichgtime.\n\nSGI-PV: 981498\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31825a\n\nSigned-off-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "ab4a9b04a33c97dd17495f943447f5a15ecf2b51",
      "tree": "e8c141fe903f0504225e677d124a66680c63b131",
      "parents": [
        "e1f49cf20cea18e3d1963939fe8612a75e319fbd"
      ],
      "author": {
        "name": "David Chinner",
        "email": "david@fromorbit.com",
        "time": "Wed Aug 13 16:42:10 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Wed Aug 13 16:42:10 2008 +1000"
      },
      "message": "[XFS] remove the sema_t from XFS.\n\nNow that all users of the sema_t are gone from XFS we can finally kill it.\n\nSGI-PV: 981498\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31823a\n\nSigned-off-by: David Chinner \u003cdavid@fromorbit.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    },
    {
      "commit": "e1f49cf20cea18e3d1963939fe8612a75e319fbd",
      "tree": "3007ce4d1245487ed956c78591d9d4275793121f",
      "parents": [
        "c63942d3eeffb98219e05d0976862ab9907d297d"
      ],
      "author": {
        "name": "David Chinner",
        "email": "david@fromorbit.com",
        "time": "Wed Aug 13 16:41:43 2008 +1000"
      },
      "committer": {
        "name": "Lachlan McIlroy",
        "email": "lachlan@redback.melbourne.sgi.com",
        "time": "Wed Aug 13 16:41:43 2008 +1000"
      },
      "message": "[XFS] replace dquot flush semaphore with a completion\n\nUse the new completion flush code to implement the dquot flush lock.\nRemoves one of the final users of semaphores in the XFS code base.\n\nSGI-PV: 981498\n\nSGI-Modid: xfs-linux-melb:xfs-kern:31822a\n\nSigned-off-by: David Chinner \u003cdavid@fromorbit.com\u003e\nSigned-off-by: Lachlan McIlroy \u003clachlan@sgi.com\u003e\n"
    }
  ],
  "next": "c63942d3eeffb98219e05d0976862ab9907d297d"
}
