On 11/27/2014 03:59 AM, Jan Beulich wrote:
On 26.11.14 at 15:39, wrote:
On 11/25/2014 09:28 AM, Jan Beulich wrote:
+else
+{
+struct segment_register seg;
+
+hvm_get_segment_register(sampled, x86_seg_cs, &seg);
+r->cs = seg
>>> On 26.11.14 at 15:39, wrote:
> On 11/25/2014 09:28 AM, Jan Beulich wrote:
>>
>>> +else
>>> +{
>>> +struct segment_register seg;
>>> +
>>> +hvm_get_segment_register(sampled, x86_seg_cs, &seg);
>>> +r->cs = seg.sel;
>>> +
On 11/25/2014 09:28 AM, Jan Beulich wrote:
+else
+{
+struct segment_register seg;
+
+hvm_get_segment_register(sampled, x86_seg_cs, &seg);
+r->cs = seg.sel;
+hvm_get_segment_register(sampled, x86_seg_ss, &se
>>> On 17.11.14 at 00:07, wrote:
> +if ( (vpmu_mode & XENPMU_MODE_SELF) )
> +cur_regs = guest_cpu_user_regs();
> +else if ( !guest_mode(regs) &&
> is_hardware_domain(sampling->domain) )
> +{
> +cur_regs = regs;
> +
Add support for handling PMU interrupts for PV guests.
VPMU for the interrupted VCPU is unloaded until the guest issues XENPMU_flush
hypercall. This allows the guest to access PMU MSR values that are stored in
VPMU context which is shared between hypervisor and domain, thus avoiding
traps to hyper