)]}'
{
  "log": [
    {
      "commit": "d533f671852cc4e481ea7070aa1a3b6fc75b8e44",
      "tree": "970419f90c377dbcfb4d8726460d62ad8c8fbac4",
      "parents": [
        "9de75d110c9681d4aaa7fe87b8db99d5562012a2"
      ],
      "author": {
        "name": "Tobias Klauser",
        "email": "tklauser@nuerscht.ch",
        "time": "Sat Sep 10 00:26:46 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Sep 10 10:06:28 2005 -0700"
      },
      "message": "[PATCH] Spelling fixes for Documentation/\n\nThe attached patch fixes the following spelling errors in Documentation/\n        - double \"the\"\n        - Several misspellings of function/functionality\n        - infomation\n        - memeory\n        - Recieved\n        - wether\nand possibly others which I forgot ;-)\nTrailing whitespaces on the same line as the typo are also deleted.\n\nSigned-off-by: Tobias Klauser \u003ctklauser@nuerscht.ch\u003e\nSigned-off-by: Domen Puncer \u003cdomen@coderock.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "9bf2229f8817677127a60c177aefce1badd22d7b",
      "tree": "06e95863a26b197233081db1dafd869dfd231950",
      "parents": [
        "f90b1d2f1aaaa40c6519a32e69615edc25bb97d5"
      ],
      "author": {
        "name": "Paul Jackson",
        "email": "pj@sgi.com",
        "time": "Tue Sep 06 15:18:12 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 07 16:57:40 2005 -0700"
      },
      "message": "[PATCH] cpusets: formalize intermediate GFP_KERNEL containment\n\nThis patch makes use of the previously underutilized cpuset flag\n\u0027mem_exclusive\u0027 to provide what amounts to another layer of memory placement\nresolution.  With this patch, there are now the following four layers of\nmemory placement available:\n\n 1) The whole system (interrupt and GFP_ATOMIC allocations can use this),\n 2) The nearest enclosing mem_exclusive cpuset (GFP_KERNEL allocations can use),\n 3) The current tasks cpuset (GFP_USER allocations constrained to here), and\n 4) Specific node placement, using mbind and set_mempolicy.\n\nThese nest - each layer is a subset (same or within) of the previous.\n\nLayer (2) above is new, with this patch.  The call used to check whether a\nzone (its node, actually) is in a cpuset (in its mems_allowed, actually) is\nextended to take a gfp_mask argument, and its logic is extended, in the case\nthat __GFP_HARDWALL is not set in the flag bits, to look up the cpuset\nhierarchy for the nearest enclosing mem_exclusive cpuset, to determine if\nplacement is allowed.  The definition of GFP_USER, which used to be identical\nto GFP_KERNEL, is changed to also set the __GFP_HARDWALL bit, in the previous\ncpuset_gfp_hardwall_flag patch.\n\nGFP_ATOMIC and GFP_KERNEL allocations will stay within the current tasks\ncpuset, so long as any node therein is not too tight on memory, but will\nescape to the larger layer, if need be.\n\nThe intended use is to allow something like a batch manager to handle several\njobs, each job in its own cpuset, but using common kernel memory for caches\nand such.  Swapper and oom_kill activity is also constrained to Layer (2).  A\ntask in or below one mem_exclusive cpuset should not cause swapping on nodes\nin another non-overlapping mem_exclusive cpuset, nor provoke oom_killing of a\ntask in another such cpuset.  Heavy use of kernel memory for i/o caching and\nsuch by one job should not impact the memory available to jobs in other\nnon-overlapping mem_exclusive cpusets.\n\nThis patch enables providing hardwall, inescapable cpusets for memory\nallocations of each job, while sharing kernel memory allocations between\nseveral jobs, in an enclosing mem_exclusive cpuset.\n\nLike Dinakar\u0027s patch earlier to enable administering sched domains using the\ncpu_exclusive flag, this patch also provides a useful meaning to a cpuset flag\nthat had previously done nothing much useful other than restrict what cpuset\nconfigurations were allowed.\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": "85d7b94981e2e919697bc235aad7367b33c3864b",
      "tree": "79d7705a897abde11b5f2f967bf24487aaeea354",
      "parents": [
        "1a20ff27ef75d866730ee796acd811a925af762f"
      ],
      "author": {
        "name": "Dinakar Guniguntala",
        "email": "dino@in.ibm.com",
        "time": "Sat Jun 25 14:57:34 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Jun 25 16:24:45 2005 -0700"
      },
      "message": "[PATCH] Dynamic sched domains: cpuset changes\n\nAdds the core update_cpu_domains code and updated cpusets documentation\n\nSigned-off-by: Dinakar Guniguntala \u003cdino@in.ibm.com\u003e\nAcked-by: Paul Jackson \u003cpj@sgi.com\u003e\nAcked-by: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "b39c4fab259b216148e705344a892c96efe1946d",
      "tree": "6419f40168e5b9a1eab2a6d413e85d82975dd6b2",
      "parents": [
        "b2665f92ae67a2d086537979d317a6f3a5697c63"
      ],
      "author": {
        "name": "Paul Jackson",
        "email": "pj@sgi.com",
        "time": "Fri May 20 13:59:15 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Fri May 20 15:48:19 2005 -0700"
      },
      "message": "[PATCH] cpusets+hotplug+preepmt broken\n\nThis patch removes the entwining of cpusets and hotplug code in the \"No\nmore Mr.  Nice Guy\" case of sched.c move_task_off_dead_cpu().\n\nSince the hotplug code is holding a spinlock at this point, we cannot take\nthe cpuset semaphore, cpuset_sem, as would seem to be required either to\nupdate the tasks cpuset, or to scan up the nested cpuset chain, looking for\nthe nearest cpuset ancestor that still has some CPUs that are online.  So\nwe just punt and blast the tasks cpus_allowed with all bits allowed.\n\nThis reverts these lines of code to what they were before the cpuset patch.\n And it updates the cpuset Doc file, to match.\n\nThe one known alternative to this that seems to work came from Dinakar\nGuniguntala, and required the hotplug code to take the cpuset_sem semaphore\nmuch earlier in its processing.  So far as we know, the increased locking\nentanglement between cpusets and hot plug of this alternative approach is\nnot worth doing in this case.\n\nSigned-off-by: Paul Jackson \u003cpj@sgi.com\u003e\nAcked-by: Nathan Lynch \u003cntl@pobox.com\u003e\nAcked-by: Dinakar Guniguntala \u003cdino@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"
    }
  ]
}
