[Top] [All Lists]

Re: [PATCH 00/18] KVM/MIPS32: Support for the new Virtualization ASE (VZ

To: "Maciej W. Rozycki" <>
Subject: Re: [PATCH 00/18] KVM/MIPS32: Support for the new Virtualization ASE (VZ-ASE)
From: David Daney <>
Date: Mon, 20 May 2013 11:58:17 -0700
Cc: Sanjay Lal <>,,, Ralf Baechle <>, Gleb Natapov <>, Marcelo Tosatti <>
Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed;; s=20120113; h=x-received:message-id:date:from:user-agent:mime-version:to:cc :subject:references:in-reply-to:content-type :content-transfer-encoding; bh=enGGGXO68Neo0S4nkl7LRA1fqdLAuc86X2BilSccQWU=; b=CWCxNOl0zXtskgSCZPEcE12ifvmxQyYeEpqyQR/VOv8wqpgYH8m6MsxijoLqUjmrXo EdytXosgzxYAGQrthvZ3YDXIihDOc1OslpU05mWVwoRm5j7osuVSABhDVns2JmMG4IQS dNg/yl56TadI76szv0hkgtcfag0mXKQ9Yk6oFZ3dAVRQFbRzfvFVaokLCil2ZvhUIoMZ BVBr5vMtTizktwZtf5NppcxUSBkv4ZCN2W080oTosYSq+5PHSqWBa+wHzTWJ6EFqhtOv 0adyPTAZa4vj3ekAc964ruYykMd5A9sx5q+8XqrpvxrOkKkB9Riv7WeJhfOP2q5XUDWS EdLg==
In-reply-to: <>
List-archive: <>
List-help: <>
List-id: linux-mips <>
List-owner: <>
List-post: <>
List-software: Ecartis version 1.0.0
List-subscribe: <>
List-unsubscribe: <>
Original-recipient: rfc822;
References: <n> <> <> <> <>
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130311 Thunderbird/17.0.4
On 05/20/2013 11:36 AM, Maciej W. Rozycki wrote:
On Mon, 20 May 2013, Sanjay Lal wrote:

(1) Newer versions of the MIPS architecture define scratch registers for
just this purpose, but since we have to support standard MIPS32R2
processors, we use the DDataLo Register (CP0 Register 28, Select 3) as a
scratch register to save k0 and save k1 @ a known offset from EBASE.

  That's rather risky as the implementation of this register (and its
presence in the first place) is processor-specific.  Do you maintain a
list of PRId values the use of this register is safe with?

FWIW: The MIPS-VZ architecture module requires the presence of CP0 scratch registers that can be used for this in the exception handlers without having to worry about using these implementation dependent registers. For the trap-and-emulate only version, there really is no choice other than to re-purpose some of the existing CP0 registers.

David Daney

<Prev in Thread] Current Thread [Next in Thread>