start using work_queue to allow for background malloc