)]}'
{
  "log": [
    {
      "commit": "13e4b57f6a4e23ceb99794a650d777e74831f4a6",
      "tree": "a585fdc3a2374dbedcf0114fa3c38d2fb7920774",
      "parents": [
        "75bcc8c5e1de78616b04ef9f317a293a7c1c163c"
      ],
      "author": {
        "name": "Nishanth Aravamudan",
        "email": "nacc@us.ibm.com",
        "time": "Sat Sep 10 00:27:25 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Sep 10 10:06:37 2005 -0700"
      },
      "message": "[PATCH] mm: fix-up schedule_timeout() usage\n\nUse schedule_timeout_{,un}interruptible() instead of\nset_current_state()/schedule_timeout() to reduce kernel size.\n\nSigned-off-by: Nishanth Aravamudan \u003cnacc@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "ef08e3b4981aebf2ba9bd7025ef7210e8eec07ce",
      "tree": "3b5386e011c87dde384115c8eb0d6961c2536025",
      "parents": [
        "9bf2229f8817677127a60c177aefce1badd22d7b"
      ],
      "author": {
        "name": "Paul Jackson",
        "email": "pj@sgi.com",
        "time": "Tue Sep 06 15:18:13 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 07 16:57:40 2005 -0700"
      },
      "message": "[PATCH] cpusets: confine oom_killer to mem_exclusive cpuset\n\nNow the real motivation for this cpuset mem_exclusive patch series seems\ntrivial.\n\nThis patch keeps a task in or under one mem_exclusive cpuset from provoking an\noom kill of a task under a non-overlapping mem_exclusive cpuset.  Since only\ninterrupt and GFP_ATOMIC allocations are allowed to escape mem_exclusive\ncontainment, there is little to gain from oom killing a task under a\nnon-overlapping mem_exclusive cpuset, as almost all kernel and user memory\nallocation must come from disjoint memory nodes.\n\nThis patch enables configuring a system so that a runaway job under one\nmem_exclusive cpuset cannot cause the killing of a job in another such cpuset\nthat might be using very high compute and memory resources for a prolonged\ntime.\n\nSigned-off-by: Paul Jackson \u003cpj@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a49335cceab8afb6603152fcc3f7d3b6677366ca",
      "tree": "83f8c06d781a6de77f0b34ec14577bba1e410ac6",
      "parents": [
        "f68f447e8389de9a62e3e80c3c5823cce484c2e5"
      ],
      "author": {
        "name": "Paul Jackson",
        "email": "pj@sgi.com",
        "time": "Tue Sep 06 15:18:09 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 07 16:57:39 2005 -0700"
      },
      "message": "[PATCH] cpusets: oom_kill tweaks\n\nThis patch series extends the use of the cpuset attribute \u0027mem_exclusive\u0027\nto support cpuset configurations that:\n 1) allow GFP_KERNEL allocations to come from a potentially larger\n    set of memory nodes than GFP_USER allocations, and\n 2) can constrain the oom killer to tasks running in cpusets in\n    a specified subtree of the cpuset hierarchy.\n\nHere\u0027s an example usage scenario.  For a few hours or more, a large NUMA\nsystem at a University is to be divided in two halves, with a bunch of student\njobs running in half the system under some form of batch manager, and with a\nbig research project running in the other half.  Each of the student jobs is\nplaced in a small cpuset, but should share the classic Unix time share\nfacilities, such as buffered pages of files in /bin and /usr/lib.  The big\nresearch project wants no interference whatsoever from the student jobs, and\nhas highly tuned, unusual memory and i/o patterns that intend to make full use\nof all the main memory on the nodes available to it.\n\nIn this example, we have two big sibling cpusets, one of which is further\ndivided into a more dynamic set of child cpusets.\n\nWe want kernel memory allocations constrained by the two big cpusets, and user\nallocations constrained by the smaller child cpusets where present.  And we\nrequire that the oom killer not operate across the two halves of this system,\nor else the first time a student job runs amuck, the big research project will\nlikely be first inline to get shot.\n\nTweaking /proc/\u003cpid\u003e/oom_adj is not ideal -- if the big research project\nreally does run amuck allocating memory, it should be shot, not some other\ntask outside the research projects mem_exclusive cpuset.\n\nI propose to extend the use of the \u0027mem_exclusive\u0027 flag of cpusets to manage\nsuch scenarios.  Let memory allocations for user space (GFP_USER) be\nconstrained by a tasks current cpuset, but memory allocations for kernel space\n(GFP_KERNEL) by constrained by the nearest mem_exclusive ancestor of the\ncurrent cpuset, even though kernel space allocations will still _prefer_ to\nremain within the current tasks cpuset, if memory is easily available.\n\nLet the oom killer be constrained to consider only tasks that are in\noverlapping mem_exclusive cpusets (it won\u0027t help much to kill a task that\nnormally cannot allocate memory on any of the same nodes as the ones on which\nthe current task can allocate.)\n\nThe current constraints imposed on setting mem_exclusive are unchanged.  A\ncpuset may only be mem_exclusive if its parent is also mem_exclusive, and a\nmem_exclusive cpuset may not overlap any of its siblings memory nodes.\n\nThis patch was presented on linux-mm in early July 2005, though did not\ngenerate much feedback at that time.  It has been built for a variety of\narch\u0027s using cross tools, and built, booted and tested for function on SN2\n(ia64).\n\nThere are 4 patches in this set:\n  1) Some minor cleanup, and some improvements to the code layout\n     of one routine to make subsequent patches cleaner.\n  2) Add another GFP flag - __GFP_HARDWALL.  It marks memory\n     requests for USER space, which are tightly confined by the\n     current tasks cpuset.\n  3) Now memory requests (such as KERNEL) that not marked HARDWALL can\n     if short on memory, look in the potentially larger pool of memory\n     defined by the nearest mem_exclusive ancestor cpuset of the current\n     tasks cpuset.\n  4) Finally, modify the oom killer to skip any task whose mem_exclusive\n     cpuset doesn\u0027t overlap ours.\n\nPatch (1), the one time I looked on an SN2 (ia64) build, actually saved 32\nbytes of kernel text space.  Patch (2) has no affect on the size of kernel\ntext space (it just adds a preprocessor flag).  Patches (3) and (4) added\nabout 600 bytes each of kernel text space, mostly in kernel/cpuset.c, which\nmatters only if CONFIG_CPUSET is enabled.\n\nThis patch:\n\nThis patch applies a few comment and code cleanups to mm/oom_kill.c prior to\napplying a few small patches to improve cpuset management of memory placement.\n\nThe comment changed in oom_kill.c was seriously misleading.  The code layout\nchange in select_bad_process() makes room for adding another condition on\nwhich a process can be spared the oom killer (see the subsequent\ncpuset_nodes_overlap patch for this addition).\n\nAlso a couple typos and spellos that bugged me, while I was here.\n\nThis patch should have no material affect.\n\nSigned-off-by: Paul Jackson \u003cpj@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "42639269f9ce4aac2e6c20bcbca30b5da8b9a899",
      "tree": "1583ac4da9d2e40669d4579e338d8e506dedba5a",
      "parents": [
        "37b173a4d03d1681e6c9529bc43d7a3308132db6"
      ],
      "author": {
        "name": "Anton Blanchard",
        "email": "anton@samba.org",
        "time": "Thu Jul 07 17:56:06 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jul 07 18:23:36 2005 -0700"
      },
      "message": "[PATCH] mm: quieten OOM killer noise\n\nWe now print statistics when invoking the OOM killer, however this\ninformation is not rate limited and you can get into situations where the\nconsole is continually spammed.\n\nFor example, when a task is exiting the OOM killer will simply return\n(waiting for that task to exit and clear up memory).  If the VM continually\ncalls back into the OOM killer we get thousands of copies of show_mem() on\nthe console.\n\nUse printk_ratelimit() to quieten it.\n\nSigned-off-by: Anton Blanchard \u003canton@samba.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "79b9ce311e192e9a31fd9f3cf1ee4a4edf9e2650",
      "tree": "210896405b2b70aded7582750e20967df8c8e7bf",
      "parents": [
        "cb2c0233755429037462e16ea0d5497a0092738c"
      ],
      "author": {
        "name": "Marcelo Tosatti",
        "email": "marcelo.tosatti@cyclades.com",
        "time": "Thu Jul 07 17:56:04 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jul 07 18:23:35 2005 -0700"
      },
      "message": "[PATCH] print order information when OOM killing\n\nDump the current allocation order when OOM killing.\n\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "578c2fd6a7f378434655e5c480e23152a3994404",
      "tree": "3a6408c416e3825cd17e33ac776425a52b743adc",
      "parents": [
        "c2f29ea111e3344ed48257c2a142c3db514e1529"
      ],
      "author": {
        "name": "Janet Morgan",
        "email": "janetmor@us.ibm.com",
        "time": "Tue Jun 21 17:14:56 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Tue Jun 21 18:46:17 2005 -0700"
      },
      "message": "[PATCH] add OOM debug\n\nThis patch provides more debug info when the system is OOM.  It displays\nmemory stats (basically sysrq-m info) from __alloc_pages() when page\nallocation fails and during OOM kill.\n\nThanks to Dave Jones for coming up with the idea.\n\nSigned-off-by: Janet Morgan \u003cjanetmor@us.ibm.com\u003e\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": "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"
    }
  ]
}
