Public bug reported:

A bus lock is acquired either through split locked access to writeback (WB) 
memory or by using locks to uncacheable (UC) memory. This is typically > 1000 
cycles slower than atomic operation within a cache
line. It also disrupts performance on other cores (which must wait for the bus 
lock to be released before their memory operations).

Bus lock debug exception is a sub-feature of bus lock detection. It is
an ability to notify the kernel by an #DB trap after the instruction
acquires a bus lock when CPL>0. This allows the kernel to enforce user
application throttling or mitigations.

A logical processor can be configured to generate a debug exception
(#DB) following acquisition of a bus lock.

Software enables those debug exceptions by setting bit 2 of the
IA32_DEBUGCTL MSR. The CPU enumerates this feature using CPUID.(EAX=7,
ECX=0).ECX[24].

A debug exception due to acquistion of a bus lock is reported as a trap
following execution of the instruction acquiring the bus lock. The
processor identifies such debug exceptions using bit 11 of DR6: delivery
of a bus-lock #DB clears DR6[11].

Linux 5.13

** Affects: kvm (Ubuntu)
     Importance: Undecided
         Status: New

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1954469

Title:
  KVM Bus Lock Debug Exception

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/kvm/+bug/1954469/+subscriptions


-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to