diff options
author | neel <neel@FreeBSD.org> | 2013-02-11 20:36:07 +0000 |
---|---|---|
committer | neel <neel@FreeBSD.org> | 2013-02-11 20:36:07 +0000 |
commit | 3a9eeaa765cdfd3940dbf4b881957c057c6d6576 (patch) | |
tree | 08d417f2f979935bc451028d59ec525a42e021c6 /sys/netinet/sctp_pcb.h | |
parent | 7bafa2ca4141fce3978c17cea165f86ce0c9ac69 (diff) | |
download | FreeBSD-src-3a9eeaa765cdfd3940dbf4b881957c057c6d6576.zip FreeBSD-src-3a9eeaa765cdfd3940dbf4b881957c057c6d6576.tar.gz |
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
Diffstat (limited to 'sys/netinet/sctp_pcb.h')
0 files changed, 0 insertions, 0 deletions