Lines Matching defs:sh2
884 static void lock_two_stripes(struct stripe_head *sh1, struct stripe_head *sh2)
886 __acquires(&sh2->stripe_lock)
888 if (sh1 > sh2) {
889 spin_lock_irq(&sh2->stripe_lock);
893 spin_lock_nested(&sh2->stripe_lock, 1);
897 static void unlock_two_stripes(struct stripe_head *sh1, struct stripe_head *sh2)
899 __releases(&sh2->stripe_lock)
902 spin_unlock_irq(&sh2->stripe_lock);
3163 struct stripe_head sh2;
3258 previous, &dummy1, &sh2);
3259 if (check != sh->sector || dummy1 != dd_idx || sh2.pd_idx != sh->pd_idx
3260 || sh2.qd_idx != sh->qd_idx) {
4553 struct stripe_head *sh2;
4559 sh2 = raid5_get_active_stripe(conf, NULL, s,
4561 if (sh2 == NULL)
4567 if (!test_bit(STRIPE_EXPANDING, &sh2->state) ||
4568 test_bit(R5_Expanded, &sh2->dev[dd_idx].flags)) {
4570 raid5_release_stripe(sh2);
4576 tx = async_memcpy(sh2->dev[dd_idx].page,
4577 sh->dev[i].page, sh2->dev[dd_idx].offset,
4581 set_bit(R5_Expanded, &sh2->dev[dd_idx].flags);
4582 set_bit(R5_UPTODATE, &sh2->dev[dd_idx].flags);
4584 if (j != sh2->pd_idx &&
4585 j != sh2->qd_idx &&
4586 !test_bit(R5_Expanded, &sh2->dev[j].flags))
4589 set_bit(STRIPE_EXPAND_READY, &sh2->state);
4590 set_bit(STRIPE_HANDLE, &sh2->state);
4592 raid5_release_stripe(sh2);