Lines Matching refs:ticket

4760 	struct reserve_ticket *ticket = NULL;  in may_commit_transaction()  local
4771 ticket = list_first_entry(&space_info->priority_tickets, in may_commit_transaction()
4774 ticket = list_first_entry(&space_info->tickets, in may_commit_transaction()
4776 bytes = (ticket) ? ticket->bytes : 0; in may_commit_transaction()
4882 struct reserve_ticket *ticket; in btrfs_calc_reclaim_metadata_size() local
4887 list_for_each_entry(ticket, &space_info->tickets, list) in btrfs_calc_reclaim_metadata_size()
4888 to_reclaim += ticket->bytes; in btrfs_calc_reclaim_metadata_size()
4889 list_for_each_entry(ticket, &space_info->priority_tickets, list) in btrfs_calc_reclaim_metadata_size()
4890 to_reclaim += ticket->bytes; in btrfs_calc_reclaim_metadata_size()
4936 struct reserve_ticket *ticket; in wake_all_tickets() local
4939 ticket = list_first_entry(head, struct reserve_ticket, list); in wake_all_tickets()
4940 list_del_init(&ticket->list); in wake_all_tickets()
4941 ticket->error = -ENOSPC; in wake_all_tickets()
4942 wake_up(&ticket->wait); in wake_all_tickets()
5015 struct reserve_ticket *ticket) in priority_reclaim_metadata_space() argument
5033 if (ticket->bytes == 0) { in priority_reclaim_metadata_space()
5051 struct reserve_ticket *ticket, u64 orig_bytes) in wait_reserve_ticket() argument
5058 while (ticket->bytes > 0 && ticket->error == 0) { in wait_reserve_ticket()
5059 ret = prepare_to_wait_event(&ticket->wait, &wait, TASK_KILLABLE); in wait_reserve_ticket()
5068 finish_wait(&ticket->wait, &wait); in wait_reserve_ticket()
5072 ret = ticket->error; in wait_reserve_ticket()
5073 if (!list_empty(&ticket->list)) in wait_reserve_ticket()
5074 list_del_init(&ticket->list); in wait_reserve_ticket()
5075 if (ticket->bytes && ticket->bytes < orig_bytes) { in wait_reserve_ticket()
5076 u64 num_bytes = orig_bytes - ticket->bytes; in wait_reserve_ticket()
5106 struct reserve_ticket ticket; in __reserve_metadata_bytes() local
5143 ticket.bytes = orig_bytes; in __reserve_metadata_bytes()
5144 ticket.error = 0; in __reserve_metadata_bytes()
5145 init_waitqueue_head(&ticket.wait); in __reserve_metadata_bytes()
5147 list_add_tail(&ticket.list, &space_info->tickets); in __reserve_metadata_bytes()
5158 list_add_tail(&ticket.list, in __reserve_metadata_bytes()
5183 return wait_reserve_ticket(fs_info, space_info, &ticket, in __reserve_metadata_bytes()
5187 priority_reclaim_metadata_space(fs_info, space_info, &ticket); in __reserve_metadata_bytes()
5189 if (ticket.bytes) { in __reserve_metadata_bytes()
5190 if (ticket.bytes < orig_bytes) { in __reserve_metadata_bytes()
5191 u64 num_bytes = orig_bytes - ticket.bytes; in __reserve_metadata_bytes()
5198 list_del_init(&ticket.list); in __reserve_metadata_bytes()
5202 ASSERT(list_empty(&ticket.list)); in __reserve_metadata_bytes()
5331 struct reserve_ticket *ticket; in space_info_add_old_bytes() local
5350 ticket = list_first_entry(head, struct reserve_ticket, in space_info_add_old_bytes()
5359 if (num_bytes >= ticket->bytes) { in space_info_add_old_bytes()
5360 list_del_init(&ticket->list); in space_info_add_old_bytes()
5361 num_bytes -= ticket->bytes; in space_info_add_old_bytes()
5362 ticket->bytes = 0; in space_info_add_old_bytes()
5364 wake_up(&ticket->wait); in space_info_add_old_bytes()
5366 ticket->bytes -= num_bytes; in space_info_add_old_bytes()
5391 struct reserve_ticket *ticket; in space_info_add_new_bytes() local
5396 ticket = list_first_entry(head, struct reserve_ticket, in space_info_add_new_bytes()
5398 if (num_bytes >= ticket->bytes) { in space_info_add_new_bytes()
5401 ticket->bytes, 1); in space_info_add_new_bytes()
5402 list_del_init(&ticket->list); in space_info_add_new_bytes()
5403 num_bytes -= ticket->bytes; in space_info_add_new_bytes()
5404 space_info->bytes_may_use += ticket->bytes; in space_info_add_new_bytes()
5405 ticket->bytes = 0; in space_info_add_new_bytes()
5407 wake_up(&ticket->wait); in space_info_add_new_bytes()
5413 ticket->bytes -= num_bytes; in space_info_add_new_bytes()