FWIW, inserting a pthread_yield() just before the ioctl call in the worker thread speeds things up quite a bit (100us -> 73us) in combination with kern.threads.virtual_cpu=1. Drew