message: initialize the join queue only with one element
diff: @@ -93,7 +93,7 @@ impl PerCoreScheduler {
  // Add it to the task lists.
  let wakeup = {
  let mut input_locked = get_scheduler(core_id).input.lock();
  - TASKS.lock().as_mut().unwrap().insert(tid, VecDeque::new());
  + TASKS.lock().as_mut().unwrap().insert(tid, VecDeque::with_capacity(1));
  NO_TASKS.fetch_add(1, Ordering::SeqCst);
  if core_id != core_scheduler().core_id {
  @@ -177,7 +177,7 @@ impl PerCoreScheduler {
  // Add it to the task lists.
  let wakeup = {
  let mut input_locked = get_scheduler(core_id).input.lock();
  - TASKS.lock().as_mut().unwrap().insert(tid, VecDeque::new());
  + TASKS.lock().as_mut().unwrap().insert(tid, VecDeque::with_capacity(1));
  NO_TASKS.fetch_add(1, Ordering::SeqCst);
  if core_id != core_scheduler().core_id {
  input_locked.new_tasks.push_back(clone_task.clone());
  @@ -499,7 +499,7 @@ pub fn add_current_core() {
  let idle_task = Rc::new(RefCell::new(Task::new_idle(tid, core_id)));
  // Add the ID -> Task mapping.
  - TASKS.lock().as_mut().unwrap().insert(tid, VecDeque::new());
  + TASKS.lock().as_mut().unwrap().insert(tid, VecDeque::with_capacity(1));
  // Initialize a scheduler for this core.
  debug!(
  "Initializing scheduler for core {} with idle task {}",
  