)]}'
{
  "log": [
    {
      "commit": "9de455b20705f36384a711d4a20bcf7ba1ab180b",
      "tree": "6eb3643514d12d06a69a5c889d612f66b68288e6",
      "parents": [
        "77fff4ae2b7bba6d66a8287d9ab948e2b6c16145"
      ],
      "author": {
        "name": "Atsushi Nemoto",
        "email": "anemo@mba.ocn.ne.jp",
        "time": "Tue Dec 12 17:14:55 2006 +0000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Wed Dec 13 09:27:08 2006 -0800"
      },
      "message": "[PATCH] Pass vma argument to copy_user_highpage().\n\nTo allow a more effective copy_user_highpage() on certain architectures,\na vma argument is added to the function and cow_user_page() allowing\nthe implementation of these functions to check for the VM_EXEC bit.\n\nThe main part of this patch was originally written by Ralf Baechle;\nAtushi Nemoto did the the debugging.\n\nSigned-off-by: Atsushi Nemoto \u003canemo@mba.ocn.ne.jp\u003e\nSigned-off-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "77fff4ae2b7bba6d66a8287d9ab948e2b6c16145",
      "tree": "f05dca9b28a3b3de384c4eadb12f0691c88de794",
      "parents": [
        "1fb8cacc19dfe408a5dd758235561c58cadea174"
      ],
      "author": {
        "name": "Atsushi Nemoto",
        "email": "anemo@mba.ocn.ne.jp",
        "time": "Tue Dec 12 17:14:54 2006 +0000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Wed Dec 13 09:27:07 2006 -0800"
      },
      "message": "[PATCH] Fix COW D-cache aliasing on fork\n\nProblem:\n\n1. There is a process containing two thread (T1 and T2).  The\n   thread T1 calls fork().  Then dup_mmap() function called on T1 context.\n\nstatic inline int dup_mmap(struct mm_struct *mm, struct mm_struct *oldmm)\n\t...\n\tflush_cache_mm(current-\u003emm);\n\t...\t/* A */\n\t(write-protect all Copy-On-Write pages)\n\t...\t/* B */\n\tflush_tlb_mm(current-\u003emm);\n\t...\n\n2. When preemption happens between A and B (or on SMP kernel), the\n   thread T2 can run and modify data on COW pages without page fault\n   (modified data will stay in cache).\n\n3. Some time after fork() completed, the thread T2 may cause a page\n   fault by write-protect on a COW page.\n\n4. Then data of the COW page will be copied to newly allocated\n   physical page (copy_cow_page()).  It reads data via kernel mapping.\n   The kernel mapping can have different \u0027color\u0027 with user space\n   mapping of the thread T2 (dcache aliasing).  Therefore\n   copy_cow_page() will copy stale data.  Then the modified data in\n   cache will be lost.\n\nIn order to allow architecture code to deal with this problem allow\narchitecture code to override copy_user_highpage() by defining\n__HAVE_ARCH_COPY_USER_HIGHPAGE in \u003casm/page.h\u003e.\n\nThe main part of this patch was originally written by Ralf Baechle;\nAtushi Nemoto did the the debugging.\n\nSigned-off-by: Atsushi Nemoto \u003canemo@mba.ocn.ne.jp\u003e\nSigned-off-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "ad76fb6b5a5183255279e0ab5260715481770678",
      "tree": "31034294d70f5fc3d6166a76fe9b7f8cd19db0fd",
      "parents": [
        "a866374aecc90c7d90619727ccd851ac096b2fc7"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Dec 06 20:32:21 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:21 2006 -0800"
      },
      "message": "[PATCH] mm: k{,um}map_atomic() vs in_atomic()\n\nMake kmap_atomic/kunmap_atomic denote a pagefault disabled scope.  All non\ntrivial implementations already do this anyway.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c1f60a5a419cc60aff27daffb150f5a3a3a79ef4",
      "tree": "8ae176462d6f220cd744ae6c3454113eebda02a8",
      "parents": [
        "182e8e237349e7b6354f45aee4780b6423fd6a50"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Mon Sep 25 23:31:11 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:46 2006 -0700"
      },
      "message": "[PATCH] reduce MAX_NR_ZONES: move HIGHMEM counters into highmem.c/.h\n\nMove totalhigh_pages and nr_free_highpages() into highmem.c/.h\n\nMove the totalhigh_pages definition into highmem.c/.h.  Move the\nnr_free_highpages function into highmem.c\n\n[yoichi_yuasa@tripeaks.co.jp: build fix]\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: Yoichi Yuasa \u003cyoichi_yuasa@tripeaks.co.jp\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a6ca1b99ed434f3fb41bbed647ed36c0420501e5",
      "tree": "59bb799e202f912ced4230e6b4c194c9c0097758",
      "parents": [
        "3998b9301d3d55be8373add22b6bc5e11c1d9b71"
      ],
      "author": {
        "name": "James Bottomley",
        "email": "James.Bottomley@SteelEye.com",
        "time": "Mon Sep 25 23:30:55 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:44 2006 -0700"
      },
      "message": "[PATCH] update to the kernel kmap/kunmap API\n\nGive non-highmem architectures access to the kmap API for the purposes of\noverriding (this is what the attached patch does).\n\nThe proposal is that we should now require all architectures with coherence\nissues to manage data coherence via the kmap/kunmap API.  Thus driver\nwriters never have to write code like\n\n    kmap(page)\n    modify data in page\n    flush_kernel_dcache_page(page)\n    kunmap(page)\n\ninstead, kmap/kunmap will manage the coherence and driver (and filesystem)\nwriters don\u0027t need to worry about how to flush between kmap and kunmap.\n\nFor most architectures, the page only needs to be flushed if it was\nactually written to *and* there are user mappings of it, so the best\nimplementation looks to be: clear the page dirty pte bit in the kernel page\ntables on kmap and on kunmap, check page-\u003emappings for user maps, and then\nthe dirty bit, and only flush if it both has user mappings and is dirty.\n\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "62c4f0a2d5a188f73a94f2cb8ea0dba3e7cf0a7f",
      "tree": "e85ca2d0dd43f90dccf758338764c3caa55f333f",
      "parents": [
        "089f26d5e31b7bf42a9a8fefec08b30cd27f4b0e"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Wed Apr 26 12:56:16 2006 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Wed Apr 26 12:56:16 2006 +0100"
      },
      "message": "Don\u0027t include linux/config.h from anywhere else in include/\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "5a3a5a98b6422d05c39eaa32c8b3f83840c7b768",
      "tree": "e96a8f5543c94c57eb2b761fa94df9f7a9412e52",
      "parents": [
        "03beb07664d768db97bf454ae5c9581cd4737bb4"
      ],
      "author": {
        "name": "James Bottomley",
        "email": "James.Bottomley@SteelEye.com",
        "time": "Sun Mar 26 01:36:59 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Mar 26 08:56:53 2006 -0800"
      },
      "message": "[PATCH] Add flush_kernel_dcache_page() API\n\nWe have a problem in a lot of emulated storage in that it takes a page from\nget_user_pages() and does something like\n\nkmap_atomic(page)\nmodify page\nkunmap_atomic(page)\n\nHowever, nothing has flushed the kernel cache view of the page before the\nkunmap.  We need a lightweight API to do this, so this new API would\nspecifically be for flushing the kernel cache view of a user page which the\nkernel has modified.  The driver would need to add\nflush_kernel_dcache_page(page) before the final kunmap.\n\nSigned-off-by: James Bottomley \u003cJames.Bottomley@SteelEye.com\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "03beb07664d768db97bf454ae5c9581cd4737bb4",
      "tree": "b906c4db3a70627a58363193f3f843e7e2132ca1",
      "parents": [
        "64a07bd82ed526d813b64b0957543eef55bdf9c0"
      ],
      "author": {
        "name": "James Bottomley",
        "email": "James.Bottomley@SteelEye.com",
        "time": "Sun Mar 26 01:36:57 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Mar 26 08:56:53 2006 -0800"
      },
      "message": "[PATCH] Add API for flushing Anon pages\n\nCurrently, get_user_pages() returns fully coherent pages to the kernel for\nanything other than anonymous pages.  This is a problem for things like\nfuse and the SCSI generic ioctl SG_IO which can potentially wish to do DMA\nto anonymous pages passed in by users.\n\nThe fix is to add a new memory management API: flush_anon_page() which\nis used in get_user_pages() to make anonymous pages coherent.\n\nSigned-off-by: James Bottomley \u003cJames.Bottomley@SteelEye.com\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "60e64d46a58236e3c718074372cab6a5b56a3b15",
      "tree": "194e5fa7a53a1ac4a106b1527ec69cf3c2179bb0",
      "parents": [
        "5f016456c96868c27df248a54d1cc919e7b70a23"
      ],
      "author": {
        "name": "Vivek Goyal",
        "email": "vgoyal@in.ibm.com",
        "time": "Sat Jun 25 14:58:19 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Jun 25 16:24:53 2005 -0700"
      },
      "message": "[PATCH] kdump: Routines for copying dump pages\n\nThis patch provides the interfaces necessary to read the dump contents,\ntreating it as a high memory device.\n\nSigned off by Hariprasad Nellitheertha \u003chari@in.ibm.com\u003e\nSigned-off-by: Eric Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Vivek Goyal \u003cvgoyal@in.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "1da177e4c3f41524e886b7f1b8a0c1fc7321cac2",
      "tree": "0bba044c4ce775e45a88a51686b5d9f90697ea9d",
      "parents": [],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:20:36 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:20:36 2005 -0700"
      },
      "message": "Linux-2.6.12-rc2\n\nInitial git repository build. I\u0027m not bothering with the full history,\neven though we have it. We can create a separate \"historical\" git\narchive of that later if we want to, and in the meantime it\u0027s about\n3.2GB when imported into git - space that would just make the early\ngit days unnecessarily complicated, when we don\u0027t have a lot of good\ninfrastructure for it.\n\nLet it rip!\n"
    }
  ]
}
