[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <276d66a1-dafe-4ed8-aefd-8f60e34ff575@intel.com>
Date: Tue, 17 Jun 2025 16:10:26 -0700
From: Sohil Mehta <sohil.mehta@...el.com>
To: Sean Christopherson <seanjc@...gle.com>
CC: "Xin Li (Intel)" <xin@...or.com>, <linux-kernel@...r.kernel.org>,
<kvm@...r.kernel.org>, <tglx@...utronix.de>, <mingo@...hat.com>,
<bp@...en8.de>, <dave.hansen@...ux.intel.com>, <x86@...nel.org>,
<hpa@...or.com>, <pbonzini@...hat.com>, <peterz@...radead.org>,
<brgerst@...il.com>, <tony.luck@...el.com>, <fenghuay@...dia.com>
Subject: Re: [PATCH v2 1/2] x86/traps: Initialize DR6 by writing its
architectural reset value
On 6/17/2025 1:47 PM, Sean Christopherson wrote:
> Ah, and now I see that DR6_RESERVED is an existing #define in a uAPI header (Xin
> said there were a few, but I somehow missed them earlier). Maybe just leave that
> thing alone, but update the comment to state that it's a historical wart? And
> then put DR6_ACTIVE_LOW and other macros in arch/x86/include/asm/debugreg.h?
>
Yeah, that's unfortunate. Updating the comment seems the best we do for now.
> /*
> * DR6_ACTIVE_LOW combines fixed-1 and active-low bits.
> * We can regard all the bits in DR6_FIXED_1 as active_low bits;
> * they will never be 0 for now, but when they are defined
> * in the future it will require no code change.
> *
> * DR6_ACTIVE_LOW is also used as the init/reset value for DR6.
> */
> #define DR6_ACTIVE_LOW 0xffff0ff0
> #define DR6_VOLATILE 0x0001e80f
> #define DR6_FIXED_1 (DR6_ACTIVE_LOW & ~DR6_VOLATILE)
Powered by blists - more mailing lists