Re: [PATCH 4/6] hw-breakpoints: Rewrite the hw-breakpoints layeron top of perf events

From: Jan Kiszka
Date: Tue Nov 03 2009 - 15:39:29 EST


Frederic Weisbecker wrote:
> On Tue, Nov 03, 2009 at 09:22:04PM +0100, Jan Kiszka wrote:
>>> Thinking about it, this check should cover every cases:
>>>
>>> if (vcpu->arch.switch_db_regs || __get_cpu_var(dr7) & DR_GLOBAL_ENABLE_MASK)
>>>
>>> If we have __get_cpu_var(dr7) & DR_GLOBAL_ENABLE_MASK, it means there is an
>>> active breakpoint and then we should restore the current state.
>>>
>> And what about (__get_cpu_var(dr7) & DR_GLOBAL_ENABLE_MASK) only? Would
>> you be able to live with unsync'ed hardware and software states?
>>
>> Jan
>>
>
>
> But if the guest has breakpoints activated, the host will inherit
> them, which is really not something we want, assuming vcpu->arch.switch_db_regs
> already protects us about that.
>

Nope, vmx&svm will clear dr7 on vmexit for us. Really, switch_db_regs
should not be needed if we can leave the debug registers clobbered but
disabled behind.

Jan

Attachment: signature.asc
Description: OpenPGP digital signature