)]}'
{
  "log": [
    {
      "commit": "e7c8d5c9955a4d2e88e36b640563f5d6d5aba48a",
      "tree": "f04f7b0d08cbc46d2f190a85904a3dd696dc6e88",
      "parents": [
        "63551ae0feaaa23807ebea60de1901564bbef32e"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "christoph@lameter.com",
        "time": "Tue Jun 21 17:14:47 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Tue Jun 21 18:46:16 2005 -0700"
      },
      "message": "[PATCH] node local per-cpu-pages\n\nThis patch modifies the way pagesets in struct zone are managed.\n\nEach zone has a per-cpu array of pagesets.  So any particular CPU has some\nmemory in each zone structure which belongs to itself.  Even if that CPU is\nnot local to that zone.\n\nSo the patch relocates the pagesets for each cpu to the node that is nearest\nto the cpu instead of allocating the pagesets in the (possibly remote) target\nzone.  This means that the operations to manage pages on remote zone can be\ndone with information available locally.\n\nWe play a macro trick so that non-NUMA pmachines avoid the additional\npointer chase on the page allocator fastpath.\n\nAIM7 benchmark on a 32 CPU SGI Altix\n\nw/o patches:\nTasks    jobs/min  jti  jobs/min/task      real       cpu\n    1      484.68  100       484.6769     12.01      1.97   Fri Mar 25 11:01:42 2005\n  100    27140.46   89       271.4046     21.44    148.71   Fri Mar 25 11:02:04 2005\n  200    30792.02   82       153.9601     37.80    296.72   Fri Mar 25 11:02:42 2005\n  300    32209.27   81       107.3642     54.21    451.34   Fri Mar 25 11:03:37 2005\n  400    34962.83   78        87.4071     66.59    588.97   Fri Mar 25 11:04:44 2005\n  500    31676.92   75        63.3538     91.87    742.71   Fri Mar 25 11:06:16 2005\n  600    36032.69   73        60.0545     96.91    885.44   Fri Mar 25 11:07:54 2005\n  700    35540.43   77        50.7720    114.63   1024.28   Fri Mar 25 11:09:49 2005\n  800    33906.70   74        42.3834    137.32   1181.65   Fri Mar 25 11:12:06 2005\n  900    34120.67   73        37.9119    153.51   1325.26   Fri Mar 25 11:14:41 2005\n 1000    34802.37   74        34.8024    167.23   1465.26   Fri Mar 25 11:17:28 2005\n\nwith slab API changes and pageset patch:\n\nTasks    jobs/min  jti  jobs/min/task      real       cpu\n    1      485.00  100       485.0000     12.00      1.96   Fri Mar 25 11:46:18 2005\n  100    28000.96   89       280.0096     20.79    150.45   Fri Mar 25 11:46:39 2005\n  200    32285.80   79       161.4290     36.05    293.37   Fri Mar 25 11:47:16 2005\n  300    40424.15   84       134.7472     43.19    438.42   Fri Mar 25 11:47:59 2005\n  400    39155.01   79        97.8875     59.46    590.05   Fri Mar 25 11:48:59 2005\n  500    37881.25   82        75.7625     76.82    730.19   Fri Mar 25 11:50:16 2005\n  600    39083.14   78        65.1386     89.35    872.79   Fri Mar 25 11:51:46 2005\n  700    38627.83   77        55.1826    105.47   1022.46   Fri Mar 25 11:53:32 2005\n  800    39631.94   78        49.5399    117.48   1169.94   Fri Mar 25 11:55:30 2005\n  900    36903.70   79        41.0041    141.94   1310.78   Fri Mar 25 11:57:53 2005\n 1000    36201.23   77        36.2012    160.77   1458.31   Fri Mar 25 12:00:34 2005\n\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: Shobhit Dayal \u003cshobhit@calsoftinc.com\u003e\nSigned-off-by: Shai Fultheim \u003cShai@Scalex86.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "1e7e5a9048b30c57ba1ddaa6cdf59b21b65cde99",
      "tree": "26eb9c483718ca1a0fad23597c0dfd3a69e9f080",
      "parents": [
        "0c35bbadc59f5ed105c34471143eceb4c0dd9c95"
      ],
      "author": {
        "name": "Martin Hicks",
        "email": "mort@sgi.com",
        "time": "Tue Jun 21 17:14:43 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Tue Jun 21 18:46:14 2005 -0700"
      },
      "message": "[PATCH] VM: rate limit early reclaim\n\nWhen early zone reclaim is turned on the LRU is scanned more frequently when a\nzone is low on memory.  This limits when the zone reclaim can be called by\nskipping the scan if another thread (either via kswapd or sync reclaim) is\nalready reclaiming from the zone.\n\nSigned-off-by: Martin Hicks \u003cmort@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "753ee728964e5afb80c17659cc6c3a6fd0a42fe0",
      "tree": "41c9a7700d0858c1f77c5bdaba97e5b636f69b06",
      "parents": [
        "bfbb38fb808ac23ef44472d05d9bb36edfb49ed0"
      ],
      "author": {
        "name": "Martin Hicks",
        "email": "mort@sgi.com",
        "time": "Tue Jun 21 17:14:41 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Tue Jun 21 18:46:14 2005 -0700"
      },
      "message": "[PATCH] VM: early zone reclaim\n\nThis is the core of the (much simplified) early reclaim.  The goal of this\npatch is to reclaim some easily-freed pages from a zone before falling back\nonto another zone.\n\nOne of the major uses of this is NUMA machines.  With the default allocator\nbehavior the allocator would look for memory in another zone, which might be\noff-node, before trying to reclaim from the current zone.\n\nThis adds a zone tuneable to enable early zone reclaim.  It is selected on a\nper-zone basis and is turned on/off via syscall.\n\nAdding some extra throttling on the reclaim was also required (patch\n4/4).  Without the machine would grind to a crawl when doing a \"make -j\"\nkernel build.  Even with this patch the System Time is higher on\naverage, but it seems tolerable.  Here are some numbers for kernbench\nruns on a 2-node, 4cpu, 8Gig RAM Altix in the \"make -j\" run:\n\n\t\t\twall  user   sys   %cpu  ctx sw.  sleeps\n\t\t\t----  ----   ---   ----   ------  ------\nNo patch\t\t1009  1384   847   258   298170   504402\nw/patch, no reclaim     880   1376   667   288   254064   396745\nw/patch \u0026 reclaim       1079  1385   926   252   291625   548873\n\nThese numbers are the average of 2 runs of 3 \"make -j\" runs done right\nafter system boot.  Run-to-run variability for \"make -j\" is huge, so\nthese numbers aren\u0027t terribly useful except to seee that with reclaim\nthe benchmark still finishes in a reasonable amount of time.\n\nI also looked at the NUMA hit/miss stats for the \"make -j\" runs and the\nreclaim doesn\u0027t make any difference when the machine is thrashing away.\n\nDoing a \"make -j8\" on a single node that is filled with page cache pages\ntakes 700 seconds with reclaim turned on and 735 seconds without reclaim\n(due to remote memory accesses).\n\nThe simple zone_reclaim syscall program is at\nhttp://www.bork.org/~mort/sgi/zone_reclaim.c\n\nSigned-off-by: Martin Hicks \u003cmort@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "39c715b71740c4a78ba4769fb54826929bac03cb",
      "tree": "94dd679dfc8e6c2db65971739aa8c8c6206f8174",
      "parents": [
        "84929801e14d968caeb84795bfbb88f04283fbd9"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jun 21 17:14:34 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Tue Jun 21 18:46:13 2005 -0700"
      },
      "message": "[PATCH] smp_processor_id() cleanup\n\nThis patch implements a number of smp_processor_id() cleanup ideas that\nArjan van de Ven and I came up with.\n\nThe previous __smp_processor_id/_smp_processor_id/smp_processor_id API\nspaghetti was hard to follow both on the implementational and on the\nusage side.\n\nSome of the complexity arose from picking wrong names, some of the\ncomplexity comes from the fact that not all architectures defined\n__smp_processor_id.\n\nIn the new code, there are two externally visible symbols:\n\n - smp_processor_id(): debug variant.\n\n - raw_smp_processor_id(): nondebug variant. Replaces all existing\n   uses of _smp_processor_id() and __smp_processor_id(). Defined\n   by every SMP architecture in include/asm-*/smp.h.\n\nThere is one new internal symbol, dependent on DEBUG_PREEMPT:\n\n - debug_smp_processor_id(): internal debug variant, mapped to\n                             smp_processor_id().\n\nAlso, i moved debug_smp_processor_id() from lib/kernel_lock.c into a new\nlib/smp_processor_id.c file.  All related comments got updated and/or\nclarified.\n\nI have build/boot tested the following 8 .config combinations on x86:\n\n {SMP,UP} x {PREEMPT,!PREEMPT} x {DEBUG_PREEMPT,!DEBUG_PREEMPT}\n\nI have also build/boot tested x64 on UP/PREEMPT/DEBUG_PREEMPT.  (Other\narchitectures are untested, but should work just fine.)\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Arjan van de Ven \u003carjan@infradead.org\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"
    }
  ]
}
