)]}'
{
  "log": [
    {
      "commit": "920c3ed741340a88f2042ab0c44a25b8c743a379",
      "tree": "fecca3490f84274a6a1cc36956937f3b7bba3394",
      "parents": [
        "cb32da0416b823b7f4b65e7e85d6cba16ca4d1e1"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jul 17 21:37:35 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Jul 18 01:19:51 2007 -0700"
      },
      "message": "[SPARC64]: Add basic infrastructure for MD add/remove notification.\n\nAnd add dummy handlers for the VIO device layer.  These will be filled\nin with real code after the vdc, vnet, and ds drivers are reworked to\nhave simpler dependencies on the VIO device tree.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4f0234f4f9da485ecb9729af1b88567700fd4767",
      "tree": "7073115c86dbf4e691ddac12f5c9ce1c58ce53be",
      "parents": [
        "b3e13fbeb9ac1eb8e7b0791bf56e1775c692972b"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Fri Jul 13 16:03:42 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Jul 16 04:04:40 2007 -0700"
      },
      "message": "[SPARC64]: Initial LDOM cpu hotplug support.\n\nOnly adding cpus is supports at the moment, removal\nwill come next.\n\nWhen new cpus are configured, the machine description is\nupdated.  When we get the configure request we pass in a\ncpu mask of to-be-added cpus to the mdesc CPU node parser\nso it only fetches information for those cpus.  That code\nalso proceeds to update the SMT/multi-core scheduling bitmaps.\n\ncpu_up() does all the work and we return the status back\nover the DS channel.\n\nCPUs via dr-cpu need to be booted straight out of the\nhypervisor, and this requires:\n\n1) A new trampoline mechanism.  CPUs are booted straight\n   out of the hypervisor with MMU disabled and running in\n   physical addresses with no mappings installed in the TLB.\n\n   The new hvtramp.S code sets up the critical cpu state,\n   installs the locked TLB mappings for the kernel, and\n   turns the MMU on.  It then proceeds to follow the logic\n   of the existing trampoline.S SMP cpu bringup code.\n\n2) All calls into OBP have to be disallowed when domaining\n   is enabled.  Since cpus boot straight into the kernel from\n   the hypervisor, OBP has no state about that cpu and therefore\n   cannot handle being invoked on that cpu.\n\n   Luckily it\u0027s only a handful of interfaces which can be called\n   after the OBP device tree is obtained.  For example, rebooting,\n   halting, powering-off, and setting options node variables.\n\nCPU removal support will require some infrastructure changes\nhere.  Namely we\u0027ll have to process the requests via a true\nkernel thread instead of in a workqueue.  workqueues run on\na per-cpu thread, but when unconfiguring we might need to\nforce the thread to execute on another cpu if the current cpu\nis the one being removed.  Removal of a cpu also causes the kernel\nto destroy that cpu\u0027s workqueue running thread.\n\nAnother issue on removal is that we may have interrupts still\npointing to the cpu-to-be-removed.  So new code will be needed\nto walk the active INO list and retarget those cpus as-needed.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "83292e0a9c3f1c326b28fbf8cb70a8ce81a98163",
      "tree": "38794e806ba5fe8d10234c5c24a4efa22180c05c",
      "parents": [
        "43fdf27470b216ebdef47e09ff83bed2f2894b13"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Jul 12 14:16:22 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Jul 16 04:04:33 2007 -0700"
      },
      "message": "[SPARC64]: Fix MD property lifetime bugs.\n\nProperty values cannot be referenced outside of\nmdesc_grab()/mdesc_release() pairs.  The only major\noffender was the VIO bus layer, easily fixed.\n\nAdd some commentary to mdesc.h describing these rules.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "43fdf27470b216ebdef47e09ff83bed2f2894b13",
      "tree": "76b9b838089e5679471026037c93325c228df84a",
      "parents": [
        "133f09a169f3022be3de671b29658b7ecb375022"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Jul 12 13:47:50 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Jul 16 04:04:28 2007 -0700"
      },
      "message": "[SPARC64]: Abstract out mdesc accesses for better MD update handling.\n\nSince we have to be able to handle MD updates, having an in-tree\nset of data structures representing the MD objects actually makes\nthings more painful.\n\nThe MD itself is easy to parse, and we can implement the existing\ninterfaces using direct parsing of the MD binary image.\n\nThe MD is now reference counted, so accesses have to now take the\nform:\n\n\thandle \u003d mdesc_grab();\n\n\t... operations on MD ...\n\n\tmdesc_release(handle);\n\nThe only remaining issue are cases where code holds on to references\nto MD property values.  mdesc_get_property() returns a direct pointer\nto the property value, most cases just pull in the information they\nneed and discard the pointer, but there are few that use the pointer\ndirectly over a long lifetime.  Those will be fixed up in a subsequent\nchangeset.\n\nA preliminary handler for MD update events from domain services is\nthere, it is rudimentry but it works and handles all of the reference\ncounting.  It does not check the generation number of the MDs,\nand it does not generate a \"add/delete\" list for notification to\ninteresting parties about MD changes but that will be forthcoming.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "701271dfd220d214e26ef90c48a2dae3a2042687",
      "tree": "2a7af3af08c430e7162953e04d00c850416271ff",
      "parents": [
        "189548642c5962e60c3667bdb3a703fe0bed12a6"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jun 26 00:11:56 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jun 26 00:11:56 2007 -0700"
      },
      "message": "[SPARC64]: Add irqs to mdesc_node.\n\nWill be used to store translated LDC rx-ino and tx-ino.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5cbc30737398b49f62ae8603129ce43ac7db1a41",
      "tree": "45d01a686865e6fd9c32b670f77af1e37db03008",
      "parents": [
        "e01c0d6d8cf29c1c11725837b265598cab687952"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Fri May 25 15:49:59 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue May 29 02:49:41 2007 -0700"
      },
      "message": "[SPARC64]: Use machine description and OBP properly for cpu probing.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    }
  ]
}
