)]}'
{
  "log": [
    {
      "commit": "3446a8aa7ebcbc0a799e5e8fc4f2da0738d6bc21",
      "tree": "f2b98dd31f1d94a235fbb536adc3123f0413effb",
      "parents": [
        "1744a21d57d9c60136461adb6afa85e51b3e94d9"
      ],
      "author": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Sat May 16 11:22:14 2009 +0200"
      },
      "committer": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Mon Jun 15 15:49:39 2009 +0200"
      },
      "message": "fs: introduce __getname_gfp()\n\nThe purpose of this change is to allow __getname() users to pass a\ncustom GFP mask to kmem_cache_alloc(). This is needed for annotating\na certain kmemcheck false positive.\n\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Vegard Nossum \u003cvegard.nossum@gmail.com\u003e\n"
    },
    {
      "commit": "1744a21d57d9c60136461adb6afa85e51b3e94d9",
      "tree": "62fdc4342e21835dc7fd8572b2ed1628324a0c12",
      "parents": [
        "a98b65a3ad71e702e760bc63f57684301628e837"
      ],
      "author": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Sat Feb 28 08:29:44 2009 +0100"
      },
      "committer": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Mon Jun 15 15:49:37 2009 +0200"
      },
      "message": "trace: annotate bitfields in struct ring_buffer_event\n\nThis gets rid of a heap of false-positive warnings from the tracer\ncode due to the use of bitfields.\n\n[rebased for mainline inclusion]\nSigned-off-by: Vegard Nossum \u003cvegard.nossum@gmail.com\u003e\n"
    },
    {
      "commit": "a98b65a3ad71e702e760bc63f57684301628e837",
      "tree": "6ec3d174f315e9b77faf25c354f5eda99bd31301",
      "parents": [
        "c53bd2e1949ddbe06fe2a6079c0658d58ce25edb"
      ],
      "author": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Thu Feb 26 14:46:57 2009 +0100"
      },
      "committer": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Mon Jun 15 15:49:36 2009 +0200"
      },
      "message": "net: annotate struct sock bitfield\n\n2009/2/24 Ingo Molnar \u003cmingo@elte.hu\u003e:\n\u003e ok, this is the last warning i have from today\u0027s overnight -tip\n\u003e testruns - a 32-bit system warning in sock_init_data():\n\u003e\n\u003e [    2.610389] NET: Registered protocol family 16\n\u003e [    2.616138] initcall netlink_proto_init+0x0/0x170 returned 0 after 7812 usecs\n\u003e [    2.620010] WARNING: kmemcheck: Caught 32-bit read from uninitialized memory (f642c184)\n\u003e [    2.624002] 010000000200000000000000604990c000000000000000000000000000000000\n\u003e [    2.634076]  i i i i i i u u i i i i i i i i i i i i i i i i i i i i i i i i\n\u003e [    2.641038]          ^\n\u003e [    2.643376]\n\u003e [    2.644004] Pid: 1, comm: swapper Not tainted (2.6.29-rc6-tip-01751-g4d1c22c-dirty #885)\n\u003e [    2.648003] EIP: 0060:[\u003cc07141a1\u003e] EFLAGS: 00010282 CPU: 0\n\u003e [    2.652008] EIP is at sock_init_data+0xa1/0x190\n\u003e [    2.656003] EAX: 0001a800 EBX: f6836c00 ECX: 00463000 EDX: c0e46fe0\n\u003e [    2.660003] ESI: f642c180 EDI: c0b83088 EBP: f6863ed8 ESP: c0c412ec\n\u003e [    2.664003]  DS: 007b ES: 007b FS: 00d8 GS: 00e0 SS: 0068\n\u003e [    2.668003] CR0: 8005003b CR2: f682c400 CR3: 00b91000 CR4: 000006f0\n\u003e [    2.672003] DR0: 00000000 DR1: 00000000 DR2: 00000000 DR3: 00000000\n\u003e [    2.676003] DR6: ffff4ff0 DR7: 00000400\n\u003e [    2.680002]  [\u003cc07423e5\u003e] __netlink_create+0x35/0xa0\n\u003e [    2.684002]  [\u003cc07443cc\u003e] netlink_kernel_create+0x4c/0x140\n\u003e [    2.688002]  [\u003cc072755e\u003e] rtnetlink_net_init+0x1e/0x40\n\u003e [    2.696002]  [\u003cc071b601\u003e] register_pernet_operations+0x11/0x30\n\u003e [    2.700002]  [\u003cc071b72c\u003e] register_pernet_subsys+0x1c/0x30\n\u003e [    2.704002]  [\u003cc0bf3c8c\u003e] rtnetlink_init+0x4c/0x100\n\u003e [    2.708002]  [\u003cc0bf4669\u003e] netlink_proto_init+0x159/0x170\n\u003e [    2.712002]  [\u003cc0101124\u003e] do_one_initcall+0x24/0x150\n\u003e [    2.716002]  [\u003cc0bbf3c7\u003e] do_initcalls+0x27/0x40\n\u003e [    2.723201]  [\u003cc0bbf3fc\u003e] do_basic_setup+0x1c/0x20\n\u003e [    2.728002]  [\u003cc0bbfb8a\u003e] kernel_init+0x5a/0xa0\n\u003e [    2.732002]  [\u003cc0103e47\u003e] kernel_thread_helper+0x7/0x10\n\u003e [    2.736002]  [\u003cffffffff\u003e] 0xffffffff\n\nWe fix this false positive by annotating the bitfield in struct\nsock.\n\nReported-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Vegard Nossum \u003cvegard.nossum@gmail.com\u003e\n"
    },
    {
      "commit": "c53bd2e1949ddbe06fe2a6079c0658d58ce25edb",
      "tree": "a9663b949ab413031f09115aef2bf3bf5305ab27",
      "parents": [
        "9e337b0fb3baa3c22490365b1bdee6f4741413d4"
      ],
      "author": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Thu Feb 26 14:05:59 2009 +0100"
      },
      "committer": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Mon Jun 15 15:49:34 2009 +0200"
      },
      "message": "c2port: annotate bitfield for kmemcheck\n\nThis silences a false positive warning with kmemcheck.\n\nSigned-off-by: Vegard Nossum \u003cvegard.nossum@gmail.com\u003e\n"
    },
    {
      "commit": "9e337b0fb3baa3c22490365b1bdee6f4741413d4",
      "tree": "bba282e16e73c7e911e1a83ffe249a0ae05b4f1d",
      "parents": [
        "96c25c81ecf452b778e2f432bd17c95de637d129"
      ],
      "author": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Sat Oct 18 17:37:51 2008 +0200"
      },
      "committer": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Mon Jun 15 15:49:32 2009 +0200"
      },
      "message": "net: annotate inet_timewait_sock bitfields\n\nThe use of bitfields here would lead to false positive warnings with\nkmemcheck. Silence them.\n\n(Additionally, one erroneous comment related to the bitfield was also\nfixed.)\n\nSigned-off-by: Vegard Nossum \u003cvegard.nossum@gmail.com\u003e\n"
    },
    {
      "commit": "96c25c81ecf452b778e2f432bd17c95de637d129",
      "tree": "813f07c6ae1aa38b9bf41cfc6a19e76a6b561817",
      "parents": [
        "004cdb5a718fa2bb697c541eb1171ee817fc72f1"
      ],
      "author": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Thu Sep 11 20:59:03 2008 +0200"
      },
      "committer": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Mon Jun 15 15:49:31 2009 +0200"
      },
      "message": "ieee1394/csr1212: fix false positive kmemcheck report\n\nkmemcheck reports a use of uninitialized memory here, but it\u0027s not\na real error. The structure in question has just been allocated, and\nthe whole field is initialized, but it happens in two steps.\n\nWe fix the false positive by inserting a kmemcheck annotation.\n\nSigned-off-by: Vegard Nossum \u003cvegard.nossum@gmail.com\u003e\n"
    },
    {
      "commit": "004cdb5a718fa2bb697c541eb1171ee817fc72f1",
      "tree": "d3ceaf1bc48d1978f9c51e46b29a44273c274126",
      "parents": [
        "45e3ff82708c65c895d5c5882aff17ecf62a80b5"
      ],
      "author": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Wed Sep 10 15:15:23 2008 +0200"
      },
      "committer": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Mon Jun 15 15:49:29 2009 +0200"
      },
      "message": "ieee1394: annotate bitfield\n\nSigned-off-by: Vegard Nossum \u003cvegard.nossum@gmail.com\u003e\n"
    },
    {
      "commit": "45e3ff82708c65c895d5c5882aff17ecf62a80b5",
      "tree": "31171009a60298b436b7e838497c16db4a2a2fc6",
      "parents": [
        "fe55f6d5c0cfec4a710ef6ff63f162b99d5f7842"
      ],
      "author": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Tue Sep 09 06:43:12 2008 +0200"
      },
      "committer": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Mon Jun 15 15:49:27 2009 +0200"
      },
      "message": "net: annotate bitfields in struct inet_sock\n\nSigned-off-by: Vegard Nossum \u003cvegard.nossum@gmail.com\u003e\n"
    },
    {
      "commit": "fe55f6d5c0cfec4a710ef6ff63f162b99d5f7842",
      "tree": "4c4f0960d7355647e67f62e30e10c9215c123b65",
      "parents": [
        "fc7d0c9f2122e8bf58deaf1252b0e750df5b0e91"
      ],
      "author": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Sat Aug 30 12:16:35 2008 +0200"
      },
      "committer": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Mon Jun 15 15:49:25 2009 +0200"
      },
      "message": "net: use kmemcheck bitfields API for skbuff\n\nSigned-off-by: Vegard Nossum \u003cvegard.nossum@gmail.com\u003e\n"
    },
    {
      "commit": "fc7d0c9f2122e8bf58deaf1252b0e750df5b0e91",
      "tree": "9279ca21566062038582682e59accccfa904054d",
      "parents": [
        "ac61a7579625ddfca3b2e0aa298879a94d15884d"
      ],
      "author": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Sat Aug 30 12:16:05 2008 +0200"
      },
      "committer": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Mon Jun 15 15:49:23 2009 +0200"
      },
      "message": "kmemcheck: introduce bitfield API\n\nAdd the bitfield API which can be used to annotate bitfields in structs\nand get rid of false positive reports.\n\nAccording to Al Viro, the syntax we were using (putting #ifdef inside\nmacro arguments) was not valid C. He also suggested using begin/end\nmarkers instead, which is what we do now.\n\n[rebased for mainline inclusion]\nSigned-off-by: Vegard Nossum \u003cvegard.nossum@gmail.com\u003e\n"
    },
    {
      "commit": "ac61a7579625ddfca3b2e0aa298879a94d15884d",
      "tree": "adb11c2513bfdb4825e1ac213f8116d7280ac4a9",
      "parents": [
        "eb63657e1314ae4af5e19a61db8dc1b6e935775a"
      ],
      "author": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Fri Feb 27 11:35:55 2009 +0100"
      },
      "committer": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Mon Jun 15 15:49:22 2009 +0200"
      },
      "message": "kmemcheck: add opcode self-testing at boot\n\nWe\u0027ve had some troubles in the past with weird instructions. This\npatch adds a self-test framework which can be used to verify that\na certain set of opcodes are decoded correctly. Of course, the\nopcodes which are not tested can still give the wrong results.\n\nIn short, this is just a safeguard to catch unintentional changes\nin the opcode decoder. It does not mean that errors can\u0027t still\noccur!\n\n[rebased for mainline inclusion]\nSigned-off-by: Vegard Nossum \u003cvegard.nossum@gmail.com\u003e\n"
    },
    {
      "commit": "eb63657e1314ae4af5e19a61db8dc1b6e935775a",
      "tree": "569e6d7c374be632bd97c89131926629043402fa",
      "parents": [
        "9d31c5068b852deaf02ccfb4a1ed2b54f3b9358a"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@goop.org",
        "time": "Fri Feb 06 13:05:56 2009 -0800"
      },
      "committer": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Mon Jun 15 15:49:20 2009 +0200"
      },
      "message": "x86: unify pte_hidden\n\nUnify and demacro pte_hidden.\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\n\n[rebased for mainline inclusion]\nSigned-off-by: Vegard Nossum \u003cvegard.nossum@gmail.com\u003e\n"
    },
    {
      "commit": "9d31c5068b852deaf02ccfb4a1ed2b54f3b9358a",
      "tree": "592f73a4251749c238adacc775d0741291e91006",
      "parents": [
        "0a4af3b09309049d8560f8ad558a1337bb4f7f32"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@goop.org",
        "time": "Fri Feb 06 13:05:01 2009 -0800"
      },
      "committer": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Mon Jun 15 15:49:19 2009 +0200"
      },
      "message": "x86: make _PAGE_HIDDEN conditional\n\nOnly _PAGE_HIDDEN when CONFIG_KMEMCHECK is defined, otherwise set it\nto 0.  Allows later cleanups.\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\n\n[rebased for mainline inclusion]\nSigned-off-by: Vegard Nossum \u003cvegard.nossum@gmail.com\u003e\n"
    },
    {
      "commit": "0a4af3b09309049d8560f8ad558a1337bb4f7f32",
      "tree": "7b3f627f94a82248146bc19bd3bb4f641b897526",
      "parents": [
        "7d46d9e6dbffe8780aa8430a63543d3f7ba92860"
      ],
      "author": {
        "name": "Pekka Enberg",
        "email": "penberg@cs.helsinki.fi",
        "time": "Thu Feb 26 21:38:56 2009 +0200"
      },
      "committer": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Mon Jun 15 15:49:17 2009 +0200"
      },
      "message": "kmemcheck: make kconfig accessible for other architectures\n\nThe Kconfig options of kmemcheck are hidden under arch/x86 which makes porting\nto other architectures harder. To fix that, move the Kconfig bits to\nlib/Kconfig.kmemcheck and introduce a CONFIG_HAVE_ARCH_KMEMCHECK config option\nthat architectures can define.\n\nSigned-off-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\n\n[rebased for mainline inclusion]\nSigned-off-by: Vegard Nossum \u003cvegard.nossum@gmail.com\u003e\n"
    },
    {
      "commit": "7d46d9e6dbffe8780aa8430a63543d3f7ba92860",
      "tree": "4475ceed7a49fccd1e2d609aaf181eed87c1e072",
      "parents": [
        "b1eeab67682a5e397aecf172046b3a8bd4808ae4"
      ],
      "author": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Fri Apr 04 00:51:41 2008 +0200"
      },
      "committer": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Mon Jun 15 15:49:15 2009 +0200"
      },
      "message": "kmemcheck: enable in the x86 Kconfig\n\nlet it rip!\n\nSigned-off-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n\n[rebased for mainline inclusion]\nSigned-off-by: Vegard Nossum \u003cvegardno@ifi.uio.no\u003e\n"
    },
    {
      "commit": "b1eeab67682a5e397aecf172046b3a8bd4808ae4",
      "tree": "c357b6ac1945dc8beecc2f8c4d84660ad8d35aae",
      "parents": [
        "9b5cab31897e9e89e36c0c2a89b16b93ff1a971a"
      ],
      "author": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Tue Nov 25 16:55:53 2008 +0100"
      },
      "committer": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Mon Jun 15 15:48:33 2009 +0200"
      },
      "message": "kmemcheck: add hooks for the page allocator\n\nThis adds support for tracking the initializedness of memory that\nwas allocated with the page allocator. Highmem requests are not\ntracked.\n\nCc: Dave Hansen \u003cdave@linux.vnet.ibm.com\u003e\nAcked-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\n\n[build fix for !CONFIG_KMEMCHECK]\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n\n[rebased for mainline inclusion]\nSigned-off-by: Vegard Nossum \u003cvegard.nossum@gmail.com\u003e\n"
    },
    {
      "commit": "9b5cab31897e9e89e36c0c2a89b16b93ff1a971a",
      "tree": "8ebc2d3c5e380f24239b108a447a1158ad1f56c7",
      "parents": [
        "9e730237c2cb479649207da1be2114c28d2fcf51"
      ],
      "author": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Sat Feb 21 13:52:37 2009 +0100"
      },
      "committer": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Mon Jun 15 12:40:13 2009 +0200"
      },
      "message": "kmemcheck: add hooks for page- and sg-dma-mappings\n\nThis is needed for page allocator support to prevent false positives\nwhen accessing pages which are dma-mapped.\n\n[rebased for mainline inclusion]\nSigned-off-by: Vegard Nossum \u003cvegard.nossum@gmail.com\u003e\n"
    },
    {
      "commit": "9e730237c2cb479649207da1be2114c28d2fcf51",
      "tree": "b00509d1fe15110e3c34a7a5eff937280eff4456",
      "parents": [
        "33f65df7ed1abcaac32ba620b9976a4d8cea3248"
      ],
      "author": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Sun Feb 22 11:28:25 2009 +0100"
      },
      "committer": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Mon Jun 15 12:40:11 2009 +0200"
      },
      "message": "kmemcheck: don\u0027t track page tables\n\nAs these are allocated using the page allocator, we need to pass\n__GFP_NOTRACK before we add page allocator support to kmemcheck.\n\nSigned-off-by: Vegard Nossum \u003cvegard.nossum@gmail.com\u003e\n"
    },
    {
      "commit": "33f65df7ed1abcaac32ba620b9976a4d8cea3248",
      "tree": "9ca9edafa1b2bdae5c023e447c10740bf9d7cf85",
      "parents": [
        "c175eea466e760de4b69b9aad90157e7aa9ff54f"
      ],
      "author": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Thu Feb 26 09:55:52 2009 +0100"
      },
      "committer": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Mon Jun 15 12:40:10 2009 +0200"
      },
      "message": "crypto: don\u0027t track xor test pages with kmemcheck\n\nThe xor tests are run on uninitialized data, because it is doesn\u0027t\nreally matter what the underlying data is. Annotate this false-\npositive warning.\n\nAcked-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nSigned-off-by: Vegard Nossum \u003cvegard.nossum@gmail.com\u003e\n"
    },
    {
      "commit": "c175eea466e760de4b69b9aad90157e7aa9ff54f",
      "tree": "60bc1c115d77bba6fd6f99818eeeef2165d8e30c",
      "parents": [
        "5a896d9e7c921742d0437a452f991288f4dc2c42"
      ],
      "author": {
        "name": "Pekka Enberg",
        "email": "penberg@cs.helsinki.fi",
        "time": "Fri May 09 20:35:53 2008 +0200"
      },
      "committer": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Mon Jun 15 12:40:08 2009 +0200"
      },
      "message": "slab: add hooks for kmemcheck\n\nWe now have SLAB support for kmemcheck! This means that it doesn\u0027t matter\nwhether one chooses SLAB or SLUB, or indeed whether Linus chooses to chuck\nSLAB or SLUB.. ;-)\n\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Christoph Lameter \u003cclameter@sgi.com\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\n\n[rebased for mainline inclusion]\nSigned-off-by: Vegard Nossum \u003cvegard.nossum@gmail.com\u003e\n"
    },
    {
      "commit": "5a896d9e7c921742d0437a452f991288f4dc2c42",
      "tree": "ea21c8fcfb4524ae5bfc68681920dd9a15b30795",
      "parents": [
        "d7002857dee6e9a3ce1f78d23f37caba106b29c5"
      ],
      "author": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Fri Apr 04 00:54:48 2008 +0200"
      },
      "committer": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Mon Jun 15 12:40:07 2009 +0200"
      },
      "message": "slub: add hooks for kmemcheck\n\nParts of this patch were contributed by Pekka Enberg but merged for\natomicity.\n\nCc: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: Vegard Nossum \u003cvegardno@ifi.uio.no\u003e\nSigned-off-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n\n[rebased for mainline inclusion]\nSigned-off-by: Vegard Nossum \u003cvegardno@ifi.uio.no\u003e\n"
    },
    {
      "commit": "d7002857dee6e9a3ce1f78d23f37caba106b29c5",
      "tree": "64453eb81be8409937a6daf207442cf5021e3b5e",
      "parents": [
        "2dff440525f8faba8836e9f05297b76f23b4af30"
      ],
      "author": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Sun Jul 20 10:44:54 2008 +0200"
      },
      "committer": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Mon Jun 15 12:40:05 2009 +0200"
      },
      "message": "kmemcheck: add DMA hooks\n\nThis patch hooks into the DMA API to prevent the reporting of the\nfalse positives that would otherwise be reported when memory is\naccessed that is also used directly by devices.\n\n[rebased for mainline inclusion]\nSigned-off-by: Vegard Nossum \u003cvegard.nossum@gmail.com\u003e\n"
    },
    {
      "commit": "2dff440525f8faba8836e9f05297b76f23b4af30",
      "tree": "9f15e1dc2da06dba97cd939e41f34342caf05097",
      "parents": [
        "f85612967c93b67b10dd240e3e8bf8a0eee9def7"
      ],
      "author": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Sat May 31 15:56:17 2008 +0200"
      },
      "committer": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Mon Jun 15 12:40:03 2009 +0200"
      },
      "message": "kmemcheck: add mm functions\n\nWith kmemcheck enabled, the slab allocator needs to do this:\n\n1. Tell kmemcheck to allocate the shadow memory which stores the status of\n   each byte in the allocation proper, e.g. whether it is initialized or\n   uninitialized.\n2. Tell kmemcheck which parts of memory that should be marked uninitialized.\n   There are actually a few more states, such as \"not yet allocated\" and\n   \"recently freed\".\n\nIf a slab cache is set up using the SLAB_NOTRACK flag, it will never return\nmemory that can take page faults because of kmemcheck.\n\nIf a slab cache is NOT set up using the SLAB_NOTRACK flag, callers can still\nrequest memory with the __GFP_NOTRACK flag. This does not prevent the page\nfaults from occuring, however, but marks the object in question as being\ninitialized so that no warnings will ever be produced for this object.\n\nIn addition to (and in contrast to) __GFP_NOTRACK, the\n__GFP_NOTRACK_FALSE_POSITIVE flag indicates that the allocation should\nnot be tracked _because_ it would produce a false positive. Their values\nare identical, but need not be so in the future (for example, we could now\nenable/disable false positives with a config option).\n\nParts of this patch were contributed by Pekka Enberg but merged for\natomicity.\n\nSigned-off-by: Vegard Nossum \u003cvegard.nossum@gmail.com\u003e\nSigned-off-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n\n[rebased for mainline inclusion]\nSigned-off-by: Vegard Nossum \u003cvegard.nossum@gmail.com\u003e\n"
    },
    {
      "commit": "f85612967c93b67b10dd240e3e8bf8a0eee9def7",
      "tree": "184a70bc888b35235ee0b1805a06f90fd45295d8",
      "parents": [
        "f8b4ece2a94693b7d2dd32ea716cb92545b5dce6"
      ],
      "author": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Fri Apr 04 00:53:23 2008 +0200"
      },
      "committer": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Mon Jun 15 12:40:02 2009 +0200"
      },
      "message": "x86: add hooks for kmemcheck\n\nThe hooks that we modify are:\n- Page fault handler (to handle kmemcheck faults)\n- Debug exception handler (to hide pages after single-stepping\n  the instruction that caused the page fault)\n\nAlso redefine memset() to use the optimized version if kmemcheck is\nenabled.\n\n(Thanks to Pekka Enberg for minimizing the impact on the page fault\nhandler.)\n\nAs kmemcheck doesn\u0027t handle MMX/SSE instructions (yet), we also disable\nthe optimized xor code, and rely instead on the generic C implementation\nin order to avoid false-positive warnings.\n\nSigned-off-by: Vegard Nossum \u003cvegardno@ifi.uio.no\u003e\n\n[whitespace fixlet]\nSigned-off-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n\n[rebased for mainline inclusion]\nSigned-off-by: Vegard Nossum \u003cvegardno@ifi.uio.no\u003e\n"
    },
    {
      "commit": "f8b4ece2a94693b7d2dd32ea716cb92545b5dce6",
      "tree": "9ab0400f03b975ea2d447a0694779c0d3342028e",
      "parents": [
        "6d9609c13250631c1d0c55a29a64d5687fd91293"
      ],
      "author": {
        "name": "Pekka Enberg",
        "email": "penberg@cs.helsinki.fi",
        "time": "Thu Feb 26 11:53:11 2009 +0200"
      },
      "committer": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Mon Jun 15 12:40:00 2009 +0200"
      },
      "message": "kmemcheck: use kmemcheck_pte_lookup() instead of open-coding it\n\nLets use kmemcheck_pte_lookup() in kmemcheck_fault() instead of\nopen-coding it there.\n\nSigned-off-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nSigned-off-by: Vegard Nossum \u003cvegard.nossum@gmail.com\u003e\n"
    },
    {
      "commit": "6d9609c13250631c1d0c55a29a64d5687fd91293",
      "tree": "f925b5dfb2c250e6de98b3e1f880149324bb99a1",
      "parents": [
        "0c33cacd8672ef034ba414510f71ea2bd9370111"
      ],
      "author": {
        "name": "Pekka Enberg",
        "email": "penberg@cs.helsinki.fi",
        "time": "Thu Feb 26 11:23:52 2009 +0200"
      },
      "committer": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Mon Jun 15 12:39:59 2009 +0200"
      },
      "message": "kmemcheck: move 64-bit ifdef out of kmemcheck_opcode_decode()\n\nThis patch moves the CONFIG_X86_64 ifdef out of kmemcheck_opcode_decode() by\nintroducing a version of the function that always returns false for\nCONFIG_X86_32.\n\nSigned-off-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nSigned-off-by: Vegard Nossum \u003cvegard.nossum@gmail.com\u003e\n"
    },
    {
      "commit": "0c33cacd8672ef034ba414510f71ea2bd9370111",
      "tree": "29a2ea85f2efe333fa34c64b5c00fa5fc11e9116",
      "parents": [
        "5b53b76a6158cd831759d7b0b2585bf0b121cec2"
      ],
      "author": {
        "name": "Pekka Enberg",
        "email": "penberg@cs.helsinki.fi",
        "time": "Thu Feb 26 11:17:31 2009 +0200"
      },
      "committer": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Mon Jun 15 12:39:57 2009 +0200"
      },
      "message": "kmemcheck: remove multiple ifdef\u0027d definitions of the same global variable\n\nMultiple ifdef\u0027d definitions of the same global variable is ugly and\nerror-prone. Fix that up.\n\nSigned-off-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nSigned-off-by: Vegard Nossum \u003cvegard.nossum@gmail.com\u003e\n"
    },
    {
      "commit": "5b53b76a6158cd831759d7b0b2585bf0b121cec2",
      "tree": "27dc4fc28bdd94b7e6512babfe5572a26d81a060",
      "parents": [
        "6a19638719b4272ac86589c4bb660fc92db03dae"
      ],
      "author": {
        "name": "Pekka Enberg",
        "email": "penberg@cs.helsinki.fi",
        "time": "Thu Feb 26 11:11:59 2009 +0200"
      },
      "committer": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Mon Jun 15 12:39:56 2009 +0200"
      },
      "message": "kmemcheck: make initialization message less confusing\n\nThe \"Bugs, beware!\" printout during is cute but confuses users that something\nbad happened so change the text to the more boring \"Initialized\" message.\n\nSigned-off-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nSigned-off-by: Vegard Nossum \u003cvegard.nossum@gmail.com\u003e\n"
    },
    {
      "commit": "6a19638719b4272ac86589c4bb660fc92db03dae",
      "tree": "4d61a47edfffa87c15b394e227a28f8fc278e231",
      "parents": [
        "60e383931d41b0bccefdf318ffde8b49e343e9bc"
      ],
      "author": {
        "name": "Pekka Enberg",
        "email": "penberg@cs.helsinki.fi",
        "time": "Thu Feb 26 10:47:50 2009 +0200"
      },
      "committer": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Mon Jun 15 12:39:47 2009 +0200"
      },
      "message": "kmemcheck: remove forward declarations from error.c\n\nThis patch reorders code in error.c so that we can get rid of the forward\ndeclarations.\n\nSigned-off-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nSigned-off-by: Vegard Nossum \u003cvegard.nossum@gmail.com\u003e\n"
    },
    {
      "commit": "60e383931d41b0bccefdf318ffde8b49e343e9bc",
      "tree": "f1ec4e6702b8f79ba4e48479e0b4afd1608efb9a",
      "parents": [
        "dfec072ecd35ba6ecad2d51dde325253ac9a2936"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Thu Jul 24 16:09:32 2008 -0700"
      },
      "committer": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Sat Jun 13 15:37:49 2009 +0200"
      },
      "message": "kmemcheck: include module.h to prevent warnings\n\nkmemcheck/shadow.c needs to include \u003clinux/module.h\u003e to prevent\nthe following warnings:\n\nlinux-next-20080724/arch/x86/mm/kmemcheck/shadow.c:64: warning : data definition has no type or storage class\nlinux-next-20080724/arch/x86/mm/kmemcheck/shadow.c:64: warning : type defaults to \u0027int\u0027 in declaration of \u0027EXPORT_SYMBOL_GPL\u0027\nlinux-next-20080724/arch/x86/mm/kmemcheck/shadow.c:64: warning : parameter names (without types) in function declaration\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nCc: vegardno@ifi.uio.no\nCc: penberg@cs.helsinki.fi\nCc: akpm \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "dfec072ecd35ba6ecad2d51dde325253ac9a2936",
      "tree": "ccf682a631ef8edc0675d68d004bc3a80b34b648",
      "parents": [
        "e594c8de3bd4e7732ed3340fb01e18ec94b12df2"
      ],
      "author": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Fri Apr 04 00:51:41 2008 +0200"
      },
      "committer": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Sat Jun 13 15:37:30 2009 +0200"
      },
      "message": "kmemcheck: add the kmemcheck core\n\nGeneral description: kmemcheck is a patch to the linux kernel that\ndetects use of uninitialized memory. It does this by trapping every\nread and write to memory that was allocated dynamically (e.g. using\nkmalloc()). If a memory address is read that has not previously been\nwritten to, a message is printed to the kernel log.\n\nThanks to Andi Kleen for the set_memory_4k() solution.\n\nAndrew Morton suggested documenting the shadow member of struct page.\n\nSigned-off-by: Vegard Nossum \u003cvegardno@ifi.uio.no\u003e\nSigned-off-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\n\n[export kmemcheck_mark_initialized]\n[build fix for setup_max_cpus]\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n\n[rebased for mainline inclusion]\nSigned-off-by: Vegard Nossum \u003cvegardno@ifi.uio.no\u003e\n"
    },
    {
      "commit": "e594c8de3bd4e7732ed3340fb01e18ec94b12df2",
      "tree": "69cb27cf61160cc581c2183694ef5ab18e893b10",
      "parents": [
        "456db8cc450c4b5e7f8a4b6ffe1ab340061e7f7d"
      ],
      "author": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Sat Jun 13 14:15:57 2009 +0200"
      },
      "committer": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Sat Jun 13 14:27:20 2009 +0200"
      },
      "message": "kmemcheck: add the kmemcheck documentation\n\nThanks to Sitsofe Wheeler, Randy Dunlap, and Jonathan Corbet for providing\ninput and feedback on this!\n\nSigned-off-by: Vegard Nossum \u003cvegard.nossum@gmail.com\u003e\n"
    },
    {
      "commit": "456db8cc450c4b5e7f8a4b6ffe1ab340061e7f7d",
      "tree": "2131d22fc529d81551c9d1f9155e6c6171bf94c7",
      "parents": [
        "7c692cbade8b8884f1c20500393bcc7cd6d24ef8"
      ],
      "author": {
        "name": "Pekka Enberg",
        "email": "penberg@cs.helsinki.fi",
        "time": "Mon Apr 28 22:47:29 2008 +0300"
      },
      "committer": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Sat Jun 13 10:02:43 2009 +0200"
      },
      "message": "kmemcheck: add Vegard and Pekka to MAINTAINERS\n\nAcked-by: Vegard Nossum \u003cvegardno@ifi.uio.no\u003e\nSigned-off-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "7c692cbade8b8884f1c20500393bcc7cd6d24ef8",
      "tree": "2cf4353c684304dfdefb89e0a70bfbd7eeadf85b",
      "parents": [
        "8eae985f08138758e06503588f5f1196269bc415"
      ],
      "author": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Wed May 21 22:53:13 2008 +0200"
      },
      "committer": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Sat Jun 13 10:02:24 2009 +0200"
      },
      "message": "tasklets: new tasklet scheduling function\n\nRationale: kmemcheck needs to be able to schedule a tasklet without\ntouching any dynamically allocated memory _at_ _all_ (since that would\nlead to a recursive page fault). This tasklet is used for writing the\nerror reports to the kernel log.\n\nThe new scheduling function avoids touching any other tasklets by\ninserting the new tasklist as the head of the \"tasklet_hi\" list instead\nof on the tail.\n\nAlso don\u0027t wake up the softirq thread lest the scheduler access some\ntracked memory and we go down with a recursive page fault.\n\nIn this case, we\u0027d better just wait for the maximum time of 1/HZ for the\nmessage to appear.\n\nSigned-off-by: Vegard Nossum \u003cvegard.nossum@gmail.com\u003e\n"
    },
    {
      "commit": "8eae985f08138758e06503588f5f1196269bc415",
      "tree": "6bcd43b5ee4cfd225ee2a630441b61c7c2ce69eb",
      "parents": [
        "b618ad31bb2020db6a36929122e5554e33210d47"
      ],
      "author": {
        "name": "Pekka Enberg",
        "email": "penberg@cs.helsinki.fi",
        "time": "Fri May 09 20:32:44 2008 +0200"
      },
      "committer": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Sat Jun 13 08:58:43 2009 +0200"
      },
      "message": "slab: move struct kmem_cache to headers\n\nMove the SLAB struct kmem_cache definition to \u003clinux/slab_def.h\u003e like\nwith SLUB so kmemcheck can access -\u003ector and -\u003eflags.\n\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Christoph Lameter \u003cclameter@sgi.com\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\n\n[rebased for mainline inclusion]\nSigned-off-by: Vegard Nossum \u003cvegard.nossum@gmail.com\u003e\n"
    },
    {
      "commit": "b618ad31bb2020db6a36929122e5554e33210d47",
      "tree": "e00613ec7344cb15eefe06ee41f1287e7cfa3fb4",
      "parents": [
        "acc6be5405b90c9f0fb0eb8a74ec4d4b7b5bf48f"
      ],
      "author": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Fri Jun 13 15:31:11 2008 +0200"
      },
      "committer": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Fri Jun 12 23:04:12 2009 +0200"
      },
      "message": "stacktrace: add forward-declaration struct task_struct\n\nThis is needed if the header is to be free-standing.\n\nSigned-off-by: Vegard Nossum \u003cvegard.nossum@gmail.com\u003e\n"
    },
    {
      "commit": "acc6be5405b90c9f0fb0eb8a74ec4d4b7b5bf48f",
      "tree": "28b6a59cb0085b30d65e672813c35381b3e62490",
      "parents": [
        "8ebf975608aaebd7feb33d77f07ba21a6380e086"
      ],
      "author": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Tue May 20 11:15:43 2008 +0200"
      },
      "committer": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Fri Jun 12 23:01:05 2009 +0200"
      },
      "message": "x86: add save_stack_trace_bp() for tracing from a specific stack frame\n\nThis will help kmemcheck (and possibly other debugging tools) since we\ncan now simply pass regs-\u003ebp to the stack tracer instead of specifying\nthe number of stack frames to skip, which is unreliable if gcc decides\nto inline functions, etc.\n\nNote that this makes the API incomplete for other architectures, but I\nexpect that those can be updated lazily, e.g. when they need it.\n\nCc: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Vegard Nossum \u003cvegard.nossum@gmail.com\u003e\n"
    },
    {
      "commit": "8ebf975608aaebd7feb33d77f07ba21a6380e086",
      "tree": "6de4ee1dd3ede890169644ea586ed7c8c9d8f7b2",
      "parents": [
        "4b4f1d017815f96737ca4a62f90e5a1f0b9f02d6"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Thu Jun 11 20:00:41 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jun 11 20:14:23 2009 -0700"
      },
      "message": "block: fix kernel-doc in recent block/ changes\n\nFix kernel-doc warnings in recently changed block/ source code.\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4b4f1d017815f96737ca4a62f90e5a1f0b9f02d6",
      "tree": "c95ae92ec01cabf6c2a40d31a31da6a4d9256816",
      "parents": [
        "875287caa067492779670f5fb3b98ec8dcfe2cb0",
        "aa7dfb8954ccf49e026ba13d12991a4eb7defb96"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jun 11 20:05:37 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jun 11 20:05:37 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6: (87 commits)\n  nilfs2: get rid of bd_mount_sem use from nilfs\n  nilfs2: correct exclusion control in nilfs_remount function\n  nilfs2: simplify remaining sget() use\n  nilfs2: get rid of sget use for checking if current mount is present\n  nilfs2: get rid of sget use for acquiring nilfs object\n  nilfs2: remove meaningless EBUSY case from nilfs_get_sb function\n  remove the call to -\u003ewrite_super in __sync_filesystem\n  nilfs2: call nilfs2_write_super from nilfs2_sync_fs\n  jffs2: call jffs2_write_super from jffs2_sync_fs\n  ufs: add -\u003esync_fs\n  sysv: add -\u003esync_fs\n  hfsplus: add -\u003esync_fs\n  hfs: add -\u003esync_fs\n  fat: add -\u003esync_fs\n  ext2: add -\u003esync_fs\n  exofs: add -\u003esync_fs\n  bfs: add -\u003esync_fs\n  affs: add -\u003esync_fs\n  sanitize -\u003efsync() for affs\n  repair bfs_write_inode(), switch bfs to simple_fsync()\n  ...\n"
    },
    {
      "commit": "875287caa067492779670f5fb3b98ec8dcfe2cb0",
      "tree": "258037cc7678cfaeb738b970b4791ea10e193c96",
      "parents": [
        "aee74f3bb3f4fb5dbeae8c1947c6d8ebdc19ee01",
        "193e98401a89707ea374e9c32c1b9a5a9dd87a48"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jun 11 20:05:08 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jun 11 20:05:08 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu:\n  m68knommu: remove unecessary include of thread_info.h in entry.S\n  m68knommu: enumerate INIT_THREAD fields properly\n  headers_check fix: m68k, swab.h\n  arch/m68knommu: Convert #ifdef DEBUG printk(KERN_DEBUG to pr_debug(\n  m68knommu: remove obsolete reset code\n  m68knommu: move CPU reset code for the 5272 ColdFire into its platform code\n  m68knommu: move CPU reset code for the 528x ColdFire into its platform code\n  m68knommu: move CPU reset code for the 527x ColdFire into its platform code\n  m68knommu: move CPU reset code for the 523x ColdFire into its platform code\n  m68knommu: move CPU reset code for the 520x ColdFire into its platform code\n  m68knommu: add CPU reset code for the 532x ColdFire\n  m68knommu: add CPU reset code for the 5249 ColdFire\n  m68knommu: add CPU reset code for the 5206e ColdFire\n  m68knommu: add CPU reset code for the 5206 ColdFire\n  m68knommu: add CPU reset code for the 5407 ColdFire\n  m68knommu: add CPU reset code for the 5307 ColdFire\n  m68knommu: merge system reset for code ColdFire 523x family\n  m68knommu: fix system reset for ColdFire 527x family\n"
    },
    {
      "commit": "aee74f3bb3f4fb5dbeae8c1947c6d8ebdc19ee01",
      "tree": "fd86fd5a4f8adf8d185c1bfb8972253570958cdf",
      "parents": [
        "12274e96b42884f043dfaa87eb1e5e10281bfac3"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Thu Jun 11 15:09:00 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jun 11 20:04:37 2009 -0700"
      },
      "message": "kvm: remove the duplicated cpumask_clear\n\nzalloc_cpumask_var already cleared it.\n\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "12274e96b42884f043dfaa87eb1e5e10281bfac3",
      "tree": "7171d6a49dbac49826670128e114c52e7539782d",
      "parents": [
        "e14112d1bd5e193166b54be19119cf6440470560"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Thu Jun 11 15:07:48 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jun 11 20:04:36 2009 -0700"
      },
      "message": "x86: use zalloc_cpumask_var in arch_early_irq_init\n\nSo we make sure MAXSMP gets a cleared cpumask\n\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e14112d1bd5e193166b54be19119cf6440470560",
      "tree": "7e38942535b91872b5f9869a1e6597add34c60cc",
      "parents": [
        "a525890cb6a2949b644d212ae290b658967d3919"
      ],
      "author": {
        "name": "Stephen Rothwell",
        "email": "sfr@canb.auug.org.au",
        "time": "Fri Jun 12 10:14:22 2009 +1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jun 11 20:03:13 2009 -0700"
      },
      "message": "perfcounters: remove powerpc definitions of perf_counter_do_pending\n\nCommit 925d519ab82b6dd7aca9420d809ee83819c08db2 (\"perf_counter:\nunify and fix delayed counter wakeup\") added global definitions.\n\nSigned-off-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nAcked-by: Paul Mackerras \u003cpaulus@samba.org\u003e\nAcked-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "aa7dfb8954ccf49e026ba13d12991a4eb7defb96",
      "tree": "ff2d6cf81629322906bd0cea1423e9efe516ffee",
      "parents": [
        "e59399d0102c1813cec48db5cebe1750313f88a0"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon Jun 08 01:39:33 2009 +0900"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:18 2009 -0400"
      },
      "message": "nilfs2: get rid of bd_mount_sem use from nilfs\n\nThis will remove every bd_mount_sem use in nilfs.\n\nThe intended exclusion control was replaced by the previous patch\n(\"nilfs2: correct exclusion control in nilfs_remount function\") for\nnilfs_remount(), and this patch will replace remains with a new mutex\nthat this inserts in nilfs object.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "e59399d0102c1813cec48db5cebe1750313f88a0",
      "tree": "cd4fde6b5c442ede5d00b9640d3a545f847aeb8c",
      "parents": [
        "6dd4740662405a68bb229ac2b9e0aeaaf2188bf2"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon Jun 08 01:39:32 2009 +0900"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:18 2009 -0400"
      },
      "message": "nilfs2: correct exclusion control in nilfs_remount function\n\nnilfs_remount() changes mount state of a superblock instance.  Even\nthough nilfs accesses other superblock instances during mount or\nremount, the mount state was not properly protected in\nnilfs_remount().\n\nMoreover, nilfs_remount() has a lock order reversal problem;\nnilfs_get_sb() holds:\n\n  1. bdev-\u003ebd_mount_sem\n  2. sb-\u003es_umount  (sget acquires)\n\nand nilfs_remount() holds:\n\n  1. sb-\u003es_umount  (locked by the caller in vfs)\n  2. bdev-\u003ebd_mount_sem\n\nTo avoid these problems, this patch divides a semaphore protecting\nsuper block instances from nilfs-\u003ens_sem, and applies it to the mount\nstate protection in nilfs_remount().\n\nWith this change, bd_mount_sem use is removed from nilfs_remount() and\nthe lock order reversal will be resolved.  And the new rw-semaphore,\nnilfs-\u003ens_super_sem will properly protect the mount state except the\nmodification from nilfs_error function.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "6dd4740662405a68bb229ac2b9e0aeaaf2188bf2",
      "tree": "36e6ae2a095613be1c36e8828ee9471e60c09de6",
      "parents": [
        "3f82ff55168e92859119bf348e9e0bd6714d2fea"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon Jun 08 01:39:31 2009 +0900"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:18 2009 -0400"
      },
      "message": "nilfs2: simplify remaining sget() use\n\nThis simplifies the test function passed on the remaining sget()\ncallsite in nilfs.\n\nInstead of checking mount type (i.e. ro-mount/rw-mount/snapshot mount)\nin the test function passed to sget(), this patch first looks up the\nnilfs_sb_info struct which the given mount type matches, and then\nacquires the super block instance holding the nilfs_sb_info.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "3f82ff55168e92859119bf348e9e0bd6714d2fea",
      "tree": "f35bf723b02d6fe8c101252aa4a2c0e0172fd4aa",
      "parents": [
        "33c8e57c86d1bd1548c12a4f7c4bceb94b862cca"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon Jun 08 01:39:30 2009 +0900"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:17 2009 -0400"
      },
      "message": "nilfs2: get rid of sget use for checking if current mount is present\n\nThis stops using sget() for checking if an r/w-mount or an r/o-mount\nexists on the device.  This elimination uses a back pointer to the\ncurrent mount added to nilfs object.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "33c8e57c86d1bd1548c12a4f7c4bceb94b862cca",
      "tree": "8e2052a81dc1036e64d78da1082ab6af01ae4bbd",
      "parents": [
        "81fc20bd0e75ba6357bce2403767d7c2585d8f28"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon Jun 08 01:39:29 2009 +0900"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:17 2009 -0400"
      },
      "message": "nilfs2: get rid of sget use for acquiring nilfs object\n\nThis will change the way to obtain nilfs object in nilfs_get_sb()\nfunction.\n\nPreviously, a preliminary sget() call was performed, and the nilfs\nobject was acquired from a super block instance found by the sget()\ncall.\n\nThis patch, instead, instroduces a new dedicated function\nfind_or_create_nilfs(); as the name implies, the function finds an\nexistent nilfs object from a global list or creates a new one if no\nobject is found on the device.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "81fc20bd0e75ba6357bce2403767d7c2585d8f28",
      "tree": "e3680d7c8184da3cbb4b7efe83fe99626d08cd68",
      "parents": [
        "0c95ee190e1dea60c55c834d14695341085c9b7b"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon Jun 08 01:39:28 2009 +0900"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:17 2009 -0400"
      },
      "message": "nilfs2: remove meaningless EBUSY case from nilfs_get_sb function\n\nThe following EBUSY case in nilfs_get_sb() is meaningless.  Indeed,\nthis error code is never returned to the caller.\n\n    if (!s-\u003es_root) {\n          ...\n    } else if (!(s-\u003es_flags \u0026 MS_RDONLY)) {\n        err \u003d -EBUSY;\n    }\n\nThis simply removes the else case.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "0c95ee190e1dea60c55c834d14695341085c9b7b",
      "tree": "2d0899f7aa04acc0679a760e6710c8605745ac92",
      "parents": [
        "d731e06323cb705003e4172ec209e469be4c18e1"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Mon Jun 08 10:08:54 2009 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:17 2009 -0400"
      },
      "message": "remove the call to -\u003ewrite_super in __sync_filesystem\n\nNow that all filesystems provide -\u003esync_fs methods we can change\n__sync_filesystem to only call -\u003esync_fs.\n\nThis gives us a clear separation between periodic writeouts which\nare driven by -\u003ewrite_super and data integrity syncs that go\nthrough -\u003esync_fs. (modulo file_fsync which is also going away)\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "d731e06323cb705003e4172ec209e469be4c18e1",
      "tree": "636b1b2f7aaea08fa7be27b3d908fe6dbe6ec70b",
      "parents": [
        "d579ed00aa96a7f7486978540a0d7cecaff742ae"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Mon Jun 08 10:08:36 2009 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:17 2009 -0400"
      },
      "message": "nilfs2: call nilfs2_write_super from nilfs2_sync_fs\n\nThe call to -\u003ewrite_super from __sync_filesystem will go away, so make\nsure nilfs2 performs the same actions from inside -\u003esync_fs.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "d579ed00aa96a7f7486978540a0d7cecaff742ae",
      "tree": "a1c988e4f97ea9e3750779ff9cfa0f12d95386e4",
      "parents": [
        "8c8006564a58d0ea912bf7f2d0a758d97e4b464f"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Mon Jun 08 10:08:21 2009 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:16 2009 -0400"
      },
      "message": "jffs2: call jffs2_write_super from jffs2_sync_fs\n\nThe call to -\u003ewrite_super from __sync_filesystem will go away, so make\nsure jffs2 performs the same actions from inside -\u003esync_fs.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "8c8006564a58d0ea912bf7f2d0a758d97e4b464f",
      "tree": "696dd67b5b2c3e303fe17bf992ced9ccb4b34806",
      "parents": [
        "ad43ffdeea0a7bd3e6036c4aeec2e6699aef8ac7"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Mon Jun 08 10:08:05 2009 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:16 2009 -0400"
      },
      "message": "ufs: add -\u003esync_fs\n\nAdd a -\u003esync_fs method for data integrity syncs, and reimplement\n-\u003ewrite_super ontop of it.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "ad43ffdeea0a7bd3e6036c4aeec2e6699aef8ac7",
      "tree": "dcab8568dca72f130287dbe356c0fe0d7afe4ab7",
      "parents": [
        "7fbc6df0e7a561a313f49faa77829d5de45a97f8"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Mon Jun 08 10:07:45 2009 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:16 2009 -0400"
      },
      "message": "sysv: add -\u003esync_fs\n\nAdd a -\u003esync_fs method for data integrity syncs, and reimplement\n-\u003ewrite_super ontop of it.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "7fbc6df0e7a561a313f49faa77829d5de45a97f8",
      "tree": "c19d60ff362527ce66489d2fdbecc34a89b0a0ef",
      "parents": [
        "58bc5bbb873eb5d86126a3fd3ff02aaa69ec15d0"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Mon Jun 08 10:05:12 2009 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:16 2009 -0400"
      },
      "message": "hfsplus: add -\u003esync_fs\n\nAdd a -\u003esync_fs method for data integrity syncs, and reimplement\n-\u003ewrite_super ontop of it.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "58bc5bbb873eb5d86126a3fd3ff02aaa69ec15d0",
      "tree": "ecc9df2d1205d031cdca77f0d2fb4cd588621f3e",
      "parents": [
        "f83d6d46e7adf241a064a4a425e5cd8a8fd8925f"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Mon Jun 08 10:04:54 2009 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:15 2009 -0400"
      },
      "message": "hfs: add -\u003esync_fs\n\nAdd a -\u003esync_fs method for data integrity syncs.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "f83d6d46e7adf241a064a4a425e5cd8a8fd8925f",
      "tree": "3ebefc6dc784ec0156fd3a074b694630b5a88d88",
      "parents": [
        "40f31dd47e7c3d15af1f9845eda0fa0c4c33f32f"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Mon Jun 08 10:04:35 2009 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:15 2009 -0400"
      },
      "message": "fat: add -\u003esync_fs\n\nAdd a -\u003esync_fs method for data integrity syncs.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "40f31dd47e7c3d15af1f9845eda0fa0c4c33f32f",
      "tree": "f711eb7629ced0f4ffd3cfb47eb69a9717143559",
      "parents": [
        "80e09fb942d38beb19dcffbeb14d496beeb0a989"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Mon Jun 08 10:04:17 2009 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:15 2009 -0400"
      },
      "message": "ext2: add -\u003esync_fs\n\nAdd a -\u003esync_fs method for data integrity syncs, and reimplement\n-\u003ewrite_super ontop of it.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "80e09fb942d38beb19dcffbeb14d496beeb0a989",
      "tree": "cdaa5cf4baf745ee4c83b8e03cb75581e7ea1ffa",
      "parents": [
        "561e47ce7244168788d4ecef9a2271df204b3c89"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Mon Jun 08 10:03:58 2009 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:15 2009 -0400"
      },
      "message": "exofs: add -\u003esync_fs\n\nAdd a -\u003esync_fs method for data integrity syncs, and reimplement\n-\u003ewrite_super ontop of it.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "561e47ce7244168788d4ecef9a2271df204b3c89",
      "tree": "b587db305924ff4fea0ca1ad18b341dfda65281e",
      "parents": [
        "e28964365faf3b9961695eb62b48cbc9f2a2a245"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Mon Jun 08 10:03:38 2009 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:14 2009 -0400"
      },
      "message": "bfs: add -\u003esync_fs\n\nAdd a -\u003esync_fs method for data integrity syncs, and reimplement\n-\u003ewrite_super ontop of it.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "e28964365faf3b9961695eb62b48cbc9f2a2a245",
      "tree": "413a1bfac3009e2f9a370b8f709c37b1ea8878d0",
      "parents": [
        "c475879556a8602bbe2faa9a06f6e5fcc8c05bb2"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Mon Jun 08 10:03:15 2009 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:14 2009 -0400"
      },
      "message": "affs: add -\u003esync_fs\n\nAdd a -\u003esync_fs method for data integrity syncs.  Factor out common code\nbetween affs_put_super, affs_write_super and the new affs_sync_fs into\na helper.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "c475879556a8602bbe2faa9a06f6e5fcc8c05bb2",
      "tree": "9d7e4882a08171d1ff1b84e3f02d3e604756815b",
      "parents": [
        "4427f0c36e22e2cd6696b2fe7643e9756a14b3d3"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jun 08 01:22:00 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:14 2009 -0400"
      },
      "message": "sanitize -\u003efsync() for affs\n\nunfortunately, for affs (especially for affs directories) we have\nno real way to keep track of metadata ownership.  So we have to\ndo more or less what file_fsync() does, but we do *not* need to\ncall write_super() there.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "4427f0c36e22e2cd6696b2fe7643e9756a14b3d3",
      "tree": "1d3035350178d974a1099b7795dc4a5f64b29fe8",
      "parents": [
        "224c886643e52e6b4c1143489cd0b289b6c03976"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jun 08 01:15:58 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:14 2009 -0400"
      },
      "message": "repair bfs_write_inode(), switch bfs to simple_fsync()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "224c886643e52e6b4c1143489cd0b289b6c03976",
      "tree": "62b7ca28fa19649acc39eb25f9b9c439a07ba87b",
      "parents": [
        "ffdc9064f8b4fa9db37a7d5180f41cce2ea2b7ad"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jun 08 00:46:40 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:14 2009 -0400"
      },
      "message": "Fix adfs GET_FRAG_ID() on big-endian\n\nMissing conversion to host-endian before doing shifts\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "ffdc9064f8b4fa9db37a7d5180f41cce2ea2b7ad",
      "tree": "a7cc3f3940211682289983865e453b4d7083554b",
      "parents": [
        "bea6b64c277f0824cdaea6190209b26a164419d6"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jun 08 00:44:42 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:13 2009 -0400"
      },
      "message": "repair adfs -\u003ewrite_inode(), switch to simple_fsync()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "bea6b64c277f0824cdaea6190209b26a164419d6",
      "tree": "0eebdf31c3faf13d5ed7cc81f9e5e253dd4afe54",
      "parents": [
        "90de066443a8632bb42fed0a8216313d7da07aba"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Jun 07 15:44:50 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:13 2009 -0400"
      },
      "message": "switch omfs to simple_fsync()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "90de066443a8632bb42fed0a8216313d7da07aba",
      "tree": "7ee2fb0e0a87fd83cf7cce88e1044293fc438fc0",
      "parents": [
        "a932801543fe74050ebee07fde082234c46b624f"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Jun 07 15:40:27 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:13 2009 -0400"
      },
      "message": "switch udf to simple_fsync()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "a932801543fe74050ebee07fde082234c46b624f",
      "tree": "2cda35832500fd0003a467b685fd9fb82968db73",
      "parents": [
        "05459ca81ac3064cb040d983342bc453cccec458"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Jun 07 15:35:18 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:13 2009 -0400"
      },
      "message": "switch ufs to simple_fsync()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "05459ca81ac3064cb040d983342bc453cccec458",
      "tree": "3f563253b1d980a24659fcf0967be3b57ec020c5",
      "parents": [
        "0d7916d7e985da52cdd2989c900485e17b035972"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Jun 07 15:29:45 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:12 2009 -0400"
      },
      "message": "repair sysv_write_inode(), switch sysv to simple_fsync()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "0d7916d7e985da52cdd2989c900485e17b035972",
      "tree": "dfb4992f5150ece7ebb09754501e9e5981bb12ca",
      "parents": [
        "e1740a462ecb2eae213be15857b577cc6f6bb8b4"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Jun 07 15:21:06 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:12 2009 -0400"
      },
      "message": "switch minix to simple_fsync()\n\n* get minix_write_inode() to honour the second argument\n* now we can use simple_fsync() for minixfs\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "e1740a462ecb2eae213be15857b577cc6f6bb8b4",
      "tree": "8ac67062735e9bbf6ec9ef450ba3a7e5a74405f1",
      "parents": [
        "b522412aeabadbb302fd4338eaabf09d10e2d29c"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Jun 07 15:14:02 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:12 2009 -0400"
      },
      "message": "switch ext2 to simple_fsync()\n\nkill ext2_sync_file() (along with ext2/fsync.c), get rid of\next2_update_inode() - it\u0027s an alias of ext2_write_inode().\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "b522412aeabadbb302fd4338eaabf09d10e2d29c",
      "tree": "6b6b73686bc77e10a3a8275e84bc545ddf7755b6",
      "parents": [
        "964f5369667b342994fe3f384e9ba41d404ee796"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Jun 07 13:44:36 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:12 2009 -0400"
      },
      "message": "Sanitize -\u003efsync() for FAT\n\n* mark directory data blocks as assoc. metadata\n* add new inode to deal with FAT, mark FAT blocks as assoc. metadata of that\n* now -\u003efsync() is trivial both for files and directories\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "964f5369667b342994fe3f384e9ba41d404ee796",
      "tree": "ad8a5f942af0696d69fb58abf05773c19d05e58b",
      "parents": [
        "79d25767583e4e086f8309bfd1f502660a64fe7f"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Jun 07 09:47:13 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:12 2009 -0400"
      },
      "message": "fs/qnx4: sanitize includes\n\nfs-internal parts of qnx4_fs.h taken to fs/qnx4/qnx4.h, includes adjusted,\nqnx4_fs.h doesn\u0027t need unifdef anymore.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "79d25767583e4e086f8309bfd1f502660a64fe7f",
      "tree": "f13414f324d859f82c604bb4027a4aab19bed909",
      "parents": [
        "d5aacad548db1ff547adf35d0a77eb2a8ed4fe14"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Jun 07 09:30:08 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:11 2009 -0400"
      },
      "message": "Sanitize qnx4 fsync handling\n\n* have directory operations use mark_buffer_dirty_inode(),\n  so that sync_mapping_buffers() would get those.\n* make qnx4_write_inode() honour its last argument.\n* get rid of insane copies of very ancient \"walk the indirect blocks\"\n  in qnx4/fsync - they never matched the actual fs layout and, fortunately,\n  never\u0027d been called.  Again, all this junk is not needed; -\u003efsync()\n  should just do sync_mapping_buffers + sync_inode (and if we implement\n  block allocation for qnx4, we\u0027ll need to use mark_buffer_dirty_inode()\n  for extent blocks)\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "d5aacad548db1ff547adf35d0a77eb2a8ed4fe14",
      "tree": "fbdf12dbacde76a1bb57738f1f67b87a673ddff2",
      "parents": [
        "337eb00a2c3a421999c39c94ce7e33545ee8baa7"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Jun 07 14:56:44 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:11 2009 -0400"
      },
      "message": "New helper - simple_fsync()\n\nwrites associated buffers, then does sync_inode() to write\nthe inode itself (and to make it clean).  Depends on\n-\u003ewrite_inode() honouring the second argument.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "337eb00a2c3a421999c39c94ce7e33545ee8baa7",
      "tree": "d9b780d095b638b1d8fa23841ff70347cf5daa08",
      "parents": [
        "4195f73d1329e49727bcceb028e58cb38376c2b0"
      ],
      "author": {
        "name": "Alessio Igor Bogani",
        "email": "abogani@texware.it",
        "time": "Tue May 12 15:10:54 2009 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:11 2009 -0400"
      },
      "message": "Push BKL down into -\u003eremount_fs()\n\n[xfs, btrfs, capifs, shmem don\u0027t need BKL, exempt]\n\nSigned-off-by: Alessio Igor Bogani \u003cabogani@texware.it\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "4195f73d1329e49727bcceb028e58cb38376c2b0",
      "tree": "b4c729c164d6907e4186f6dc51e319a604dee416",
      "parents": [
        "545b9fd3d737afc0bb5203b1e79194a471605acd"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Thu May 28 09:01:15 2009 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:10 2009 -0400"
      },
      "message": "fs: block_dump missing dentry locking\n\nI think the block_dump output in __mark_inode_dirty is missing dentry locking.\nSurely the i_dentry list can change any time, so we may not even *get* a\ndentry there. If we do get one by chance, then it would appear to be able to\ngo away or get renamed at any time...\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "545b9fd3d737afc0bb5203b1e79194a471605acd",
      "tree": "9b9a39b55c3145a225c5256ff2be3b07a1ee43bb",
      "parents": [
        "8688b8635266cf98f00c6b0350ea2dbe7c42c321"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Tue Jun 02 12:07:47 2009 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:10 2009 -0400"
      },
      "message": "fs: remove incorrect I_NEW warnings\n\nSome filesystems can call in to sync an inode that is still in the\nI_NEW state (eg. ext family, when mounted with -osync). This is OK\nbecause the filesystem has sole access to the new inode, so it can\nmodify i_state without races (because no other thread should be\nmodifying it, by definition of I_NEW). Ie. a false positive, so\nremove the warnings.\n\nThe races are described here 7ef0d7377cb287e08f3ae94cebc919448e1f5dff,\nwhich is also where the warnings were introduced.\n\nReported-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "8688b8635266cf98f00c6b0350ea2dbe7c42c321",
      "tree": "d49153695f4637f5671fe5c10810b93959e65ccf",
      "parents": [
        "f95022161d23ee661a48af8f280472209f513a67"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@gentoo.org",
        "time": "Tue May 26 05:45:04 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:10 2009 -0400"
      },
      "message": "linux/magic.h: move cramfs magic out of cramfs_fs.h\n\nSigned-off-by: Mike Frysinger \u003cvapier@gentoo.org\u003e\nCC: Alexander Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "f95022161d23ee661a48af8f280472209f513a67",
      "tree": "9e7c8455e4126b1dd5586ae973ad16c17653f5b3",
      "parents": [
        "13205fb9260c2377438599ef0773c6a3eaeb0b07"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Fri Jun 05 12:26:23 2009 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:10 2009 -0400"
      },
      "message": "xfs: remove -\u003ewrite_super and stop maintaining -\u003es_dirt\n\nthe write_super method is used for\n\n (1) writing back the superblock periodically from pdflush\n (2) called just before -\u003esync_fs for data integerity syncs\n\nWe don\u0027t need (1) because we have our own peridoc writeout through xfssyncd,\nand we don\u0027t need (2) because xfs_fs_sync_fs performs a proper synchronous\nsuperblock writeout after all other data and metadata has been written out.\n\nAlso remove -\u003es_dirt tracking as it\u0027s only used to decide when too call\n-\u003ewrite_super.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "13205fb9260c2377438599ef0773c6a3eaeb0b07",
      "tree": "bcf5dee805d504ccc173c17cf28488a42cef2cb3",
      "parents": [
        "28ad0c118b0ed98b042d362acfe0017591921138"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon May 25 09:30:45 2009 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:10 2009 -0400"
      },
      "message": "ntfs: remove old debug check for dirty data in ntfs_put_super()\n\nThis should not trigger anymore, so kill it.\n\nAcked-by: Anton Altaparmakov \u003caia21@cam.ac.uk\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "28ad0c118b0ed98b042d362acfe0017591921138",
      "tree": "71a8954cbd50216c11c5c3557efcb7535c433e0a",
      "parents": [
        "9fd5746fd3d7838bf6ff991d50f1257057d1156f"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Thu May 21 16:01:02 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:09 2009 -0400"
      },
      "message": "fs: Rearrange inode structure elements to avoid waste due to padding\n\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\nCc: linux-fsdevel@vger.kernel.org\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "9fd5746fd3d7838bf6ff991d50f1257057d1156f",
      "tree": "e0afe14ea9415b0e54c40703bb44acfec100a4b3",
      "parents": [
        "ebc1ac164560a241d9bf1b7519062910c3f90a01"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Thu May 21 16:01:00 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:09 2009 -0400"
      },
      "message": "fs: Remove i_cindex from struct inode\n\nThe only user of the i_cindex element in the inode structure is used\nis by the firewire drivers.  As part of an attempt to slim down the\ninode structure to save memory --- since a typical Linux system will\nhave hundreds of thousands if not millions of inodes cached, a\nreduction in the size inode has high leverage.\n\nThe firewire driver does not need i_cindex in any fast path, so it\u0027s\nsimple enough to calculate when it is needed, instead of wasting space\nin the inode structure.\n\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\nCc: krh@redhat.com\nCc: stefanr@s5r6.in-berlin.de\nCc: linux-fsdevel@vger.kernel.org\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "ebc1ac164560a241d9bf1b7519062910c3f90a01",
      "tree": "db17fd3043b15f8269cce2c2d00213814022fc30",
      "parents": [
        "01ba687577647beef6c5f2ea59bfb56fac9fcde2"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Mon May 11 23:35:03 2009 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:09 2009 -0400"
      },
      "message": "-\u003ewrite_super lock_super pushdown\n\nPush down lock_super into -\u003ewrite_super instances and remove it from the\ncaller.\n\nFollowing filesystem don\u0027t need -\u003es_lock in -\u003ewrite_super and are skipped:\n\n * bfs, nilfs2 - no other uses of s_lock and have internal locks in\n\t-\u003ewrite_super\n * ext2 - uses BKL in ext2_write_super and has internal calls without s_lock\n * reiserfs - no other uses of s_lock as has reiserfs_write_lock (BKL) in\n \t-\u003ewrite_super\n * xfs - no other uses of s_lock and uses internal lock (buffer lock on\n\tsuperblock buffer) to serialize -\u003ewrite_super.  Also xfs_fs_write_super\n\tis superflous and will go away in the next merge window\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "01ba687577647beef6c5f2ea59bfb56fac9fcde2",
      "tree": "fadd888ca8568f3e373bda5b80857396cd79828a",
      "parents": [
        "4aa98cf768b6f2ea4b204620d949a665959214f6"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Mon May 11 23:34:27 2009 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:09 2009 -0400"
      },
      "message": "jffs2: move jffs2_write_super to super.c\n\njffs2_write_super is only called from super.c and doesn\u0027t use any\nfunctionality from fs.c.  So move it over to super.c and make it\nstatic there.\n\n[should go in through the vfs tree as it is a requirement for the\n next patch]\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "4aa98cf768b6f2ea4b204620d949a665959214f6",
      "tree": "dd6f5be97396b9e1f24a9697524da19463e7a8da",
      "parents": [
        "7f78d4cd4c5d01864943c22b79df1b6bde923129"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri May 08 13:36:58 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:08 2009 -0400"
      },
      "message": "Push BKL down into do_remount_sb()\n\n[folded fix from Jiri Slaby]\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "7f78d4cd4c5d01864943c22b79df1b6bde923129",
      "tree": "c232d14121976caa8a38e49d6a8a555e99e27c04",
      "parents": [
        "6fac98dd218653c6aff8a0f56305c424930cea2a"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri May 08 13:34:06 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:08 2009 -0400"
      },
      "message": "Push BKL down beyond VFS-only parts of do_mount()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "6fac98dd218653c6aff8a0f56305c424930cea2a",
      "tree": "0c5bdca0092e5ec3b201bae958071a7e8385409d",
      "parents": [
        "bbd6851a3213a525128473e978b692ab6ac11aba"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri May 08 13:31:17 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:08 2009 -0400"
      },
      "message": "Push BKL into do_mount()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "bbd6851a3213a525128473e978b692ab6ac11aba",
      "tree": "8ebddebadd8992871ab98456187cb00849a82058",
      "parents": [
        "6cfd0148425e528b859b26e436b01f23f6926224"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed May 06 10:43:07 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:08 2009 -0400"
      },
      "message": "Push lock_super() into the -\u003eremount_fs() of filesystems that care about it\n\nNote that since we can\u0027t run into contention between remount_fs and write_super\n(due to exclusion on s_umount), we have to care only about filesystems that\ntouch lock_super() on their own.  Out of those ext3, ext4, hpfs, sysv and ufs\ndo need it; fat doesn\u0027t since its -\u003eremount_fs() only accesses assign-once\ndata (basically, it\u0027s \"we have no atime on directories and only have atime on\nfiles for vfat; force nodiratime and possibly noatime into *flags\").\n\n[folded a build fix from hch]\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "6cfd0148425e528b859b26e436b01f23f6926224",
      "tree": "60e3257053554ff198fe5825e6f12a00c3b4422a",
      "parents": [
        "a9e220f8322e2b0e0b8903fe00265461cffad3f0"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Tue May 05 15:40:36 2009 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:07 2009 -0400"
      },
      "message": "push BKL down into -\u003eput_super\n\nMove BKL into -\u003eput_super from the only caller.  A couple of\nfilesystems had trivial enough -\u003eput_super (only kfree and NULLing of\ns_fs_info + stuff in there) to not get any locking: coda, cramfs, efs,\nhugetlbfs, omfs, qnx4, shmem, all others got the full treatment.  Most\nof them probably don\u0027t need it, but I\u0027d rather sort that out individually.\nPreferably after all the other BKL pushdowns in that area.\n\n[AV: original used to move lock_super() down as well; these changes are\nremoved since we don\u0027t do lock_super() at all in generic_shutdown_super()\nnow]\n[AV: fuse, btrfs and xfs are known to need no damn BKL, exempt]\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "a9e220f8322e2b0e0b8903fe00265461cffad3f0",
      "tree": "b3be7d58b8eb9fd810636223f0458191ec1b9d75",
      "parents": [
        "62c6943b4b1e818aea60c11c5a68a50785b83119"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue May 05 22:10:44 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:07 2009 -0400"
      },
      "message": "No need to do lock_super() for exclusion in generic_shutdown_super()\n\nWe can\u0027t run into contention on it.  All other callers of lock_super()\neither hold s_umount (and we have it exclusive) or hold an active\nreference to superblock in question, which prevents the call of\ngeneric_shutdown_super() while the reference is held.  So we can\nreplace lock_super(s) with get_fs_excl() in generic_shutdown_super()\n(and corresponding change for unlock_super(), of course).\n\nSince ext4 expects s_lock held for its put_super, take lock_super()\ninto it.  The rest of filesystems do not care at all.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "62c6943b4b1e818aea60c11c5a68a50785b83119",
      "tree": "ecdbb1c63d5c37b42f7074e4c53beaaa850ada2b",
      "parents": [
        "443b94baaa16771e98b29ca7c24f1e305738ffca"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu May 07 03:12:29 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:07 2009 -0400"
      },
      "message": "Trim a bit of crap from fs.h\n\ndo_remount_sb() is fs/internal.h fodder, fsync_no_super() is long gone.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "443b94baaa16771e98b29ca7c24f1e305738ffca",
      "tree": "cf498a25d012330928e0315222c46ea90c200530",
      "parents": [
        "5af7926ff33b68b3ba46531471c6e0564b285efc"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue May 05 23:48:50 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:07 2009 -0400"
      },
      "message": "Make sure that all callers of remount hold s_umount exclusive\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "5af7926ff33b68b3ba46531471c6e0564b285efc",
      "tree": "a25266f9db482ce9dd8e663148ffb0f1a524bd83",
      "parents": [
        "e5004753388dcf5e1b8a52ac0ab807d232340fbb"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Tue May 05 15:41:25 2009 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:06 2009 -0400"
      },
      "message": "enforce -\u003esync_fs is only called for rw superblock\n\nMake sure a superblock really is writeable by checking MS_RDONLY\nunder s_umount.  sync_filesystems needed some re-arragement for\nthat, but all but one sync_filesystem caller had the correct locking\nalready so that we could add that check there.  cachefiles grew\ns_umount locking.\n\nI\u0027ve also added a WARN_ON to sync_filesystem to assert this for\nfuture callers.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "e5004753388dcf5e1b8a52ac0ab807d232340fbb",
      "tree": "4a74a93f1468acb111ba9a3e9ed4a55f338f51fe",
      "parents": [
        "f3da392e9ff14b9f388e74319e6d195848991c07"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Tue May 05 16:08:56 2009 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:06 2009 -0400"
      },
      "message": "cleanup sync_supers\n\nMerge the write_super helper into sync_super and move the check for\n-\u003ewrite_super earlier so that we can avoid grabbing a reference to\na superblock that doesn\u0027t have it.\n\nWhile we\u0027re at it also add a little comment documenting sync_supers.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "f3da392e9ff14b9f388e74319e6d195848991c07",
      "tree": "d9e7660e5c0b4524aeaafcc5b89a9d68a7ca3817",
      "parents": [
        "8c85e125124a473d6f3e9bb187b0b84207f81d91"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Mon May 04 03:32:03 2009 +0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:06 2009 -0400"
      },
      "message": "dcache: extrace and use d_unlinked()\n\nd_unlinked() will be used in middle-term to ban checkpointing when opened\nbut unlinked file is detected, and in long term, to detect such situation\nand special case on it.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "8c85e125124a473d6f3e9bb187b0b84207f81d91",
      "tree": "d883424a156c00c55193e46567efdffddb6ef6b9",
      "parents": [
        "517bfae28353e996160518add4d00033d3886e61"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Tue Apr 28 18:00:26 2009 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:06 2009 -0400"
      },
      "message": "remove -\u003ewrite_super call in generic_shutdown_super\n\nWe just did a full fs writeout using sync_filesystem before, and if\nthat\u0027s not enough for the filesystem it can perform it\u0027s own writeout\nin -\u003eput_super, which many filesystems already do.\n\nMove a call to foofs_write_super into every foofs_put_super for now to\nguarantee identical behaviour until it\u0027s cleaned up by the individual\nfilesystem maintainers.\n\nExceptions:\n\n - affs already has identical copy \u0026 pasted code at the beginning of\n   affs_put_super so no need to do it twice.\n - xfs does the right thing without it and I have changes pending for\n   the xfs tree touching this are so I don\u0027t really need conflicts\n   here..\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "517bfae28353e996160518add4d00033d3886e61",
      "tree": "037d4c4de72da1c65a8be7c33a28f5ebcf0b31a3",
      "parents": [
        "94cb993f2ee99f3a9318e7b4dbb383497c4bedea"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Mon Apr 27 09:46:45 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:05 2009 -0400"
      },
      "message": "qnx4: remove -\u003ewrite_super\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "94cb993f2ee99f3a9318e7b4dbb383497c4bedea",
      "tree": "71c2436a8588d253938d50e30b561dcefbb83cd7",
      "parents": [
        "b7d245de25d1f0bb75a0d04194b647762b30d3db"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Mon Apr 27 09:46:44 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:05 2009 -0400"
      },
      "message": "ocfs2: remove -\u003ewrite_super and stop maintaining -\u003es_dirt\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nAcked-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "b7d245de25d1f0bb75a0d04194b647762b30d3db",
      "tree": "7c7f00651751db70432feef2a6a8327f67bc4109",
      "parents": [
        "ca41f7b918294c2a17780e057568413dcbfc6d49"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Mon Apr 27 09:46:43 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:05 2009 -0400"
      },
      "message": "gfs2: remove -\u003ewrite_super and stop maintaining -\u003es_dirt\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nAcked-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    }
  ],
  "next": "ca41f7b918294c2a17780e057568413dcbfc6d49"
}
