Lines Matching refs:fcc

320 	struct flush_cmd_control *fcc = SM_I(sbi)->cmd_control_info;  in issue_flush_thread()  local
321 wait_queue_head_t *q = &fcc->flush_wait_queue; in issue_flush_thread()
326 if (!llist_empty(&fcc->issue_list)) { in issue_flush_thread()
333 fcc->dispatch_list = llist_del_all(&fcc->issue_list); in issue_flush_thread()
334 fcc->dispatch_list = llist_reverse_order(fcc->dispatch_list); in issue_flush_thread()
340 fcc->dispatch_list, llnode) { in issue_flush_thread()
345 fcc->dispatch_list = NULL; in issue_flush_thread()
349 kthread_should_stop() || !llist_empty(&fcc->issue_list)); in issue_flush_thread()
355 struct flush_cmd_control *fcc = SM_I(sbi)->cmd_control_info; in f2fs_issue_flush() local
376 llist_add(&cmd.llnode, &fcc->issue_list); in f2fs_issue_flush()
378 if (!fcc->dispatch_list) in f2fs_issue_flush()
379 wake_up(&fcc->flush_wait_queue); in f2fs_issue_flush()
389 struct flush_cmd_control *fcc; in create_flush_cmd_control() local
392 fcc = kzalloc(sizeof(struct flush_cmd_control), GFP_KERNEL); in create_flush_cmd_control()
393 if (!fcc) in create_flush_cmd_control()
395 init_waitqueue_head(&fcc->flush_wait_queue); in create_flush_cmd_control()
396 init_llist_head(&fcc->issue_list); in create_flush_cmd_control()
397 SM_I(sbi)->cmd_control_info = fcc; in create_flush_cmd_control()
398 fcc->f2fs_issue_flush = kthread_run(issue_flush_thread, sbi, in create_flush_cmd_control()
400 if (IS_ERR(fcc->f2fs_issue_flush)) { in create_flush_cmd_control()
401 err = PTR_ERR(fcc->f2fs_issue_flush); in create_flush_cmd_control()
402 kfree(fcc); in create_flush_cmd_control()
412 struct flush_cmd_control *fcc = SM_I(sbi)->cmd_control_info; in destroy_flush_cmd_control() local
414 if (fcc && fcc->f2fs_issue_flush) in destroy_flush_cmd_control()
415 kthread_stop(fcc->f2fs_issue_flush); in destroy_flush_cmd_control()
416 kfree(fcc); in destroy_flush_cmd_control()