)]}'
{
  "log": [
    {
      "commit": "526719ba51e7d7bd31f7af9ab04b015b70096685",
      "tree": "ccbacb533487b9f0b9e475050b3804fa506e7faf",
      "parents": [
        "77122d0b5d1fb2276b1fe7bce6366f22b2f96606"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Mon Oct 27 15:19:48 2008 +0000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 27 08:40:17 2008 -0700"
      },
      "message": "Switch to a valid email address...\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9ce209d64d820a6d5ed6b952e2c0f917faad6031",
      "tree": "817c5bd01e6666c8269d29d3d8292b5e75ea7fb3",
      "parents": [
        "4d36a9e65d4966b433b2f3424d9457468bc80e00"
      ],
      "author": {
        "name": "Davide Libenzi",
        "email": "davidel@xmailserver.org",
        "time": "Fri Oct 17 16:17:40 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Oct 26 12:09:49 2008 -0700"
      },
      "message": "epoll: avoid double-inserts in case of EFAULT\n\nIn commit f337b9c58332bdecde965b436e47ea4c94d30da0 (\"epoll: drop\nunnecessary test\") Thomas found that there is an unnecessary (always\ntrue) test in ep_send_events().  The callback never inserts into\n-\u003erdllink while the send loop is performed, and also does the\n~EP_PRIVATE_BITS test.  Given we\u0027re holding the mutex during this time,\nthe conditions tested inside the loop are always true.\n\nHOWEVER.\n\nThe test \"!ep_is_linked(\u0026epi-\u003erdllink)\" wasn\u0027t there because we insert\ninto -\u003erdllink, but because the send-events loop might terminate before\nthe whole list is scanned (-EFAULT).\n\nIn such cases, when the loop terminates early, and when a (leftover)\nfile received an event while we\u0027re performing the lockless loop, we need\nsuch test to avoid to double insert the epoll items.  The list_splice()\ndone a few steps below, will correctly re-insert the ones that were left\non \"txlist\".\n\nThis should fix the kenrel.org bugzilla entry 11831.\n\nSigned-off-by: Davide Libenzi \u003cdavidel@xmailserver.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4d36a9e65d4966b433b2f3424d9457468bc80e00",
      "tree": "8c7b8e64ae40769a3f9f948491987ba93698ee3a",
      "parents": [
        "44a504c405ae5c3a80e71acf71d6b1cb0db70715"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Sat Oct 25 12:41:41 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Oct 26 11:22:08 2008 -0700"
      },
      "message": "select: deal with math overflow from borderline valid userland data\n\nSome userland apps seem to pass in a \"0\" for the seconds, and several\nseconds worth of usecs to select().  The old kernels accepted this just\nfine, so the new kernels must too.\n\nHowever, due to the upscaling of the microseconds to nanoseconds we had\nsome cases where we got math overflow, and depending on the GCC version\n(due to inlining decisions) that actually resulted in an -EINVAL return.\n\nThis patch fixes this by adding the excess microseconds to the seconds\nfield.\n\nAlso with thanks to Marcin Slusarz for spotting some implementation bugs\nin the diagnostics patches.\n\nReported-by: Carlos R. Mafra \u003ccrmafra2@gmail.com\u003e\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3c37fc86d20fe35be656f070997d62f75c2e4874",
      "tree": "eb9593356a2aa3233ab8f198f044e81413423cde",
      "parents": [
        "8c9fa93d51123c5540762b1a9e1919d6f9c4af7c"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Sat Oct 25 11:39:08 2008 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Sat Oct 25 22:37:55 2008 -0400"
      },
      "message": "ext4: Fix duplicate entries returned from getdents() system call\n\nFix a regression caused by commit d0156417, \"ext4: fix ext4_dx_readdir\nhash collision handling\", where deleting files in a large directory\n(requiring more than one getdents system call), results in some\nfilenames being returned twice.  This was caused by a failure to\nupdate info-\u003ecurr_hash and info-\u003ecurr_minor_hash, so that if the\ndirectory had gotten modified since the last getdents() system call\n(as would be the case if the user is running \"rm -r\" or \"git clean\"),\na directory entry would get returned twice to the userspace.\n\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n\nThis patch fixes the bug reported by Markus Trippelsdorf at:\nhttp://bugzilla.kernel.org/show_bug.cgi?id\u003d11844\n\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\nTested-by: Markus Trippelsdorf \u003cmarkus@trippelsdorf.de\u003e\n"
    },
    {
      "commit": "8c9fa93d51123c5540762b1a9e1919d6f9c4af7c",
      "tree": "e0c09b583c785be17bd2509b7c71fd7db3ad9aad",
      "parents": [
        "57f8f7b60db6f1ed2c6918ab9230c4623a9dbe37"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Sat Oct 25 11:38:37 2008 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Sat Oct 25 22:37:44 2008 -0400"
      },
      "message": "ext3: Fix duplicate entries returned from getdents() system call\n\nFix a regression caused by commit 6a897cf4, \"ext3: fix ext3_dx_readdir\nhash collision handling\", where deleting files in a large directory\n(requiring more than one getdents system call), results in some\nfilenames being returned twice.  This was caused by a failure to\nupdate info-\u003ecurr_hash and info-\u003ecurr_minor_hash, so that if the\ndirectory had gotten modified since the last getdents() system call\n(as would be the case if the user is running \"rm -r\" or \"git clean\"),\na directory entry would get returned twice to the userspace.\n\nThis patch fixes the bug reported by Markus Trippelsdorf at:\nhttp://bugzilla.kernel.org/show_bug.cgi?id\u003d11844\n\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\nTested-by: Markus Trippelsdorf \u003cmarkus@trippelsdorf.de\u003e\n"
    },
    {
      "commit": "88ed86fee6651033de9b7038dac7869a9f19775a",
      "tree": "38b638d2e7cba110ec271275738f221feb7e0a37",
      "parents": [
        "3856d30ded1fe43c6657927ebad402d25cd128f4",
        "59c7572e82d69483a66eaa67b46548baeb69ecf4"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 23 12:04:37 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 23 12:04:37 2008 -0700"
      },
      "message": "Merge branch \u0027proc\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/adobriyan/proc\n\n* \u0027proc\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/adobriyan/proc: (35 commits)\n  proc: remove fs/proc/proc_misc.c\n  proc: move /proc/vmcore creation to fs/proc/vmcore.c\n  proc: move pagecount stuff to fs/proc/page.c\n  proc: move all /proc/kcore stuff to fs/proc/kcore.c\n  proc: move /proc/schedstat boilerplate to kernel/sched_stats.h\n  proc: move /proc/modules boilerplate to kernel/module.c\n  proc: move /proc/diskstats boilerplate to block/genhd.c\n  proc: move /proc/zoneinfo boilerplate to mm/vmstat.c\n  proc: move /proc/vmstat boilerplate to mm/vmstat.c\n  proc: move /proc/pagetypeinfo boilerplate to mm/vmstat.c\n  proc: move /proc/buddyinfo boilerplate to mm/vmstat.c\n  proc: move /proc/vmallocinfo to mm/vmalloc.c\n  proc: move /proc/slabinfo boilerplate to mm/slub.c, mm/slab.c\n  proc: move /proc/slab_allocators boilerplate to mm/slab.c\n  proc: move /proc/interrupts boilerplate code to fs/proc/interrupts.c\n  proc: move /proc/stat to fs/proc/stat.c\n  proc: move rest of /proc/partitions code to block/genhd.c\n  proc: move /proc/cpuinfo code to fs/proc/cpuinfo.c\n  proc: move /proc/devices code to fs/proc/devices.c\n  proc: move rest of /proc/locks to fs/locks.c\n  ...\n"
    },
    {
      "commit": "3856d30ded1fe43c6657927ebad402d25cd128f4",
      "tree": "e2313de491919549ed9065fb2604dd3d19a33ea3",
      "parents": [
        "f3161f36f5f49ee995b90d6207d8b6d990355e0a"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Thu Oct 23 20:33:29 2008 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 23 12:03:23 2008 -0700"
      },
      "message": "ext4: remove unused variable in ext4_get_parent\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\n[ All users removed in \"switch all filesystems over to d_obtain_alias\",\n  aka commit 440037287c5ebb07033ab927ca16bb68c291d309 ]\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "12e1ec9ff31d388305da644b452c9f80d244aa55",
      "tree": "9e5fa992d12885a6b1c16c1175c692f99ac03bd7",
      "parents": [
        "1f6d6e8ebe73ba9d9d4c693f7f6f50f661dbd6e4"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 23 11:48:56 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 23 11:48:56 2008 -0700"
      },
      "message": "ext3 quota support: fix compile failure\n\nThis one was due to a merge error: we added a use of nd.path in commit\n2d7c820e56ce83b23daee9eb5343730fb309418e (\"ext3: add checks for errors\nfrom jbd\"), and concurrently we got rid of \u0027nd\u0027 and used a naked \u0027path\u0027\nin commit 8264613def2e5c4f12bc3167713090fd172e6055 (\"[PATCH] switch\nquota_on-related stuff to kern_path()\").\n\nThat all merged cleanly, but it didn\u0027t actually _work_.  This should fix\nit.\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1f6d6e8ebe73ba9d9d4c693f7f6f50f661dbd6e4",
      "tree": "be7a2d20b1728da5a0d844a6f4cd382b2c2569fb",
      "parents": [
        "db563fc2e80534f98c7f9121a6f7dfe41f177a79",
        "268a3dcfea2077fca60d3715caa5c96f9b5e6ea7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 23 10:53:02 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 23 10:53:02 2008 -0700"
      },
      "message": "Merge branch \u0027v28-range-hrtimers-for-linus-v2\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027v28-range-hrtimers-for-linus-v2\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (37 commits)\n  hrtimers: add missing docbook comments to struct hrtimer\n  hrtimers: simplify hrtimer_peek_ahead_timers()\n  hrtimers: fix docbook comments\n  DECLARE_PER_CPU needs linux/percpu.h\n  hrtimers: fix typo\n  rangetimers: fix the bug reported by Ingo for real\n  rangetimer: fix BUG_ON reported by Ingo\n  rangetimer: fix x86 build failure for the !HRTIMERS case\n  select: fix alpha OSF wrapper\n  select: fix alpha OSF wrapper\n  hrtimer: peek at the timer queue just before going idle\n  hrtimer: make the futex() system call use the per process slack value\n  hrtimer: make the nanosleep() syscall use the per process slack\n  hrtimer: fix signed/unsigned bug in slack estimator\n  hrtimer: show the timer ranges in /proc/timer_list\n  hrtimer: incorporate feedback from Peter Zijlstra\n  hrtimer: add a hrtimer_start_range() function\n  hrtimer: another build fix\n  hrtimer: fix build bug found by Ingo\n  hrtimer: make select() and poll() use the hrtimer range feature\n  ...\n"
    },
    {
      "commit": "db563fc2e80534f98c7f9121a6f7dfe41f177a79",
      "tree": "c97acbb983530b070e28c70825e0eedbbdb97ab2",
      "parents": [
        "eb81071584bed0b04adcaf57e525638d0f92e1e1",
        "b1c8d2b421376bc941823ee93e36cb491609b02c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 23 10:43:36 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 23 10:43:36 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: handle the TCP_Server_Info-\u003etsk field more carefully\n  cifs: fix unlinking of rename target when server doesn\u0027t support open file renames\n  [CIFS] improve setlease handling\n  [CIFS] fix saving of resume key before CIFSFindNext\n  cifs: make cifs_rename handle -EACCES errors\n  [CIFS] fix build error\n  [CIFS] undo changes in cifs_rename_pending_delete if it errors out\n  cifs: track DeletePending flag in cifsInodeInfo\n  cifs: don\u0027t use CREATE_DELETE_ON_CLOSE in cifs_rename_pending_delete\n  [CIFS] eliminate usage of kthread_stop for cifsd\n  [CIFS] Add nodfs mount option\n"
    },
    {
      "commit": "22484856402bfa1ff3defe47f6029ab0418240d9",
      "tree": "140c67bf59674da350a7b51765d6ff7eb101b597",
      "parents": [
        "5ed487bc2c44ca4e9668ef9cb54c830e2a9fac47",
        "56b26add02b4bdea81d5e0ebda60db1fe3311ad4"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 23 10:23:07 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 23 10:23:07 2008 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/viro/bdev\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/viro/bdev: (66 commits)\n  [PATCH] kill the rest of struct file propagation in block ioctls\n  [PATCH] get rid of struct file use in blkdev_ioctl() BLKBSZSET\n  [PATCH] get rid of blkdev_locked_ioctl()\n  [PATCH] get rid of blkdev_driver_ioctl()\n  [PATCH] sanitize blkdev_get() and friends\n  [PATCH] remember mode of reiserfs journal\n  [PATCH] propagate mode through swsusp_close()\n  [PATCH] propagate mode through open_bdev_excl/close_bdev_excl\n  [PATCH] pass fmode_t to blkdev_put()\n  [PATCH] kill the unused bsize on the send side of /dev/loop\n  [PATCH] trim file propagation in block/compat_ioctl.c\n  [PATCH] end of methods switch: remove the old ones\n  [PATCH] switch sr\n  [PATCH] switch sd\n  [PATCH] switch ide-scsi\n  [PATCH] switch tape_block\n  [PATCH] switch dcssblk\n  [PATCH] switch dasd\n  [PATCH] switch mtd_blkdevs\n  [PATCH] switch mmc\n  ...\n"
    },
    {
      "commit": "5ed487bc2c44ca4e9668ef9cb54c830e2a9fac47",
      "tree": "af19ed28db83e8f52690872ac99336da1cf2fd3b",
      "parents": [
        "5b34653963de7a6d0d8c783527457d68fddc60fb",
        "fd217f4d70172c526478f2bc76859e909fdfa674"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 23 10:22:40 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 23 10:22:40 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: (46 commits)\n  [PATCH] fs: add a sanity check in d_free\n  [PATCH] i_version: remount support\n  [patch] vfs: make security_inode_setattr() calling consistent\n  [patch 1/3] FS_MBCACHE: don\u0027t needlessly make it built-in\n  [PATCH] move executable checking into -\u003epermission()\n  [PATCH] fs/dcache.c: update comment of d_validate()\n  [RFC PATCH] touch_mnt_namespace when the mount flags change\n  [PATCH] reiserfs: add missing llseek method\n  [PATCH] fix -\u003ellseek for more directories\n  [PATCH vfs-2.6 6/6] vfs: add LOOKUP_RENAME_TARGET intent\n  [PATCH vfs-2.6 5/6] vfs: remove LOOKUP_PARENT from non LOOKUP_PARENT lookup\n  [PATCH vfs-2.6 4/6] vfs: remove unnecessary fsnotify_d_instantiate()\n  [PATCH vfs-2.6 3/6] vfs: add __d_instantiate() helper\n  [PATCH vfs-2.6 2/6] vfs: add d_ancestor()\n  [PATCH vfs-2.6 1/6] vfs: replace parent \u003d\u003d dentry-\u003ed_parent by IS_ROOT()\n  [PATCH] get rid of on-stack dentry in udf\n  [PATCH 2/2] anondev: switch to IDA\n  [PATCH 1/2] anondev: init IDR statically\n  [JFFS2] Use d_splice_alias() not d_add() in jffs2_lookup()\n  [PATCH] Optimise NFS readdir hack slightly.\n  ...\n"
    },
    {
      "commit": "b4d0b08a4c3947c6ac004c9d83154ec5999c1861",
      "tree": "c0f3ece1274d868c6288cc2843918c31b4885f43",
      "parents": [
        "33217379becdee25021cabb25032b3bf703d0e96",
        "e45c5405e12c7cef93940cb7a541ab459ec0096a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 23 10:14:45 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 23 10:14:45 2008 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ericvh/v9fs\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ericvh/v9fs:\n  9p: fix sparse warnings\n  9p: rdma: RDMA Transport Support for 9P\n  9p: fix format warning\n  9p: fix debug build error\n"
    },
    {
      "commit": "33217379becdee25021cabb25032b3bf703d0e96",
      "tree": "27cfbb722a523950ec8c9f616f28a1767498601a",
      "parents": [
        "feeedc6c820e1026453ad865076cee435f24d30a",
        "30bc4dfd3b64eb1fbefe2c63e30d8fc129273e20"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 23 10:14:23 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 23 10:14:23 2008 -0700"
      },
      "message": "Merge branch \u0027for-2.6.28\u0027 of git://linux-nfs.org/~bfields/linux\n\n* \u0027for-2.6.28\u0027 of git://linux-nfs.org/~bfields/linux:\n  nfsd: clean up expkey_parse error cases\n  nfsd: Drop reference in expkey_parse error cases\n  nfsd: Fix memory leak in nfsd_getxattr\n  NFSD: Fix BUG during NFSD shutdown processing\n"
    },
    {
      "commit": "be07c4ed4043ab8c26f222348136141335e47a2f",
      "tree": "6c9dc77098a4cfe4212091aaecd2350c7b301733",
      "parents": [
        "9f818b4ac04f53458d0354950b4f229f54be4dbf"
      ],
      "author": {
        "name": "Duane Griffin",
        "email": "duaneg@dghda.com",
        "time": "Wed Oct 22 14:15:03 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 23 08:55:02 2008 -0700"
      },
      "message": "jbd: abort instead of waiting for nonexistent transactions\n\nThe __log_wait_for_space function sits in a loop checkpointing\ntransactions until there is sufficient space free in the journal.\nHowever, if there are no transactions to be processed (e.g.  because the\nfree space calculation is wrong due to a corrupted filesystem) it will\nnever progress.\n\nCheck for space being required when no transactions are outstanding and\nabort the journal instead of endlessly looping.\n\nThis patch fixes the bug reported by Sami Liedes at:\nhttp://bugzilla.kernel.org/show_bug.cgi?id\u003d10976\n\nSigned-off-by: Duane Griffin \u003cduaneg@dghda.com\u003e\nTested-by: Sami Liedes \u003csliedes@cc.hut.fi\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9f818b4ac04f53458d0354950b4f229f54be4dbf",
      "tree": "2f70be32757ea6b494e4272b7779950b282ed03c",
      "parents": [
        "2d7c820e56ce83b23daee9eb5343730fb309418e"
      ],
      "author": {
        "name": "Hidehiro Kawai",
        "email": "hidehiro.kawai.ez@hitachi.com",
        "time": "Wed Oct 22 14:15:02 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 23 08:55:02 2008 -0700"
      },
      "message": "jbd: test BH_Write_EIO to detect errors on metadata buffers\n\n__try_to_free_cp_buf(), __process_buffer(), and __wait_cp_io() test\nBH_Uptodate flag to detect write I/O errors on metadata buffers.  But by\ncommit 95450f5a7e53d5752ce1a0d0b8282e10fe745ae0 \"ext3: don\u0027t read inode\nblock if the buffer has a write error\"(*), BH_Uptodate flag can be set to\ninode buffers with BH_Write_EIO in order to avoid reading old inode data.\nSo now, we have to test BH_Write_EIO flag of checkpointing inode buffers\ninstead of BH_Uptodate.  This patch does it.\n\nSigned-off-by: Hidehiro Kawai \u003chidehiro.kawai.ez@hitachi.com\u003e\nAcked-by: Jan Kara \u003cjack@suse.cz\u003e\nAcked-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2d7c820e56ce83b23daee9eb5343730fb309418e",
      "tree": "a64db3f90c8826a03c591be492faaf64ab7bf14a",
      "parents": [
        "4afe978530702c934dfdb11f54073136818b2119"
      ],
      "author": {
        "name": "Hidehiro Kawai",
        "email": "hidehiro.kawai.ez@hitachi.com",
        "time": "Wed Oct 22 14:15:01 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 23 08:55:01 2008 -0700"
      },
      "message": "ext3: add checks for errors from jbd\n\nIf the journal has aborted due to a checkpointing failure, we have to\nkeep the contents of the journal space.  Otherwise, the filesystem will\nlose uncheckpointed metadata completely and become inconsistent.  To\navoid this, we need to keep needs_recovery flag if checkpoint has\nfailed.\n\nWith this patch, ext3_put_super() detects a checkpointing failure from\nthe return value of journal_destroy(), then it invokes ext3_abort() to\nmake the filesystem read only and keep needs_recovery flag.  Errors\nfrom journal_flush() are also handled by this patch in some places.\n\nSigned-off-by: Hidehiro Kawai \u003chidehiro.kawai.ez@hitachi.com\u003e\nCc: Jan Kara \u003cjack@ucw.cz\u003e\nCc: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4afe978530702c934dfdb11f54073136818b2119",
      "tree": "5f7fb9539b46c0b390157f55c84017e14b7f605c",
      "parents": [
        "66f50ee3cee4c9d98eea0add6f439e6e5e0ca4a5"
      ],
      "author": {
        "name": "Hidehiro Kawai",
        "email": "hidehiro.kawai.ez@hitachi.com",
        "time": "Wed Oct 22 14:15:00 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 23 08:55:01 2008 -0700"
      },
      "message": "jbd: fix error handling for checkpoint io\n\nWhen a checkpointing IO fails, current JBD code doesn\u0027t check the error\nand continue journaling.  This means latest metadata can be lost from both\nthe journal and filesystem.\n\nThis patch leaves the failed metadata blocks in the journal space and\naborts journaling in the case of log_do_checkpoint().  To achieve this, we\nneed to do:\n\n1. don\u0027t remove the failed buffer from the checkpoint list where in\n   the case of __try_to_free_cp_buf() because it may be released or\n   overwritten by a later transaction\n2. log_do_checkpoint() is the last chance, remove the failed buffer\n   from the checkpoint list and abort the journal\n3. when checkpointing fails, don\u0027t update the journal super block to\n   prevent the journaled contents from being cleaned.  For safety,\n   don\u0027t update j_tail and j_tail_sequence either\n4. when checkpointing fails, notify this error to the ext3 layer so\n   that ext3 don\u0027t clear the needs_recovery flag, otherwise the\n   journaled contents are ignored and cleaned in the recovery phase\n5. if the recovery fails, keep the needs_recovery flag\n6. prevent cleanup_journal_tail() from being called between\n   __journal_drop_transaction() and journal_abort() (a race issue\n   between journal_flush() and __log_wait_for_space()\n\nSigned-off-by: Hidehiro Kawai \u003chidehiro.kawai.ez@hitachi.com\u003e\nAcked-by: Jan Kara \u003cjack@suse.cz\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "59c7572e82d69483a66eaa67b46548baeb69ecf4",
      "tree": "a395888324ac02149f77920e06337e8612f37535",
      "parents": [
        "5aa140c2deca3701238d5acddf436ad7b02664c7"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Mon Oct 06 14:49:39 2008 +0400"
      },
      "committer": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Thu Oct 23 18:54:05 2008 +0400"
      },
      "message": "proc: remove fs/proc/proc_misc.c\n\nNow that everything was moved to their more or less expected places,\napply rm(1).\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\n"
    },
    {
      "commit": "5aa140c2deca3701238d5acddf436ad7b02664c7",
      "tree": "25cd153f4592aa66fd6459a650fab3b48052f066",
      "parents": [
        "6d80e53f0056178c63fa8fbf3e8de40fb4df5f50"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Mon Oct 06 14:36:31 2008 +0400"
      },
      "committer": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Thu Oct 23 18:51:22 2008 +0400"
      },
      "message": "proc: move /proc/vmcore creation to fs/proc/vmcore.c\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\n"
    },
    {
      "commit": "6d80e53f0056178c63fa8fbf3e8de40fb4df5f50",
      "tree": "1b98863c649b0a5593412f08afc0045c3c50137d",
      "parents": [
        "97ce5d6dcb07c403c0fc6001b755aacc38b5d7ff"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Mon Oct 06 14:26:12 2008 +0400"
      },
      "committer": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Thu Oct 23 18:48:31 2008 +0400"
      },
      "message": "proc: move pagecount stuff to fs/proc/page.c\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\n"
    },
    {
      "commit": "97ce5d6dcb07c403c0fc6001b755aacc38b5d7ff",
      "tree": "6b8ff98d11bf8efae963e19a40f4ed902e40656c",
      "parents": [
        "b5aadf7f14c1acc94956aa257e018e9de3881f41"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Mon Oct 06 14:14:19 2008 +0400"
      },
      "committer": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Thu Oct 23 18:32:38 2008 +0400"
      },
      "message": "proc: move all /proc/kcore stuff to fs/proc/kcore.c\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\n"
    },
    {
      "commit": "b5aadf7f14c1acc94956aa257e018e9de3881f41",
      "tree": "5add08715374d105dc16f4135e2445e4a3b65a17",
      "parents": [
        "3b5d5c6b0ccba733a313f8752ebc3f8015628ba3"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Mon Oct 06 13:23:43 2008 +0400"
      },
      "committer": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Thu Oct 23 18:06:12 2008 +0400"
      },
      "message": "proc: move /proc/schedstat boilerplate to kernel/sched_stats.h\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\n"
    },
    {
      "commit": "3b5d5c6b0ccba733a313f8752ebc3f8015628ba3",
      "tree": "7277d87d64b8be615013457ab0cdb178d41a9efe",
      "parents": [
        "31d85ab28e71b0c938e0ef48af45747e80d99b53"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Mon Oct 06 13:19:27 2008 +0400"
      },
      "committer": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Thu Oct 23 18:03:13 2008 +0400"
      },
      "message": "proc: move /proc/modules boilerplate to kernel/module.c\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\n"
    },
    {
      "commit": "31d85ab28e71b0c938e0ef48af45747e80d99b53",
      "tree": "1cd97bee97abb008dd3591da2a001e3e85356fb6",
      "parents": [
        "5c9fe6281b75832e8d2555ec8700ea763d9a865e"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Mon Oct 06 12:55:38 2008 +0400"
      },
      "committer": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Thu Oct 23 17:57:37 2008 +0400"
      },
      "message": "proc: move /proc/diskstats boilerplate to block/genhd.c\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nAcked-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "5c9fe6281b75832e8d2555ec8700ea763d9a865e",
      "tree": "a8ef6a23598322e1f93ba5e7ed8d24981f73ac8b",
      "parents": [
        "b6aa44ab698c7df9d951d3eb45c4fcb8ba68fb25"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Mon Oct 06 04:19:42 2008 +0400"
      },
      "committer": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Thu Oct 23 17:35:04 2008 +0400"
      },
      "message": "proc: move /proc/zoneinfo boilerplate to mm/vmstat.c\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nAcked-by: Christoph Lameter \u003ccl@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b6aa44ab698c7df9d951d3eb45c4fcb8ba68fb25",
      "tree": "3ddf82053cc10e4811e77918fb00aad1c09c94c1",
      "parents": [
        "74e2e8e8ce7b3c0f878a349f9fa6cf2831548eef"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Mon Oct 06 04:17:48 2008 +0400"
      },
      "committer": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Thu Oct 23 17:12:51 2008 +0400"
      },
      "message": "proc: move /proc/vmstat boilerplate to mm/vmstat.c\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nAcked-by: Christoph Lameter \u003ccl@linux-foundation.org\u003e\n"
    },
    {
      "commit": "74e2e8e8ce7b3c0f878a349f9fa6cf2831548eef",
      "tree": "1de0e09b982c8c152f93b74842587e4c56df5484",
      "parents": [
        "8f32f7e5ac2ed11b0659b6b55af926f3d58ffd9d"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Mon Oct 06 04:15:36 2008 +0400"
      },
      "committer": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Thu Oct 23 16:33:29 2008 +0400"
      },
      "message": "proc: move /proc/pagetypeinfo boilerplate to mm/vmstat.c\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\n"
    },
    {
      "commit": "8f32f7e5ac2ed11b0659b6b55af926f3d58ffd9d",
      "tree": "fa577deb5c664169ba3f7715006657fb7834ac32",
      "parents": [
        "5f6a6a9c4e4d790aae55cb412a7643329057c5e0"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Mon Oct 06 04:13:52 2008 +0400"
      },
      "committer": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Thu Oct 23 16:12:04 2008 +0400"
      },
      "message": "proc: move /proc/buddyinfo boilerplate to mm/vmstat.c\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\n"
    },
    {
      "commit": "5f6a6a9c4e4d790aae55cb412a7643329057c5e0",
      "tree": "06b984b29e2e100874a4627ba6e22eb3e96a2640",
      "parents": [
        "7b3c3a50a3e0ea46815150d420fa276ac254572b"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Mon Oct 06 03:50:47 2008 +0400"
      },
      "committer": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Thu Oct 23 15:48:28 2008 +0400"
      },
      "message": "proc: move /proc/vmallocinfo to mm/vmalloc.c\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nAcked-by: Christoph Lameter \u003ccl@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7b3c3a50a3e0ea46815150d420fa276ac254572b",
      "tree": "a49118d99ae5bac99b660d8a44c20df2b15a7037",
      "parents": [
        "a0ec95a8e69792e4ad642daac037c9b01ea3e2cd"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Mon Oct 06 02:42:17 2008 +0400"
      },
      "committer": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Thu Oct 23 15:20:06 2008 +0400"
      },
      "message": "proc: move /proc/slabinfo boilerplate to mm/slub.c, mm/slab.c\n\nLose dummy -\u003ewrite hook in case of SLUB, it\u0027s possible now.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nAcked-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\n"
    },
    {
      "commit": "a0ec95a8e69792e4ad642daac037c9b01ea3e2cd",
      "tree": "ec8f483871151c152c198b605ab7ebd6046271b8",
      "parents": [
        "d6917e19f3fda8e1f88bc23ddceed952927bd716"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Mon Oct 06 00:59:10 2008 +0400"
      },
      "committer": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Thu Oct 23 15:17:27 2008 +0400"
      },
      "message": "proc: move /proc/slab_allocators boilerplate to mm/slab.c\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nAcked-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\n"
    },
    {
      "commit": "d6917e19f3fda8e1f88bc23ddceed952927bd716",
      "tree": "b9788090ce4661f6e0339cd7b937d36ef5027b58",
      "parents": [
        "df8106dbb59a8c167ea16631059ecb5f7d77da13"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Sun Oct 05 00:08:44 2008 +0400"
      },
      "committer": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Thu Oct 23 15:15:46 2008 +0400"
      },
      "message": "proc: move /proc/interrupts boilerplate code to fs/proc/interrupts.c\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\n"
    },
    {
      "commit": "df8106dbb59a8c167ea16631059ecb5f7d77da13",
      "tree": "05b4eab6428a93b66dc48dda4e8124af2f93c1fe",
      "parents": [
        "f500975a3f3ecf3611d79f1d933906753460b9f2"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Sun Oct 05 00:01:56 2008 +0400"
      },
      "committer": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Thu Oct 23 15:14:05 2008 +0400"
      },
      "message": "proc: move /proc/stat to fs/proc/stat.c\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\n"
    },
    {
      "commit": "f500975a3f3ecf3611d79f1d933906753460b9f2",
      "tree": "df3728998ca1638ecbccf4ab6f401f9a2cbdba88",
      "parents": [
        "8591cf43224980a0bc9216a4e50b0a740f8cba35"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Sat Oct 04 23:53:21 2008 +0400"
      },
      "committer": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Thu Oct 23 15:07:31 2008 +0400"
      },
      "message": "proc: move rest of /proc/partitions code to block/genhd.c\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nAcked-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "8591cf43224980a0bc9216a4e50b0a740f8cba35",
      "tree": "f3af8c5a36528b961c95354662c38a5f06d406aa",
      "parents": [
        "fe2510426a02dd2fefcb0389b60f77cbe0462289"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Sat Oct 04 23:40:23 2008 +0400"
      },
      "committer": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Thu Oct 23 15:05:11 2008 +0400"
      },
      "message": "proc: move /proc/cpuinfo code to fs/proc/cpuinfo.c\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\n"
    },
    {
      "commit": "fe2510426a02dd2fefcb0389b60f77cbe0462289",
      "tree": "adf11d28a4a90e0e46be006c4308724ef4d21859",
      "parents": [
        "d8ba7a363393f803c93c8cffabd6d0362618bc2a"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Sat Oct 04 23:11:37 2008 +0400"
      },
      "committer": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Thu Oct 23 15:02:18 2008 +0400"
      },
      "message": "proc: move /proc/devices code to fs/proc/devices.c\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\n"
    },
    {
      "commit": "d8ba7a363393f803c93c8cffabd6d0362618bc2a",
      "tree": "331010c221eb9dfe396b2e6958a08f0fb695e117",
      "parents": [
        "ae048112c099b0f3adb57f7c0b3a49bc62244609"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Sat Oct 04 22:34:18 2008 +0400"
      },
      "committer": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Thu Oct 23 14:37:00 2008 +0400"
      },
      "message": "proc: move rest of /proc/locks to fs/locks.c\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\n"
    },
    {
      "commit": "ae048112c099b0f3adb57f7c0b3a49bc62244609",
      "tree": "2ac80f435ab8d5a30e5eb461baa5d86050ec5c55",
      "parents": [
        "659689280ad91d31235db79cda6c7c799c4d3781"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Sat Oct 04 14:39:12 2008 +0400"
      },
      "committer": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Thu Oct 23 14:35:08 2008 +0400"
      },
      "message": "proc: move /proc/kmsg creation to fs/proc/kmsg.c\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\n"
    },
    {
      "commit": "659689280ad91d31235db79cda6c7c799c4d3781",
      "tree": "a97cc862cba76fe05960761c17c9772ae3e1e673",
      "parents": [
        "6e62775ece1c83a84d86df44cfd8ea3e6c96ce23"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Sat Oct 04 14:30:53 2008 +0400"
      },
      "committer": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Thu Oct 23 14:32:59 2008 +0400"
      },
      "message": "proc: remove remnants of -\u003eread_proc in proc_misc.c\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\n"
    },
    {
      "commit": "6e62775ece1c83a84d86df44cfd8ea3e6c96ce23",
      "tree": "2eac2401fd8ca9372e6b15cc656a87d0b75856fc",
      "parents": [
        "cf9887f102541b8a0adb73f7da9c28d090622010"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Sat Oct 04 14:28:09 2008 +0400"
      },
      "committer": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Thu Oct 23 14:30:41 2008 +0400"
      },
      "message": "proc: move /proc/execdomains to kernel/exec_domain.c\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\n"
    },
    {
      "commit": "cf9887f102541b8a0adb73f7da9c28d090622010",
      "tree": "c06fa077c8d8fcf6d88a267172a6322619e5f7e0",
      "parents": [
        "6827400713fa22312ca3b4f47b0e64871c88040c"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Sat Oct 04 14:13:59 2008 +0400"
      },
      "committer": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Thu Oct 23 14:29:04 2008 +0400"
      },
      "message": "proc: switch /proc/cmdline to seq_file\n\nand move it to fs/proc/cmdline.c while I\u0027m at it.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\n"
    },
    {
      "commit": "6827400713fa22312ca3b4f47b0e64871c88040c",
      "tree": "a42a02ce68671443576482c5e38bd42735383579",
      "parents": [
        "4c150f6c30f5129bbce5c41568a285b1f7ca8d8b"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Sat Oct 04 14:08:37 2008 +0400"
      },
      "committer": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Thu Oct 23 14:27:09 2008 +0400"
      },
      "message": "proc: move /proc/filesystems to fs/filesystems.c\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\n"
    },
    {
      "commit": "4c150f6c30f5129bbce5c41568a285b1f7ca8d8b",
      "tree": "2ffbd31a47cd326c059dfb970a05d789032ddb5b",
      "parents": [
        "813dcf7a6e642feb1ea566b96ce2912249d2b57d"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Sat Oct 04 13:49:34 2008 +0400"
      },
      "committer": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Thu Oct 23 14:25:35 2008 +0400"
      },
      "message": "proc: move /proc/stram to m68k-specific code\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\n"
    },
    {
      "commit": "813dcf7a6e642feb1ea566b96ce2912249d2b57d",
      "tree": "80eb42f9c8d5673f35d9db8786dc251201e48d6f",
      "parents": [
        "b457d151613873ea035de0c7348abc3d4b6efd34"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Fri Oct 03 22:42:36 2008 +0400"
      },
      "committer": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Thu Oct 23 14:24:03 2008 +0400"
      },
      "message": "proc: move /proc/hardware to m68k-specific code\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\n"
    },
    {
      "commit": "b457d151613873ea035de0c7348abc3d4b6efd34",
      "tree": "b3351dc2f04d37e0ac42bbdbabcd96eab08ad7b9",
      "parents": [
        "e1759c215bee5abbcb6cb066590ab20905154ed5"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Fri Oct 03 11:53:19 2008 +0400"
      },
      "committer": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Thu Oct 23 14:19:58 2008 +0400"
      },
      "message": "proc: switch /proc/version to seq_file\n\nand move it to fs/proc/version.c while I\u0027m at it.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\n"
    },
    {
      "commit": "e1759c215bee5abbcb6cb066590ab20905154ed5",
      "tree": "14a43e259767082706dab112292ff92e13ce42a4",
      "parents": [
        "9617760287eec9091d26e6967bd3e4194de18f97"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Wed Oct 15 23:50:22 2008 +0400"
      },
      "committer": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Thu Oct 23 13:52:40 2008 +0400"
      },
      "message": "proc: switch /proc/meminfo to seq_file\n\nand move it to fs/proc/meminfo.c while I\u0027m at it.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\n"
    },
    {
      "commit": "9617760287eec9091d26e6967bd3e4194de18f97",
      "tree": "8a13097b1c3e86f989f9c067bc76a451362a1c13",
      "parents": [
        "5b3acc8de8b2bc459afae6e09ada45c7e5b11bbf"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Fri Oct 03 02:38:18 2008 +0400"
      },
      "committer": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Thu Oct 23 13:48:01 2008 +0400"
      },
      "message": "proc: switch /proc/uptime to seq_file\n\nand move it to fs/proc/uptime.c while I\u0027m at it.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\n"
    },
    {
      "commit": "5b3acc8de8b2bc459afae6e09ada45c7e5b11bbf",
      "tree": "295a8d4401fb63e7c0f32090f1fafce1835765d6",
      "parents": [
        "6c2f91e077f1b60e7f83b7ee044f965f469cfdb3"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Fri Oct 03 02:21:47 2008 +0400"
      },
      "committer": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Thu Oct 23 13:45:28 2008 +0400"
      },
      "message": "proc: switch /proc/loadavg to seq_file\n\nand move it to fs/proc/loadavg.c while I\u0027m at it.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\n"
    },
    {
      "commit": "6c2f91e077f1b60e7f83b7ee044f965f469cfdb3",
      "tree": "98e31d603d80a03325e6c0903e9d352823b04e30",
      "parents": [
        "1e0edd3f67d5b5c04ef6c0908aac8bd70dffc6f6"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Sat Sep 13 19:51:30 2008 -0700"
      },
      "committer": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Thu Oct 23 13:34:38 2008 +0400"
      },
      "message": "proc: use WARN() rather than printk+backtrace\n\nUse WARN() rather than a printk() + backtrace();\nthis gives a more standard format message as well as complete\ninformation (including line numbers etc) that will be collected\nby kerneloops.org\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\n"
    },
    {
      "commit": "1e0edd3f67d5b5c04ef6c0908aac8bd70dffc6f6",
      "tree": "e2b7c1f2b3ecfeed13f53fa940e5f41062dca347",
      "parents": [
        "5bcd7ff9e1690dbdbccb2a1cb3c2ea8b8381c435"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Fri Oct 17 05:07:44 2008 +0400"
      },
      "committer": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Thu Oct 23 13:32:31 2008 +0400"
      },
      "message": "proc: spread __init\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\n"
    },
    {
      "commit": "5bcd7ff9e1690dbdbccb2a1cb3c2ea8b8381c435",
      "tree": "4655120e76654512a1229bb4af0a41fb55c23663",
      "parents": [
        "7c88db0cb589df980acfb2f73c3595a0653004ec"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Fri Oct 17 03:43:55 2008 +0400"
      },
      "committer": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Thu Oct 23 13:27:50 2008 +0400"
      },
      "message": "proc: proc_init_inodecache() can\u0027t fail\n\nkmem_cache creation code will panic, don\u0027t return anything.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\n"
    },
    {
      "commit": "7c88db0cb589df980acfb2f73c3595a0653004ec",
      "tree": "f3e6400704e9a9fdbaea3c8ee83026763f92627d",
      "parents": [
        "2515ddc6db8eb49a79f0fe5e67ff09ac7c81eab4"
      ],
      "author": {
        "name": "Joe Korty",
        "email": "joe.korty@ccur.com",
        "time": "Thu Oct 16 15:27:09 2008 +0400"
      },
      "committer": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Thu Oct 23 13:21:29 2008 +0400"
      },
      "message": "proc: fix vma display mismatch between /proc/pid/{maps,smaps}\n\nCommit 4752c369789250eafcd7813e11c8fb689235b0d2 aka\n\"maps4: simplify interdependence of maps and smaps\" broke /proc/pid/smaps,\ncausing it to display some vmas twice and other vmas not at all.  For example:\n\n    grep .- /proc/1/smaps \u003e/tmp/smaps; diff /proc/1/maps /tmp/smaps\n\n    1  25d24\n    2  \u003c 7fd7e23aa000-7fd7e23ac000 rw-p 7fd7e23aa000 00:00 0\n    3  28a28\n    4  \u003e ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0  [vsyscall]\n\nThe bug has something to do with setting m-\u003eversion before all the\nseq_printf\u0027s have been performed.  show_map was doing this correctly,\nbut show_smap was doing this in the middle of its seq_printf sequence.\nThis patch arranges things so that the setting of m-\u003eversion in show_smap\nis also done at the end of its seq_printf sequence.\n\nTesting: in addition to the above grep test, for each process I summed\nup the \u0027Rss\u0027 fields of /proc/pid/smaps and compared that to the \u0027VmRSS\u0027\nfield of /proc/pid/status.  All matched except for Xorg (which has a\n/dev/mem mapping which Rss accounts for but VmRSS does not).  This result\ngives us some confidence that neither /proc/pid/maps nor /proc/pid/smaps\nare any longer skipping or double-counting vmas.\n\nSigned-off-by: Joe Korty \u003cjoe.korty@ccur.com\u003e\nCc: Matt Mackall \u003cmpm@selenic.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\n"
    },
    {
      "commit": "fd217f4d70172c526478f2bc76859e909fdfa674",
      "tree": "df707d185b3009ada981c17211a6e02097e8fc7b",
      "parents": [
        "08b9fe6b12d32324f311c46b88102b6b9067d434"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@infradead.org",
        "time": "Tue Oct 21 06:47:33 2008 -0700"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Oct 23 05:17:12 2008 -0400"
      },
      "message": "[PATCH] fs: add a sanity check in d_free\n\nHi Al,\n\nremember that debug session we did at KS? You suggested this patch back\nthen....\n\nFrom 7751eaf30474b8cbfaea64795805a17eab05ac53 Mon Sep 17 00:00:00 2001\nFrom: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nDate: Tue, 16 Sep 2008 16:51:17 -0700\nSubject: [PATCH] fs: add a sanity check in d_free\n\nwe\u0027re seeing some corruption in the dentry-\u003ed_alias list that\nappears like a free of an entry still on the list; this patch\nadds a WARN_ON() to catch this scenario, as suggested by Al Viro\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\n"
    },
    {
      "commit": "a77b72da24ecfe262760874c55e3f6461f1dec0d",
      "tree": "36c8c0215866099d03fb99aa5d13f765f2c73dba",
      "parents": [
        "2c512397ca060f6dbcb3957174a91e29a3b769be"
      ],
      "author": {
        "name": "Miklos Szeredi",
        "email": "mszeredi@suse.cz",
        "time": "Wed Jul 30 14:06:22 2008 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Oct 23 05:13:27 2008 -0400"
      },
      "message": "[patch] vfs: make security_inode_setattr() calling consistent\n\nCall security_inode_setattr() consistetly before inode_change_ok().\nIt doesn\u0027t make sense to try to \"optimize\" the i_op-\u003esetattr \u003d\u003d NULL\ncase, as most filesystem do define their own setattr function.\n\nSigned-off-by: Miklos Szeredi \u003cmszeredi@suse.cz\u003e\n"
    },
    {
      "commit": "2c512397ca060f6dbcb3957174a91e29a3b769be",
      "tree": "c10cd704a9d2b5f73b3a293e6e64fc69dee46e49",
      "parents": [
        "f696a3659fc4b3a3bf4bc83d9dbec5e5a2ffd929"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Wed Aug 20 16:56:22 2008 -0700"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Oct 23 05:13:26 2008 -0400"
      },
      "message": "[patch 1/3] FS_MBCACHE: don\u0027t needlessly make it built-in\n\nAssume you have:\n- one or more of ext2/3/4 statically built into your kernel\n- none of these with extended attributes enabled and\n- want to add onother one of ext2/3/4 modular and with\n  extended attributes enabled\n\nthen you currently have to reboot to use it since this results in\nCONFIG_FS_MBCACHE\u003dy.\n\nThat\u0027s not a common issue, but I just ran into it and since there\u0027s no\nreason to get a built-in mbcache in this case this patch fixes it.\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nCc: Andreas Gruenbacher \u003cagruen@suse.de\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f696a3659fc4b3a3bf4bc83d9dbec5e5a2ffd929",
      "tree": "738adf557608f26e881a710839de12b7527549b6",
      "parents": [
        "5cec56deb6d41b5b570306b17cd0b1590ebd0897"
      ],
      "author": {
        "name": "Miklos Szeredi",
        "email": "miklos@szeredi.hu",
        "time": "Thu Jul 31 13:41:58 2008 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Oct 23 05:13:25 2008 -0400"
      },
      "message": "[PATCH] move executable checking into -\u003epermission()\n\nFor execute permission on a regular files we need to check if file has\nany execute bits at all, regardless of capabilites.\n\nThis check is normally performed by generic_permission() but was also\nadded to the case when the filesystem defines its own -\u003epermission()\nmethod.  In the latter case the filesystem should be responsible for\nperforming this check.\n\nMove the check from inode_permission() inside filesystems which are\nnot calling generic_permission().\n\nCreate a helper function execute_ok() that returns true if the inode\nis a directory or if any execute bits are present in i_mode.\n\nAlso fix up the following code:\n\n - coda control file is never executable\n - sysctl files are never executable\n - hfs_permission seems broken on MAY_EXEC, remove\n - hfsplus_permission is eqivalent to generic_permission(), remove\n\nSigned-off-by: Miklos Szeredi \u003cmszeredi@suse.cz\u003e\n"
    },
    {
      "commit": "5cec56deb6d41b5b570306b17cd0b1590ebd0897",
      "tree": "b5485bd962bdf354d566e8a5e4257e726b542f8b",
      "parents": [
        "0e55a7cca4b66f625d67b292f80b6a976e77c51b"
      ],
      "author": {
        "name": "Qinghuang Feng",
        "email": "qhfeng.kernel@gmail.com",
        "time": "Mon Oct 13 18:32:42 2008 +0800"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Oct 23 05:13:24 2008 -0400"
      },
      "message": "[PATCH] fs/dcache.c: update comment of d_validate()\n\nParameters @hash and @len have been removed since 2.4.3,\nnow just to delete them.\n\nSigned-off-by: Qinghuang Feng \u003cqhfeng.kernel@gmail.com\u003e\n"
    },
    {
      "commit": "0e55a7cca4b66f625d67b292f80b6a976e77c51b",
      "tree": "5106fdf23fe0a6030ab00645bf37f19f07aadd45",
      "parents": [
        "91efc167d02509ea78abeff6d668065964c67c0b"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Fri Sep 26 19:01:20 2008 -0700"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Oct 23 05:13:23 2008 -0400"
      },
      "message": "[RFC PATCH] touch_mnt_namespace when the mount flags change\n\nDaemons that need to be launched while the rootfs is read-only can now\npoll /proc/mounts to be notified when their O_RDWR requests may no\nlonger end in EROFS.\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nCc: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "91efc167d02509ea78abeff6d668065964c67c0b",
      "tree": "e37240ece1a1ffe7b4d2beb52310981a0cfc80b5",
      "parents": [
        "3222a3e55f4025acb2a5a4379cf2f2b7df1f1243"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Mon Sep 08 19:42:50 2008 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Oct 23 05:13:22 2008 -0400"
      },
      "message": "[PATCH] reiserfs: add missing llseek method\n\nReiserfs currently doesn\u0027t set a llseek method for regular files, which\nmeans it will fall back to default_llseek.  This means no one can seek\nbeyond 2 Gigabytes on reiserfs, and that there\u0027s not protection vs\nthe i_size updates from writers.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\n"
    },
    {
      "commit": "3222a3e55f4025acb2a5a4379cf2f2b7df1f1243",
      "tree": "d12740cd5dc00ae17f7beb63584dd00d7c1fb4cb",
      "parents": [
        "4e9ed2f85af7adfa7c3f0efa839a53186254fdcb"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Wed Sep 03 21:53:01 2008 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Oct 23 05:13:21 2008 -0400"
      },
      "message": "[PATCH] fix -\u003ellseek for more directories\n\nWith this patch all directory fops instances that have a readdir\nthat doesn\u0027t take the BKL are switched to generic_file_llseek.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\n"
    },
    {
      "commit": "4e9ed2f85af7adfa7c3f0efa839a53186254fdcb",
      "tree": "d59efd278d8d8474d9869211ba4424143ea84b75",
      "parents": [
        "0612d9fb270a474fe6a46cc5b8d3f5b71cf5f580"
      ],
      "author": {
        "name": "OGAWA Hirofumi",
        "email": "hirofumi@mail.parknet.co.jp",
        "time": "Thu Oct 16 07:50:29 2008 +0900"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Oct 23 05:13:20 2008 -0400"
      },
      "message": "[PATCH vfs-2.6 6/6] vfs: add LOOKUP_RENAME_TARGET intent\n\nThis adds LOOKUP_RENAME_TARGET intent for lookup of rename destination.\n\nLOOKUP_RENAME_TARGET is going to be used like LOOKUP_CREATE. But since\nthe destination of rename() can be existing directory entry, so it has a\ndifference. Although that difference doesn\u0027t matter in my usage, this\ntells it to user of this intent.\n\nSigned-off-by: OGAWA Hirofumi \u003chirofumi@mail.parknet.co.jp\u003e\n"
    },
    {
      "commit": "0612d9fb270a474fe6a46cc5b8d3f5b71cf5f580",
      "tree": "c6c9a6d2a457b6146615244e6b15ecac3b73daae",
      "parents": [
        "8f3dfaa5bab767a043c5af5b879fb86c03329f8a"
      ],
      "author": {
        "name": "OGAWA Hirofumi",
        "email": "hirofumi@mail.parknet.co.jp",
        "time": "Thu Oct 16 07:50:29 2008 +0900"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Oct 23 05:13:19 2008 -0400"
      },
      "message": "[PATCH vfs-2.6 5/6] vfs: remove LOOKUP_PARENT from non LOOKUP_PARENT lookup\n\nlookup_hash() with LOOKUP_PARENT is bogus. And this prepares to add\nnew intent on those path.\n\nThe user of LOOKUP_PARENT intent is nfs only, and it checks whether\nnd-\u003eflags has LOOKUP_CREATE or LOOKUP_OPEN, so the result is same.\n\nSigned-off-by: OGAWA Hirofumi \u003chirofumi@mail.parknet.co.jp\u003e\n"
    },
    {
      "commit": "8f3dfaa5bab767a043c5af5b879fb86c03329f8a",
      "tree": "b5213e73f1cca4ca6c6c820a1927a0fb03b9cb57",
      "parents": [
        "360da90029196c9449bc61e5a07ce8404e4cba57"
      ],
      "author": {
        "name": "OGAWA Hirofumi",
        "email": "hirofumi@mail.parknet.co.jp",
        "time": "Thu Oct 16 07:50:29 2008 +0900"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Oct 23 05:13:18 2008 -0400"
      },
      "message": "[PATCH vfs-2.6 4/6] vfs: remove unnecessary fsnotify_d_instantiate()\n\nThis calls d_move(), so fsnotify_d_instantiate() is unnecessary like\nrename path.\n\nSigned-off-by: OGAWA Hirofumi \u003chirofumi@mail.parknet.co.jp\u003e\n"
    },
    {
      "commit": "360da90029196c9449bc61e5a07ce8404e4cba57",
      "tree": "7bca57f11b2022633f5c49ec9a1bca9d2d4d1b1a",
      "parents": [
        "e2761a1167633ed943fea29002f990194923d060"
      ],
      "author": {
        "name": "OGAWA Hirofumi",
        "email": "hirofumi@mail.parknet.co.jp",
        "time": "Thu Oct 16 07:50:28 2008 +0900"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Oct 23 05:13:17 2008 -0400"
      },
      "message": "[PATCH vfs-2.6 3/6] vfs: add __d_instantiate() helper\n\nThis adds __d_instantiate() for users which is already taking\ndcache_lock, and replace with it.\n\nThe part of d_add_ci() isn\u0027t equivalent. But it should be needed\nfsnotify_d_instantiate() actually, because the path is to add the\ninode to negative dentry.  fsnotify_d_instantiate() should be called\nafter change from negative to positive.\n\nSigned-off-by: OGAWA Hirofumi \u003chirofumi@mail.parknet.co.jp\u003e\n"
    },
    {
      "commit": "e2761a1167633ed943fea29002f990194923d060",
      "tree": "e91816e85c7721fcff72e5f84336b1dde9d1ac17",
      "parents": [
        "871c0067d53ba2dc35897c7da1da675bf4c70511"
      ],
      "author": {
        "name": "OGAWA Hirofumi",
        "email": "hirofumi@mail.parknet.co.jp",
        "time": "Thu Oct 16 07:50:28 2008 +0900"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Oct 23 05:13:16 2008 -0400"
      },
      "message": "[PATCH vfs-2.6 2/6] vfs: add d_ancestor()\n\nThis adds d_ancestor() instead of d_isparent(), then use it.\n\nIf new_dentry \u003d\u003d old_dentry, is_subdir() returns 1, looks strange.\n\"new_dentry \u003d\u003d old_dentry\" is not subdir obviously. But I\u0027m not\nchecking callers for now, so this keeps current behavior.\n\nSigned-off-by: OGAWA Hirofumi \u003chirofumi@mail.parknet.co.jp\u003e\n"
    },
    {
      "commit": "871c0067d53ba2dc35897c7da1da675bf4c70511",
      "tree": "a76e6888d180a747df04155998bf8e595715da99",
      "parents": [
        "9fbb76ce0fe96c07c44ba2aec3dc99f4b8d2b9c6"
      ],
      "author": {
        "name": "OGAWA Hirofumi",
        "email": "hirofumi@mail.parknet.co.jp",
        "time": "Thu Oct 16 07:50:27 2008 +0900"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Oct 23 05:13:16 2008 -0400"
      },
      "message": "[PATCH vfs-2.6 1/6] vfs: replace parent \u003d\u003d dentry-\u003ed_parent by IS_ROOT()\n\nSigned-off-by: OGAWA Hirofumi \u003chirofumi@mail.parknet.co.jp\u003e\n"
    },
    {
      "commit": "9fbb76ce0fe96c07c44ba2aec3dc99f4b8d2b9c6",
      "tree": "78f50dcd672702aed515dbd0adabde839c2cb4c0",
      "parents": [
        "ad76cbc63b9db7c98da49af3182a783ca1c80a5d"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Oct 12 00:15:17 2008 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Oct 23 05:13:15 2008 -0400"
      },
      "message": "[PATCH] get rid of on-stack dentry in udf\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "ad76cbc63b9db7c98da49af3182a783ca1c80a5d",
      "tree": "221d8d42842e693e5512764ff03a3b98f49cdfd7",
      "parents": [
        "6de24f0ed08054b2a202902e4d63beff27654db8"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Thu Aug 28 06:26:23 2008 +0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Oct 23 05:13:14 2008 -0400"
      },
      "message": "[PATCH 2/2] anondev: switch to IDA\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\n"
    },
    {
      "commit": "6de24f0ed08054b2a202902e4d63beff27654db8",
      "tree": "91f378a0335b5b9756020d37e1c54bba4a2d6434",
      "parents": [
        "8966c5e0fc867f5a7da5756b4cd1b8bbbed3d5dd"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Thu Aug 28 06:25:49 2008 +0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Oct 23 05:13:13 2008 -0400"
      },
      "message": "[PATCH 1/2] anondev: init IDR statically\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\n"
    },
    {
      "commit": "8966c5e0fc867f5a7da5756b4cd1b8bbbed3d5dd",
      "tree": "2134d6ee7bfcb64e79eb026dff07c0fab7d0567e",
      "parents": [
        "c002a6c7977320f95b5edede5ce4e0eeecf291ff"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Mon Aug 18 15:36:47 2008 +0100"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Oct 23 05:13:12 2008 -0400"
      },
      "message": "[JFFS2] Use d_splice_alias() not d_add() in jffs2_lookup()\n\nNow that JFFS2 can be exported by NFS, we need to get this right.\n\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "c002a6c7977320f95b5edede5ce4e0eeecf291ff",
      "tree": "9646d953e813251de9bd991ed877f1f1f46af7c4",
      "parents": [
        "53c9c5c0e32c69f9df1822e47671c13e3402c82f"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Sun Aug 17 17:21:18 2008 +0100"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Oct 23 05:13:11 2008 -0400"
      },
      "message": "[PATCH] Optimise NFS readdir hack slightly.\n\nAvoid calling the underlying -\u003ereaddir() again when we reached the end\nalready; keep going round the loop only if we stopped due to our own\nbuffer being full.\n\n[AV: tidy the things up a bit, while we are there]\n\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "53c9c5c0e32c69f9df1822e47671c13e3402c82f",
      "tree": "76aae2cfde109c97451d40b5c6e5063e22690a03",
      "parents": [
        "a9885444f7ff6e9156adb1adf5558ded9a39ad0a"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Aug 24 07:29:52 2008 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Oct 23 05:13:10 2008 -0400"
      },
      "message": "[PATCH] prepare vfs_readdir() callers to returning filldir result\n\nIt\u0027s not the final state, but it allows moving -\u003ereaddir() instances\nto passing filldir return value to caller of vfs_readdir().\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "a9885444f7ff6e9156adb1adf5558ded9a39ad0a",
      "tree": "0f52bb872aface2a022f7cdb7aea5cd33ab10509",
      "parents": [
        "734711abac46c8fee4d70cc9876ebc6d9edb4971"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Aug 24 07:28:39 2008 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Oct 23 05:13:09 2008 -0400"
      },
      "message": "[PATCH] get rid of on-stack dentry in ext2_get_parent()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "734711abac46c8fee4d70cc9876ebc6d9edb4971",
      "tree": "8e93a3530b9bc6142316441b2e6e396cadb00f2f",
      "parents": [
        "5f556aab907a358c7837cc9a83c3aea4e69cff5b"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Aug 24 07:26:48 2008 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Oct 23 05:13:08 2008 -0400"
      },
      "message": "[PATCH] get rid of on-stack fake dentry in ext3_get_parent()\n\nBetter pass parent and qstr to ext3_find_entry() explicitly than\nuse such kludges, especially since the stack footprint is nasty\nenough and we have every chance to be deep in call chain.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "5f556aab907a358c7837cc9a83c3aea4e69cff5b",
      "tree": "75637c75845ac700fe834f8ecb4f540e007ae63e",
      "parents": [
        "d88f1833fcbb5663c86253039966f880f8f46b1a"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Thu Jul 31 20:39:25 2008 +0100"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Oct 23 05:13:07 2008 -0400"
      },
      "message": "[JFFS2] Reinstate NFS exportability\n\nNow that the readdir/lookup deadlock issues have been dealt with, we can\nexport JFFS2 file systems again.\n\n(For now, you have to specify fsid manually; we should add a method to\nthe export_ops to handle that too.)\n\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "d88f1833fcbb5663c86253039966f880f8f46b1a",
      "tree": "c21458082d33ed4557f81f9b399d20e1c9b270e4",
      "parents": [
        "14f7dd632011bb89c035722edd6ea0d90ca6b078"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Thu Jul 31 20:38:04 2008 +0100"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Oct 23 05:13:06 2008 -0400"
      },
      "message": "[PATCH] Remove XFS buffered readdir hack\n\nNow that we\u0027ve moved the readdir hack to the nfsd code, we can\nremove the local version from the XFS code.\n\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "14f7dd632011bb89c035722edd6ea0d90ca6b078",
      "tree": "d49a5fca0245eac9bd947aa200985d33267dfb19",
      "parents": [
        "2628b766363aa3791e816a7e5807373ef551c776"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Thu Jul 31 20:29:12 2008 +0100"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Oct 23 05:13:05 2008 -0400"
      },
      "message": "[PATCH] Copy XFS readdir hack into nfsd code.\n\nSome file systems with their own internal locking have problems with the\nway that nfsd calls the -\u003elookup() method from within a filldir function\ncalled from their -\u003ereaddir() method. The recursion back into the file\nsystem code can cause deadlock.\n\nXFS has a fairly hackish solution to this which involves doing the\nreaddir() into a locally-allocated buffer, then going back through it\ncalling the filldir function afterwards. It\u0027s not ideal, but it works.\n\nIt\u0027s particularly suboptimal because XFS does this for local file\nsystems too, where it\u0027s completely unnecessary.\n\nCopy this hack into the NFS code where it can be used only for NFS\nexport. In response to feedback, use it unconditionally rather than only\nfor the affected file systems.\n\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "2628b766363aa3791e816a7e5807373ef551c776",
      "tree": "aa8006667673484d5f784a083bdbc8f40894357f",
      "parents": [
        "f3f8e17571934ea253339e15c4ec9b34ea623c6b"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Thu Jul 31 17:16:51 2008 +0100"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Oct 23 05:13:04 2008 -0400"
      },
      "message": "[PATCH] Factor out nfsd_do_readdir() into its own function\n\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "f3f8e17571934ea253339e15c4ec9b34ea623c6b",
      "tree": "ad3375ace9781dd3912a7b3258a8cbf0b31837d1",
      "parents": [
        "9308a6128d9074e348d9f9b5822546fe12a794a9"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Aug 11 12:39:47 2008 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Oct 23 05:13:03 2008 -0400"
      },
      "message": "[PATCH] reduce the stack footprint of exportfs_decode_fh()\n\nno need to have _two_ 256-byte arrays on stack...\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "9308a6128d9074e348d9f9b5822546fe12a794a9",
      "tree": "3b67f8b6381162b9ff0800eee8722081ef9ed039",
      "parents": [
        "440037287c5ebb07033ab927ca16bb68c291d309"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Mon Aug 11 15:49:12 2008 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Oct 23 05:13:02 2008 -0400"
      },
      "message": "[PATCH] kill d_alloc_anon\n\nRemove d_alloc_anon now that no users are left.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "440037287c5ebb07033ab927ca16bb68c291d309",
      "tree": "c4be3843ea87a777c2647f471895917005d8068f",
      "parents": [
        "4ea3ada2955e4519befa98ff55dd62d6dfbd1705"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Mon Aug 11 15:49:04 2008 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Oct 23 05:13:01 2008 -0400"
      },
      "message": "[PATCH] switch all filesystems over to d_obtain_alias\n\nSwitch all users of d_alloc_anon to d_obtain_alias.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "4ea3ada2955e4519befa98ff55dd62d6dfbd1705",
      "tree": "b473278d0df8d869d183fbc0e4a1a07585de240a",
      "parents": [
        "3a8cff4f026c0b98bee6291eb28d4df42feb76dc"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Mon Aug 11 15:48:57 2008 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Oct 23 05:13:00 2008 -0400"
      },
      "message": "[PATCH] new helper: d_obtain_alias\n\nThe calling conventions of d_alloc_anon are rather unfortunate for all\nusers, and it\u0027s name is not very descriptive either.\n\nAdd d_obtain_alias as a new exported helper that drops the inode\nreference in the failure case, too and allows to pass-through NULL\npointers and inodes to allow for tail-calls in the export operations.\n\nIncidentally this helper already existed as a private function in\nlibfs.c as exportfs_d_alloc so kill that one and switch the callers\nto d_obtain_alias.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "3a8cff4f026c0b98bee6291eb28d4df42feb76dc",
      "tree": "809078b0768e3b30b4e7ccbbd2eca7fd72f70158",
      "parents": [
        "a518ab9329041411526ab8e05edfda7e2715244f"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Mon Aug 11 15:37:17 2008 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Oct 23 05:12:59 2008 -0400"
      },
      "message": "[PATCH] generic_file_llseek tidyups\n\nAdd kerneldoc for generic_file_llseek and generic_file_llseek_unlocked,\nuse sane variable names and unclutter the code.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "a518ab9329041411526ab8e05edfda7e2715244f",
      "tree": "b615e9ad591b4b7f0ee75ce25e26e1718066192b",
      "parents": [
        "ca30bc99527ab968707bafc09e38807de7e70c4a"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Mon Aug 11 15:34:22 2008 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Oct 23 05:12:59 2008 -0400"
      },
      "message": "[PATCH] tidy up chrdev_open\n\nUse a single goto label for chrdev_put + return error cases.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "ca30bc99527ab968707bafc09e38807de7e70c4a",
      "tree": "3d4ea649fb23c0a8e9075855e90f4824042ca305",
      "parents": [
        "72e8264eda02b6ba85a222b9620802ebf23c6a10"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Mon Aug 11 00:27:59 2008 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Oct 23 05:12:58 2008 -0400"
      },
      "message": "[PATCH] hpfs: cleanup -\u003esetattr\n\nReformat hpfs_notify_change to standard kernel style to make it readable\nand rename it to hpfs_setattr as that\u0027s what the method is called.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "3516586a424ea5727be089da6541cbd5644f0497",
      "tree": "cb55c6262e066c393917735021aa2bd801f6dd16",
      "parents": [
        "2c552d81363e0dac66d478046cc8a3948a67eae9"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Aug 05 03:00:49 2008 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Oct 23 05:12:56 2008 -0400"
      },
      "message": "[PATCH] make O_EXCL in nd-\u003eintent.flags visible in nd-\u003eflags\n\nNew flag: LOOKUP_EXCL.  Set before doing the final step of pathname\nresolution on the paths that have LOOKUP_CREATE and O_EXCL.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "8737f3a1b3c6a38a2a064552d4536633a5a16cd3",
      "tree": "75472b9782791ac878750e8f4c91a374e8e9816d",
      "parents": [
        "98bc993f99e51467057ef699e47fec020f24d233"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Aug 02 22:36:57 2008 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Oct 23 05:12:54 2008 -0400"
      },
      "message": "[PATCH] get rid of path_lookup_create()\n\n... and don\u0027t pass bogus flags when we are just looking for parent.\nFold __path_lookup_intent_open() into path_lookup_open() while we\nare at it; that\u0027s the only remaining caller.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "421748ecde8e69a6364e5ae66eb3bf87e1f995c0",
      "tree": "50ef878f8c46b1ec729625ed678d04aaeaaee6dd",
      "parents": [
        "a63bb99660d82dfe7c51588e1f9aadefb756ba51"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Aug 02 01:04:36 2008 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Oct 23 05:12:52 2008 -0400"
      },
      "message": "[PATCH] assorted path_lookup() -\u003e kern_path() conversions\n\nmore nameidata eviction\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "a63bb99660d82dfe7c51588e1f9aadefb756ba51",
      "tree": "25417bd44a2646ecc2d314450afb13be9550d339",
      "parents": [
        "c1a2a4756df01d72b6f7a0563218b23b63a6d4ed"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Aug 02 01:03:36 2008 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Oct 23 05:12:51 2008 -0400"
      },
      "message": "[PATCH] switch nfsd to kern_path()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "c1a2a4756df01d72b6f7a0563218b23b63a6d4ed",
      "tree": "60c7fe045378d07aa50baf5e2fe100b3d364d1dc",
      "parents": [
        "8264613def2e5c4f12bc3167713090fd172e6055"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Aug 02 01:01:02 2008 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Oct 23 05:12:50 2008 -0400"
      },
      "message": "[PATCH] sanitize svc_export_parse()\n\nclean up the exit paths, get rid of nameidata\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "8264613def2e5c4f12bc3167713090fd172e6055",
      "tree": "00a8655bce02f97acf559580bdd9ba65919af2bf",
      "parents": [
        "0a0d8a46757e2063433c8cd52b7d654e02b4682b"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Aug 02 00:57:06 2008 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Oct 23 05:12:44 2008 -0400"
      },
      "message": "[PATCH] switch quota_on-related stuff to kern_path()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "0a0d8a46757e2063433c8cd52b7d654e02b4682b",
      "tree": "a163e6b4450aee50f1b5b3b0cba925adb4e207c6",
      "parents": [
        "2d92ab3c6279f8423b20cf91574d0ad6696d2b44"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Aug 02 00:55:27 2008 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Oct 23 03:34:22 2008 -0400"
      },
      "message": "[PATCH] no need for noinline stuff in fs/namespace.c anymore\n\nStack footprint from hell had been due to many struct nameidata in there.\nNo more.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "2d92ab3c6279f8423b20cf91574d0ad6696d2b44",
      "tree": "eb631d16596a0ac45ed09f33f03091b17786d0b3",
      "parents": [
        "d181146572c4fa9af2a068b967cb53dcac7da944"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Aug 02 00:51:11 2008 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Oct 23 03:34:20 2008 -0400"
      },
      "message": "[PATCH] finally get rid of nameidata in namespace.c\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "d181146572c4fa9af2a068b967cb53dcac7da944",
      "tree": "35919e1675740059cf9336c7dbff0ef35032351c",
      "parents": [
        "2515ddc6db8eb49a79f0fe5e67ff09ac7c81eab4"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Aug 02 00:49:18 2008 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Oct 23 03:34:19 2008 -0400"
      },
      "message": "[PATCH] new helper - kern_path()\n\nAnalog of lookup_path(), takes struct path *.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "b1c8d2b421376bc941823ee93e36cb491609b02c",
      "tree": "40908334b5a289ef7e6337d14d29104cc2bd79e2",
      "parents": [
        "8d281efb67463fe8aac8f6e10b31492fc218bf2b"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Wed Oct 22 13:57:07 2008 -0400"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Thu Oct 23 05:06:20 2008 +0000"
      },
      "message": "cifs: handle the TCP_Server_Info-\u003etsk field more carefully\n\ncifs: handle the TCP_Server_Info-\u003etsk field more carefully\n\nWe currently handle the TCP_Server_Info-\u003etsk field without any locking,\nbut with some half-measures to try and prevent races. These aren\u0027t\nreally sufficient though. When taking down cifsd, use xchg() to swap\nthe contents of the tsk field with NULL so we don\u0027t end up trying\nto send it more than one signal. Also, don\u0027t allow cifsd to exit until\nthe signal is received if we expect one.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "8d281efb67463fe8aac8f6e10b31492fc218bf2b",
      "tree": "72b5642a48725656f2d1edac506ab5d2152de648",
      "parents": [
        "84210e9120a8c01a14379ba1f9a9b0f963641d94"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Wed Oct 22 13:57:01 2008 -0400"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Thu Oct 23 04:50:17 2008 +0000"
      },
      "message": "cifs: fix unlinking of rename target when server doesn\u0027t support open file renames\n\ncifs: fix unlinking of rename target when server doesn\u0027t support open file renames\n\nThe patch to make cifs_rename undoable broke renaming one file on top of\nanother when the server doesn\u0027t support busy file renames. Remove the\ncode that uses busy file renames to unlink the target file, and just\nhave it call cifs_unlink. If the rename of the source file fails, then\nthe unlink won\u0027t be undoable, but hopefully that\u0027s rare enough that it\nwon\u0027t be a problem.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "84210e9120a8c01a14379ba1f9a9b0f963641d94",
      "tree": "ed20b210bb554f283d8458ee6d146a5c4439e37f",
      "parents": [
        "a364bc0b37f14ffd66c1f982af42990a9d77fa43"
      ],
      "author": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Thu Oct 23 04:42:37 2008 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Thu Oct 23 04:42:37 2008 +0000"
      },
      "message": "[CIFS] improve setlease handling\n\nfcntl(F_SETLEASE) currently is not exported by cifs (nor by local file\nsystems) so cifs grants leases based on how other local processes have\nopened the file not by whether the file is cacheable (oplocked).  This\nadds the check to make sure that the file is cacheable on the client\nbefore checking whether we can grant the lease locally\n(generic_setlease).  It also adds a mount option for cifs (locallease)\nif the user wants to override this and try to grant leases even\nif the server did not grant oplock.\n\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "ea2e7996fc892e9becfed9145fdcefd59f697718",
      "tree": "2d9d8cfdf663cf367acaf63e6a8151bd6f0de0cc",
      "parents": [
        "0b15a3a5285bac2a2caa4ef970410674b6dd2de5"
      ],
      "author": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Wed Oct 22 18:48:45 2008 -0500"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@opteron.(none)",
        "time": "Wed Oct 22 18:48:45 2008 -0500"
      },
      "message": "9p: fix format warning\n\nThis patch fixes a format warning which appears on 64-bit builds.\n\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n\n\n"
    },
    {
      "commit": "30bc4dfd3b64eb1fbefe2c63e30d8fc129273e20",
      "tree": "84e7f997d96aa51c89b166cd0d209c9015f6083d",
      "parents": [
        "6dfcde98a299196f13dd66417663a819f0ac4156"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Mon Oct 20 16:34:21 2008 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Wed Oct 22 14:05:30 2008 -0400"
      },
      "message": "nfsd: clean up expkey_parse error cases\n\nWe might as well do all of these at the end.  Fix up a couple minor\nstyle nits while we\u0027re there.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    }
  ],
  "next": "6dfcde98a299196f13dd66417663a819f0ac4156"
}
