)]}'
{
  "log": [
    {
      "commit": "01424961e621737c638e489b6a0b5e6602b02612",
      "tree": "ae51380febe42e40d09375648b0d379325b905a7",
      "parents": [
        "bc86120a85ebf553180946e8854d1993f074e9f5"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@www.linux.org.uk",
        "time": "Sun Apr 24 12:28:34 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sun Apr 24 12:28:34 2005 -0700"
      },
      "message": "[PATCH] mempolicy.c GFP fix\n\nzonelist_policy() forgot to mask non-zone bits from gfp when comparing\nzone number with policy_zone. \n\nACKed-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Al Viro \u003cviro@parcelfarce.linux.theplanet.co.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "561bbe3235da614562fb26bb14042af684971a2d",
      "tree": "c60b08c7d319dd4799d7910e4f0c58100a80afd1",
      "parents": [
        "d455a3696c72283923e6870e9e4fe1daa861d7cd"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hugh@veritas.com",
        "time": "Tue Apr 19 13:29:23 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org.(none)",
        "time": "Tue Apr 19 13:29:23 2005 -0700"
      },
      "message": "[PATCH] freepgt: remove FIRST_USER_ADDRESS hack\n\nOnce all the MMU architectures define FIRST_USER_ADDRESS, remove hack from\nmmap.c which derived it from FIRST_USER_PGD_NR.\n\nSigned-off-by: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "8462e201756dd3bbe7e542106fc6fd6fe059cee2",
      "tree": "009c39a83ef819534621445647b04ba44bb3b13f",
      "parents": [
        "e2cdef8c847b480529b7e26991926aab4be008e6"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hugh@veritas.com",
        "time": "Tue Apr 19 13:29:20 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org.(none)",
        "time": "Tue Apr 19 13:29:20 2005 -0700"
      },
      "message": "[PATCH] freepgt: sys_mincore ignore FIRST_USER_PGD_NR\n\nRemove use of FIRST_USER_PGD_NR from sys_mincore: it\u0027s inconsistent (no other\nsyscall refers to it), unnecessary (sys_mincore loops over vmas further down)\nand incorrect (misses user addresses in ARM\u0027s first pgd).\n\nSigned-off-by: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e2cdef8c847b480529b7e26991926aab4be008e6",
      "tree": "b936ab7f0964f56bc3312ad9ad956e978ac39895",
      "parents": [
        "021740dc30d184e3b0fa7679936e65a56090c425"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hugh@veritas.com",
        "time": "Tue Apr 19 13:29:19 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org.(none)",
        "time": "Tue Apr 19 13:29:19 2005 -0700"
      },
      "message": "[PATCH] freepgt: free_pgtables from FIRST_USER_ADDRESS\n\nThe patches to free_pgtables by vma left problems on any architectures which\nleave some user address page table entries unencapsulated by vma.  Andi has\nfixed the 32-bit vDSO on x86_64 to use a vma.  Now fix arm (and arm26), whose\nfirst PAGE_SIZE is reserved (perhaps) for machine vectors.\n\nOur calls to free_pgtables must not touch that area, and exit_mmap\u0027s\nBUG_ON(nr_ptes) must allow that arm\u0027s get_pgd_slow may (or may not) have\nallocated an extra page table, which its free_pgd_slow would free later.\n\nFIRST_USER_PGD_NR has misled me and others: until all the arches define\nFIRST_USER_ADDRESS instead, a hack in mmap.c to derive one from t\u0027other.  This\npatch fixes the bugs, the remaining patches just clean it up.\n\nSigned-off-by: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "146425a316fb937fbdcac018b34a23c67d12214b",
      "tree": "3246589ae0fa8f4c334247222792a9e6339b4ccc",
      "parents": [
        "8f6c99c11ae63ce887686f3e51c412cc4d8d8a7d"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hugh@veritas.com",
        "time": "Tue Apr 19 13:29:18 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org.(none)",
        "time": "Tue Apr 19 13:29:18 2005 -0700"
      },
      "message": "[PATCH] freepgt: mpnt to vma cleanup\n\nWhile dabbling here in mmap.c, clean up mysterious \"mpnt\"s to \"vma\"s.\n\nSigned-off-by: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "3bf5ee95648c694bac4d13529563c230cd4fe5f2",
      "tree": "9430e6e4f4c3d586ecb7375cd780fd17694888c7",
      "parents": [
        "ee39b37b23da0b6ec53a8ebe90ff41c016f8ae27"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hugh@veritas.com",
        "time": "Tue Apr 19 13:29:16 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org.(none)",
        "time": "Tue Apr 19 13:29:16 2005 -0700"
      },
      "message": "[PATCH] freepgt: hugetlb_free_pgd_range\n\nia64 and ppc64 had hugetlb_free_pgtables functions which were no longer being\ncalled, and it wasn\u0027t obvious what to do about them.\n\nThe ppc64 case turns out to be easy: the associated tables are noted elsewhere\nand freed later, safe to either skip its hugetlb areas or go through the\nmotions of freeing nothing.  Since ia64 does need a special case, restore to\nppc64 the special case of skipping them.\n\nThe ia64 hugetlb case has been broken since pgd_addr_end went in, though it\nprobably appeared to work okay if you just had one such area; in fact it\u0027s\nbeen broken much longer if you consider a long munmap spanning from another\nregion into the hugetlb region.\n\nIn the ia64 hugetlb region, more virtual address bits are available than in\nthe other regions, yet the page tables are structured the same way: the page\nat the bottom is larger.  Here we need to scale down each addr before passing\nit to the standard free_pgd_range.  Was about to write a hugely_scaled_down\nmacro, but found htlbpage_to_page already exists for just this purpose.  Fixed\noff-by-one in ia64 is_hugepage_only_range.\n\nUninline free_pgd_range to make it available to ia64.  Make sure the\nvma-gathering loop in free_pgtables cannot join a hugepage_only_range to any\nother (safe to join huges?  probably but don\u0027t bother).\n\nSigned-off-by: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "ee39b37b23da0b6ec53a8ebe90ff41c016f8ae27",
      "tree": "4af606913ab8f95551623b788c0c66c1f5902229",
      "parents": [
        "e0da382c92626ad1d7f4b7527d19b80104d67a83"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hugh@veritas.com",
        "time": "Tue Apr 19 13:29:15 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org.(none)",
        "time": "Tue Apr 19 13:29:15 2005 -0700"
      },
      "message": "[PATCH] freepgt: remove MM_VM_SIZE(mm)\n\nThere\u0027s only one usage of MM_VM_SIZE(mm) left, and it\u0027s a troublesome macro\nbecause mm doesn\u0027t contain the (32-bit emulation?) info needed.  But it too is\nonly needed because we ignore the end from the vma list.\n\nWe could make flush_pgtables return that end, or unmap_vmas.  Choose the\nlatter, since it\u0027s a natural fit with unmap_mapping_range_vma needing to know\nits restart addr.  This does make more than minimal change, but if unmap_vmas\nhad returned the end before, this is how we\u0027d have done it, rather than\nstoring the break_addr in zap_details.\n\nunmap_vmas used to return count of vmas scanned, but that\u0027s just debug which\nhasn\u0027t been useful in a while; and if we want the map_count 0 on exit check\nback, it can easily come from the final remove_vm_struct loop.\n\nSigned-off-by: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e0da382c92626ad1d7f4b7527d19b80104d67a83",
      "tree": "b3f455518c286ee14cb2755ced8808487bca7911",
      "parents": [
        "9f6c6fc505560465be0964eb4da1b6ca97bd3951"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hugh@veritas.com",
        "time": "Tue Apr 19 13:29:15 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org.(none)",
        "time": "Tue Apr 19 13:29:15 2005 -0700"
      },
      "message": "[PATCH] freepgt: free_pgtables use vma list\n\nRecent woes with some arches needing their own pgd_addr_end macro; and 4-level\nclear_page_range regression since 2.6.10\u0027s clear_page_tables; and its\nlong-standing well-known inefficiency in searching throughout the higher-level\npage tables for those few entries to clear and free: all can be blamed on\nignoring the list of vmas when we free page tables.\n\nReplace exit_mmap\u0027s clear_page_range of the total user address space by\nfree_pgtables operating on the mm\u0027s vma list; unmap_region use it in the same\nway, giving floor and ceiling beyond which it may not free tables.  This\nbrings lmbench fork/exec/sh numbers back to 2.6.10 (unless preempt is enabled,\nin which case latency fixes spoil unmap_vmas throughput).\n\nBeware: the do_mmap_pgoff driver failure case must now use unmap_region\ninstead of zap_page_range, since a page table might have been allocated, and\ncan only be freed while it is touched by some vma.\n\nMove free_pgtables from mmap.c to memory.c, where its lower levels are adapted\nfrom the clear_page_range levels.  (Most of free_pgtables\u0027 old code was\nactually for a non-existent case, prev not properly set up, dating from before\nhch gave us split_vma.) Pass mmu_gather** in the public interfaces, since we\nmight want to add latency lockdrops later; but no attempt to do so yet, going\nby vma should itself reduce latency.\n\nBut what if is_hugepage_only_range?  Those ia64 and ppc64 cases need careful\nexamination: put that off until a later patch of the series.\n\nWhat of x86_64\u0027s 32bit vdso page __map_syscall32 maps outside any vma?\n\nAnd the range to sparc64\u0027s flush_tlb_pgtables?  It\u0027s less clear to me now that\nwe need to do more than is done here - every PMD_SIZE ever occupied will be\nflushed, do we really have to flush every PGDIR_SIZE ever partially occupied? \nA shame to complicate it unnecessarily.\n\nSpecial thanks to David Miller for time spent repairing my ceilings.\n\nSigned-off-by: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "323aca6c0bda611d0f31b3234d9fe291d31a9207",
      "tree": "d1ece2a5bd91f56981f7773f264843828e9b71c6",
      "parents": [
        "79befd0c08c4766f8fa27e37ac2a70e40840a56a"
      ],
      "author": {
        "name": "akpm@osdl.org",
        "email": "akpm@osdl.org",
        "time": "Sat Apr 16 15:24:06 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:24:06 2005 -0700"
      },
      "message": "[PATCH] vmscan: pageout(): remove unneeded test\n\n\r)\n\n\n\nWe only call pageout() for dirty pages, so this test is redundant.\n\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "79befd0c08c4766f8fa27e37ac2a70e40840a56a",
      "tree": "d0600c289b1a54902e3b78eec0729dc7011569a3",
      "parents": [
        "d345734267dbec642f4e34a9d392d2fd85b5fa9b"
      ],
      "author": {
        "name": "Andrea Arcangeli",
        "email": "andrea@suse.de",
        "time": "Sat Apr 16 15:24:05 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:24:05 2005 -0700"
      },
      "message": "[PATCH] oom-killer disable for iscsi/lvm2/multipath userland critical sections\n\niscsi/lvm2/multipath needs guaranteed protection from the oom-killer, so\nmake the magical value of -17 in /proc/\u003cpid\u003e/oom_adj defeat the oom-killer\naltogether.\n\n(akpm: we still need to document oom_adj and friends in\nDocumentation/filesystems/proc.txt!)\n\nSigned-off-by: Andrea Arcangeli \u003candrea@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d345734267dbec642f4e34a9d392d2fd85b5fa9b",
      "tree": "9a74f4b8292a696620f95933171ac5ddff970ef9",
      "parents": [
        "41aac24f8fb5a21ff3d0f6f56f85fad3cf0e88a9"
      ],
      "author": {
        "name": "Jeff Moyer",
        "email": "jmoyer@redhat.com",
        "time": "Sat Apr 16 15:24:05 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:24:05 2005 -0700"
      },
      "message": "[PATCH] filemap_getpage can block when MAP_NONBLOCK specified\n\nWe will return NULL from filemap_getpage when a page does not exist in the\npage cache and MAP_NONBLOCK is specified, here:\n\n\tpage \u003d find_get_page(mapping, pgoff);\n\tif (!page) {\n\t\tif (nonblock)\n\t\t\treturn NULL;\n\t\tgoto no_cached_page;\n\t}\n\nBut we forget to do so when the page in the cache is not uptodate.  The\nfollowing could result in a blocking call:\n\n\t/*\n\t * Ok, found a page in the page cache, now we need to check\n\t * that it\u0027s up-to-date.\n\t */\n\tif (!PageUptodate(page))\n\t\tgoto page_not_uptodate;\n\n\n\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"
    }
  ]
}
