)]}'
{
  "log": [
    {
      "commit": "5136a6c0fd5b26bbf39ad761cf7a4fc563ad83a3",
      "tree": "7c905238cb2c5c9cd959cd652010b0eaf5f91db3",
      "parents": [
        "e505a8d5f96a84f3043ce0c4eaee8f045996896c",
        "bc8cec0dff072f1a45ce7f6b2c5234bb3411ac51"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Sep 05 14:57:04 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Sep 05 14:57:04 2009 -0700"
      },
      "message": "Merge git://git.infradead.org/~dwmw2/mtd-2.6.31\n\n* git://git.infradead.org/~dwmw2/mtd-2.6.31:\n  JFFS2: add missing verify buffer allocation/deallocation\n  mtd: nftl: fix offset alignments\n  mtd: nftl: write support is broken\n  mtd: m25p80: fix null pointer dereference bug\n"
    },
    {
      "commit": "0edfa2b1b5a5e1475e76dd3c792447687d966de4",
      "tree": "a811a6955bb0fffc883e59eb261206b132e9e6dc",
      "parents": [
        "5a09adf13067609d8ab9fcae11dc99fd0084e35c",
        "3725867dccfb83e4b0cff64e916a04258f300591"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Sep 05 14:25:14 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Sep 05 14:25:14 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://oss.sgi.com/xfs/xfs\n\n* \u0027for-linus\u0027 of git://oss.sgi.com/xfs/xfs:\n  xfs: actually enable the swapext compat handler\n"
    },
    {
      "commit": "5a09adf13067609d8ab9fcae11dc99fd0084e35c",
      "tree": "be2908bf2a8a20e9bebb4a064611ca5c2e2977f9",
      "parents": [
        "931f70350e9c298887c78e852d179ef7efcce304",
        "b1f1b8ce0a1d71cbc72f7540134d52b79bd8f5ac"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Sep 05 14:24:33 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Sep 05 14:24:33 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ryusuke/nilfs2\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ryusuke/nilfs2:\n  nilfs2: fix preempt count underflow in nilfs_btnode_prepare_change_key\n"
    },
    {
      "commit": "9de6886ec6e37f45807266a702bb7621498395ad",
      "tree": "39402a2d467a856d0f956015a7ad0772719bf1b6",
      "parents": [
        "ac7ac9f2b9bfd9b68a1571d27e4c8bebb4788914"
      ],
      "author": {
        "name": "Nicolas Pitre",
        "email": "nico@cam.org",
        "time": "Sat Sep 05 00:25:37 2009 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Sep 05 13:41:08 2009 -0700"
      },
      "message": "ext2: fix unbalanced kmap()/kunmap()\n\nIn ext2_rename(), dir_page is acquired through ext2_dotdot().  It is\nthen released through ext2_set_link() but only if old_dir !\u003d new_dir.\nFailing that, the pkmap reference count is never decremented and the\npage remains pinned forever.  Repeat that a couple times with highmem\npages and all pkmap slots get exhausted, and every further kmap() calls\nend up stalling on the pkmap_map_wait queue at which point the whole\nsystem comes to a halt.\n\nSigned-off-by: Nicolas Pitre \u003cnico@marvell.com\u003e\nAcked-by: Theodore Ts\u0027o \u003ctytso@mit.edu\u003e\nCc: stable@kernel.org\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ac7ac9f2b9bfd9b68a1571d27e4c8bebb4788914",
      "tree": "02aa160e02f7f1f4a65a7f478e9a92c0b7ad0088",
      "parents": [
        "ac89a9174decf343de049a06fad75681f71890eb",
        "8379e7c46cc48f51197dd663fc6676f47f2a1e71"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Sep 05 13:38:37 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Sep 05 13:38:37 2009 -0700"
      },
      "message": "Merge branch \u0027upstream-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jlbec/ocfs2\n\n* \u0027upstream-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jlbec/ocfs2:\n  ocfs2: ocfs2_write_begin_nolock() should handle len\u003d0\n  ocfs2: invalidate dentry if its dentry_lock isn\u0027t initialized.\n"
    },
    {
      "commit": "a2a8474c3fff88d8dd52d05cb450563fb26fd26c",
      "tree": "455415da039a77627f47ed19318bb9c8aa17de4d",
      "parents": [
        "dd5d241ea955006122d76af88af87de73fec25b4"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Sat Sep 05 11:17:13 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Sep 05 11:30:42 2009 -0700"
      },
      "message": "exec: do not sleep in TASK_TRACED under -\u003ecred_guard_mutex\n\nTom Horsley reports that his debugger hangs when it tries to read\n/proc/pid_of_tracee/maps, this happens since\n\n\t\"mm_for_maps: take -\u003ecred_guard_mutex to fix the race with exec\"\n\t04b836cbf19e885f8366bccb2e4b0474346c02d\n\ncommit in 2.6.31.\n\nBut the root of the problem lies in the fact that do_execve() path calls\ntracehook_report_exec() which can stop if the tracer sets PT_TRACE_EXEC.\n\nThe tracee must not sleep in TASK_TRACED holding this mutex.  Even if we\nremove -\u003ecred_guard_mutex from mm_for_maps() and proc_pid_attr_write(),\nanother task doing PTRACE_ATTACH should not hang until it is killed or the\ntracee resumes.\n\nWith this patch do_execve() does not use -\u003ecred_guard_mutex directly and\nwe do not hold it throughout, instead:\n\n\t- introduce prepare_bprm_creds() helper, it locks the mutex\n\t  and calls prepare_exec_creds() to initialize bprm-\u003ecred.\n\n\t- install_exec_creds() drops the mutex after commit_creds(),\n\t  and thus before tracehook_report_exec()-\u003eptrace_stop().\n\n\t  or, if exec fails,\n\n\t  free_bprm() drops this mutex when bprm-\u003ecred !\u003d NULL which\n\t  indicates install_exec_creds() was not called.\n\nReported-by: Tom Horsley \u003ctom.horsley@att.net\u003e\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nAcked-by: David Howells \u003cdhowells@redhat.com\u003e\nCc: Roland McGrath \u003croland@redhat.com\u003e\nCc: James Morris \u003cjmorris@namei.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8379e7c46cc48f51197dd663fc6676f47f2a1e71",
      "tree": "ee6ae04dd7014bfe311ea0f48a0aea734a96c2ed",
      "parents": [
        "a1b08e75dff3dc18a88444803753e667bb1d126e"
      ],
      "author": {
        "name": "Sunil Mushran",
        "email": "sunil.mushran@oracle.com",
        "time": "Fri Sep 04 11:12:01 2009 -0700"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Fri Sep 04 14:28:31 2009 -0700"
      },
      "message": "ocfs2: ocfs2_write_begin_nolock() should handle len\u003d0\n\nBug introduced by mainline commit e7432675f8ca868a4af365759a8d4c3779a3d922\nThe bug causes ocfs2_write_begin_nolock() to oops when len\u003d0.\n\nSigned-off-by: Sunil Mushran \u003csunil.mushran@oracle.com\u003e\nCc: stable@kernel.org\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "bc8cec0dff072f1a45ce7f6b2c5234bb3411ac51",
      "tree": "c0794baebf16ecbbedbe79daaba80281fdad1e03",
      "parents": [
        "16f05c2b68520f94e365f9d347a7076f4ff00ad5"
      ],
      "author": {
        "name": "Massimo Cirillo",
        "email": "maxcir@gmail.com",
        "time": "Thu Aug 27 10:44:09 2009 +0200"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Thu Sep 03 15:01:34 2009 +0100"
      },
      "message": "JFFS2: add missing verify buffer allocation/deallocation\n\nThe function jffs2_nor_wbuf_flash_setup() doesn\u0027t allocate the verify buffer\nif CONFIG_JFFS2_FS_WBUF_VERIFY is defined, so causing a kernel panic when\nthat macro is enabled and the verify function is called. Similarly the\njffs2_nor_wbuf_flash_cleanup() must free the buffer if\nCONFIG_JFFS2_FS_WBUF_VERIFY is enabled.\nThe following patch fixes the problem.\nThe following patch applies to 2.6.30 kernel.\n\nSigned-off-by: Massimo Cirillo \u003cmaxcir@gmail.com\u003e\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\nCc: stable@kernel.org\n"
    },
    {
      "commit": "3725867dccfb83e4b0cff64e916a04258f300591",
      "tree": "5c7f888895bf63994a85a02658f1a3433b2dccae",
      "parents": [
        "bc990f5cb424cdca9dda866785d088e2c2110ecc"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Tue Sep 01 14:03:08 2009 -0400"
      },
      "committer": {
        "name": "Felix Blyakher",
        "email": "felixb@sgi.com",
        "time": "Tue Sep 01 17:00:46 2009 -0500"
      },
      "message": "xfs: actually enable the swapext compat handler\n\nFix a small typo in the compat ioctl handler that cause the swapext\ncompat handler to never be called.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Torsten Kaiser \u003cjust.for.lkml@googlemail.com\u003e\nTested-by: Torsten Kaiser \u003cjust.for.lkml@googlemail.com\u003e\nReviewed-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\nReviewed-by: Felix Blyakher \u003cfelixb@sgi.com\u003e\nSigned-off-by: Felix Blyakher \u003cfelixb@sgi.com\u003e\n"
    },
    {
      "commit": "37d0892c5a94e208cf863e3b7bac014edee4346d",
      "tree": "642ecefb31c58451dc70964963b05412c269e831",
      "parents": [
        "cda9856f1ca62484433b9f734cd0fd553a5e4850"
      ],
      "author": {
        "name": "Ian Kent",
        "email": "raven@themaw.net",
        "time": "Tue Sep 01 11:26:22 2009 +0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 31 17:44:05 2009 -1000"
      },
      "message": "autofs4 - fix missed case when changing to use struct path\n\nIn the recent change by Al Viro that changes verious subsystems\nto use \"struct path\" one case was missed in the autofs4 module\nwhich causes mounts to no longer expire.\n\nSigned-off-by: Ian Kent \u003craven@themaw.net\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b1f1b8ce0a1d71cbc72f7540134d52b79bd8f5ac",
      "tree": "34261c597d93a43d9adf299e657b4fd5eebd43b7",
      "parents": [
        "326ba5010a5429a5a528b268b36a5900d4ab0eba"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Sun Aug 30 04:21:41 2009 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon Aug 31 12:03:06 2009 +0900"
      },
      "message": "nilfs2: fix preempt count underflow in nilfs_btnode_prepare_change_key\n\nThis will fix the following preempt count underflow reported from\nusers with the title \"[NILFS users] segctord problem\" (Message-ID:\n\u003c949415.6494.qm@web58808.mail.re1.yahoo.com\u003e and Message-ID:\n\u003cdebc30fc0908270825v747c1734xa59126623cfd5b05@mail.gmail.com\u003e):\n\n WARNING: at kernel/sched.c:4890 sub_preempt_count+0x95/0xa0()\n Hardware name: HP Compaq 6530b (KR980UT#ABC)\n Modules linked in: bridge stp llc bnep rfcomm l2cap xfs exportfs nilfs2 cowloop loop vboxnetadp vboxnetflt vboxdrv btusb bluetooth uvcvideo videodev v4l1_compat v4l2_compat_ioctl32 arc4 snd_hda_codec_analog ecb iwlagn iwlcore rfkill lib80211 mac80211 snd_hda_intel snd_hda_codec ehci_hcd uhci_hcd usbcore snd_hwdep snd_pcm tg3 cfg80211 psmouse snd_timer joydev libphy ohci1394 snd_page_alloc hp_accel lis3lv02d ieee1394 led_class i915 drm i2c_algo_bit video backlight output i2c_core dm_crypt dm_mod\n Pid: 4197, comm: segctord Not tainted 2.6.30-gentoo-r4-64 #7\n Call Trace:\n  [\u003cffffffff8023fa05\u003e] ? sub_preempt_count+0x95/0xa0\n  [\u003cffffffff802470f8\u003e] warn_slowpath_common+0x78/0xd0\n  [\u003cffffffff8024715f\u003e] warn_slowpath_null+0xf/0x20\n  [\u003cffffffff8023fa05\u003e] sub_preempt_count+0x95/0xa0\n  [\u003cffffffffa04ce4db\u003e] nilfs_btnode_prepare_change_key+0x11b/0x190 [nilfs2]\n  [\u003cffffffffa04d01ad\u003e] nilfs_btree_assign_p+0x19d/0x1e0 [nilfs2]\n  [\u003cffffffffa04d10ad\u003e] nilfs_btree_assign+0xbd/0x130 [nilfs2]\n  [\u003cffffffffa04cead7\u003e] nilfs_bmap_assign+0x47/0x70 [nilfs2]\n  [\u003cffffffffa04d9bc6\u003e] nilfs_segctor_do_construct+0x956/0x20f0 [nilfs2]\n  [\u003cffffffff805ac8e2\u003e] ? _spin_unlock_irqrestore+0x12/0x40\n  [\u003cffffffff803c06e0\u003e] ? __up_write+0xe0/0x150\n  [\u003cffffffff80262959\u003e] ? up_write+0x9/0x10\n  [\u003cffffffffa04ce9f3\u003e] ? nilfs_bmap_test_and_clear_dirty+0x43/0x60 [nilfs2]\n  [\u003cffffffffa04cd627\u003e] ? nilfs_mdt_fetch_dirty+0x27/0x60 [nilfs2]\n  [\u003cffffffffa04db5fc\u003e] nilfs_segctor_construct+0x8c/0xd0 [nilfs2]\n  [\u003cffffffffa04dc3dc\u003e] nilfs_segctor_thread+0x15c/0x3a0 [nilfs2]\n  [\u003cffffffffa04dbe20\u003e] ? nilfs_construction_timeout+0x0/0x10 [nilfs2]\n  [\u003cffffffff80252633\u003e] ? add_timer+0x13/0x20\n  [\u003cffffffff802370da\u003e] ? __wake_up_common+0x5a/0x90\n  [\u003cffffffff8025e960\u003e] ? autoremove_wake_function+0x0/0x40\n  [\u003cffffffffa04dc280\u003e] ? nilfs_segctor_thread+0x0/0x3a0 [nilfs2]\n  [\u003cffffffffa04dc280\u003e] ? nilfs_segctor_thread+0x0/0x3a0 [nilfs2]\n  [\u003cffffffff8025e556\u003e] kthread+0x56/0x90\n  [\u003cffffffff8020cdea\u003e] child_rip+0xa/0x20\n  [\u003cffffffff8025e500\u003e] ? kthread+0x0/0x90\n  [\u003cffffffff8020cde0\u003e] ? child_rip+0x0/0x20\n\nThis problem was caused due to a missing radix_tree_preload() call in\nthe retry path of nilfs_btnode_prepare_change_key() function.\n\nReported-by: Eric A \u003ceric225125@yahoo.com\u003e\nReported-by: Jerome Poulin \u003cjeromepoulin@gmail.com\u003e\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\nTested-by: Jerome Poulin \u003cjeromepoulin@gmail.com\u003e\nCc: stable@kernel.org\n"
    },
    {
      "commit": "750a8870fe4016ef3091fc97e084d58c613c2cc7",
      "tree": "7a33b8edb176465959abe9bd67a21a4498d93b6a",
      "parents": [
        "83cb10f0ef3c96162be92339ccf8c0c9c9f2d13e"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Fri Aug 28 12:50:47 2009 -0400"
      },
      "committer": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Fri Aug 28 12:51:14 2009 -0400"
      },
      "message": "inotify: update the group mask on mark addition\n\nSeperating the addition and update of marks in inotify resulted in a\nregression in that inotify never gets events.  The inotify group mask is\nalways 0.  This mask should be updated any time a new mark is added.\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\n"
    },
    {
      "commit": "83cb10f0ef3c96162be92339ccf8c0c9c9f2d13e",
      "tree": "e83f71fde279bc4ed80db945b55603f653aa08e1",
      "parents": [
        "b962e7312ae87006aed6f68ceee94bdf8db08338"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Fri Aug 28 11:57:55 2009 -0400"
      },
      "committer": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Fri Aug 28 11:57:55 2009 -0400"
      },
      "message": "inotify: fix length reporting and size checking\n\n0db501bd0610ee0c0 introduced a regresion in that it now sends a nul\nterminator but the length accounting when checking for space or\nreporting to userspace did not take this into account.  This corrects\nall of the rounding logic.\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\n"
    },
    {
      "commit": "b962e7312ae87006aed6f68ceee94bdf8db08338",
      "tree": "5d74244d31f510d346afbe80fea3285ccb8504d8",
      "parents": [
        "326ba5010a5429a5a528b268b36a5900d4ab0eba"
      ],
      "author": {
        "name": "Brian Rogers",
        "email": "brian@xyzw.org",
        "time": "Fri Aug 28 10:00:05 2009 -0400"
      },
      "committer": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Fri Aug 28 10:03:06 2009 -0400"
      },
      "message": "inotify: do not send a block of zeros when no pathname is available\n\nWhen an event has no pathname, there\u0027s no need to pad it with a null byte and\ntherefore generate an inotify_event sized block of zeros. This fixes a\nregression introduced by commit 0db501bd0610ee0c0aca84d927f90bcccd09e2bd where\nmy system wouldn\u0027t finish booting because some process was being confused by\nthis.\n\nSigned-off-by: Brian Rogers \u003cbrian@xyzw.org\u003e\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\n"
    },
    {
      "commit": "a1b08e75dff3dc18a88444803753e667bb1d126e",
      "tree": "b782aaa5e2775c693bb711647e9e2b2331003fb4",
      "parents": [
        "c795b33ba171e41563ab7e25105c0cd4edd81cd7"
      ],
      "author": {
        "name": "Tao Ma",
        "email": "tao.ma@oracle.com",
        "time": "Thu Aug 27 14:46:56 2009 +0800"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Thu Aug 27 18:10:54 2009 -0700"
      },
      "message": "ocfs2: invalidate dentry if its dentry_lock isn\u0027t initialized.\n\nIn commit a5a0a630922a2f6a774b6dac19f70cb5abd86bb0, when\nocfs2_attch_dentry_lock fails, we call an extra iput and reset\ndentry-\u003ed_fsdata to NULL. This resolve a bug, but it isn\u0027t\ncompleted and the dentry is still there. When we want to use\nit again, ocfs2_dentry_revalidate doesn\u0027t catch it and return\ntrue. That make future ocfs2_dentry_lock panic out.\nOne bug is http://oss.oracle.com/bugzilla/show_bug.cgi?id\u003d1162.\n\nThe resolution is to add a check for dentry-\u003ed_fsdata in\nrevalidate process and return false if dentry-\u003ed_fsdata is NULL,\nso that a new ocfs2_lookup will be called again.\n\nSigned-off-by: Tao Ma \u003ctao.ma@oracle.com\u003e\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "9c504cadc443a3d002fa581ec5109c0ef02d7b14",
      "tree": "0b44c60843062e5ee8d91a636dab67ada5286156",
      "parents": [
        "4f8ee2c9cc0e885d2bb50ef26db66150ab25213e",
        "0db501bd0610ee0c0aca84d927f90bcccd09e2bd"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Aug 27 12:26:02 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Aug 27 12:26:02 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.infradead.org/users/eparis/notify\n\n* \u0027for-linus\u0027 of git://git.infradead.org/users/eparis/notify:\n  inotify: Ensure we alwasy write the terminating NULL.\n  inotify: fix locking around inotify watching in the idr\n  inotify: do not BUG on idr entries at inotify destruction\n  inotify: seperate new watch creation updating existing watches\n"
    },
    {
      "commit": "cf481442f2e086316ed8a1b3046f00ad23632ac4",
      "tree": "2edd0fb64549dfb6388e39d86e8965908dfcb925",
      "parents": [
        "788d908f2879a17e5f80924f3da2e23f1034482d",
        "7815f4be4026b6c5027058102ae67a4b9feffa5f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Aug 27 12:24:08 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Aug 27 12:24:08 2009 -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: update documentation pointers\n  9p: remove unnecessary v9fses-\u003eoptions which duplicates the mount string\n  net/9p: insulate the client against an invalid error code sent by a 9p server\n  9p: Add missing cast for the error return value in v9fs_get_inode\n  9p: Remove redundant inode uid/gid assignment\n  9p: Fix possible regressions when -\u003eget_sb fails.\n  9p: Fix v9fs show_options\n  9p: Fix possible memleak in v9fs_inode_from fid.\n  9p: minor comment fixes\n  9p: Fix possible inode leak in v9fs_get_inode.\n  9p: Check for error in return value of v9fs_fid_add\n"
    },
    {
      "commit": "9886e836a6a5dbd273dc55b17e713f0a188d137f",
      "tree": "87f8e3d719ae43d5d5d5911d70d6c7b3aa66be32",
      "parents": [
        "1e23502cc57cef33455ac7cb9111e3c6d991a894"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Thu Aug 27 13:09:06 2009 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Aug 27 12:22:08 2009 -0700"
      },
      "message": "AFS: Stop readlink() on AFS crashing due to NULL \u0027file\u0027 ptr\n\nkAFS crashes when asked to read a symbolic link because page_getlink()\npasses a NULL file pointer to read_mapping_page(), but afs_readpage()\nexpects a file pointer from which to extract a key.\n\nModify afs_readpage() to request the appropriate key from the calling\nprocess\u0027s keyrings if a file struct is not supplied with one attached.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nAcked-by: Anton Blanchard \u003canton@samba.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0db501bd0610ee0c0aca84d927f90bcccd09e2bd",
      "tree": "108756b2460edff75bb7bc6c778e1a2c0ff50167",
      "parents": [
        "dead537dd8a1c9495322c1d6f7c780697f474af0"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Thu Aug 27 03:20:04 2009 -0700"
      },
      "committer": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Thu Aug 27 08:02:10 2009 -0400"
      },
      "message": "inotify: Ensure we alwasy write the terminating NULL.\n\nBefore the rewrite copy_event_to_user always wrote a terqminating \u0027\\0\u0027\nbyte to user space after the filename.  Since the rewrite that\nterminating byte was skipped if your filename is exactly a multiple of\nevent_size.  Ouch!\n\nSo add one byte to name_size before we round up and use clear_user to\nset userspace to zero like /dev/zero does instead of copying the\nstrange nul_inotify_event.  I can\u0027t quite convince myself len_to_zero\nwill never exceed 16 and even if it doesn\u0027t clear_user should be more\nefficient and a more accurate reflection of what the code is trying to\ndo.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@aristanetworks.com\u003e\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\n"
    },
    {
      "commit": "dead537dd8a1c9495322c1d6f7c780697f474af0",
      "tree": "5263cf56e792cfc5ddf37748d2868fce9866af68",
      "parents": [
        "cf4374267fbe966e8e4e7db68f5dc7b267439780"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Mon Aug 24 16:03:35 2009 -0400"
      },
      "committer": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Thu Aug 27 08:02:04 2009 -0400"
      },
      "message": "inotify: fix locking around inotify watching in the idr\n\nThe are races around the idr storage of inotify watches.  It\u0027s possible\nthat a watch could be found from sys_inotify_rm_watch() in the idr, but it\ncould be removed from the idr before that code does it\u0027s removal.  Move the\nlocking and the refcnt\u0027ing so that these have to happen atomically.\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\n"
    },
    {
      "commit": "cf4374267fbe966e8e4e7db68f5dc7b267439780",
      "tree": "60871fa44df49a8581e2afb06f493e768a058b86",
      "parents": [
        "52cef7555adf5ca09b3b7283097466759120d901"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Mon Aug 24 16:03:35 2009 -0400"
      },
      "committer": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Thu Aug 27 08:02:04 2009 -0400"
      },
      "message": "inotify: do not BUG on idr entries at inotify destruction\n\nIf an inotify watch is left in the idr when an fsnotify group is destroyed\nthis will lead to a BUG.  This is not a dangerous situation and really\nindicates a programming bug and leak of memory.  This patch changes it to\nuse a WARN and a printk rather than killing people\u0027s boxes.\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\n"
    },
    {
      "commit": "52cef7555adf5ca09b3b7283097466759120d901",
      "tree": "641ddd087f6effe88fad2e3c0b5d744e9d71fdda",
      "parents": [
        "1e23502cc57cef33455ac7cb9111e3c6d991a894"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Mon Aug 24 16:03:35 2009 -0400"
      },
      "committer": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Thu Aug 27 08:02:04 2009 -0400"
      },
      "message": "inotify: seperate new watch creation updating existing watches\n\nThere is nothing known wrong with the inotify watch addition/modification\nbut this patch seperates the two code paths to make them each easy to\nverify as correct.\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\n"
    },
    {
      "commit": "e9cab24cf3e5610898fb26bfd664615d0fd6a8d6",
      "tree": "5e2ac2f09655514fa1d7b69e13c83d5d04b20693",
      "parents": [
        "a206e9417f19cf42156249953b72223a0076dc6b",
        "3c4cec65274481ec6332b0a91f19b4c8c5394801"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 25 09:47:36 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 25 09:47:36 2009 -0700"
      },
      "message": "Merge branch \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs-2.6\n\n* \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs-2.6:\n  ext3: Improve error message that changing journaling mode on remount is not possible\n  ext3: Update Kconfig description of EXT3_DEFAULTS_TO_ORDERED\n"
    },
    {
      "commit": "7111dc73923e9737b38a3ef5b5f236109000ff28",
      "tree": "a21d3fbdf710b8a5ecfede32b822368fea2cad40",
      "parents": [
        "2584e7986f235572d4b03bbe52fd1e85c1679b8e"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Mon Aug 24 19:21:29 2009 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 24 16:28:42 2009 -0700"
      },
      "message": "NFSv4: Fix an infinite looping problem with the nfs4_state_manager\n\nCommit 76db6d9500caeaa774a3e32a997eba30bbdc176b (nfs41: add session setup\nto the state manager) introduces an infinite loop possibility in the NFSv4\nstate manager. By first checking nfs4_has_session() before clearing the\nNFS4CLNT_SESSION_SETUP flag, it allows for a situation where someone sets\nthat flag, but it never gets cleared, and so the state manager loops.\n\nIn fact commit c3fad1b1aaf850bf692642642ace7cd0d64af0a3 (nfs41: add session\nreset to state manager) causes this to happen every time we get a network\npartition error.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\nTested-by: Daniel J Blueman \u003cdaniel.blueman@gmail.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2584e7986f235572d4b03bbe52fd1e85c1679b8e",
      "tree": "7265bf25f3e6ab4b8f0a7e2e5d0500aa1de77b55",
      "parents": [
        "7c0a57d5c47bcfc492b3139e77400f888a935c44",
        "c795b33ba171e41563ab7e25105c0cd4edd81cd7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 24 14:41:28 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 24 14:41:28 2009 -0700"
      },
      "message": "Merge branch \u0027upstream-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jlbec/ocfs2\n\n* \u0027upstream-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jlbec/ocfs2:\n  ocfs2/dlm: Wait on lockres instead of erroring cancel requests\n  ocfs2: Add missing lock name\n  ocfs2: Don\u0027t oops in ocfs2_kill_sb on a failed mount\n  ocfs2: release the buffer head in ocfs2_do_truncate.\n  ocfs2: Handle quota file corruption more gracefully\n"
    },
    {
      "commit": "353d5c30c666580347515da609dd74a2b8e9b828",
      "tree": "03cf3b5c0bc2ce08a12af303b141503ad833178f",
      "parents": [
        "0257a0c0c1997aac28420e784b3ef8f3ce17f093"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hugh.dickins@tiscali.co.uk",
        "time": "Mon Aug 24 16:30:28 2009 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 24 12:53:01 2009 -0700"
      },
      "message": "mm: fix hugetlb bug due to user_shm_unlock call\n\n2.6.30\u0027s commit 8a0bdec194c21c8fdef840989d0d7b742bb5d4bc removed\nuser_shm_lock() calls in hugetlb_file_setup() but left the\nuser_shm_unlock call in shm_destroy().\n\nIn detail:\nAssume that can_do_hugetlb_shm() returns true and hence user_shm_lock()\nis not called in hugetlb_file_setup(). However, user_shm_unlock() is\ncalled in any case in shm_destroy() and in the following\natomic_dec_and_lock(\u0026up-\u003e__count) in free_uid() is executed and if\nup-\u003e__count gets zero, also cleanup_user_struct() is scheduled.\n\nNote that sched_destroy_user() is empty if CONFIG_USER_SCHED is not set.\nHowever, the ref counter up-\u003e__count gets unexpectedly non-positive and\nthe corresponding structs are freed even though there are live\nreferences to them, resulting in a kernel oops after a lots of\nshmget(SHM_HUGETLB)/shmctl(IPC_RMID) cycles and CONFIG_USER_SCHED set.\n\nHugh changed Stefan\u0027s suggested patch: can_do_hugetlb_shm() at the\ntime of shm_destroy() may give a different answer from at the time\nof hugetlb_file_setup().  And fixed newseg()\u0027s no_id error path,\nwhich has missed user_shm_unlock() ever since it came in 2.6.9.\n\nReported-by: Stefan Huber \u003cshuber2@gmail.com\u003e\nSigned-off-by: Hugh Dickins \u003chugh.dickins@tiscali.co.uk\u003e\nTested-by: Stefan Huber \u003cshuber2@gmail.com\u003e\nCc: stable@kernel.org\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3c4cec65274481ec6332b0a91f19b4c8c5394801",
      "tree": "c74bd4cedaecdf2b1132753ffbc337e8d3e6b161",
      "parents": [
        "6d41807614151829ae17a3a58bff8572af5e407e"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Mon Aug 24 16:38:43 2009 +0200"
      },
      "committer": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Mon Aug 24 16:48:45 2009 +0200"
      },
      "message": "ext3: Improve error message that changing journaling mode on remount is not possible\n\nThis patch makes the error message about changing journaling mode on remount\nmore descriptive. Some people are going to hit this error now due to commit\nbbae8bcc49bc4d002221dab52c79a50a82e7cd1f if they configure a kernel to default\nto data\u003dwriteback mode. The problem happens if they have data\u003dordered set for\nthe root filesystem in /etc/fstab but not in the kernel command line (and they\ndon\u0027t use initrd). Their filesystem then gets mounted as data\u003dwriteback by\nkernel but then their boot fails because init scripts won\u0027t be able to remount\nthe filesystem rw. Better error message will hopefully make it easier for them\nto find the error in their setup and bother us less with error reports :).\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\n"
    },
    {
      "commit": "6d41807614151829ae17a3a58bff8572af5e407e",
      "tree": "8d507b9ed679e2a42f9e1c8f4e7ba5a958360ea2",
      "parents": [
        "f4b9a988685da6386d7f9a72df3098bcc3270526"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Mon Aug 10 16:03:43 2009 -0400"
      },
      "committer": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Mon Aug 24 16:48:32 2009 +0200"
      },
      "message": "ext3: Update Kconfig description of EXT3_DEFAULTS_TO_ORDERED\n\nThe old description for this configuration option was perhaps not\ncompletely balanced in terms of describing the tradeoffs of using a\ndefault of data\u003dwriteback vs. data\u003dordered.  Despite the fact that old\ndescription very strongly recomended disabling this feature, all of\nthe major distributions have elected to preserve the existing \u0027legacy\u0027\ndefault, which is a strong hint that it perhaps wasn\u0027t telling the\nwhole story.\n\nThis revised description has been vetted by a number of ext3\ndevelopers as being better at informing the user about the tradeoffs\nof enabling or disabling this configuration feature.\n\nCc: linux-ext4@vger.kernel.org\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\n"
    },
    {
      "commit": "6777d773a463ac045d333b989d4e44660f8d92ad",
      "tree": "17291984d71515cec0a1970ecce3d631ed2f7981",
      "parents": [
        "3edf2fb9d80a46d6c32ba12547a42419845b4b76"
      ],
      "author": {
        "name": "Mimi Zohar",
        "email": "zohar@linux.vnet.ibm.com",
        "time": "Fri Aug 21 14:32:48 2009 -0400"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Mon Aug 24 14:58:23 2009 +1000"
      },
      "message": "kernel_read: redefine offset type\n\nvfs_read() offset is defined as loff_t, but kernel_read()\noffset is only defined as unsigned long. Redefine\nkernel_read() offset as loff_t.\n\nCc: stable@kernel.org\nSigned-off-by: Mimi Zohar \u003czohar@us.ibm.com\u003e\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "8e9d78edea3ce5c0036f85b93091483f2f15443a",
      "tree": "898c98daca2602f0df70558211f30ff1bd2bcf6c",
      "parents": [
        "4dfd79e7b42bff334128907e28c3b41f1ef1cec8"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 21 17:40:08 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 21 17:40:08 2009 -0700"
      },
      "message": "Re-introduce page mapping check in mark_buffer_dirty()\n\nIn commit a8e7d49aa7be728c4ae241a75a2a124cdcabc0c5 (\"Fix race in\ncreate_empty_buffers() vs __set_page_dirty_buffers()\"), I removed a test\nfor a NULL page mapping unintentionally when some of the code inside\n__set_page_dirty() was moved to the callers.\n\nThat removal generally didn\u0027t matter, since a filesystem would serialize\ntruncation (which clears the page mapping) against writing (which marks\nthe buffer dirty), so locking at a higher level (either per-page or an\ninode at a time) should mean that the buffer page would be stable.  And\nindeed, nothing bad seemed to happen.\n\nExcept it turns out that apparently reiserfs does something odd when\nunder load and writing out the journal, and we have a number of bugzilla\nentries that look similar:\n\n\thttp://bugzilla.kernel.org/show_bug.cgi?id\u003d13556\n\thttp://bugzilla.kernel.org/show_bug.cgi?id\u003d13756\n\thttp://bugzilla.kernel.org/show_bug.cgi?id\u003d13876\n\nand it looks like reiserfs depended on that check (the common theme\nseems to be \"data\u003djournal\", and a journal writeback during a truncate).\n\nI suspect reiserfs should have some additional locking, but in the\nmeantime this should get us back to the pre-2.6.29 behavior.\n\nPattern-pointed-out-by: Roland Kletzing \u003cdevzero@web.de\u003e\nCc: stable@kernel.org (2.6.29 and 2.6.30)\nCc: Jeff Mahoney \u003cjeffm@suse.com\u003e\nCc: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b57f92157e6517f0b3bd22e3a8ce7227e230c4f5",
      "tree": "8d00b577c82245c191f9c6fb138e20588da43347",
      "parents": [
        "b04e6373d694e977c95ae0ae000e2c1e2cf92d73",
        "03e860bd9f6a3cca747b0795bed26279a8b420a0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 21 09:56:55 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 21 09:56:55 2009 -0700"
      },
      "message": "Merge branch \u0027btrfs\u0027 of git://git.kernel.dk/linux-2.6-block\n\n* \u0027btrfs\u0027 of git://git.kernel.dk/linux-2.6-block:\n  btrfs: fix inode rbtree corruption\n"
    },
    {
      "commit": "03e860bd9f6a3cca747b0795bed26279a8b420a0",
      "tree": "9a6e6fe663bfc5f01edac558433f314657c2eb67",
      "parents": [
        "df4ecf1524c7793de3121b2d4e5fc6bcc0da3bfb"
      ],
      "author": {
        "name": "From: Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Fri Aug 21 10:09:44 2009 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri Aug 21 10:09:44 2009 +0200"
      },
      "message": "btrfs: fix inode rbtree corruption\n\nNode may not be inserted over existing node. This causes inode tree\ncorruption and I was seeing crashes in inode_tree_del which I can not\nreproduce after this patch.\n\nThe other way to fix this would be to tie inode lifetime in the rbtree\nwith inode while not in freeing state. I had a look at this but it is\nnot so trivial at this point. At least this patch gets things working again.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Chris Mason \u003cchris.mason@oracle.com\u003e\nAcked-by: Yan Zheng \u003czheng.yan@oracle.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "c795b33ba171e41563ab7e25105c0cd4edd81cd7",
      "tree": "e845674493883656d44b825e5ff70256d5af6356",
      "parents": [
        "a8b88d3d49623ac701b5dc996cbd61219c793c7c"
      ],
      "author": {
        "name": "Goldwyn Rodrigues",
        "email": "rgoldwyn@gmail.com",
        "time": "Thu Aug 20 13:43:19 2009 -0500"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Thu Aug 20 18:42:34 2009 -0700"
      },
      "message": "ocfs2/dlm: Wait on lockres instead of erroring cancel requests\n\nIn case a downconvert is queued, and a flock receives a signal,\nBUG_ON(lockres-\u003el_action !\u003d OCFS2_AST_INVALID) is triggered\nbecause a lock cancel triggers a dlmunlock while an AST is\nscheduled.\n\nTo avoid this, allow a LKM_CANCEL to pass through, and let it\nwait on __dlm_wait_on_lockres().\n\nSigned-off-by: Goldwyn Rodrigues \u003crgoldwyn@suse.de\u003e\nAcked-off-by: Mark Fasheh \u003cmfasheh@suse.com\u003e\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "a8b88d3d49623ac701b5dc996cbd61219c793c7c",
      "tree": "3eae2cbcb6e61b1af9902ff1ad7a8780d3c02b63",
      "parents": [
        "5fd131893793567c361ae64cbeb28a2a753bbe35"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Thu Aug 20 18:26:52 2009 +0200"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Thu Aug 20 16:41:53 2009 -0700"
      },
      "message": "ocfs2: Add missing lock name\n\nThere is missing name for NFSSync cluster lock. This makes lockdep unhappy\nbecause we end up passing NULL to lockdep when initializing lock key. Fix it.\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "6c30c53fd5ae6a99a23ad78e90c428d2c8ffb07f",
      "tree": "b840fbfc5453d307ff9211f0b0e5015dc9e5a345",
      "parents": [
        "0dc9aa845c20ed1f46c85f229591b811dffc4b3b",
        "a924586036833086b262a371b09d1266c23bb4d1"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 19 10:40:24 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 19 10:40:24 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ryusuke/nilfs2\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ryusuke/nilfs2:\n  nilfs2: fix oopses with doubly mounted snapshots\n  nilfs2: missing a read lock for segment writer in nilfs_attach_checkpoint()\n"
    },
    {
      "commit": "0753ba01e126020bf0f8150934903b48935b697d",
      "tree": "fbfd7e2d0abbe724a8c5e0e17fb9af522ed2e097",
      "parents": [
        "89a4eb4b66e8f4d395e14a14d262dac4d6ca52f0"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Tue Aug 18 14:11:10 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 18 16:31:13 2009 -0700"
      },
      "message": "mm: revert \"oom: move oom_adj value\"\n\nThe commit 2ff05b2b (oom: move oom_adj value) moveed the oom_adj value to\nthe mm_struct.  It was a very good first step for sanitize OOM.\n\nHowever Paul Menage reported the commit makes regression to his job\nscheduler.  Current OOM logic can kill OOM_DISABLED process.\n\nWhy? His program has the code of similar to the following.\n\n\t...\n\tset_oom_adj(OOM_DISABLE); /* The job scheduler never killed by oom */\n\t...\n\tif (vfork() \u003d\u003d 0) {\n\t\tset_oom_adj(0); /* Invoked child can be killed */\n\t\texecve(\"foo-bar-cmd\");\n\t}\n\t....\n\nvfork() parent and child are shared the same mm_struct.  then above\nset_oom_adj(0) doesn\u0027t only change oom_adj for vfork() child, it\u0027s also\nchange oom_adj for vfork() parent.  Then, vfork() parent (job scheduler)\nlost OOM immune and it was killed.\n\nActually, fork-setting-exec idiom is very frequently used in userland program.\nWe must not break this assumption.\n\nThen, this patch revert commit 2ff05b2b and related commit.\n\nReverted commit list\n---------------------\n- commit 2ff05b2b4e (oom: move oom_adj value from task_struct to mm_struct)\n- commit 4d8b9135c3 (oom: avoid unnecessary mm locking and scanning for OOM_DISABLE)\n- commit 8123681022 (oom: only oom kill exiting tasks with attached memory)\n- commit 933b787b57 (mm: copy over oom_adj value at fork time)\n\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Paul Menage \u003cmenage@google.com\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Rik van Riel \u003criel@redhat.com\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Mel Gorman \u003cmel@csn.ul.ie\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "89a4eb4b66e8f4d395e14a14d262dac4d6ca52f0",
      "tree": "e8dfb8f3c70700c44a3a56f87541d45c86eec3f7",
      "parents": [
        "6b6f0b6c131321e1bc34c47b7f671b0360315402"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Tue Aug 18 14:11:08 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 18 16:31:12 2009 -0700"
      },
      "message": "vfs: make get_sb_pseudo set s_maxbytes to value that can be cast to signed\n\nget_sb_pseudo sets s_maxbytes to ~0ULL which becomes negative when cast\nto a signed value.  Fix it to use MAX_LFS_FILESIZE which casts properly\nto a positive signed value.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nReviewed-by: Johannes Weiner \u003channes@cmpxchg.org\u003e\nAcked-by: Steve French \u003csmfrench@gmail.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Robert Love \u003crlove@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a924586036833086b262a371b09d1266c23bb4d1",
      "tree": "d8fb67221f6614c00e9a645eb98e79f015ec81f2",
      "parents": [
        "1154ecbd2f8298ef75609f5f8ed5aca96be599fb"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Wed Aug 19 00:29:43 2009 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Wed Aug 19 02:10:13 2009 +0900"
      },
      "message": "nilfs2: fix oopses with doubly mounted snapshots\n\nwill fix kernel oopses like the following:\n\n # mount -t nilfs2 -r -o cp\u003d20 /dev/sdb1 /test1\n # mount -t nilfs2 -r -o cp\u003d20 /dev/sdb1 /test2\n # umount /test1\n # umount /test2\n\nBUG: sleeping function called from invalid context at arch/x86/mm/fault.c:1069\nin_atomic(): 0, irqs_disabled(): 1, pid: 3886, name: umount.nilfs2\n1 lock held by umount.nilfs2/3886:\n #0:  (\u0026type-\u003es_umount_key#31){+.+...}, at: [\u003cc10b398a\u003e] deactivate_super+0x52/0x6c\nirq event stamp: 1219\nhardirqs last  enabled at (1219): [\u003cc135c774\u003e] __mutex_unlock_slowpath+0xf8/0x119\nhardirqs last disabled at (1218): [\u003cc135c6d5\u003e] __mutex_unlock_slowpath+0x59/0x119\nsoftirqs last  enabled at (1214): [\u003cc1033316\u003e] __do_softirq+0x1a5/0x1ad\nsoftirqs last disabled at (1205): [\u003cc1033354\u003e] do_softirq+0x36/0x5a\nPid: 3886, comm: umount.nilfs2 Not tainted 2.6.31-rc6 #55\nCall Trace:\n [\u003cc1023549\u003e] __might_sleep+0x107/0x10e\n [\u003cc13603c0\u003e] do_page_fault+0x246/0x397\n [\u003cc136017a\u003e] ? do_page_fault+0x0/0x397\n [\u003cc135e753\u003e] error_code+0x6b/0x70\n [\u003cc136017a\u003e] ? do_page_fault+0x0/0x397\n [\u003cc104f805\u003e] ? __lock_acquire+0x91/0x12fd\n [\u003cc1050a62\u003e] ? __lock_acquire+0x12ee/0x12fd\n [\u003cc1050a62\u003e] ? __lock_acquire+0x12ee/0x12fd\n [\u003cc1050b2b\u003e] lock_acquire+0xba/0xdd\n [\u003cd0d17d3f\u003e] ? nilfs_detach_segment_constructor+0x2f/0x2fa [nilfs2]\n [\u003cc135d4fe\u003e] down_write+0x2a/0x46\n [\u003cd0d17d3f\u003e] ? nilfs_detach_segment_constructor+0x2f/0x2fa [nilfs2]\n [\u003cd0d17d3f\u003e] nilfs_detach_segment_constructor+0x2f/0x2fa [nilfs2]\n [\u003cc104ea2c\u003e] ? mark_held_locks+0x43/0x5b\n [\u003cc104ecb1\u003e] ? trace_hardirqs_on_caller+0x10b/0x133\n [\u003cc104ece4\u003e] ? trace_hardirqs_on+0xb/0xd\n [\u003cd0d09ac1\u003e] nilfs_put_super+0x2f/0xca [nilfs2]\n [\u003cc10b3352\u003e] generic_shutdown_super+0x49/0xb8\n [\u003cc10b33de\u003e] kill_block_super+0x1d/0x31\n [\u003cc10e6599\u003e] ? vfs_quota_off+0x0/0x12\n [\u003cc10b398f\u003e] deactivate_super+0x57/0x6c\n [\u003cc10c4bc3\u003e] mntput_no_expire+0x8c/0xb4\n [\u003cc10c5094\u003e] sys_umount+0x27f/0x2a4\n [\u003cc10c50c6\u003e] sys_oldumount+0xd/0xf\n [\u003cc10031a4\u003e] sysenter_do_call+0x12/0x38\n ...\n\nThis turns out to be a bug brought by an -rc1 patch (\"nilfs2: simplify\nremaining sget() use\").\n\nIn the patch, a new \"put resource\" function, nilfs_put_sbinfo()\nwas introduced to delay freeing nilfs_sb_info struct.\n\nBut the nilfs_put_sbinfo() mistakenly used atomic_dec_and_test()\nfunction to check the reference count, and it caused the nilfs_sb_info\nwas freed when user mounted a snapshot twice.\n\nThis bug also suggests there was unseen memory leak in usual mount\n/umount operations for nilfs.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "1154ecbd2f8298ef75609f5f8ed5aca96be599fb",
      "tree": "a6801fc442fecf4c0b2a1dc1d7a5350910983041",
      "parents": [
        "64f1607ffbbc772685733ea63e6f7f4183df1b16"
      ],
      "author": {
        "name": "Zhang Qiang",
        "email": "zhangqiang.buaa@gmail.com",
        "time": "Tue Aug 18 14:58:24 2009 +0800"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Tue Aug 18 17:32:27 2009 +0900"
      },
      "message": "nilfs2: missing a read lock for segment writer in nilfs_attach_checkpoint()\n\n\u0027ns_cno\u0027 of structure \u0027the_nilfs\u0027 must be protected from segment\nwriter, in other words, the caller of nilfs_get_checkpoint should hold\nread lock for nilfs-\u003ens_segctor_sem.  This patch adds the lock/unlock\noperations in nilfs_attach_checkpoint() when calling\nnilfs_cpfile_get_checkpoint().\n\nSigned-off-by: Zhang Qiang \u003czhangqiang.buaa@gmail.com\u003e\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "4b53e4b500779230aedd5355940aeaaed0b5353b",
      "tree": "cdc025b850b5c973d86d44f82da328b2af5335a9",
      "parents": [
        "0aad37ef3deed118d3816e1d1a600eb2ec9dcb87"
      ],
      "author": {
        "name": "Abhishek Kulkarni",
        "email": "adkulkar@umail.iu.edu",
        "time": "Mon Aug 17 16:42:28 2009 -0500"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Mon Aug 17 16:42:28 2009 -0500"
      },
      "message": "9p: remove unnecessary v9fses-\u003eoptions which duplicates the mount string\n\nThe mount options string is saved in sb-\u003es_options. This patch removes\nthe redundant duplicating of the mount options. Also, since we are not\ndisplaying anything special in show options, we replace v9fs_show_options\nwith generic_show_options for now.\n\nSigned-off-by: Abhishek Kulkarni \u003cadkulkar@umail.iu.edu\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "48559b4c30708ebdc849483da9fb83ee08c6c908",
      "tree": "6e27e440ecc26f4d9c58f1a462cf81a513e0881f",
      "parents": [
        "4d3297ca5bf37ff5956f76fb352e009880aad62d"
      ],
      "author": {
        "name": "Abhishek Kulkarni",
        "email": "adkulkar@umail.iu.edu",
        "time": "Mon Aug 17 16:32:18 2009 -0500"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@strongmad.austin.ibm.com",
        "time": "Mon Aug 17 16:35:08 2009 -0500"
      },
      "message": "9p: Add missing cast for the error return value in v9fs_get_inode\n\nCast the error return value (ENOMEM) in v9fs_get_inode() to its\ncorrect type using ERR_PTR.\n\nSigned-off-by: Abhishek Kulkarni \u003cadkulkar@umail.iu.edu\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "5fd131893793567c361ae64cbeb28a2a753bbe35",
      "tree": "962a79225308d855ee7b1d27e5c49864af78e108",
      "parents": [
        "60e2ec48665b8495360ca4a6004c5cd52beb2bc1"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Thu Jul 30 17:01:53 2009 +0200"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Mon Aug 17 14:32:24 2009 -0700"
      },
      "message": "ocfs2: Don\u0027t oops in ocfs2_kill_sb on a failed mount\n\nIf we fail to mount the filesystem, we have to be careful not to dereference\nuninitialized structures in ocfs2_kill_sb.\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "4d3297ca5bf37ff5956f76fb352e009880aad62d",
      "tree": "80cb9648cda0c7d86ea75ea0733f5b05e97beb4c",
      "parents": [
        "1b5ab3e86712b6be38ebbe0d821387c1d8f91d7c"
      ],
      "author": {
        "name": "Abhishek Kulkarni",
        "email": "adkulkar@umail.iu.edu",
        "time": "Sun Jul 19 13:41:51 2009 -0600"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@strongmad.austin.ibm.com",
        "time": "Mon Aug 17 16:27:58 2009 -0500"
      },
      "message": "9p: Remove redundant inode uid/gid assignment\n\nRemove a redundant update of inode\u0027s i_uid and i_gid\nafter v9fs_get_inode() since the latter already sets up\na new inode and sets the proper uid and gid values.\n\nSigned-off-by: Abhishek Kulkarni \u003cadkulkar@umail.iu.edu\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "1b5ab3e86712b6be38ebbe0d821387c1d8f91d7c",
      "tree": "8c7cc3d58d6bd8f62398de5f963966b7bf58abb9",
      "parents": [
        "4f4038328da5eb9cc237b51d3fe68138fd3fea14"
      ],
      "author": {
        "name": "Abhishek Kulkarni",
        "email": "adkulkar@umail.iu.edu",
        "time": "Sun Jul 19 13:41:52 2009 -0600"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@strongmad.austin.ibm.com",
        "time": "Mon Aug 17 16:27:57 2009 -0500"
      },
      "message": "9p: Fix possible regressions when -\u003eget_sb fails.\n\n-\u003eget_sb can fail causing some badness. this patch fixes\n   * clear sb-\u003efs_s_info in kill_sb.\n   * deactivate_locked_super() calls kill_sb (v9fs_kill_super) which closes the\n     destroys the client, clunks all its fids and closes the v9fs session.\n     Attempting to do it twice will cause an oops.\n\nSigned-off-by: Abhishek Kulkarni \u003cadkulkar@umail.iu.edu\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "4f4038328da5eb9cc237b51d3fe68138fd3fea14",
      "tree": "66b55f59880d3cd1740b3f81273485d9a68a1e73",
      "parents": [
        "02bc35672b2fdf251e264adca5407792f63191e4"
      ],
      "author": {
        "name": "Abhishek Kulkarni",
        "email": "adkulkar@umail.iu.edu",
        "time": "Sun Jul 19 13:41:53 2009 -0600"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@strongmad.austin.ibm.com",
        "time": "Mon Aug 17 16:27:57 2009 -0500"
      },
      "message": "9p: Fix v9fs show_options\n\nAdd the delimiter \u0027,\u0027 before the options when they are passed\nand check if no option parameters are passed to prevent displaying\nNULL in /proc/mounts.\n\nSigned-off-by: Abhishek Kulkarni \u003cadkulkar@umail.iu.edu\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "02bc35672b2fdf251e264adca5407792f63191e4",
      "tree": "301e2d999daed7afd11596bc89087750a4509e1c",
      "parents": [
        "0e15597ebfe00e28857185f46aba00f400480ffe"
      ],
      "author": {
        "name": "Abhishek Kulkarni",
        "email": "adkulkar@umail.iu.edu",
        "time": "Sun Jul 19 13:41:54 2009 -0600"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@strongmad.austin.ibm.com",
        "time": "Mon Aug 17 16:27:57 2009 -0500"
      },
      "message": "9p: Fix possible memleak in v9fs_inode_from fid.\n\nAdd missing p9stat_free in v9fs_inode_from_fid to avoid\nany possible leaks.\n\nSigned-off-by: Abhishek Kulkarni \u003cadkulkar@umail.iu.edu\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "0e15597ebfe00e28857185f46aba00f400480ffe",
      "tree": "5a1a057ac15bf598c2eee81c54aeefc49c4cee24",
      "parents": [
        "2bb541157fe2602af7b9952096d0524f6f9c1e73"
      ],
      "author": {
        "name": "Abhishek Kulkarni",
        "email": "adkulkar@umail.iu.edu",
        "time": "Sun Jul 19 13:41:55 2009 -0600"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@strongmad.austin.ibm.com",
        "time": "Mon Aug 17 16:27:57 2009 -0500"
      },
      "message": "9p: minor comment fixes\n\nFix the comments -- mostly the improper and/or missing descriptions\nof function parameters.\n\nSigned-off-by: Abhishek Kulkarni \u003cadkulkar@umail.iu.edu\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "2bb541157fe2602af7b9952096d0524f6f9c1e73",
      "tree": "79ee0fbdded9918298fbd37b1b56232b9f5f81d0",
      "parents": [
        "50fb6d2bd7062708892ae7147f30c3ee905b7a3d"
      ],
      "author": {
        "name": "Abhishek Kulkarni",
        "email": "adkulkar@umail.iu.edu",
        "time": "Sun Jul 19 13:41:56 2009 -0600"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@strongmad.austin.ibm.com",
        "time": "Mon Aug 17 16:27:57 2009 -0500"
      },
      "message": "9p: Fix possible inode leak in v9fs_get_inode.\n\nAdd a missing iput when cleaning up if v9fs_get_inode\nfails after returning a valid inode.\n\nSigned-off-by: Abhishek Kulkarni \u003cadkulkar@umail.iu.edu\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "50fb6d2bd7062708892ae7147f30c3ee905b7a3d",
      "tree": "6b5cdbe3e4f03c7bf4b043ced06cec7d34db0b1f",
      "parents": [
        "df4ecf1524c7793de3121b2d4e5fc6bcc0da3bfb"
      ],
      "author": {
        "name": "Abhishek Kulkarni",
        "email": "adkulkar@umail.iu.edu",
        "time": "Sun Jul 19 13:41:57 2009 -0600"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@strongmad.austin.ibm.com",
        "time": "Mon Aug 17 16:27:57 2009 -0500"
      },
      "message": "9p: Check for error in return value of v9fs_fid_add\n\nCheck if v9fs_fid_add was successful or not based on its\nreturn value.\n\nSigned-off-by: Abhishek Kulkarni \u003cadkulkar@umail.iu.edu\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "c58afec8b2576b121eced7b94eb94eaf4626bacc",
      "tree": "092290136ab7cba84b8a6a5f53e2a73b9ef8318f",
      "parents": [
        "52dec22e739eec8f3a0154f768a599f5489048bd",
        "bc990f5cb424cdca9dda866785d088e2c2110ecc"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 17 13:39:30 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 17 13:39:30 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://oss.sgi.com/xfs/xfs\n\n* \u0027for-linus\u0027 of git://oss.sgi.com/xfs/xfs:\n  xfs: fix locking in xfs_iget_cache_hit\n"
    },
    {
      "commit": "08e53fcb0db34baca3db84a457b6d67faabee4c6",
      "tree": "c9c112a0aa290895a416b5bfc3f58aa328bc74e8",
      "parents": [
        "cd94c8bbef8d4b796a7ed4c551355a334604fd36"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Sun Aug 16 21:51:55 2009 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 17 13:37:37 2009 -0700"
      },
      "message": "inotify: start watch descriptor count at 1\n\nThe inotify_add_watch man page specifies that inotify_add_watch() will\nreturn a non-negative integer.  However, historically the inotify\nwatches started at 1, not at 0.\n\nTurns out that the inotifywait program provided by the inotify-tools\npackage doesn\u0027t properly handle a 0 watch descriptor.  In 7e790dd5 we\nchanged from starting at 1 to starting at 0.  This patch starts at 1,\njust like in previous kernels, but also just like in previous kernels\nit\u0027s possible for it to wrap back to 0.  This preserves the kernel\nfunctionality exactly like it was before the patch (neither method broke\nthe spec)\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cd94c8bbef8d4b796a7ed4c551355a334604fd36",
      "tree": "ac448f253eb01a7fd1872daa15938b5d72fee796",
      "parents": [
        "eef3a116be11d35396efb2a8cc7345fd3221e294"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Sun Aug 16 21:51:49 2009 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 17 13:37:37 2009 -0700"
      },
      "message": "inotify: tail drop inotify q_overflow events\n\nIn f44aebcc the tail drop logic of events with no file backing\n(q_overflow and in_ignored) was reversed so IN_IGNORED events would\nnever be tail dropped.  This now means that Q_OVERFLOW events are NOT\ntail dropped.  The fix is to not tail drop IN_IGNORED, but to tail drop\nQ_OVERFLOW.\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "eef3a116be11d35396efb2a8cc7345fd3221e294",
      "tree": "2a5d0b36dd5985f29eac43f51b03e610e40b7c9b",
      "parents": [
        "0f66f96d21b4bbff49baaa337546e687d7c58e87"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Sun Aug 16 21:51:44 2009 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 17 13:37:37 2009 -0700"
      },
      "message": "notify: unused event private race\n\ninotify decides if private data it passed to get added to an event was\nused by checking list_empty().  But it\u0027s possible that the event may\nhave been dequeued and the private event removed so it would look empty.\n\nThe fix is to use the return code from fsnotify_add_notify_event rather\nthan looking at the list.\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "60e2ec48665b8495360ca4a6004c5cd52beb2bc1",
      "tree": "dbd938e337b3191bbe16336cb414b9d55c5fdc81",
      "parents": [
        "ada508274b8698a33cb0e5bd037db0f9dc781795"
      ],
      "author": {
        "name": "Tao Ma",
        "email": "tao.ma@oracle.com",
        "time": "Wed Aug 12 14:42:47 2009 +0800"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Mon Aug 17 12:50:35 2009 -0700"
      },
      "message": "ocfs2: release the buffer head in ocfs2_do_truncate.\n\nIn ocfs2_do_truncate, we forget to release last_eb_bh which\nwill cause memleak. So call brelse in the end.\n\nSigned-off-by: Tao Ma \u003ctao.ma@oracle.com\u003e\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "ada508274b8698a33cb0e5bd037db0f9dc781795",
      "tree": "43788f6393117159d75897bb75496c0ddb6c4e1b",
      "parents": [
        "b409d7a0ab46fe530efe52734984b4ed5d46c3eb"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Mon Aug 03 18:24:21 2009 +0200"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Mon Aug 17 12:50:12 2009 -0700"
      },
      "message": "ocfs2: Handle quota file corruption more gracefully\n\nocfs2_read_virt_blocks() does BUG when we try to read a block from a file\nbeyond its end. Since this can happen due to filesystem corruption, it\nis not really an appropriate answer. Make ocfs2_read_quota_block() check\nthe condition and handle it by calling ocfs2_error() and returning EIO.\n\n[ Modified to print ip_blkno in the error - Joel ]\n\nReported-by: Tristan Ye \u003ctristan.ye@oracle.com\u003e\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "bc990f5cb424cdca9dda866785d088e2c2110ecc",
      "tree": "4264beb9538533d136e41f0e93933160fe925008",
      "parents": [
        "894ef820b10d77e2d6d717342fc408bdd9825139"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Sun Aug 16 20:36:34 2009 -0400"
      },
      "committer": {
        "name": "Felix Blyakher",
        "email": "felixb@sgi.com",
        "time": "Mon Aug 17 01:23:48 2009 -0500"
      },
      "message": "xfs: fix locking in xfs_iget_cache_hit\n\nThe locking in xfs_iget_cache_hit currently has numerous problems:\n\n - we clear the reclaim tag without i_flags_lock which protects\n   modifications to it\n - we call inode_init_always which can sleep with pag_ici_lock\n   held (this is oss.sgi.com BZ #819)\n - we acquire and drop i_flags_lock a lot and thus provide no\n   consistency between the various flags we set/clear under it\n\nThis patch fixes all that with a major revamp of the locking in\nthe function.  The new version acquires i_flags_lock early and\nonly drops it once we need to call into inode_init_always or before\ncalling xfs_ilock.\n\nThis patch fixes a bug seen in the wild where we race modifying the\nreclaim tag.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Felix Blyakher \u003cfelixb@sgi.com\u003e\nReviewed-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\nSigned-off-by: Felix Blyakher \u003cfelixb@sgi.com\u003e\n"
    },
    {
      "commit": "b2add73dbf93fd50f00564d7abc3e2b9aa9dd20c",
      "tree": "c9da78bdbdcfb29d5fc1ac3a967d75911fc5d6b4",
      "parents": [
        "5d12dc1fd6b0ba31d3166e42ed01996df6dad34e"
      ],
      "author": {
        "name": "Guillaume Knispel",
        "email": "gknispel@proformatique.com",
        "time": "Sat Aug 15 19:30:24 2009 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Aug 15 18:40:11 2009 -0700"
      },
      "message": "poll/select: initialize triggered field of struct poll_wqueues\n\nThe triggered field of struct poll_wqueues introduced in commit\n5f820f648c92a5ecc771a96b3c29aa6e90013bba (\"poll: allow f_op-\u003epoll to\nsleep\").\n\nIt was first set to 1 in pollwake() (now __pollwake() ), tested and\nlater set to 0 in poll_schedule_timeout(), but not initialized before.\n\nAs a result when the process needs to sleep, triggered was likely to be\nnon-zero even if pollwake() is not called before the first\npoll_schedule_timeout(), meaning schedule_hrtimeout_range() would not be\ncalled and an extra loop calling all -\u003epoll() would be done.\n\nThis patch initialize triggered to 0 in poll_initwait() so the -\u003epoll()\nare not called twice before the process goes to sleep when it needs to.\n\nSigned-off-by: Guillaume Knispel \u003cgknispel@proformatique.com\u003e\nAcked-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Tejun Heo \u003ctj@kernel.org\u003e\nCc: stable@kernel.org\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d7e623da1a757fbd8c117fa29190ca8bef14dab3",
      "tree": "96fd46643f1b381a6985da15ea984a9e1f66e8f5",
      "parents": [
        "64f1607ffbbc772685733ea63e6f7f4183df1b16"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Tue Aug 11 11:20:11 2009 +0100"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Fri Aug 14 14:04:46 2009 +0100"
      },
      "message": "GFS2: Fix permissions on \"recover\" file\n\nAlthough this file is only ever written and not read by\nuserspace, it seems that the utils are opening this\nfile O_RDWR, so we need to allow that.\n\nAlso fixes the whitespace which seemed to be broken.\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\nCc: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "bc7af9ba154f648598bf92b391e446e31b09330a",
      "tree": "01f1e0c9f7410c059e91ba9f7a5727fbeb25dd8b",
      "parents": [
        "d58d2d1adec90e7bc0c56e09b3ac0e9a5a471e68",
        "b409d7a0ab46fe530efe52734984b4ed5d46c3eb"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Aug 13 11:17:40 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Aug 13 11:17:40 2009 -0700"
      },
      "message": "Merge branch \u0027upstream-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jlbec/ocfs2\n\n* \u0027upstream-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jlbec/ocfs2: (22 commits)\n  ocfs2: Fix possible deadlock when extending quota file\n  ocfs2: keep index within status_map[]\n  ocfs2: Initialize the cluster we\u0027re writing to in a non-sparse extend\n  ocfs2: Remove redundant BUG_ON in __dlm_queue_ast()\n  ocfs2/quota: Release lock for error in ocfs2_quota_write.\n  ocfs2: Define credit counts for quota operations\n  ocfs2: Remove syncjiff field from quota info\n  ocfs2: Fix initialization of blockcheck stats\n  ocfs2: Zero out padding of on disk dquot structure\n  ocfs2: Initialize blocks allocated to local quota file\n  ocfs2: Mark buffer uptodate before calling ocfs2_journal_access_dq()\n  ocfs2: Make global quota files blocksize aligned\n  ocfs2: Use ocfs2_rec_clusters in ocfs2_adjust_adjacent_records.\n  ocfs2: Fix deadlock on umount\n  ocfs2: Add extra credits and access the modified bh in update_edge_lengths.\n  ocfs2: Fail ocfs2_get_block() immediately when a block needs allocation\n  ocfs2: Fix error return in ocfs2_write_cluster()\n  ocfs2: Fix compilation warning for fs/ocfs2/xattr.c\n  ocfs2: Initialize count in aio_write before generic_write_checks\n  ocfs2: log the actual return value of ocfs2_file_aio_write()\n  ...\n"
    },
    {
      "commit": "78efd1ddd95d2fac1ed8d5fadd9dab885ea70e55",
      "tree": "c1f6fc2afe93250f7dd5e37f3ee1f57281b19bf0",
      "parents": [
        "b637dc0dba6a243da2c74f5d02b42ba5eeb9425e",
        "a8914f3a6d72c97328597a556a99daaf5cc288ae"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 12 08:49:35 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 12 08:49:35 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://oss.sgi.com/xfs/xfs\n\n* \u0027for-linus\u0027 of git://oss.sgi.com/xfs/xfs:\n  xfs: fix spin_is_locked assert on uni-processor builds\n  xfs: check for dinode realtime flag corruption\n  use XFS_CORRUPTION_ERROR in xfs_btree_check_sblock\n  xfs: switch to NOFS allocation under i_lock in xfs_attr_rmtval_get\n  xfs: switch to NOFS allocation under i_lock in xfs_readlink_bmap\n  xfs: switch to NOFS allocation under i_lock in xfs_attr_rmtval_set\n  xfs: switch to NOFS allocation under i_lock in xfs_buf_associate_memory\n  xfs: switch to NOFS allocation under i_lock in xfs_dir_cilookup_result\n  xfs: switch to NOFS allocation under i_lock in xfs_da_buf_make\n  xfs: switch to NOFS allocation under i_lock in xfs_da_state_alloc\n  xfs: switch to NOFS allocation under i_lock in xfs_getbmap\n  xfs: avoid memory allocation under m_peraglock in growfs code\n"
    },
    {
      "commit": "1ae88b2e446261c038f2c0c3150ffae142b227a2",
      "tree": "b3c9c11e4391c59086308e2674661688db5b12f5",
      "parents": [
        "7cb7beb31aa3d941833b6a6e553687422c31e4b6"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Aug 12 09:12:30 2009 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 12 08:21:39 2009 -0700"
      },
      "message": "NFS: Fix an O_DIRECT Oops...\n\nWe can\u0027t call nfs_readdata_release()/nfs_writedata_release() without\nfirst initialising and referencing args.context. Doing so inside\nnfs_direct_read_schedule_segment()/nfs_direct_write_schedule_segment()\ncauses an Oops.\n\nWe should rather be calling nfs_readdata_free()/nfs_writedata_free() in\nthose cases.\n\nLooking at the O_DIRECT code, the \"struct nfs_direct_req\" is already\nreferencing the nfs_open_context for us. Since the readdata and writedata\nstructures carry a reference to that, we can simplify things by getting rid\nof the extra nfs_open_context references, so that we can replace all\ninstances of nfs_readdata_release()/nfs_writedata_release().\n\nReported-by: Catalin Marinas \u003ccatalin.marinas@arm.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\nTested-by: Catalin Marinas \u003ccatalin.marinas@arm.com\u003e\nCc: stable@kernel.org\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a8914f3a6d72c97328597a556a99daaf5cc288ae",
      "tree": "95f569b102f56dfa70cfb8019ef63be8ee828fc1",
      "parents": [
        "b89d4208de3de442c9025919c4261be0b38e79a4"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Mon Aug 10 11:32:44 2009 -0300"
      },
      "committer": {
        "name": "Felix Blyakher",
        "email": "felixb@sgi.com",
        "time": "Wed Aug 12 01:08:27 2009 -0500"
      },
      "message": "xfs: fix spin_is_locked assert on uni-processor builds\n\nWithout SMP or preemption spin_is_locked always returns false,\nso we can\u0027t do an assert with it.  Instead use assert_spin_locked,\nwhich does the right thing on all builds.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\nReported-by: Johannes Engel \u003cjcnengel@googlemail.com\u003e\nTested-by: Johannes Engel \u003cjcnengel@googlemail.com\u003e\nSigned-off-by: Felix Blyakher \u003cfelixb@sgi.com\u003e\n"
    },
    {
      "commit": "b89d4208de3de442c9025919c4261be0b38e79a4",
      "tree": "3c47c8d10c3ef50e2423528d0d8db7a738928621",
      "parents": [
        "e0c222c411e22f086e929cd69fdcc89336164ec1"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Mon Aug 10 11:32:18 2009 -0300"
      },
      "committer": {
        "name": "Felix Blyakher",
        "email": "felixb@sgi.com",
        "time": "Wed Aug 12 01:08:21 2009 -0500"
      },
      "message": "xfs: check for dinode realtime flag corruption\n\nRamon tested XFS with a modified version of fsfuzzer and hit a NULL\npointer dereference in __xfs_get_blocks due to the RT device target\npointer being NULL.\n\nTo fix this reject inode with the realtime bit set on a a filesystem\nwithout an RT subvolume during inode read.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\nReviewed-by: Felix Blyakher \u003cfelixb@sgi.com\u003e\nReported-by: Ramon de Carvalho Valle \u003cramon@risesecurity.org\u003e\nTested-by: Ramon de Carvalho Valle \u003cramon@risesecurity.org\u003e\nSigned-off-by: Felix Blyakher \u003cfelixb@sgi.com\u003e\n"
    },
    {
      "commit": "e0c222c411e22f086e929cd69fdcc89336164ec1",
      "tree": "9ebfde895dfa96d1ee01d1979ccbfae1b35c971b",
      "parents": [
        "ddd3a14e0f030f0f7b900621f67532285b8657ef"
      ],
      "author": {
        "name": "Eric Sandeen",
        "email": "sandeen@sandeen.net",
        "time": "Mon Jul 20 10:52:15 2009 -0500"
      },
      "committer": {
        "name": "Felix Blyakher",
        "email": "felixb@sgi.com",
        "time": "Wed Aug 12 01:08:10 2009 -0500"
      },
      "message": "use XFS_CORRUPTION_ERROR in xfs_btree_check_sblock\n\nIn Red Hat Bug 512552\n - Can\u0027t write to XFS mount during raid5 resync\n\na user ran into corruption while resyncing a raid, and we failed\na consistency test, but didn\u0027t get much more info; it\u0027d be nice\nto call XFS_CORRUPTION_ERROR here so we can see the buffer\ncontents.\n\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Felix Blyakher \u003cfelixb@sgi.com\u003e\n"
    },
    {
      "commit": "ddd3a14e0f030f0f7b900621f67532285b8657ef",
      "tree": "d8c0d11c5adc45b1a6657ddd51b6435e3d28f1f9",
      "parents": [
        "7b02ecb3031b192823bc732ae717febc0a59aa92"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Sat Jul 18 18:15:01 2009 -0400"
      },
      "committer": {
        "name": "Felix Blyakher",
        "email": "felixb@sgi.com",
        "time": "Wed Aug 12 01:08:01 2009 -0500"
      },
      "message": "xfs: switch to NOFS allocation under i_lock in xfs_attr_rmtval_get\n\nxfs_attr_rmtval_get is always called with i_lock held, but i_lock is taken\nin reclaim context so all allocations under it must avoid recursions into\nthe filesystem.\n\nReported by the new reclaim context tracing in lockdep.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Felix Blyakher \u003cfelixb@sgi.com\u003e\nSigned-off-by: Felix Blyakher \u003cfelixb@sgi.com\u003e\n"
    },
    {
      "commit": "7b02ecb3031b192823bc732ae717febc0a59aa92",
      "tree": "aeb5e3c56f4634ad3b391dd8a7eab1fce81f0eea",
      "parents": [
        "10746e47e722b5688fcd6eba9fbf9b2e64a248a7"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Sat Jul 18 18:15:00 2009 -0400"
      },
      "committer": {
        "name": "Felix Blyakher",
        "email": "felixb@sgi.com",
        "time": "Wed Aug 12 01:07:53 2009 -0500"
      },
      "message": "xfs: switch to NOFS allocation under i_lock in xfs_readlink_bmap\n\nxfs_readlink_bmap is called with i_lock held, but i_lock is taken in\nreclaim context so all allocations under it must avoid recursions into\nthe filesystem.\n\nReported by the new reclaim context tracing in lockdep.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Felix Blyakher \u003cfelixb@sgi.com\u003e\nSigned-off-by: Felix Blyakher \u003cfelixb@sgi.com\u003e\n"
    },
    {
      "commit": "10746e47e722b5688fcd6eba9fbf9b2e64a248a7",
      "tree": "5109c89eed3c087cf5889297881a5dc5d9efd3ce",
      "parents": [
        "36fae17a648e0aee5d9560514d08477ef48dc87f"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Sat Jul 18 18:14:59 2009 -0400"
      },
      "committer": {
        "name": "Felix Blyakher",
        "email": "felixb@sgi.com",
        "time": "Wed Aug 12 01:07:44 2009 -0500"
      },
      "message": "xfs: switch to NOFS allocation under i_lock in xfs_attr_rmtval_set\n\nxfs_attr_rmtval_set is always called with i_lock held, and i_lock is taken\nin reclaim context so all allocations under it must avoid recursions into\nthe filesystem.\n\nReported by the new reclaim context tracing in lockdep.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Felix Blyakher \u003cfelixb@sgi.com\u003e\nSigned-off-by: Felix Blyakher \u003cfelixb@sgi.com\u003e\n"
    },
    {
      "commit": "36fae17a648e0aee5d9560514d08477ef48dc87f",
      "tree": "ac01d872ec2f654e2c305485e79e95d05ccb0c27",
      "parents": [
        "3f52c2f0a07c23771909cc53f2e9451a7f1bf253"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Sat Jul 18 18:14:58 2009 -0400"
      },
      "committer": {
        "name": "Felix Blyakher",
        "email": "felixb@sgi.com",
        "time": "Wed Aug 12 01:07:38 2009 -0500"
      },
      "message": "xfs: switch to NOFS allocation under i_lock in xfs_buf_associate_memory\n\nxfs_buf_associate_memory is used for setting up the spare buffer for the\nlog wrap case in xlog_sync which can happen under i_lock when called from\nxfs_fsync. The i_lock mutex is taken in reclaim context so all allocations\nunder it must avoid recursions into the filesystem.  There are a couple\nmore uses of xfs_buf_associate_memory in the log recovery code that are\nalso affected by this, but I\u0027d rather keep the code simple than passing on\na gfp_mask argument.  Longer term we should just stop requiring the memoery\nallocation in xlog_sync by some smaller rework of the buffer layer.\n\nReported by the new reclaim context tracing in lockdep.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Felix Blyakher \u003cfelixb@sgi.com\u003e\nSigned-off-by: Felix Blyakher \u003cfelixb@sgi.com\u003e\n"
    },
    {
      "commit": "3f52c2f0a07c23771909cc53f2e9451a7f1bf253",
      "tree": "7341f0217f771cdc62cf799f79b4137ac3daf292",
      "parents": [
        "73195ed7864ae4a1fb0bea2ed9df59d19b4fde90"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Sat Jul 18 18:14:57 2009 -0400"
      },
      "committer": {
        "name": "Felix Blyakher",
        "email": "felixb@sgi.com",
        "time": "Wed Aug 12 01:07:23 2009 -0500"
      },
      "message": "xfs: switch to NOFS allocation under i_lock in xfs_dir_cilookup_result\n\nxfs_dir_cilookup_result is always called with i_lock held, but i_lock is taken\nin reclaim context so all allocations under it must avoid recursions into the\nfilesystem.\n\nReported by the new reclaim context tracing in lockdep.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Felix Blyakher \u003cfelixb@sgi.com\u003e\nSigned-off-by: Felix Blyakher \u003cfelixb@sgi.com\u003e\n"
    },
    {
      "commit": "73195ed7864ae4a1fb0bea2ed9df59d19b4fde90",
      "tree": "fa82fba833a12dec9f6f8113852266e2861b276c",
      "parents": [
        "f41d7fb9da05b604f8a69fb6cac2a0563c8ede4e"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Sat Jul 18 18:14:56 2009 -0400"
      },
      "committer": {
        "name": "Felix Blyakher",
        "email": "felixb@sgi.com",
        "time": "Wed Aug 12 01:07:14 2009 -0500"
      },
      "message": "xfs: switch to NOFS allocation under i_lock in xfs_da_buf_make\n\ni_lock is taken in the reclaim context so all allocations under it\nmust avoid recursions into the filesystem.\n\nReported by the new reclaim context tracing in lockdep.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Felix Blyakher \u003cfelixb@sgi.com\u003e\nSigned-off-by: Felix Blyakher \u003cfelixb@sgi.com\u003e\n"
    },
    {
      "commit": "f41d7fb9da05b604f8a69fb6cac2a0563c8ede4e",
      "tree": "7602eb7f81322551fd4fd8e37f11e05550bf49b2",
      "parents": [
        "ca35dcd6cae7d4a780c484c53f45548c4719f82c"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Sat Jul 18 18:14:55 2009 -0400"
      },
      "committer": {
        "name": "Felix Blyakher",
        "email": "felixb@sgi.com",
        "time": "Wed Aug 12 01:07:07 2009 -0500"
      },
      "message": "xfs: switch to NOFS allocation under i_lock in xfs_da_state_alloc\n\nxfs_da_state_alloc is always called with i_lock held, but i_lock is taken in\nreclaim context so all allocations under it must avoid recursions into the\nfilesystem.\n\nReported by the new reclaim context tracing in lockdep.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Felix Blyakher \u003cfelixb@sgi.com\u003e\nSigned-off-by: Felix Blyakher \u003cfelixb@sgi.com\u003e\n"
    },
    {
      "commit": "ca35dcd6cae7d4a780c484c53f45548c4719f82c",
      "tree": "ef2c93d8c55e075a8153e39eda7aa94464b64677",
      "parents": [
        "0cc6eee130b0c062feec8446d9cecdb17d2cfad3"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Sat Jul 18 18:14:54 2009 -0400"
      },
      "committer": {
        "name": "Felix Blyakher",
        "email": "felixb@sgi.com",
        "time": "Wed Aug 12 01:06:59 2009 -0500"
      },
      "message": "xfs: switch to NOFS allocation under i_lock in xfs_getbmap\n\nxfs_getbmap allocates memory with i_lock held, but i_lock is taken in\nreclaim context so all allocations under it must avoid recursions into\nthe filesystem.\n\nReported by the new reclaim context tracing in lockdep.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Felix Blyakher \u003cfelixb@sgi.com\u003e\nSigned-off-by: Felix Blyakher \u003cfelixb@sgi.com\u003e\n"
    },
    {
      "commit": "0cc6eee130b0c062feec8446d9cecdb17d2cfad3",
      "tree": "488cbdb1fb8623285c4fb7c3a913516d7b7905d2",
      "parents": [
        "c8a4051c3731b6db224482218cfd535ab9393ff8"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Sat Jul 18 18:14:53 2009 -0400"
      },
      "committer": {
        "name": "Felix Blyakher",
        "email": "felixb@sgi.com",
        "time": "Wed Aug 12 01:06:51 2009 -0500"
      },
      "message": "xfs: avoid memory allocation under m_peraglock in growfs code\n\nAllocate the memory for the larger m_perag array before taking the\nper-AG lock as the per-AG lock can be taken under the i_lock which\ncan be taken from reclaim context.\n\nReported by the new reclaim context tracing in lockdep.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Felix Blyakher \u003cfelixb@sgi.com\u003e\nSigned-off-by: Felix Blyakher \u003cfelixb@sgi.com\u003e\n"
    },
    {
      "commit": "b409d7a0ab46fe530efe52734984b4ed5d46c3eb",
      "tree": "f9f7861ff8b943ee905dc16a8290cac757df391e",
      "parents": [
        "8a57a9dda760ea7845390f1cd36f3eb2a49391d8"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Thu Aug 06 23:29:34 2009 +0200"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Mon Aug 10 12:20:22 2009 -0700"
      },
      "message": "ocfs2: Fix possible deadlock when extending quota file\n\nIn OCFS2, allocator locks rank above transaction start. Thus we\ncannot extend quota file from inside a transaction less we could\ndeadlock.\n\nWe solve the problem by starting transaction not already in\nocfs2_acquire_dquot() but only in ocfs2_local_read_dquot() and\nocfs2_global_read_dquot() and we allocate blocks to quota files before starting\nthe transaction.  In case we crash, quota files will just have a few blocks\nmore but that\u0027s no problem since we just use them next time we extend the\nquota file.\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "704b836cbf19e885f8366bccb2e4b0474346c02d",
      "tree": "d0513d3ef70e1b875cd7786f94150ba2428b6a88",
      "parents": [
        "00f89d218523b9bf6b522349c039d5ac80aa536d"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Fri Jul 10 03:27:40 2009 +0200"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Mon Aug 10 20:49:26 2009 +1000"
      },
      "message": "mm_for_maps: take -\u003ecred_guard_mutex to fix the race with exec\n\nThe problem is minor, but without -\u003ecred_guard_mutex held we can race\nwith exec() and get the new -\u003emm but check old creds.\n\nNow we do not need to re-check task-\u003emm after ptrace_may_access(), it\ncan\u0027t be changed to the new mm under us.\n\nStrictly speaking, this also fixes another very minor problem. Unless\nsecurity check fails or the task exits mm_for_maps() should never\nreturn NULL, the caller should get either old or new -\u003emm.\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nAcked-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "00f89d218523b9bf6b522349c039d5ac80aa536d",
      "tree": "cde7a8bde2798e4fb3ae28756f6cedd4db9191cc",
      "parents": [
        "13f0feafa6b8aead57a2a328e2fca6a5828bf286"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Fri Jul 10 03:27:38 2009 +0200"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Mon Aug 10 20:48:32 2009 +1000"
      },
      "message": "mm_for_maps: shift down_read(mmap_sem) to the caller\n\nmm_for_maps() takes -\u003emmap_sem after security checks, this looks\nstrange and obfuscates the locking rules. Move this lock to its\nsingle caller, m_start().\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nAcked-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "13f0feafa6b8aead57a2a328e2fca6a5828bf286",
      "tree": "fb396118339319406daf7f6782782eaef31b3b53",
      "parents": [
        "f4b9a988685da6386d7f9a72df3098bcc3270526"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Tue Jun 23 21:25:32 2009 +0200"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Mon Aug 10 20:47:42 2009 +1000"
      },
      "message": "mm_for_maps: simplify, use ptrace_may_access()\n\nIt would be nice to kill __ptrace_may_access(). It requires task_lock(),\nbut this lock is only needed to read mm-\u003eflags in the middle.\n\nConvert mm_for_maps() to use ptrace_may_access(), this also simplifies\nthe code a little bit.\n\nAlso, we do not need to take -\u003emmap_sem in advance. In fact I think\nmm_for_maps() should not play with -\u003emmap_sem at all, the caller should\ntake this lock.\n\nWith or without this patch, without -\u003ecred_guard_mutex held we can race\nwith exec() and get the new -\u003emm but check old creds.\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nReviewed-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "d6a0967c90dced0a8baf502e6f3d5862fd5a5805",
      "tree": "e0242d5077730dabc4102b7abad9ee0c41e33bc0",
      "parents": [
        "fb385003c4ac9634cf2448f6ded81e5fd1190c1f",
        "ceab36edd3d3ad3ffd01d41d6d1e05ac1ff8357e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 07 19:03:09 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 07 19:03:09 2009 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable:\n  Btrfs: fix balancing oops when invalidate_inode_pages2 returns EBUSY\n  Btrfs: correct error-handling zlib error handling\n  Btrfs: remove superfluous NULL pointer check in btrfs_rename()\n  Btrfs: make sure the async caching thread advances the key\n  Btrfs: fix btrfs_remove_from_free_space corner case\n"
    },
    {
      "commit": "fb385003c4ac9634cf2448f6ded81e5fd1190c1f",
      "tree": "3a6068559cef144c04b96372ee0eecf20dfb108b",
      "parents": [
        "36b8659f9316b24c514a7c8290596b2382b91dd2",
        "b36ec0428a06fcbdb67d61e9e664154e5dd9a8c7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 07 18:53:44 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 07 18:53:44 2009 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/hch/xfs-icache-races\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/hch/xfs-icache-races:\n  xfs: fix freeing of inodes not yet added to the inode cache\n  vfs: add __destroy_inode\n  vfs: fix inode_init_always calling convention\n"
    },
    {
      "commit": "8a57a9dda760ea7845390f1cd36f3eb2a49391d8",
      "tree": "67c6566851787cd5836e763d63b069144743e4da",
      "parents": [
        "e7432675f8ca868a4af365759a8d4c3779a3d922"
      ],
      "author": {
        "name": "Roel Kluin",
        "email": "roel.kluin@gmail.com",
        "time": "Thu Aug 06 16:07:50 2009 -0700"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Fri Aug 07 13:16:50 2009 -0700"
      },
      "message": "ocfs2: keep index within status_map[]\n\nDo not exceed array status_map[]\n\nSigned-off-by: Roel Kluin \u003croel.kluin@gmail.com\u003e\nCc: Mark Fasheh \u003cmfasheh@suse.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "e7432675f8ca868a4af365759a8d4c3779a3d922",
      "tree": "238d57e12fae632c9baeca98ddec701b3391ff29",
      "parents": [
        "ab57a40827d99e2d8e59066a56b93bf6c844c916"
      ],
      "author": {
        "name": "Sunil Mushran",
        "email": "sunil.mushran@oracle.com",
        "time": "Thu Aug 06 16:12:58 2009 -0700"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Fri Aug 07 13:16:23 2009 -0700"
      },
      "message": "ocfs2: Initialize the cluster we\u0027re writing to in a non-sparse extend\n\nIn a non-sparse extend, we correctly allocate (and zero) the clusters between\nthe old_i_size and pos, but we don\u0027t zero the portions of the cluster we\u0027re\nwriting to outside of pos\u003c-\u003elen.\n\nIt handles clustersize \u003e pagesize and blocksize \u003c pagesize.\n\n[Cleaned up by Joel Becker.]\n\nSigned-off-by: Sunil Mushran \u003csunil.mushran@oracle.com\u003e\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "ceab36edd3d3ad3ffd01d41d6d1e05ac1ff8357e",
      "tree": "a6d899030878d52ae6d7932e459deece3524c787",
      "parents": [
        "60f2e8f8a07331097a57ec4abcdc680405579377"
      ],
      "author": {
        "name": "Yan Zheng",
        "email": "zheng.yan@oracle.com",
        "time": "Fri Aug 07 13:51:33 2009 -0400"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Fri Aug 07 13:51:33 2009 -0400"
      },
      "message": "Btrfs: fix balancing oops when invalidate_inode_pages2 returns EBUSY\n\ninvalidate_inode_pages2_range may return -EBUSY occasionally\nwhich results Oops. This patch fixes the issue by moving\ninvalidate_inode_pages2_range into a loop and keeping calling\nit until the return value is not -EBUSY.\n\nThe EBUSY return is temporary, and can happen when the btrfs release page\nfunction is unable to release a page because the EXTENT_LOCK\nbit is set.\n\nSigned-off-by: Yan Zheng \u003czheng.yan@oracle.com\u003e\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n"
    },
    {
      "commit": "60f2e8f8a07331097a57ec4abcdc680405579377",
      "tree": "6ed3c6c8fc2ad4c824c7d2c942fe7d3ece924dc7",
      "parents": [
        "4baf8c9201e88546918cbfa61ea8062c38bc1644"
      ],
      "author": {
        "name": "Julia Lawall",
        "email": "julia@diku.dk",
        "time": "Fri Aug 07 13:51:33 2009 -0400"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Fri Aug 07 13:51:33 2009 -0400"
      },
      "message": "Btrfs: correct error-handling zlib error handling\n\nfind_zlib_workspace returns an ERR_PTR value in an error case instead of NULL.\n\nA simplified version of the semantic match that finds this problem is as\nfollows: (http://coccinelle.lip6.fr/)\n\n// \u003csmpl\u003e\n@match exists@\nexpression x, E;\nstatement S1, S2;\n@@\n\nx \u003d find_zlib_workspace(...)\n... when !\u003d x \u003d E\n(\n*  if (x \u003d\u003d NULL || ...) S1 else S2\n|\n*  if (x \u003d\u003d NULL \u0026\u0026 ...) S1 else S2\n)\n// \u003c/smpl\u003e\n\nSigned-off-by: Julia Lawall \u003cjulia@diku.dk\u003e\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n"
    },
    {
      "commit": "4baf8c9201e88546918cbfa61ea8062c38bc1644",
      "tree": "7ea84d6155aa7b4e246df56ea0f79d5b3da08d87",
      "parents": [
        "013f1b12f4fc479f697acae2f31bad220162cd03"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Aug 07 13:47:08 2009 -0400"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Fri Aug 07 13:47:08 2009 -0400"
      },
      "message": "Btrfs: remove superfluous NULL pointer check in btrfs_rename()\n\nThis takes care of the following entry from Dan\u0027s list:\n\nfs/btrfs/inode.c +4788 btrfs_rename(36) warning: variable derefenced before check \u0027old_inode\u0027\n\nReported-by: Dan Carpenter \u003cerror27@gmail.com\u003e\nCc: Jonathan Corbet \u003ccorbet@lwn.net\u003e\nCc: Eugene Teo \u003ceteo@redhat.com\u003e\nCc: Julia Lawall \u003cjulia@diku.dk\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n"
    },
    {
      "commit": "389623fef0e8b088f293c437d3b7094fe82349fd",
      "tree": "e7e7175531f9ee9a7b215fe6b8c62674fb32862a",
      "parents": [
        "385861206c21364c01dcfdda5064643ce111d517",
        "57ca7deb062abf56168d15f000c16e25f88a9cf3"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 07 10:42:31 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 07 10:42:31 2009 -0700"
      },
      "message": "Merge git://git.infradead.org/mtd-2.6\n\n* git://git.infradead.org/mtd-2.6:\n  jffs2: Fix return value from jffs2_do_readpage_nolock()\n  mtd: mtdblock: introduce mtdblks_lock\n  mtd: remove \u0027SBC8240 Wind River\u0027 Device Driver Code\n  mtd: OneNAND: OMAP2/3: free GPMC CS on module removal\n  mtd: OneNAND: fix incorrect bufferram offset\n  mtd: blkdevs: do not forget to get MTD devices\n  mtd: fix the conversion from dev to mtd_info\n  mtd: let include/linux/mtd/partitions.h stand on its own\n"
    },
    {
      "commit": "3440625d78711bee41a84cf29c3d8c579b522666",
      "tree": "c430bf6cc2b0f5ad4ce9464f378f14824e7fc28b",
      "parents": [
        "9e5cf0ca2e9b65110ae5f094d7f0f7165cd1bbbb"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Aug 06 15:09:34 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 07 10:39:57 2009 -0700"
      },
      "message": "flat: fix uninitialized ptr with shared libs\n\nThe new credentials code broke load_flat_shared_library() as it now uses\nan uninitialized cred pointer.\n\nReported-by: Bernd Schmidt \u003cbernds_cb1@t-online.de\u003e\nTested-by: Bernd Schmidt \u003cbernds_cb1@t-online.de\u003e\nCc: Mike Frysinger \u003cvapier@gentoo.org\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: \u003cstable@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": "2d8dd38a5aa0cc2490bbad9b75e77fa154e1d145",
      "tree": "dcc1ec93e95dde5704a7e37939454c9b24904758",
      "parents": [
        "69130c7cf96ea853dc5be599dd6a4b98907d39cc"
      ],
      "author": {
        "name": "OGAWA Hirofumi",
        "email": "hirofumi@mail.parknet.co.jp",
        "time": "Thu Aug 06 15:07:39 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 07 10:39:56 2009 -0700"
      },
      "message": "vfs: mnt_want_write_file(): fix special file handling\n\nI suspect that mnt_want_write_file() may have wrong assumption.  I think\nmnt_want_write_file() is assuming it increments -\u003emnt_writers if\n(file-\u003ef_mode \u0026 FMODE_WRITE).  But, if it\u0027s special_file(), it is false?\n\nSigned-off-by: OGAWA Hirofumi \u003chirofumi@mail.parknet.co.jp\u003e\nAcked-by: Dave Hansen \u003cdave@linux.vnet.ibm.com\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "69130c7cf96ea853dc5be599dd6a4b98907d39cc",
      "tree": "9ac97112a66388664534436ee88903e01fa1f705",
      "parents": [
        "0035fe00f77d2b0a1a2d001f7442136d1ec5aefa"
      ],
      "author": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Thu Aug 06 15:07:37 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 07 10:39:56 2009 -0700"
      },
      "message": "compat_ioctl: hook up compat handler for FIEMAP ioctl\n\nThe FIEMAP_IOC_FIEMAP mapping ioctl was missing a 32-bit compat handler,\nwhich means that 32-bit suerspace on 64-bit kernels cannot use this ioctl\ncommand.\n\nThe structure is nicely aligned, padded, and sized, so it is just this\nsimple.\n\nTested w/ 32-bit ioctl tester (from Josef) on a 64-bit kernel on ext4.\n\nSigned-off-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nCc: Mark Lord \u003clkml@rtr.ca\u003e\nCc: Arnd Bergmann \u003carnd@arndb.de\u003e\nCc: Josef Bacik \u003cjosef@redhat.com\u003e\nCc: Jan Kara \u003cjack@suse.cz\u003e\nCc: \u003cstable@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": "b36ec0428a06fcbdb67d61e9e664154e5dd9a8c7",
      "tree": "556cb840214cdff185dfd419bed6dc876a58ae01",
      "parents": [
        "2e00c97e2c1d2ffc9e26252ca26b237678b0b772"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Fri Aug 07 14:38:34 2009 -0300"
      },
      "committer": {
        "name": "Christoph Hellwig",
        "email": "hch@brick.lst.de",
        "time": "Fri Aug 07 14:38:34 2009 -0300"
      },
      "message": "xfs: fix freeing of inodes not yet added to the inode cache\n\nWhen freeing an inode that lost race getting added to the inode cache we\nmust not call into -\u003edestroy_inode, because that would delete the inode\nthat won the race from the inode cache radix tree.\n\nThis patch uses splits a new xfs_inode_free helper out of xfs_ireclaim\nand uses that plus __destroy_inode to make sure we really only free\nthe memory allocted for the inode that lost the race, and not mess with\nthe inode cache state.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\nReported-by: Alex Samad \u003calex@samad.com.au\u003e\nReported-by: Andrew Randrianasulu \u003crandrik@mail.ru\u003e\nReported-by: Stephane \u003csharnois@max-t.com\u003e\nReported-by: Tommy \u003ctommy@news-service.com\u003e\nReported-by: Miah Gregory \u003cmace@darksilence.net\u003e\nReported-by: Gabriel Barazer \u003cgabriel@oxeva.fr\u003e\nReported-by: Leandro Lucarella \u003cllucax@gmail.com\u003e\nReported-by: Daniel Burr \u003cdburr@fami.com.au\u003e\nReported-by: Nickolay \u003cnewmail@spaces.ru\u003e\nReported-by: Michael Guntsche \u003cmike@it-loops.com\u003e\nReported-by: Dan Carley \u003cdan.carley+linuxkern-bugs@gmail.com\u003e\nReported-by: Michael Ole Olsen \u003cgnu@gmx.net\u003e\nReported-by: Michael Weissenbacher \u003cmw@dermichi.com\u003e\nReported-by: Martin Spott \u003cMartin.Spott@mgras.net\u003e\nReported-by: Christian Kujau \u003clists@nerdbynature.de\u003e\nTested-by: Michael Guntsche \u003cmike@it-loops.com\u003e\nTested-by: Dan Carley \u003cdan.carley+linuxkern-bugs@gmail.com\u003e\nTested-by: Christian Kujau \u003clists@nerdbynature.de\u003e\n"
    },
    {
      "commit": "2e00c97e2c1d2ffc9e26252ca26b237678b0b772",
      "tree": "e2c65f473e079c4b6027f7f8b7224febe7483884",
      "parents": [
        "54e346215e4fe2ca8c94c54e546cc61902060510"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Fri Aug 07 14:38:29 2009 -0300"
      },
      "committer": {
        "name": "Christoph Hellwig",
        "email": "hch@brick.lst.de",
        "time": "Fri Aug 07 14:38:29 2009 -0300"
      },
      "message": "vfs: add __destroy_inode\n\nWhen we want to tear down an inode that lost the add to the cache race\nin XFS we must not call into -\u003edestroy_inode because that would delete\nthe inode that won the race from the inode cache radix tree.\n\nThis patch provides the __destroy_inode helper needed to fix this,\nthe actual fix will be in th next patch.  As XFS was the only reason\ndestroy_inode was exported we shift the export to the new __destroy_inode.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n"
    },
    {
      "commit": "54e346215e4fe2ca8c94c54e546cc61902060510",
      "tree": "9b4ed9b0ab78117ba1a41db7073708031622cf10",
      "parents": [
        "90bc1a658a53f8832ee799685703977a450e5af9"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Fri Aug 07 14:38:25 2009 -0300"
      },
      "committer": {
        "name": "Christoph Hellwig",
        "email": "hch@brick.lst.de",
        "time": "Fri Aug 07 14:38:25 2009 -0300"
      },
      "message": "vfs: fix inode_init_always calling convention\n\nCurrently inode_init_always calls into -\u003edestroy_inode if the additional\ninitialization fails.  That\u0027s not only counter-intuitive because\ninode_init_always did not allocate the inode structure, but in case of\nXFS it\u0027s actively harmful as -\u003edestroy_inode might delete the inode from\na radix-tree that has never been added.  This in turn might end up\ndeleting the inode for the same inum that has been instanciated by\nanother process and cause lots of cause subtile problems.\n\nAlso in the case of re-initializing a reclaimable inode in XFS it would\nfree an inode we still want to keep alive.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n"
    },
    {
      "commit": "624720e09c9b7913ef4bc6989878a6fcb7ecdff8",
      "tree": "be36dc1fc45a4cf5d5100ca5252e6aa3b465fbe2",
      "parents": [
        "849c9caa60642095060e9c21f14687ae9149a6f3",
        "01a261e09a21e0ba342d3907a79cf5c78ee3f37a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 04 15:28:23 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 04 15:28:23 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ryusuke/nilfs2\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ryusuke/nilfs2:\n  nilfs2: fix missing unlock in error path of nilfs_mdt_write_page\n  nilfs2: fix oops due to inconsistent state in page with discrete b-tree nodes\n"
    },
    {
      "commit": "849c9caa60642095060e9c21f14687ae9149a6f3",
      "tree": "b33da1ea12f55ad11b547fc723f72b22e1d9cecc",
      "parents": [
        "a33a052f19a21d727847391c8c1aff3fb221c472",
        "d098564f3b2b5d555e51bca765a6a9e0dda8f2cd"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 04 15:27:56 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 04 15:27:56 2009 -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] Update readme to reflect forceuid mount parms\n  cifs: Read buffer overflow\n  cifs: show noforceuid/noforcegid mount options (try #2)\n  cifs: reinstate original behavior when uid\u003d/gid\u003d options are specified\n  [CIFS] Updates fs/cifs/CHANGES\n  cifs: fix error handling in mount-time DFS referral chasing code\n"
    },
    {
      "commit": "57ca7deb062abf56168d15f000c16e25f88a9cf3",
      "tree": "f9dac86ff98ca5f40498834fbd74559437398329",
      "parents": [
        "d676c11727815761e41a81b00c054b4bec452ae5"
      ],
      "author": {
        "name": "Anders Grafström",
        "email": "grfstrm@users.sourceforge.net",
        "time": "Tue Aug 04 13:11:47 2009 +0200"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Tue Aug 04 12:13:06 2009 +0100"
      },
      "message": "jffs2: Fix return value from jffs2_do_readpage_nolock()\n\nThis fixes \"kernel BUG at fs/jffs2/file.c:251!\".\nThis pseudocode hopefully illustrates the scenario that triggers it:\n\njffs2_write_begin {\n     jffs2_do_readpage_nolock {\n         jffs2_read_inode_range {\n             jffs2_read_dnode {\n                 Data CRC 33c102e9 !\u003d calculated CRC 0ef77e7b for node at 005d42e4\n                 return -EIO;\n             }\n         }\n         ClearPageUptodate(pg);\n         return 0;\n     }\n}\n\njffs2_write_end {\n     BUG_ON(!PageUptodate(pg));\n}\n\nSigned-off-by: Anders Grafström \u003cgrfstrm@users.sourceforge.net\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "d098564f3b2b5d555e51bca765a6a9e0dda8f2cd",
      "tree": "4408cca53ee3a1c024514d1dd06cedd58bc5af48",
      "parents": [
        "24e2fb615fd6b624c320cec9ea9d91a75dad902e"
      ],
      "author": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Tue Aug 04 03:53:28 2009 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Tue Aug 04 03:53:28 2009 +0000"
      },
      "message": "[CIFS] Update readme to reflect forceuid mount parms\n\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "24e2fb615fd6b624c320cec9ea9d91a75dad902e",
      "tree": "f6849650d675636490a14659228ce9a18004bc77",
      "parents": [
        "4486d6ede16b362f89b29845af6fe1a26ae78a54"
      ],
      "author": {
        "name": "Roel Kluin",
        "email": "roel.kluin@gmail.com",
        "time": "Sun Aug 02 13:00:18 2009 +0200"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Mon Aug 03 21:01:32 2009 +0000"
      },
      "message": "cifs: Read buffer overflow\n\nCheck whether index is within bounds before testing the element.\n\nAcked-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Roel Kluin \u003croel.kluin@gmail.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "4486d6ede16b362f89b29845af6fe1a26ae78a54",
      "tree": "b96bb887453baccdcfe1a0afee0f6cc9e7aaae4a",
      "parents": [
        "9b9d6b2434fe942895c341b9a982f158529788ec"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Mon Aug 03 12:45:10 2009 -0400"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Mon Aug 03 21:01:17 2009 +0000"
      },
      "message": "cifs: show noforceuid/noforcegid mount options (try #2)\n\nSince forceuid is the default, we now need to show when it\u0027s disabled.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "01a261e09a21e0ba342d3907a79cf5c78ee3f37a",
      "tree": "e26e8008ce2de35afe2703529d771268a256329f",
      "parents": [
        "a97778457f22181e8c38c4cd7d7e528378738a98"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Sun Aug 02 17:45:55 2009 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Sun Aug 02 22:24:15 2009 +0900"
      },
      "message": "nilfs2: fix missing unlock in error path of nilfs_mdt_write_page\n\nThis adds a missing unlock of nilfs-\u003ens_writer_mutex in\nnilfs_mdt_write_page() function.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "9b9d6b2434fe942895c341b9a982f158529788ec",
      "tree": "402b7f233fae53f45d5ad3a445360200b6fa2cc7",
      "parents": [
        "5bd9052d79daa4c8beb45436c408b6de672adb82"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Fri Jul 31 06:56:09 2009 -0400"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Sun Aug 02 03:47:25 2009 +0000"
      },
      "message": "cifs: reinstate original behavior when uid\u003d/gid\u003d options are specified\n\nThis patch fixes the regression reported here:\n\nhttp://bugzilla.kernel.org/show_bug.cgi?id\u003d13861\n\ncommit 4ae1507f6d266d0cc3dd36e474d83aad70fec9e4 changed the default\nbehavior when the uid\u003d or gid\u003d option was specified for a mount. The\nexisting behavior was to always clobber the ownership information\nprovided by the server when these options were specified. The above\ncommit changed this behavior so that these options simply provided\ndefaults when the server did not provide this information (unless\n\"forceuid\" or \"forcegid\" were specified)\n\nThis patch reverts this change so that the default behavior is restored.\nIt also adds \"noforceuid\" and \"noforcegid\" options to make it so that\nownership information from the server is preserved, even when the mount\nhas uid\u003d or gid\u003d options specified.\n\nIt also adds a couple of printk notices that pop up when forceuid or\nforcegid options are specified without a uid\u003d or gid\u003d option.\n\nReported-by: Tom Chiverton \u003cbugzilla.kernel.org@falkensweb.com\u003e\nReviewed-by: Shirish Pargaonkar \u003cshirishp@us.ibm.com\u003e\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "a97778457f22181e8c38c4cd7d7e528378738a98",
      "tree": "d2ee3d9491ab2b17551f099d9a6119407700dbd2",
      "parents": [
        "ed680c4ad478d0fee9740f7d029087f181346564"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Tue Jul 28 17:55:29 2009 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Sat Aug 01 22:48:32 2009 +0900"
      },
      "message": "nilfs2: fix oops due to inconsistent state in page with discrete b-tree nodes\n\nAndrea Gelmini gave me a report that a kernel oops hit on a nilfs\nfilesystem with a 1KB block size when doing rsync.\n\nThis turned out to be caused by an inconsistency of dirty state\nbetween a page and its buffers storing b-tree node blocks.\n\nIf the page had multiple buffers split over multiple logs, and if the\nlogs were written at a time, a dirty flag remained in the page even\nevery dirty flag in the buffers was cleared.\n\nThis will fix the failure by dropping the dirty flag properly for\npages with the discrete multiple b-tree nodes.\n\nReported-by: Andrea Gelmini \u003candrea.gelmini@gmail.com\u003e\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\nTested-by: Andrea Gelmini \u003candrea.gelmini@gmail.com\u003e\nCc: stable@kernel.org\n"
    }
  ],
  "next": "ab57a40827d99e2d8e59066a56b93bf6c844c916"
}
