Any thread can be preempted unless it's in a critical section which is tracked by a counter in the current thread.
There would be no OS agnostic way of doing what you ask in your second question. On Apr 28, 2015 4:26 PM, "Stefan Andritoiu" <stefan.andrit...@gmail.com> wrote: > In Linux, in the scheduler function, it check if(!preempt_count() & > PREEMPT_ACTIVE). > How does the ULE scheduler tell if it can preempt the current thread? > Is there an equivalent to the preempt_count() function and the > PREEMPT_ACTIVE macro? > > Also, can this information, of a current thread running inside a > FreeBSD virtual machine on bhyve, be accessed from the host? > _______________________________________________ > freebsd-virtualization@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-virtualization > To unsubscribe, send any mail to " > freebsd-virtualization-unsubscr...@freebsd.org" > _______________________________________________ freebsd-virtualization@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-virtualization To unsubscribe, send any mail to "freebsd-virtualization-unsubscr...@freebsd.org"