/* fcoe_percpu_thread_create() - Create a receive thread for an online CPU @cpu: The CPU index of the CPU to create a receive thread for  */
static void fcoe_percpu_thread_create(unsigned int cpu)
/* fcoe_percpu_thread_create() - Create a receive thread for an online CPU @cpu: The CPU index of the CPU to create a receive thread for  */
static void fcoe_percpu_thread_create(unsigned int cpu)
{
	struct fcoe_percpu_s *p;
	struct task_struct *thread;
	p = &per_cpu(fcoe_percpu, cpu);
	thread = kthread_create(fcoe_percpu_receive_thread,
				(void *)p, "fcoethread/%d", cpu);
	if (likely(!IS_ERR(thread))) {
		kthread_bind(thread, cpu);
		wake_up_process(thread);
		spin_lock_bh(&p->fcoe_rx_list.lock);
		p->thread = thread;
		spin_unlock_bh(&p->fcoe_rx_list.lock);
	}
}