)]}'
{
  "log": [
    {
      "commit": "e229c2fb3370a0c4ebac06cad67ce1cb35abcfe6",
      "tree": "fc7ceeeeea4397e06c6ee5cfb597ba0d441beeea",
      "parents": [
        "7b204afd45820fc21b5983205ad535c6b8088765"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Mon Mar 20 17:19:17 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 20 17:19:17 2006 -0800"
      },
      "message": "[LIST]: Introduce list_for_each_entry_from\n\nFor iterating over list of given type continuing from existing point.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d8dcffee860d6b63996923b10f07c91d3d6c2fab",
      "tree": "a4b73c0d435b329f8522c380b22d9d4204a03f97",
      "parents": [
        "9b07ef5ddaced1e822b1a1fb1da088eb15c45cb4"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Mon Mar 20 17:18:05 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 20 17:18:05 2006 -0800"
      },
      "message": "[LIST]: Introduce list_for_each_entry_safe_from\n\nFor iterate over list of given type from existing point safe against removal of\nlist entry.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0af5f6c1eba4a18e6b2ed518b589927d778c6c16",
      "tree": "ea905a47e7ce2dc2d5076076edc0bf641cf3691c",
      "parents": [
        "5ee956125a780baf15f2c1d09f2cbf8adcf598fe"
      ],
      "author": {
        "name": "Harald Welte",
        "email": "laforge@netfilter.org",
        "time": "Mon Mar 20 17:15:11 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 20 17:15:11 2006 -0800"
      },
      "message": "[NETFILTER] nfnetlink_log: add sequence numbers for log events\n\nBy using a sequence number for every logged netfilter event, we can\ndetermine from userspace whether logging information was lots somewhere\ndownstream.\n\nThe user has a choice of either having per-instance local sequence\ncounters, or using a global sequence counter, or both.\n\nSigned-off-by: Harald Welte \u003claforge@netfilter.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5ee956125a780baf15f2c1d09f2cbf8adcf598fe",
      "tree": "195cfcef58dbd87c1cad337be08e69a8977d9224",
      "parents": [
        "39d8c1b6fbaeb8d6adec4a8c08365cc9eaca6ae4"
      ],
      "author": {
        "name": "Harald Welte",
        "email": "laforge@netfilter.org",
        "time": "Mon Mar 20 17:14:12 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 20 17:14:12 2006 -0800"
      },
      "message": "[NETFILTER] NAT sequence adjustment: Save eight bytes per conntrack\n\nThis patch reduces the size of \u0027struct ip_conntrack\u0027 on systems with NAT\nby eight bytes.  The sequence number delta values can be int16_t, since\nwe only support one sequence number modification per window anyway, and\none such modification is not going to exceed 32kB ;)\n\nSigned-off-by: Harald Welte \u003claforge@netfilter.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "77d2ca350018c507815f5d38a40ffb597eb9ae25",
      "tree": "b4c9ec7f0cc4accc2f9361d36d9a318fb1d9da50",
      "parents": [
        "ddd7bf9fe4e59afc0a041378f82b6e1aa88f714b"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Mar 20 17:12:12 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 20 17:12:12 2006 -0800"
      },
      "message": "[NET]: Reduce size of struct sk_buff on 64 bit architectures\n\nMove skb-\u003enf_mark next to skb-\u003etc_index to remove a 4 byte hole between\nskb-\u003enfmark and skb-\u003enfct and another one between skb-\u003eusers and skb-\u003ehead\nwhen CONFIG_NETFILTER, CONFIG_NET_SCHED and CONFIG_NET_CLS_ACT are enabled.\nFor all other combinations the size stays the same.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b00055aacdb172c05067612278ba27265fcd05ce",
      "tree": "4dbbee11b02d54cc0978113dfb07c53fdce17aa8",
      "parents": [
        "e843b9e1bec4a953d848a319da6a18ca5c667f55"
      ],
      "author": {
        "name": "Stefan Rompf",
        "email": "stefan@loplof.de",
        "time": "Mon Mar 20 17:09:11 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 20 17:09:11 2006 -0800"
      },
      "message": "[NET] core: add RFC2863 operstate\n\nthis patch adds a dormant flag to network devices, RFC2863 operstate derived\nfrom these flags and possibility for userspace interaction. It allows drivers\nto signal that a device is unusable for user traffic without disabling\nqueueing (and therefore the possibility for protocol establishment traffic to\nflow) and a userspace supplicant (WPA, 802.1X) to mark a device unusable\nwithout changes to the driver.\n\nIt is the result of our long discussion. However I must admit that it\nrepresents what Jamal and I agreed on with compromises towards Krzysztof, but\nThomas and Krzysztof still disagree with some parts. Anyway I think it should\nbe applied.\n\nSigned-off-by: Stefan Rompf \u003cstefan@loplof.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "09c884d4c3b45cda904c2291d4723074ff523611",
      "tree": "90b893f1b83165d7088ecdead94085969e0a58ef",
      "parents": [
        "e317da96227cef28a137e2d1ad790b23e518dd2b"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Mon Mar 20 17:07:03 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 20 17:07:03 2006 -0800"
      },
      "message": "[IPV6]: ROUTE: Add accept_ra_rt_info_max_plen sysctl.\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "70ceb4f53929f73746be72f73707cd9f8753e2fc",
      "tree": "e562929b0c800b0243e203587065e05323baba59",
      "parents": [
        "52e1635631b342803aecaf81a362c1464e3da2e5"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Mon Mar 20 17:06:24 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 20 17:06:24 2006 -0800"
      },
      "message": "[IPV6]: ROUTE: Add experimental support for Route Information Option in RA (RFC4191).\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "52e1635631b342803aecaf81a362c1464e3da2e5",
      "tree": "971c40743f7fcb594697dd18d22e2d8b168d1785",
      "parents": [
        "930d6ff2e2a5f1538448d3b0b2652a8f0c0f6cba"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Mon Mar 20 17:05:47 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 20 17:05:47 2006 -0800"
      },
      "message": "[IPV6]: ROUTE: Add router_probe_interval sysctl.\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "930d6ff2e2a5f1538448d3b0b2652a8f0c0f6cba",
      "tree": "0ea6ca2d6d04c13bf05100a70a4a21d7cd6eeb82",
      "parents": [
        "270972554c91acd29412d8b6a10e606041012106"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Mon Mar 20 17:05:30 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 20 17:05:30 2006 -0800"
      },
      "message": "[IPV6]: ROUTE: Add accept_ra_rtr_pref sysctl.\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ebacaaa0fdf4402cdf4c8e569f54af36b6f0aa2d",
      "tree": "5d1cc0c6d94b5226507434bb86e6e2a69fdd4204",
      "parents": [
        "8238dd0698b480e432acd955c45f9f907b8d27de"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Mon Mar 20 17:04:53 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 20 17:04:53 2006 -0800"
      },
      "message": "[IPV6]: ROUTE: Add support for Router Preference (RFC4191).\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "554cfb7ee5d4f2d0edb280e66e4a2db1906a8300",
      "tree": "586bca2143a23157ac2619b1c211144662ddf8f3",
      "parents": [
        "519fbd8715ce6413ec8e122bf02f09b0e49d3ca5"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Mon Mar 20 17:00:26 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 20 17:00:26 2006 -0800"
      },
      "message": "[IPV6]: ROUTE: Eliminate lock for default route pointer.\n\nAnd prepare for more advanced router selection.\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c4fd30eb18666972230689eb30e8f90844bce635",
      "tree": "f1b8daddeb21d7d1390fa1ae820bf2b5ffa8d276",
      "parents": [
        "65f5c7c1143fb8eed5bc7e7d8c926346e00fe3c0"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Mon Mar 20 16:55:26 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 20 16:55:26 2006 -0800"
      },
      "message": "[IPV6]: ADDRCONF: Add accept_ra_pinfo sysctl.\n\nThis controls whether we accept Prefix Information in RAs.\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "65f5c7c1143fb8eed5bc7e7d8c926346e00fe3c0",
      "tree": "fb61c9f73577a7fec29b11039d1434b972796d8b",
      "parents": [
        "073a8e0e154c1c440e0b33aaa887473d5cc843f4"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Mon Mar 20 16:55:08 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 20 16:55:08 2006 -0800"
      },
      "message": "[IPV6]: ROUTE: Add accept_ra_defrtr sysctl.\n\nThis controls whether we accept default router information\nin RAs.\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "955189efb44742890f33c91df478877af25246da",
      "tree": "7e98451f91422ad33bc8f4df62cb8166317b9796",
      "parents": [
        "955aaa2fe39e21e49521449c09548ce1ba501010"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Mon Mar 20 16:54:09 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 20 16:54:09 2006 -0800"
      },
      "message": "[IPV6]: ADDRCONF: Use our standard algorithm for randomized ifid.\n\nRFC 3041 describes an algorithm to generate random interface\nidentifier.  In RFC 3041bis, it is allowed to use different\nalgorithm than one described in RFC 3041.\n\nSo, let\u0027s use our standard pseudo random algorithm to simplify\nour implementation.\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c4a1745aa09fc110afdefea0e5d025043e348bae",
      "tree": "6d28dc3a0c1bf18437b3d49f28e5c81b850cdb2f",
      "parents": [
        "88dcb91177cfa5b26143a29074389a2aa259c7cf",
        "ac0eb3eb7e54b700386068be025a43d2a3958ee5"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Mar 20 11:57:50 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Mar 20 11:57:50 2006 -0800"
      },
      "message": "Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6\n\n* master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6: (230 commits)\n  [SPARC64]: Update defconfig.\n  [SPARC64]: Fix 2 bugs in huge page support.\n  [SPARC64]: CONFIG_BLK_DEV_RAM fix\n  [SPARC64]: Optimized TSB table initialization.\n  [SPARC64]: Allow CONFIG_MEMORY_HOTPLUG to build.\n  [SPARC64]: Use SLAB caches for TSB tables.\n  [SPARC64]: Don\u0027t kill the page allocator when growing a TSB.\n  [SPARC64]: Randomize mm-\u003emmap_base when PF_RANDOMIZE is set.\n  [SPARC64]: Increase top of 32-bit process stack.\n  [SPARC64]: Top-down address space allocation for 32-bit tasks.\n  [SPARC64] bbc_i2c: Fix cpu check and add missing module license.\n  [SPARC64]: Fix and re-enable dynamic TSB sizing.\n  [SUNSU]: Fix missing spinlock initialization.\n  [TG3]: Do not try to access NIC_SRAM_DATA_SIG on Sun parts.\n  [SPARC64]: First cut at VIS simulator for Niagara.\n  [SPARC64]: Fix system type in /proc/cpuinfo and remove bogus OBP check.\n  [SPARC64]: Add SMT scheduling support for Niagara.\n  [SPARC64]: Fix 32-bit truncation which broke sparsemem.\n  [SPARC64]: Move over to sparsemem.\n  [SPARC64]: Fix new context version SMP handling.\n  ...\n"
    },
    {
      "commit": "c7cace6437b2f8bbab5ef05b465738283a9a100a",
      "tree": "304a7dca0354eaa8ac21aa05cd287e317fa21b8c",
      "parents": [
        "a90779bfc83b7489270a8ce2c3fc9df20dac2b24",
        "2e9ff56efbc005ab2b92b68df65940c7459446c6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Mar 20 10:30:31 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Mar 20 10:30:31 2006 -0800"
      },
      "message": "Merge branch \u0027upstream-linus\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6\n\n* \u0027upstream-linus\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6: (150 commits)\n  [PATCH] ipw2100: Update version ipw2100 stamp to 1.2.2\n  [PATCH] ipw2100: move mutex.h include from ipw2100.c to ipw2100.h\n  [PATCH] ipw2100: semaphore to mutexes conversion\n  [PATCH] ipw2100: Fix radiotap code gcc warning\n  [PATCH] ipw2100: add radiotap headers to packtes captured in monitor mode\n  [PATCH] ipw2x00: expend Copyright to 2006\n  [PATCH] drivers/net/wireless/ipw2200.c: fix an array overun\n  [PATCH] ieee80211: Don\u0027t update network statistics from off-channel packets.\n  [PATCH] ipw2200: Update ipw2200 version stamp to 1.1.1\n  [PATCH] ipw2200: switch to the new ipw2200-fw-3.0 image format\n  [PATCH] ipw2200: wireless extension sensitivity threshold support\n  [PATCH] ipw2200: Enables the \"slow diversity\" algorithm\n  [PATCH] ipw2200: Set a meaningful silence threshold value\n  [PATCH] ipw2200: export `debug\u0027 module param only if CONFIG_IPW2200_DEBUG\n  [PATCH] ipw2200: Change debug level for firmware error logging\n  [PATCH] ipw2200: Filter unsupported channels out in ad-hoc mode\n  [PATCH] ipw2200: Fix ipw_sw_reset() implementation inconsistent with comment\n  [PATCH] ipw2200: Fix rf_kill is activated after mode change with \u0027disable\u003d1\u0027\n  [PATCH] ipw2200: remove the WPA card associates to non-WPA AP checking\n  [PATCH] ipw2200: Add signal level to iwlist scan output\n  ...\n"
    },
    {
      "commit": "a90779bfc83b7489270a8ce2c3fc9df20dac2b24",
      "tree": "53a41d0e419024619c621facb2baf6e782e16f35",
      "parents": [
        "7705a8792b0fc82fd7d4dd923724606bbfd9fb20",
        "e572ec7e4e432de7ecf7bd2e62117646fa64e518"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Mar 20 10:28:51 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Mar 20 10:28:51 2006 -0800"
      },
      "message": "Merge branch \u0027block-fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/block\n\n* \u0027block-fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/block:\n  [PATCH] fix rmmod problems with elevator attributes, clean them up\n  [PATCH] elevator_t lifetime rules and sysfs fixes\n  [PATCH] noise removal: cfq-iosched.c\n  [PATCH] don\u0027t bother with refcounting for cfq_data\n  [PATCH] fix sysfs interaction and lifetime rules handling for queues\n  [PATCH] regularize blk_cleanup_queue() use\n  [PATCH] fix cfq_get_queue()/ioprio_set(2) races\n  [PATCH] deal with rmmod/put_io_context() races\n  [PATCH] stop elv_unregister() from rogering other iosched\u0027s data, fix locking\n  [PATCH] stop cfq from pinning queue down\n  [PATCH] make cfq_exit_queue() prune the cfq_io_context for that queue\n  [PATCH] fix the exclusion for ioprio_set()\n  [PATCH] keep sync and async cfq_queue separate\n  [PATCH] switch to use of -\u003ekey to get cfq_data by cfq_io_context\n  [PATCH] stop leaking cfq_data in cfq_set_request()\n  [PATCH] fix cfq hash lookups\n  [PATCH] fix locking in queue_requests_store()\n  [PATCH] fix double-free in blk_init_queue_node()\n  [PATCH] don\u0027t do exit_io_context() until we know we won\u0027t be doing any IO\n"
    },
    {
      "commit": "d378aca6ec708bfb24df5c47801b1f2399efc481",
      "tree": "7535f96bf34314df071698d2e06054b8d5223ebb",
      "parents": [
        "abc71c46dc0a12ab7fddc18cfe4f4aa26808c79b",
        "7705a8792b0fc82fd7d4dd923724606bbfd9fb20"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Mon Mar 20 04:38:03 2006 -0500"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Mon Mar 20 04:38:03 2006 -0500"
      },
      "message": "Merge branch \u0027master\u0027\n"
    },
    {
      "commit": "f6b83f070e9b7ad9075f7cc5646260e56c7d0219",
      "tree": "48586ca4f4c75ee3862f63be332351e78f2d5476",
      "parents": [
        "467418f3508b426adbc7df795ebf3baaed4fbefc"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 20 01:17:17 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 20 01:17:17 2006 -0800"
      },
      "message": "[SPARC64]: Fix 2 bugs in huge page support.\n\n1) huge_pte_offset() did not check the page table hierarchy\n   elements as being empty correctly, resulting in an OOPS\n\n2) Need platform specific hugetlb_get_unmapped_area() to handle\n   the top-down vs. bottom-up address space allocation strategies.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "bb8646d8340fa7c1b66a037428e39f85f8738f0a",
      "tree": "931d4505a0ba65124b662f0f8b5935e0b154bd66",
      "parents": [
        "88d7079458f87d6f2d2261b2f87b7b9416019f5e"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Mar 18 23:55:11 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:16:41 2006 -0800"
      },
      "message": "[SPARC64]: Optimized TSB table initialization.\n\nWe only need to write an invalid tag every 16 bytes,\nso taking advantage of this can save many instructions\ncompared to the simple memset() call we make now.\n\nA prefetching implementation is implemented for sun4u\nand a block-init store version if implemented for Niagara.\n\nThe next trick is to be able to perform an init and\na copy_tsb() in parallel when growing a TSB table.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d61e16df940e02e25679bdc1aee8c25786f6de90",
      "tree": "de76f4007d526835b8564203341ebf66ca29b12d",
      "parents": [
        "a91690ddd05ab0b7fbdd37733875525ac75c20f2"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Fri Mar 17 17:33:56 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:16:36 2006 -0800"
      },
      "message": "[SPARC64]: Increase top of 32-bit process stack.\n\nPut it one page below the top of the 32-bit address space.\nThis gives us ~16MB more address space to work with.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a91690ddd05ab0b7fbdd37733875525ac75c20f2",
      "tree": "f6937c0ce29c79078d6df8346a374a7b9947f360",
      "parents": [
        "b5e7ae5dd034c2c0ed75c31fca04a805097817bc"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Fri Mar 17 14:41:03 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:16:35 2006 -0800"
      },
      "message": "[SPARC64]: Top-down address space allocation for 32-bit tasks.\n\nCurrently allocations are very constrained for 32-bit processes.\nIt grows down-up from 0x70000000 to 0xf0000000 which gives about\n2GB of stack + dynamic mmap() space.\n\nSo support the top-down method, and we need to override the\ngeneric helper function in order to deal with D-cache coloring.\n\nWith these changes I was able to squeeze out a mmap() just over\n3.6GB in size in a 32-bit process.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7a1ac5264108fc3ed22d17a3cdd76212ed1666d1",
      "tree": "75378a1b470afa54900f1f15a5b41966d301520d",
      "parents": [
        "a858f1ca726edc5eb7ed39722f7966d005f1c9ca"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Mar 16 02:02:32 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:16:33 2006 -0800"
      },
      "message": "[SPARC64]: Fix and re-enable dynamic TSB sizing.\n\nThis is good for up to %50 performance improvement of some test cases.\nThe problem has been the race conditions, and hopefully I\u0027ve plugged\nthem all up here.\n\n1) There was a serious race in switch_mm() wrt. lazy TLB\n   switching to and from kernel threads.\n\n   We could erroneously skip a tsb_context_switch() and thus\n   use a stale TSB across a TSB grow event.\n\n   There is a big comment now in that function describing\n   exactly how it can happen.\n\n2) All code paths that do something with the TSB need to be\n   guarded with the mm-\u003econtext.lock spinlock.  This makes\n   page table flushing paths properly synchronize with both\n   TSB growing and TLB context changes.\n\n3) TSB growing events are moved to the end of successful fault\n   processing.  Previously it was in update_mmu_cache() but\n   that is deadlock prone.  At the end of do_sparc64_fault()\n   we hold no spinlocks that could deadlock the TSB grow\n   sequence.  We also have dropped the address space semaphore.\n\nWhile we\u0027re here, add prefetching to the copy_tsb() routine\nand put it in assembler into the tsb.S file.  This piece of\ncode is quite time critical.\n\nThere are some small negative side effects to this code which\ncan be improved upon.  In particular we grab the mm-\u003econtext.lock\neven for the tsb insert done by update_mmu_cache() now and that\u0027s\na bit excessive.  We can get rid of that locking, and the same\nlock taking in flush_tsb_user(), by disabling PSTATE_IE around\nthe whole operation including the capturing of the tsb pointer\nand tsb_nentries value.  That would work because anyone growing\nthe TSB won\u0027t free up the old TSB until all cpus respond to the\nTSB change cross call.\n\nI\u0027m not quite so confident in that optimization to put it in\nright now, but eventually we might be able to and the description\nis here for reference.\n\nThis code seems very solid now.  It passes several parallel GCC\nbootstrap builds, and our favorite \"nut cruncher\" stress test which is\na full \"make -j8192\" build of a \"make allmodconfig\" kernel.  That puts\nabout 256 processes on each cpu\u0027s run queue, makes lots of process cpu\nmigrations occur, causes lots of page table and TLB flushing activity,\nincurs many context version number changes, and it swaps the machine\nreal far out to disk even though there is 16GB of ram on this test\nsystem. :-)\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "90a6646bf6a1ca821f32d5510e935855612904df",
      "tree": "035420e4ab615cb837b1246fc26c55e0b8d233b4",
      "parents": [
        "8935dced547afbf37d0fcfcac9a3556494e53104"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Mar 08 17:18:19 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:14:25 2006 -0800"
      },
      "message": "[SPARC64]: Fix system type in /proc/cpuinfo and remove bogus OBP check.\n\nReport \u0027sun4v\u0027 when appropriate in /proc/cpuinfo\n\nRemove all the verifications of the OBP version string.  Just\nmake sure it\u0027s there, and report it raw in the bootup logs and\nvia /proc/cpuinfo.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8935dced547afbf37d0fcfcac9a3556494e53104",
      "tree": "0ae802875c73e99b86e4f90be6e953ec0c528dea",
      "parents": [
        "17b0e199a10184d8c5bbbd79a4cee993bb1fb257"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Mar 08 16:09:19 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:14:24 2006 -0800"
      },
      "message": "[SPARC64]: Add SMT scheduling support for Niagara.\n\nThe mapping is a simple \"(cpuid \u003e\u003e 2) \u003d\u003d core\" for now.\nLater we\u0027ll add more sophisticated code that will walk\nthe sun4v machine description and figure this out from\nthere.\n\nWe should also add core mappings for jaguar and panther\nprocessors.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d1112018b4bc82adf5c8a9c15a08954328f023ae",
      "tree": "4d94ef6c153f028cfaaff711cf7d4f07aa90e9b4",
      "parents": [
        "ee29074d3bd23848905f52c515974e0cd0219faa"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Mar 08 02:16:07 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:14:22 2006 -0800"
      },
      "message": "[SPARC64]: Move over to sparsemem.\n\nThis has been pending for a long time, and the fact\nthat we waste a ton of ram on some configurations\nkind of pushed things over the edge.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ee29074d3bd23848905f52c515974e0cd0219faa",
      "tree": "d5306446b2e26d9e45f65467b4f3b3f3b0c8494c",
      "parents": [
        "a77754b4d0731321db266c6c60ffcd7c62757da5"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 06 22:50:44 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:14:21 2006 -0800"
      },
      "message": "[SPARC64]: Fix new context version SMP handling.\n\nDon\u0027t piggy back the SMP receive signal code to do the\ncontext version change handling.\n\nInstead allocate another fixed PIL number for this\nasynchronous cross-call.  We can\u0027t use smp_call_function()\nbecause this thing is invoked with interrupts disabled\nand a few spinlocks held.\n\nAlso, fix smp_call_function_mask() to count \"cpus\" correctly.\nThere is no guarentee that the local cpu is in the mask\nyet that is exactly what this code was assuming.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a77754b4d0731321db266c6c60ffcd7c62757da5",
      "tree": "37cc4c6793e2b616791d42ee840e5a007a13eccb",
      "parents": [
        "9132983ae140a8ca81e95e081d5a4c0dd7a7f670"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 06 19:59:50 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:14:20 2006 -0800"
      },
      "message": "[SPARC64]: Bulletproof MMU context locking.\n\n1) Always spin_lock_init() in init_context().  The caller essentially\n   clears it out, or copies the mm info from the parent.  In both\n   cases we need to explicitly initialize the spinlock.\n\n2) Always do explicit IRQ disabling while taking mm-\u003econtext.lock\n   and ctx_alloc_lock.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8bcd17411643beb9a601e032d0cf1016909a81d3",
      "tree": "fc71e788df4fada768247fa7c12e983d2f6f1a32",
      "parents": [
        "45f791eb0f03e760183d30d3f1f18dc2b8e902fe"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Mar 02 18:12:27 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:14:14 2006 -0800"
      },
      "message": "[SPARC64]: Do not allow mapping pages within 4GB of 64-bit VA hole.\n\nThe UltraSPARC T1 manual recommends this because the chip\ncould instruction prefetch into the VA hole, and this would\nalso make decoding  certain kinds of memory access traps\nmore difficult (because the chip sign extends certain pieces\nof trap state).\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e22990451a6a6263250cdd267708548dfa08a8f2",
      "tree": "5d280a9aa0d2b49824d917be85afaa37bb93aede",
      "parents": [
        "8ba706a95bb92c3b14b812f6d507890336d19136"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Mar 01 22:25:43 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:14:11 2006 -0800"
      },
      "message": "[SPARC64]: Kill bogus function externs in asm/pgtable.h\n\nThese are all implemented inline earlier in the file.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b830ab665ad96c6b20d51a89b35cbc09ab5a2c29",
      "tree": "57c2c75b3e069f9f244259ae02f6f2fe3de68612",
      "parents": [
        "aac0aadf09b98ba36eab0bb02a560ebcb82ac39f"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Feb 28 15:10:26 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:14:09 2006 -0800"
      },
      "message": "[SPARC64]: Fix bugs in SUN4V cpu mondo dispatch.\n\nThere were several bugs in the SUN4V cpu mondo dispatch code.\n\nIn fact, if we ever got a EWOULDBLOCK or other error from\nthe hypervisor call, we\u0027d potentially send a cpu mondo multiple\ntimes to the same cpu and even worse we could loop until the\ntimeout resending the same mondo over and over to such cpus.\n\nSo let\u0027s bulletproof this thing as follows:\n\n1) Implement cpu_mondo_send() and cpu_state() hypervisor calls\n   in arch/sparc64/kernel/entry.S, add prototypes to asm/hypervisor.h\n\n2) Don\u0027t build and update the cpulist using inline functions, this\n   was causing the cpu mask to not get updated in the caller.\n\n3) Disable interrupts during the entire mondo send, otherwise our\n   cpu list and/or mondo block could get overwritten if we take\n   an interrupt and do a cpu mondo send on the current cpu.\n\n4) Check for all possible error return types from the cpu_mondo_send()\n   hypervisor call.  In particular:\n\n   HV_EOK) Our work is done, all cpus have received the mondo.\n   HV_CPUERROR) One or more of the cpus in the cpu list we passed\n                to the hypervisor are in error state.  Use cpu_state()\n                calls over the entries in the cpu list to see which\n\t\tones.  Record them in \"error_mask\" and report this\n\t\tafter we are done sending the mondo to cpus which are\n\t\tnot in error state.\n   HV_EWOULDBLOCK) We need to keep trying.\n\n   Any other error we consider fatal, we report the event and exit\n   immediately.\n\n5) We only timeout if forward progress is not made.  Forward progress\n   is defined as having at least one cpu get the mondo successfully\n   in a given cpu_mondo_send() call.  Otherwise we bump a counter\n   and delay a little.  If the counter hits a limit, we signal an\n   error and report the event.\n\nAlso, smp_call_function_mask() error handling reports the number\nof cpus incorrectly.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "97c4b6f95afadea5846b78ce589d25de2a245c56",
      "tree": "11110547d3c92657ae8199f039e35c3a74d32107",
      "parents": [
        "7a591cfe4efef8a232e4938d44ae6693b319f6d7"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Feb 26 20:37:41 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:14:06 2006 -0800"
      },
      "message": "[SPARC64]: Use 13-bit context size always.\n\nWe no longer have the problems that require using the smaller\nsizes.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "36344762396ca868d6076c41a84bda25f1ed9d3c",
      "tree": "7471ce9b78736e538417267f1bc27687a1b09542",
      "parents": [
        "c4e9249b1924118693f298ee8d38f7fe43587af3"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Feb 25 17:16:29 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:14:03 2006 -0800"
      },
      "message": "[SPARC64]: Niagara optimized XOR functions for RAID.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a0663a79ad4faebe1db4a56e2e767b120b12333a",
      "tree": "612a53e387a6aea6116f8a1637050fa13c6d9f80",
      "parents": [
        "074d82cf688fe2dfa7ba4a2317c56f62d13fb522"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Feb 23 14:19:28 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:14:00 2006 -0800"
      },
      "message": "[SPARC64]: Fix TLB context allocation with SMT style shared TLBs.\n\nThe context allocation scheme we use depends upon there being a 1\u003c--\u003e1\nmapping from cpu to physical TLB for correctness.  Chips like Niagara\nbreak this assumption.\n\nSo what we do is notify all cpus with a cross call when the context\nversion number changes, and if necessary this makes them allocate\na valid context for the address space they are running at the time.\n\nStress tested with make -j1024, make -j2048, and make -j4096 kernel\nbuilds on a 32-strand, 8 core, T2000 with 16GB of ram.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0f05da6d577b80eb00f15994c86e4812ae60f1b9",
      "tree": "39d981c896ab6b90aa30f124fb25cbdf4f242c83",
      "parents": [
        "fc504928677049f0ad3f1fd4e0bb3908172df8f3"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Feb 22 16:20:11 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:13:57 2006 -0800"
      },
      "message": "[SPARC64]: Fix %tstate ASI handling in start_thread{,32}()\n\nNiagara helps us find a ancient bug in the sparc64 port :-)\n\nThe ASI_* values are plain constant defines, thus signed 32-bit\non sparc64.  To put shift this into the regs-\u003etstate value we were\ndoing or\u0027ing \"(ASI_PNF \u003c\u003c 24)\" into there.\n\nASI_PNF is 0x82 and shifted left by 24 makes that topmost bit the\nsign bit in a 32-bit value.  This would get sign extended to 64-bits\nand thus corrupt the top-half of the reg-\u003etstate value.\n\nThis never caused problems in pre-Niagara cpus because the only thing\nup there were the condition code values.  But Niagara has the global\nregister level field, and this all 1\u0027s value is illegal there so\nNiagara gives an illegal instruction trap due to this bug.\n\nI\u0027m pretty sure this bug is about as old as the sparc64 port itself.\n\nThis also points out that we weren\u0027t setting ASI_PNF for 32-bit tasks.\nWe should, so fix that while we\u0027re here.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d7744a09504d5ae84edc8289a02254e1f2102410",
      "tree": "be0f245ee0725f2f066bf87d17d254ce1e7279bf",
      "parents": [
        "9cc3a1ac9a819cadff05ca37bb7f208013a22035"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Feb 21 22:31:11 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:13:56 2006 -0800"
      },
      "message": "[SPARC64]: Create a seperate kernel TSB for 4MB/256MB mappings.\n\nIt can map all of the linear kernel mappings with zero TSB hash\nconflicts for systems with 16GB or less ram.  In such cases, on\nSUN4V, once we load up this TSB the first time with all the\nmappings, we never take a linear kernel mapping TLB miss ever\nagain, the hypervisor handles them all.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6f5374c91f0dd1d92408ed44c066c32bcce5ce69",
      "tree": "e5d2ade79d39f043af66030c42d2410d1cd6f483",
      "parents": [
        "1bd0cd74d102a527b2a72907698d73fad4b82cbd"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Feb 21 15:42:09 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:13:52 2006 -0800"
      },
      "message": "[SPARC64]: Add sun4v_cpu_yield().\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1bd0cd74d102a527b2a72907698d73fad4b82cbd",
      "tree": "2df2dede361dd259b6cd4b91c3ab8d5c783401ac",
      "parents": [
        "8ca2557c48000daa8183b07d83f582a597705ebe"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Feb 21 15:41:01 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:13:51 2006 -0800"
      },
      "message": "[SPARC64]: Kill cpudata-\u003eidle_volume.\n\nSet, but never used.\n\nWe used to use this for dynamic IRQ retargetting, but that\ncode died a long time ago.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0f15952ac8641bde1045162ffd4a7b474cc318b0",
      "tree": "f1837150e0e1589dda97f1780e99962bf6c905af",
      "parents": [
        "f6c1fe529217788f095f6953c2b66bec1196ad3d"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Feb 18 12:43:16 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:13:36 2006 -0800"
      },
      "message": "[SPARC64]: Export a PAGE_SHARED symbol.\n\nFor drivers/media/*, noticed by Fabbione.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f6c1fe529217788f095f6953c2b66bec1196ad3d",
      "tree": "609476e09d7778c55775e88879ba77dd4a23f1f2",
      "parents": [
        "8b234274418d6d79527c4ac3a72da446ca4cb35f"
      ],
      "author": {
        "name": "Fabio M. Di Nitto",
        "email": "fabbione@ubuntu.com",
        "time": "Sat Feb 18 00:32:31 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:13:35 2006 -0800"
      },
      "message": "[SPARC64] Fix build if CONFIG_HUGETLB_PAGE is not set\n\nSigned-off-by: Fabio M. Di Nitto \u003cfabbione@ubuntu.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8b234274418d6d79527c4ac3a72da446ca4cb35f",
      "tree": "ab4ab14fa7f1cab7889ecc2339f0261253a5d0e1",
      "parents": [
        "7adb37fe80d06cbd40de9b225b12a3a9ec40b6bb"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Fri Feb 17 18:01:02 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:13:34 2006 -0800"
      },
      "message": "[SPARC64]: More TLB/TSB handling fixes.\n\nThe SUN4V convention with non-shared TSBs is that the context\nbit of the TAG is clear.  So we have to choose an \"invalid\"\nbit and initialize new TSBs appropriately.  Otherwise a zero\nTAG looks \"valid\".\n\nMake sure, for the window fixup cases, that we use the right\nglobal registers and that we don\u0027t potentially trample on\nthe live global registers in etrap/rtrap handling (%g2 and\n%g6) and that we put the missing virtual address properly\nin %g5.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3763be32d591cacf808c36390a8af3f2784cde5f",
      "tree": "124ae01bf91905a6d3af931caf28acf82900699b",
      "parents": [
        "3f19a84e39619053f117bd5bb9183c5bfea7db45"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Fri Feb 17 12:33:13 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:13:29 2006 -0800"
      },
      "message": "[SPARC64]: Define ARCH_HAS_READ_CURRENT_TIMER.\n\nThis gives more consistent bogomips and delay() semantics,\nespecially on sun4v.  It gives weird looking values though...\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c857e3fdbc306e95fdcaad1d8f3ea6bc8e7eea99",
      "tree": "6fb1cfc9b8742b56db032fcdb4294e693bb75ffa",
      "parents": [
        "46f860471483dce9ba5ce682a69c61cbceb54e52"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Fri Feb 17 10:35:23 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:13:28 2006 -0800"
      },
      "message": "[SPARC64]: __bzero_noasi --\u003e __clear_user\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "97532f598273d03cab8bb5206669b6fdd654eb63",
      "tree": "a2d06b6f9861bad04d1378fef104a1c2d81777df",
      "parents": [
        "3b3ab2eb9cf07ef1bc7a676c19aab994adb41a87"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Fri Feb 17 10:14:38 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:13:26 2006 -0800"
      },
      "message": "[SPARC64]: Add HWCAP_SPARC_BLKINIT elf capability flag for Niagara.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ebd8c56c5ae154e2c6cfb7453a76a4e7265b2377",
      "tree": "155df85100a1316ac103dcaed140d20ddc72c855",
      "parents": [
        "101d5c18a928ef82b6c7bf99a9eaa536b5ccf593"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Fri Feb 17 08:38:06 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:13:24 2006 -0800"
      },
      "message": "[SPARC64]: Fix uniprocessor IRQ targetting on SUN4V.\n\nWe need to use the real hardware processor ID when\ntargetting interrupts, not the \"define to 0\" thing\nthe uniprocessor build gives us.\n\nAlso, fill in the Node-ID and Agent-ID fields properly\non sun4u/Safari.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "72aff53f1fe74153eccef303ab2f79de888d248c",
      "tree": "a229645be99274d36bed04bed355d74ec3c0baa2",
      "parents": [
        "19a0d585e80e84b54bb9bf120bf0c826045dd3dd"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Fri Feb 17 01:29:17 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:13:22 2006 -0800"
      },
      "message": "[SPARC64]: Get SUN4V SMP working.\n\nThe sibling cpu bringup is extremely fragile.  We can only\nperform the most basic calls until we take over the trap\ntable from the firmware/hypervisor on the new cpu.\n\nThis means no accesses to %g4, %g5, %g6 since those can\u0027t be\nTLB translated without our trap handlers.\n\nIn order to achieve this:\n\n1) Change sun4v_init_mondo_queues() so that it can operate in\n   several modes.\n\n   It can allocate the queues, or install them in the current\n   processor, or both.\n\n   The boot cpu does both in it\u0027s call early on.\n\n   Later, the boot cpu allocates the sibling cpu queue, starts\n   the sibling cpu, then the sibling cpu loads them in.\n\n2) init_cur_cpu_trap() is changed to take the current_thread_info()\n   as an argument instead of reading %g6 directly on the current\n   cpu.\n\n3) Create a trampoline stack for the sibling cpus.  We do our basic\n   kernel calls using this stack, which is locked into the kernel\n   image, then go to our proper thread stack after taking over the\n   trap table.\n\n4) While we are in this delicate startup state, we put 0xdeadbeef\n   into %g4/%g5/%g6 in order to catch accidental accesses.\n\n5) On the final prom_set_trap_table*() call, we put \u0026init_thread_union\n   into %g6.  This is a hack to make prom_world(0) work.  All that\n   wants to do is restore the %asi register using\n   get_thread_current_ds().\n\nLonger term we should just do the OBP calls to set the trap table by\nhand just like we do for everything else.  This would avoid that silly\nprom_world(0) issue, then we can remove the init_thread_union hack.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4ff7ac417d4b628c23df3ae8301d17e29e6e8f16",
      "tree": "8a0ad85722f0e927ac6c1388032481636424fb10",
      "parents": [
        "22780e23c629303474797d17e7f09ad7721ef55b"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Feb 16 16:22:26 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:13:18 2006 -0800"
      },
      "message": "[SPARC64]: Add GET_GL_GLOBAL() macro for SUN4V.\n\nSo we can read the %gl register for debugging.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "94f8762db9a80ed34252e9fe5fa38be87bb7826b",
      "tree": "22279c62d2d4d583c64f1d2c6122f4eb98b429a6",
      "parents": [
        "bc45e32e0fbf661d0c5c5b9c981bc0fe5da4901f"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Feb 16 14:26:53 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:13:16 2006 -0800"
      },
      "message": "[SPARC64]: Add sun4v_cpu_qconf() hypervisor call.\n\nCall it from register_one_mondo().\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "bc45e32e0fbf661d0c5c5b9c981bc0fe5da4901f",
      "tree": "cf4a313304153b39bd155c062b934d607500f2ae",
      "parents": [
        "8e42550c683b2ad4869fc4fa438204841fd9b7cc"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sun Mar 05 16:46:58 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:13:15 2006 -0800"
      },
      "message": "[SPARC]: Kill off these __put_user_ret things.\n\nThey are bogus and haven\u0027t been referenced in years.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9d29a3fafd06534ad73427fee3c968c094d05b9b",
      "tree": "4afd7455d6249d9143acea6c4704f69aa98d311a",
      "parents": [
        "7890f794e0e6f7dce2a5f4a03ba64b0b3fe306bd"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Feb 15 19:48:54 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:13:05 2006 -0800"
      },
      "message": "[SPARC64]: Decode virtual-devices interrupts correctly.\n\nNeed to translate through the interrupt-map{,-mask] properties.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7890f794e0e6f7dce2a5f4a03ba64b0b3fe306bd",
      "tree": "a9cc7c67498616a47108c667a9c001f9fe468318",
      "parents": [
        "63c2a0e598c2fa769a08a6e9ad124bf270b4436e"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Feb 15 02:26:54 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:13:04 2006 -0800"
      },
      "message": "[SPARC64]: Add prom_{start,stop}cpu_cpuid().\n\nUse prom_startcpu_cpuid() on SUN4V instead of prom_startcpu().\n\nWe should really test for \"SUNW,start-cpu-by-cpuid\" presence\nand use it if present even on SUN4U.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7c3514e4501565d76f9e4dec43e1fc17389f4811",
      "tree": "e3f4766232189faaa98a59d53a44e424025e9561",
      "parents": [
        "f03b8a546868fcf43feb455b69b152eb867606b2"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Feb 15 00:41:47 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:13:02 2006 -0800"
      },
      "message": "[SPARC64]: Fixup TSTATE layout diagram in asm/pstate.h\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "50f4f23c3bd95afc82e931254a71e7b1b3699fd2",
      "tree": "5ed7cc71e1140a3a839c8d65ca95b755012d4bde",
      "parents": [
        "3af6e01e9acfb786c5dd2862f57f206b0b3cb889"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Feb 14 01:32:29 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:12:53 2006 -0800"
      },
      "message": "[SPARC64]: Fix gcc-3.3.x warnings.\n\nIt doesn\u0027t like const variables being passed into\n\"i\" constraing asm operations.  It\u0027s a bug, but\nthere is nothing we can really do but work around\nit.\n\nBased upon a report from Andrew Morton.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c4bea2883974a59ab7a0ac6c01d34f7ae0e8cd8e",
      "tree": "3d32f942cd0a62f6ca89fe7781f59708845d7a38",
      "parents": [
        "4bf447d6f7c2357dec8bdc24ce0fcffd71cc29c0"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Feb 13 22:56:27 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:12:51 2006 -0800"
      },
      "message": "[SPARC64]: Make error codes available from sun4v_intr_get*().\n\nAnd check for errors at call sites.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5259d5bfaf5b2953b130e9a500277a905bd37823",
      "tree": "3768df7a92c63a2eeec0d29aadca60ce57f36de7",
      "parents": [
        "f4266ab45a3f08bd76c2d414a2d7a1a9dc2501c0"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Feb 13 21:15:44 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:12:46 2006 -0800"
      },
      "message": "[SPARC64]: Fix comment typo in asm/hypervisor.h\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e77227eb4e17591a6a511b9c0ff6e8ad7350c575",
      "tree": "be8b7f13fd2ff0543879286b04045f6c3587dda3",
      "parents": [
        "d5eb4004303b4dd04ec83b926b5fc2d9ceda4b2e"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Feb 13 20:42:16 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:12:44 2006 -0800"
      },
      "message": "[SPARC64]: Probe virtual-devices root node on sun4v.\n\nThis is where we learn how to get the interrupts\nfor things like the hypervisor console device.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e3999574b48125c9bb0c95e3e9f1c696bf96c3e3",
      "tree": "a6651da06fa36c3dde33a7be5f0b7192b8442cd7",
      "parents": [
        "10804828fd06a43ce964e9d9852332e7ff1507b1"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Feb 13 18:16:10 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:12:40 2006 -0800"
      },
      "message": "[SPARC64]: Generic sun4v_build_irq().\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6c0f402f6cc62314ef83b975f3430350dcb6055f",
      "tree": "394a2e981ee8fff3e6eda7aec2d20be8542ecae1",
      "parents": [
        "85dfa19ba92f88fa1c1482f655c7247119dfdcd5"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Feb 13 00:23:32 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:12:37 2006 -0800"
      },
      "message": "[SPARC64]: Implement rest of generic interrupt hypervisor calls.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "85dfa19ba92f88fa1c1482f655c7247119dfdcd5",
      "tree": "28038115f626e5c84bb50ad9ff5eed5dc943fcde",
      "parents": [
        "059833eb817fec3a5a7f62fba9592749c4cebc73"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Feb 13 00:02:16 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:12:36 2006 -0800"
      },
      "message": "[SPARC64]: Move devino_to_sysino out of pci_sun4v_asm.S\n\nIt is not PCI specific, it is for all system interrupts.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "cf627156c450cd5a0741b31f55181db3400d4887",
      "tree": "e8f44d2509f5544ee5b5d583da3e10ac99ca3629",
      "parents": [
        "ff02e0d26f139ad95ec3a7e94f88faccaa180dff"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sun Feb 12 21:10:07 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:12:32 2006 -0800"
      },
      "message": "[SPARC64]: Use inline patching for critical PTE operations.\n\nThis handles the SUN4U vs SUN4V PTE layout differences\nwith near zero performance cost.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ff02e0d26f139ad95ec3a7e94f88faccaa180dff",
      "tree": "7a872c9792561c77c672ba640b80134c592d93c7",
      "parents": [
        "221b2fb818c307e1cb47e036a1671ca554d9cd0a"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sun Feb 12 17:07:51 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:12:31 2006 -0800"
      },
      "message": "[SPARC64]: Move PTE field definitions back into asm/pgtable.h\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1a7a242c898dd131f2df005c492e9b44fb8900e0",
      "tree": "5f00961b9c6539951adda7bfaafda030cea39c38",
      "parents": [
        "02fead75055246d01af56a45a9d1b311d506da3e"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Feb 11 23:24:30 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:12:28 2006 -0800"
      },
      "message": "[SPARC64]: Recognize \"virtual-console\" as input and output console device.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c4bce90ea2069e5a87beac806de3090ab32128d5",
      "tree": "3983a206c8060ef65ba17945d1c9f69e68d88b3d",
      "parents": [
        "490384e752a43aa281ed533e9de2da36df25c337"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Feb 11 21:57:54 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:12:25 2006 -0800"
      },
      "message": "[SPARC64]: Deal with PTE layout differences in SUN4V.\n\nYes, you heard it right, they changed the PTE layout for\nSUN4V.  Ho hum...\n\nThis is the simple and inefficient way to support this.\nIt\u0027ll get optimized, don\u0027t worry.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "490384e752a43aa281ed533e9de2da36df25c337",
      "tree": "ec087a27a481b9a63aeda6703971acf4adeab19b",
      "parents": [
        "459b6e621e0e15315c25bac47fa7113e5818d45d"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Feb 11 14:41:18 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:12:23 2006 -0800"
      },
      "message": "[SPARC64]: Register kernel TSB with hypervisor.\n\nWe do this right after we take over the trap table from OBP.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "459b6e621e0e15315c25bac47fa7113e5818d45d",
      "tree": "4bbff0ec1dafb7fba8b247c84ad708f54cc687fe",
      "parents": [
        "fd05068d7b22b64211f9202aa67ad44b51d44242"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Feb 11 12:21:20 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:12:23 2006 -0800"
      },
      "message": "[SPARC64]: Fix some SUN4V TLB miss bugs.\n\nCode patching did not sign extend negative branch\noffsets correctly.\n\nKernel TLB miss path needs patching and %g4 register\npreservation in order to handle SUN4V correctly.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "02fd473bd4844befc74f7ca67cd60891e0a2d890",
      "tree": "4c338418dcfdd73c88d3ca8e969944be42cde60e",
      "parents": [
        "4bdff41464c2954c6f62f849df0e73eb9fa21c65"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Feb 11 02:25:21 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:12:18 2006 -0800"
      },
      "message": "[SPARC64]: Add SUN4V Hypervisor Console driver.\n\nSince it can do things like BREAK and HUP, we implement\nthis as a serial uart driver.\n\nThis still needs interrupt probing code, as I haven\u0027t figured\nout how interrupts will work or be probed for on SUN4V yet.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "12eaa328f9fb2d3fcb5afb682c762690d05a3cd8",
      "tree": "cce4e68b971757010a3e0bbf035fc65a381a3cd4",
      "parents": [
        "18397944642cbca7fcd4a109b43ed5b4652e95b9"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Fri Feb 10 15:39:51 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:12:15 2006 -0800"
      },
      "message": "[SPARC64]: Use ASI_SCRATCHPAD address 0x0 properly.\n\nThis is where the virtual address of the fault status\narea belongs.\n\nTo set it up we don\u0027t make a hypervisor call, instead\nwe call OBP\u0027s SUNW,set-trap-table with the real address\nof the fault status area as the second argument.  And\nright before that call we write the virtual address into\nASI_SCRATCHPAD vaddr 0x0.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "dedacf623283cb24933ec9f7d5bf539f19173cd4",
      "tree": "e628dffa192236c89e3d646eb62c49ef1c98aab4",
      "parents": [
        "7eae642f75e0f7fbce7c37b2dfe0641ff1e9ebfd"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Feb 09 22:26:34 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:12:13 2006 -0800"
      },
      "message": "[SPARC64]: Add HV_PCI_TSBID() macro.\n\nFor constructing hypervisor PCI TSB IDs.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "bade5622167181844cd4e60087971c1f949e149f",
      "tree": "0bd0144e472786f8ba5b37a2bb90204ff6bf204b",
      "parents": [
        "8f6a93a196ba6c569c3e8daa6e81cca7e3ba81b1"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Feb 09 22:05:54 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:12:11 2006 -0800"
      },
      "message": "[SPARC64]: More SUN4V PCI controller work.\n\nAdd assembler file for PCI hypervisor calls.\nSetup basic skeleton of SUN4V PCI controller driver.\n\nAdd 32-bit devhandle to PBM struct, as this is needed for\nhypervisor calls.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8f6a93a196ba6c569c3e8daa6e81cca7e3ba81b1",
      "tree": "80d4747608148c56fd8c67baf016ad4fc58610ea",
      "parents": [
        "4cce4b7cc56abc3d7b269d09224b8297aad15138"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Feb 09 21:32:07 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:12:10 2006 -0800"
      },
      "message": "[SPARC64]: Beginnings of SUN4V PCI controller support.\n\nAbstract out IOMMU operations so that we can have a different\nset of calls on sun4v, which needs to do things through\nhypervisor calls.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5fe91cf6254c8f23d90efb5fc11fff57dd5ab8dd",
      "tree": "3a5d3ec9a752a7996f8e9060710fee322f2d5214",
      "parents": [
        "ed6b0b45437dcf7ef1c48b3be413bebcc84771d8"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Feb 09 20:45:26 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:12:08 2006 -0800"
      },
      "message": "[SPARC]: Clean up idprom header files.\n\nDelete unused macros, and use fixed sized types in\nsparc32 header.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "618e9ed98aed924a1fc664eb6522db4a5e927043",
      "tree": "08ace6185b8f9709cb22a23d329def1dae622666",
      "parents": [
        "aa9143b9719c07fb6f1f6207790c9c5086ae07e7"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Feb 09 17:21:53 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:12:06 2006 -0800"
      },
      "message": "[SPARC64]: Hypervisor TSB context switching.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "aa9143b9719c07fb6f1f6207790c9c5086ae07e7",
      "tree": "74d56ecc53ed0542f200d6c6257c8f051095111c",
      "parents": [
        "12816ab38adddc9d7e9b3315d1739655dedc7c9f"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Feb 09 16:12:22 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:12:05 2006 -0800"
      },
      "message": "[SPARC64]: Implement sun4v TSB miss handlers.\n\nWhen we register a TSB with the hypervisor, so that it or hardware can\nhandle TLB misses and do the TSB walk for us, the hypervisor traps\ndown to these trap when it incurs a TSB miss.\n\nProcessing is simple, we load the missing virtual address and context,\nand do a full page table walk.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d82ace7dc4073b090a55b9740700e32b9a9ae302",
      "tree": "d5aa8e10664b05bbfe31eacf95e2066c03cab102",
      "parents": [
        "1d2f1f90a1e004b0c1b8a73ed4394a93f09104b3"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Feb 09 02:52:44 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:12:03 2006 -0800"
      },
      "message": "[SPARC64]: Detect sun4v early in boot process.\n\nWe look for \"SUNW,sun4v\" in the \u0027compatible\u0027 property\nof the root OBP device tree node.\n\nProtect every %ver register access, to make sure it is\nnot touched on sun4v, as %ver is hyperprivileged there.\n\nLock kernel TLB entries using hypervisor calls instead of\ncalls into OBP.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1d2f1f90a1e004b0c1b8a73ed4394a93f09104b3",
      "tree": "2fcc0840b52218631020311d7b6d785e9a15db6a",
      "parents": [
        "5b0c0572fcd6204675c5f7ddfa572b5017f817dd"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Feb 08 16:41:20 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:12:02 2006 -0800"
      },
      "message": "[SPARC64]: Sun4v cross-call sending support.\n\nTechnically the hypervisor call supports sending in a list\nof all cpus to get the cross-call, but I only pass in one\ncpu at a time for now.\n\nThe multi-cpu support is there, just ifdef\u0027d out so it\u0027s easy to\nenable or delete it later.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5b0c0572fcd6204675c5f7ddfa572b5017f817dd",
      "tree": "1075a61338e887bd6d4ecd4517646ef95dc09fbc",
      "parents": [
        "ac29c11d4cd4fa1fac968e99998a956405732f2f"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Feb 08 02:53:50 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:12:01 2006 -0800"
      },
      "message": "[SPARC64]: Sun4v interrupt handling.\n\nSun4v has 4 interrupt queues: cpu, device, resumable errors,\nand non-resumable errors.  A set of head/tail offset pointers\nhelp maintain a work queue in physical memory.  The entries\nare 64-bytes in size.\n\nEach queue is allocated then registered with the hypervisor\nas we bring cpus up.\n\nThe two error queues each get a kernel side buffer that we\nuse to quickly empty the main interrupt queue before we\ncall up to C code to log the event and possibly take evasive\naction.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7202c55c5c57d2ad4611a751544c9368d7fba93a",
      "tree": "282219004791550b35f7de50d449d96f396be8f6",
      "parents": [
        "3bfd6f3e77f58479ec53aa91d0b078abbb4c0868"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Feb 07 22:53:56 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:11:58 2006 -0800"
      },
      "message": "[SPARC64]: Add sun4v mondo queue bases to struct trap_per_cpu.\n\nAlso, correct TRAP_PER_CPU_FAULT_INFO define, it should be\n0x40 not 0x20.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3bfd6f3e77f58479ec53aa91d0b078abbb4c0868",
      "tree": "1ec49afc137feed4e70b1be7728920165e90b838",
      "parents": [
        "8b11bd12aff76e02cdc2cbc9e439bba88d281223"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Feb 07 22:49:38 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:11:57 2006 -0800"
      },
      "message": "[SPARC64]: Fix some comment typos in asm/hypervisor.h\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8b11bd12aff76e02cdc2cbc9e439bba88d281223",
      "tree": "903ab8830616bfbe5a821e4359f642842c8060a4",
      "parents": [
        "481295f982b21b1dbe71cbf41d3a93028fee30d1"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Feb 07 22:13:05 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:11:56 2006 -0800"
      },
      "message": "[SPARC64]: Patch up mmu context register writes for sun4v.\n\nsun4v uses ASI_MMU instead of ASI_DMMU\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "481295f982b21b1dbe71cbf41d3a93028fee30d1",
      "tree": "5b1af84a7f83021698bcf138c8875d7290e65282",
      "parents": [
        "89a5264f065672a882f555228000614a6b2182b7"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Feb 07 21:51:08 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:11:55 2006 -0800"
      },
      "message": "[SPARC64]: Register per-cpu fault status area with sun4v hypervisor.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "89a5264f065672a882f555228000614a6b2182b7",
      "tree": "4fa226fed4b8119096e50ff8c915d2c0f8d6cd6d",
      "parents": [
        "8591e3027235d6d11b958e43379f2ee7b7114841"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Feb 07 21:15:41 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:11:55 2006 -0800"
      },
      "message": "[SPARC64]: asm/cpudata.h needs asm/asi.h\n\nFor the expansion of __GET_CPUID() on SMP.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "df7d6aec96ab98cb182dd5138a85bdc363a9bf0d",
      "tree": "d71808a328639a32b16c53b24ce8a6b641f43ad2",
      "parents": [
        "d257d5da39a78b32721ca84b2ba7f461f2f7ed7f"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Feb 07 00:00:16 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:11:53 2006 -0800"
      },
      "message": "[SPARC64]: Rename gl_{1,2}insn_patch --\u003e sun4v_{1,2}insn_patch\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d257d5da39a78b32721ca84b2ba7f461f2f7ed7f",
      "tree": "ac28d377688ebe13a4d38e05f4ff65ba73d8652a",
      "parents": [
        "840aaef8db32572b6d11e0d5cb5e6efcbc812000"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Feb 06 23:44:37 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:11:52 2006 -0800"
      },
      "message": "[SPARC64]: Initial sun4v TLB miss handling infrastructure.\n\nThings are a little tricky because, unlike sun4u, we have\nto:\n\n1) do a hypervisor trap to do the TLB load.\n2) do the TSB lookup calculations by hand\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "45fec05f805a113372c9a7ff4c653ac749f6921c",
      "tree": "36fc99d10656775acb8e9442719447d64ac30a03",
      "parents": [
        "314981ac7177a933319e3c071a5cf0a579205e6e"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sun Feb 05 22:27:28 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:11:50 2006 -0800"
      },
      "message": "[SPARC64]: Sanitize %pstate writes for sun4v.\n\nIf we\u0027re just switching between different alternate global\nsets, nop it out on sun4v.  Also, get rid of all of the\nalternate global save/restore in the OBP CIF trampoline code.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "314981ac7177a933319e3c071a5cf0a579205e6e",
      "tree": "11895da391ba91195d6d7a67debaa32a28c1215e",
      "parents": [
        "936f482af1743141d637483ec10eb881537c26dc"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sun Feb 05 21:59:03 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:11:49 2006 -0800"
      },
      "message": "[SPARC64]: Kill all %pstate changes in context switch code.\n\nThey are totally unnecessary because:\n\n1) Interrupts are already disabled when switch_to()\n   runs.\n\n2) We don\u0027t use hard-coded alternate globals any longer.\n\nThis found a case in rtrap, which still assumed alternate\nglobal %g6 was current_thread_info(), and that is fixed\nby this changeset as well.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "936f482af1743141d637483ec10eb881537c26dc",
      "tree": "913da89a4d9f4038c510c9ecf2f5957b0f6d167f",
      "parents": [
        "6e02493a7f33ac89e698b980a657d77ab2749eaf"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sun Feb 05 21:29:28 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:11:48 2006 -0800"
      },
      "message": "[SPARC64]: Add initial code to twiddle %gl on trap entry/exit.\n\nInstead of setting/clearing PSTATE_AG we have to change\nthe %gl register value on sun4v.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d619d7f11670f5b1cfca30e6645e44c8a6014820",
      "tree": "cad4f39ece5f59f2a16327a13e25863d2f466f14",
      "parents": [
        "d96b81533ba3d5775e45aee6986b2aa33c10801c"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Feb 04 23:59:38 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:11:46 2006 -0800"
      },
      "message": "[SPARC64]: Add define for \"GL\" field of sun4v %tstate register.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d96b81533ba3d5775e45aee6986b2aa33c10801c",
      "tree": "334af39452d650cc14b389c58a30cc54e9e130dd",
      "parents": [
        "e1c21c4f476f2270c98aad1fe55e5f33e25f77f5"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Feb 04 15:40:53 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:11:45 2006 -0800"
      },
      "message": "[SPARC64]: Add sun4v case to __GET_CPUID() patch tables.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e1c21c4f476f2270c98aad1fe55e5f33e25f77f5",
      "tree": "830ae146cd0cf807d949b09641ec8e82c6ed8149",
      "parents": [
        "277b6dd9600613b01f66cadef2f0065514fecf69"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Feb 04 03:12:14 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:11:44 2006 -0800"
      },
      "message": "[SPARC64]: Sun4v interrupt queue register definitions.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "277b6dd9600613b01f66cadef2f0065514fecf69",
      "tree": "f9e9f42f05b3204fe17778a999fecd9fa63b1e7e",
      "parents": [
        "d398ee230f94a8ba386d8abb63f4fea129e4eaba"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Feb 04 03:12:02 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:11:44 2006 -0800"
      },
      "message": "[SPARC64]: Sun4v scratchpad register layout.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d398ee230f94a8ba386d8abb63f4fea129e4eaba",
      "tree": "bcad4a48333ddbdd04f890d7136c0e3efb829cec",
      "parents": [
        "398d10830843bda7798f71052b54a5341a8ddd53"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Feb 04 03:11:50 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:11:43 2006 -0800"
      },
      "message": "[SPARC64]: Sun4v specific ASI defines.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "30ddbdb03339fc62480ddbff800a44066bb14455",
      "tree": "6d064ae396014418601acd8fc678463750f2bffa",
      "parents": [
        "a43fe0e789f5445f5224511034f410adf11f153b"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Feb 04 03:11:17 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:11:41 2006 -0800"
      },
      "message": "[SPARC64]: Add Niagara init-store twin-load ASI defines.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1633a53c79498455b16d051451f4e3f83ab4e7dd",
      "tree": "3f28700c60a0464879833a6d76875f387388e20c",
      "parents": [
        "52bf082f0a6e49e08ed99d4d9518c662dc735c7a"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Feb 04 03:09:03 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:11:39 2006 -0800"
      },
      "message": "[SPARC64]: Add \u0027hypervisor\u0027 to ultra_tlb_type enumeration.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "766f861fbbd968a1850295ed6dec4504b4500dcc",
      "tree": "76729285f448b58c812469b1bddf64f92e9f8d6e",
      "parents": [
        "314ef6859750b6539eac48d78059bb7986f29cb1"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Feb 04 03:01:45 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:11:37 2006 -0800"
      },
      "message": "[SPARC64]: SUN4V hypervisor interface defines.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "314ef6859750b6539eac48d78059bb7986f29cb1",
      "tree": "26c7da386349c1cf377225356e1012ae62da6f07",
      "parents": [
        "ffe483d55229fadbaf4cc7316d47024a24ecd1a2"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Feb 04 00:10:01 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:11:36 2006 -0800"
      },
      "message": "[SPARC64]: Refine register window trap handling.\n\nWhen saving and restoing trap state, do the window spill/fill\nhandling inline so that we never trap deeper than 2 trap levels.\nThis is important for chips like Niagara.\n\nThe window fixup code is massively simplified, and many more\nimprovements are now possible.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ffe483d55229fadbaf4cc7316d47024a24ecd1a2",
      "tree": "70bdb6c94d5b3512a7b2a3ff06979ac2e4e869bf",
      "parents": [
        "92704a1c63c3b481870d02636d0b5a70c7e21cd1"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Feb 02 21:55:10 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:11:35 2006 -0800"
      },
      "message": "[SPARC64]: Add explicit register args to trap state loading macros.\n\nThis, as well as making the code cleaner, allows a simplification in\nthe TSB miss handling path.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "92704a1c63c3b481870d02636d0b5a70c7e21cd1",
      "tree": "098f96da6ab50a1d878425e2b91a9cf22f78ac80",
      "parents": [
        "f4e841da30b4bcbb8f1cc20a01157a788ff58b21"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Feb 26 23:27:19 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:11:35 2006 -0800"
      },
      "message": "[SPARC64]: Refine code sequences to get the cpu id.\n\nOn uniprocessor, it\u0027s always zero for optimize that.\n\nOn SMP, the jmpl to the stub kills the return address stack in the cpu\nbranch prediction logic, so expand the code sequence inline and use a\ncode patching section to fix things up.  This also always better and\nexplicit register selection, which will be taken advantage of in a\nfuture changeset.\n\nThe hard_smp_processor_id() function is big, so do not inline it.\n\nFix up tests for Jalapeno to also test for Serrano chips too.  These\ntests want \"jbus Ultra-IIIi\" cases to match, so that is what we should\ntest for.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7bec08e38a7d0f088994f6eec9b6374652ea71fb",
      "tree": "df0c24e8417d08aff3d3de7d9dc7b13c4e05931b",
      "parents": [
        "517af33237ecfc3c8a93b335365fa61e741ceca4"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Feb 02 01:20:18 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:11:33 2006 -0800"
      },
      "message": "[SPARC64]: Correctable ECC errors cannot occur at trap level \u003e 0.\n\nThe are distrupting, which by the sparc v9 definition means they\ncan only occur when interrupts are enabled in the %pstate register.\nThis never occurs in any of the trap handling code running at\ntrap levels \u003e 0.\n\nSo just mark it as an unexpected trap.\n\nThis allows us to kill off the cee_stuff member of struct thread_info.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "517af33237ecfc3c8a93b335365fa61e741ceca4",
      "tree": "58eff40eb4c517c4fd49fd347d38273ee1e1ee4b",
      "parents": [
        "b0fd4e49aea8a460afab7bc67cd618e2d19291d4"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Feb 01 15:55:21 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 20 01:11:32 2006 -0800"
      },
      "message": "[SPARC64]: Access TSB with physical addresses when possible.\n\nThis way we don\u0027t need to lock the TSB into the TLB.\nThe trick is that every TSB load/store is registered into\na special instruction patch section.  The default uses\nvirtual addresses, and the patch instructions use physical\naddress load/stores.\n\nWe can\u0027t do this on all chips because only cheetah+ and later\nhave the physical variant of the atomic quad load.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    }
  ],
  "next": "b0fd4e49aea8a460afab7bc67cd618e2d19291d4"
}
