work = tgt_init_work(session, tgt_alloc_buffer, cmnd); tgt_queue_work(session->target, work);
INIT_WORK(&cmnd->work, tgt_alloc_buffer, cmnd); cmnd->done = done; queue_work(session->target->twq, &cmnd->work);
void tgt_cmnd_alloc_buffer(struct tgt_cmnd *cmnd, void (*done)(struct tgt_cmnd *)){	struct tgt_protocol *proto = cmnd->session->target->proto;	BUG_ON(!list_empty(&cmnd->clist));	proto->init_cmnd_buffer(cmnd);	if (done) {		struct tgt_session *session = cmnd->session;		struct tgt_work *work;		work = tgt_init_work(session, tgt_alloc_buffer, cmnd);		tgt_queue_work(session->target, work);		return;	};	tgt_alloc_buffer(cmnd);}