Searched refs:head_sh (Results 1 - 1 of 1) sorted by relevance

/linux-4.1.27/drivers/md/
H A Draid5.c887 struct stripe_head *head_sh = sh; ops_run_io() local
897 sh = head_sh; ops_run_io()
935 if (test_bit(R5_ReadRepl, &head_sh->dev[i].flags) && rrdev) ops_run_io()
1006 if (sh != head_sh) ops_run_io()
1007 atomic_inc(&head_sh->count); ops_run_io()
1014 if (test_bit(R5_ReadNoMerge, &head_sh->dev[i].flags)) ops_run_io()
1058 if (sh != head_sh) ops_run_io()
1059 atomic_inc(&head_sh->count); ops_run_io()
1094 if (!head_sh->batch_head) ops_run_io()
1098 if (sh != head_sh) ops_run_io()
1596 struct stripe_head *head_sh = sh; ops_run_biodrain() local
1605 sh = head_sh; ops_run_biodrain()
1606 if (test_and_clear_bit(R5_Wantdrain, &head_sh->dev[i].flags)) { ops_run_biodrain()
1640 if (head_sh->batch_head) { ops_run_biodrain()
1644 if (sh == head_sh) ops_run_biodrain()
1710 struct stripe_head *head_sh = sh; ops_run_reconstruct5() local
1734 if (head_sh->reconstruct_state == reconstruct_state_prexor_drain_run) { ops_run_reconstruct5()
1739 if (head_sh->dev[i].written) ops_run_reconstruct5()
1756 last_stripe = !head_sh->batch_head || ops_run_reconstruct5()
1758 struct stripe_head, batch_list) == head_sh; ops_run_reconstruct5()
1763 atomic_inc(&head_sh->count); ops_run_reconstruct5()
1764 init_async_submit(&submit, flags, tx, ops_complete_reconstruct, head_sh, ops_run_reconstruct5()
1791 struct stripe_head *head_sh = sh; ops_run_reconstruct6() local
1824 last_stripe = !head_sh->batch_head || ops_run_reconstruct6()
1826 struct stripe_head, batch_list) == head_sh; ops_run_reconstruct6()
1829 atomic_inc(&head_sh->count); ops_run_reconstruct6()
1831 head_sh, to_addr_conv(sh, percpu, j)); ops_run_reconstruct6()
3440 static void break_stripe_batch_list(struct stripe_head *head_sh,
3453 struct stripe_head *head_sh = sh; handle_stripe_clean_event() local
3491 if (head_sh->batch_head) { handle_stripe_clean_event()
3495 if (sh != head_sh) { handle_stripe_clean_event()
3500 sh = head_sh; handle_stripe_clean_event()
3528 if (head_sh->batch_head) { handle_stripe_clean_event()
3531 if (sh != head_sh) handle_stripe_clean_event()
3534 sh = head_sh; handle_stripe_clean_event()
3545 if (head_sh->batch_head && do_endio) handle_stripe_clean_event()
3546 break_stripe_batch_list(head_sh, STRIPE_EXPAND_SYNC_FLAGS); handle_stripe_clean_event()
4221 static void break_stripe_batch_list(struct stripe_head *head_sh, break_stripe_batch_list() argument
4228 list_for_each_entry_safe(sh, next, &head_sh->batch_list, batch_list) { break_stripe_batch_list()
4245 WARN_ON_ONCE(head_sh->state & ((1 << STRIPE_DISCARD) | break_stripe_batch_list()
4251 head_sh->state & (1 << STRIPE_INSYNC)); break_stripe_batch_list()
4253 sh->check_state = head_sh->check_state; break_stripe_batch_list()
4254 sh->reconstruct_state = head_sh->reconstruct_state; break_stripe_batch_list()
4258 sh->dev[i].flags = head_sh->dev[i].flags & break_stripe_batch_list()
4269 spin_lock_irq(&head_sh->stripe_lock); break_stripe_batch_list()
4270 head_sh->batch_head = NULL; break_stripe_batch_list()
4271 spin_unlock_irq(&head_sh->stripe_lock); break_stripe_batch_list()
4272 for (i = 0; i < head_sh->disks; i++) break_stripe_batch_list()
4273 if (test_and_clear_bit(R5_Overlap, &head_sh->dev[i].flags)) break_stripe_batch_list()
4275 if (head_sh->state & handle_flags) break_stripe_batch_list()
4276 set_bit(STRIPE_HANDLE, &head_sh->state); break_stripe_batch_list()
4279 wake_up(&head_sh->raid_conf->wait_for_overlap); break_stripe_batch_list()

Completed in 96 milliseconds