freebsd-dev/sys/amd64/vmm
Neel Natu 485b3300cc Implement guest vcpu pinning using 'pthread_setaffinity_np(3)'.
Prior to this change pinning was implemented via an ioctl (VM_SET_PINNING)
that called 'sched_bind()' on behalf of the user thread.

The ULE implementation of 'sched_bind()' bumps up 'td_pinned' which in turn
runs afoul of the assertion '(td_pinned == 0)' in userret().

Using the cpuset affinity to implement pinning of the vcpu threads works with
both 4BSD and ULE schedulers and has the happy side-effect of getting rid
of a bunch of code in vmm.ko.

Discussed with:	grehan
2013-02-11 20:36:07 +00:00
..
amd Maintain state regarding NMI delivery to guest vcpu in VT-x independent manner. 2012-10-24 02:54:21 +00:00
intel Always allow access to the sysenter cs/esp/eip MSRs since they 2013-01-25 21:38:31 +00:00
io Implement guest vcpu pinning using 'pthread_setaffinity_np(3)'. 2013-02-11 20:36:07 +00:00
vmm_dev.c Implement guest vcpu pinning using 'pthread_setaffinity_np(3)'. 2013-02-11 20:36:07 +00:00
vmm_host.c Corral all the host state associated with the virtual machine into its own file. 2012-10-29 01:51:24 +00:00
vmm_host.h Corral all the host state associated with the virtual machine into its own file. 2012-10-29 01:51:24 +00:00
vmm_instruction_emul.c Add emulation support for instruction "88/r: mov r/m8, r8". 2013-01-30 04:09:09 +00:00
vmm_ipi.c Provide per-vcpu locks instead of relying on a single big lock. 2012-10-12 18:32:44 +00:00
vmm_ipi.h Provide per-vcpu locks instead of relying on a single big lock. 2012-10-12 18:32:44 +00:00
vmm_ktr.h
vmm_lapic.c Change emulate_rdmsr() and emulate_wrmsr() to return 0 on sucess and errno on 2012-11-28 13:10:18 +00:00
vmm_lapic.h Revamp the x86 instruction emulation in bhyve. 2012-11-28 00:02:17 +00:00
vmm_mem.c Set the valid field of the newly allocated field as all other 2012-10-26 22:32:26 +00:00
vmm_mem.h Allocate memory pages for the guest from the host's free page queue. 2012-10-08 23:41:26 +00:00
vmm_msr.c Change emulate_rdmsr() and emulate_wrmsr() to return 0 on sucess and errno on 2012-11-28 13:10:18 +00:00
vmm_msr.h
vmm_stat.c
vmm_stat.h
vmm_support.S
vmm_util.c
vmm_util.h
vmm.c Implement guest vcpu pinning using 'pthread_setaffinity_np(3)'. 2013-02-11 20:36:07 +00:00
x86.c Handle CPUID leaf 0x7 now that FreeBSD is using it. 2012-11-20 06:01:03 +00:00
x86.h Handle CPUID leaf 0x7 now that FreeBSD is using it. 2012-11-20 06:01:03 +00:00