Lines Matching refs:stripe_head
119 static inline int raid6_d0(struct stripe_head *sh)
141 static int raid6_idx_to_slot(int idx, struct stripe_head *sh,
159 static int stripe_operations_active(struct stripe_head *sh)
166 static bool stripe_is_lowprio(struct stripe_head *sh)
173 static void raid5_wakeup_stripe_thread(struct stripe_head *sh)
220 static void do_release_stripe(struct r5conf *conf, struct stripe_head *sh,
306 static void __release_stripe(struct r5conf *conf, struct stripe_head *sh,
367 struct stripe_head *sh, *t;
392 void raid5_release_stripe(struct stripe_head *sh)
423 static inline void remove_hash(struct stripe_head *sh)
431 static inline void insert_hash(struct r5conf *conf, struct stripe_head *sh)
442 static struct stripe_head *get_free_stripe(struct r5conf *conf, int hash)
444 struct stripe_head *sh = NULL;
450 sh = list_entry(first, struct stripe_head, lru);
462 static void free_stripe_pages(struct stripe_head *sh)
479 static int alloc_stripe_pages(struct stripe_head *sh, gfp_t gfp)
500 init_stripe_shared_pages(struct stripe_head *sh, struct r5conf *conf, int disks)
520 static void shrink_buffers(struct stripe_head *sh)
543 static int grow_buffers(struct stripe_head *sh, gfp_t gfp)
573 struct stripe_head *sh);
575 static void init_stripe(struct stripe_head *sh, sector_t sector, int previous)
617 static struct stripe_head *__find_stripe(struct r5conf *conf, sector_t sector,
620 struct stripe_head *sh;
630 static struct stripe_head *find_get_stripe(struct r5conf *conf,
634 struct stripe_head *sh;
767 /* a reference to the last stripe_head for batching */
768 struct stripe_head *batch_last;
782 /* the request had REQ_PREFLUSH, cleared after the first stripe_head */
803 struct stripe_head *raid5_get_active_stripe(struct r5conf *conf,
807 struct stripe_head *sh;
874 static bool is_full_stripe_write(struct stripe_head *sh)
880 static void lock_two_stripes(struct stripe_head *sh1, struct stripe_head *sh2)
893 static void unlock_two_stripes(struct stripe_head *sh1, struct stripe_head *sh2)
902 static bool stripe_can_batch(struct stripe_head *sh)
915 struct stripe_head *sh, struct stripe_head *last_sh)
917 struct stripe_head *head;
1010 * in this stripe_head.
1012 static int use_new_offset(struct r5conf *conf, struct stripe_head *sh)
1139 static void ops_run_io(struct stripe_head *sh, struct stripe_head_state *s)
1143 struct stripe_head *head_sh = sh;
1373 sh = list_first_entry(&sh->batch_list, struct stripe_head,
1386 struct stripe_head *sh, int no_skipcopy)
1450 struct stripe_head *sh = stripe_head_ref;
1486 static void ops_run_biofill(struct stripe_head *sh)
1520 static void mark_target_uptodate(struct stripe_head *sh, int target)
1535 struct stripe_head *sh = stripe_head_ref;
1558 static addr_conv_t *to_addr_conv(struct stripe_head *sh,
1568 to_addr_offs(struct stripe_head *sh, struct raid5_percpu *percpu)
1574 ops_run_compute5(struct stripe_head *sh, struct raid5_percpu *percpu)
1618 * @sh - stripe_head to parse
1627 struct stripe_head *sh,
1671 ops_run_compute6_1(struct stripe_head *sh, struct raid5_percpu *percpu)
1735 ops_run_compute6_2(struct stripe_head *sh, struct raid5_percpu *percpu)
1856 struct stripe_head *sh = stripe_head_ref;
1870 ops_run_prexor5(struct stripe_head *sh, struct raid5_percpu *percpu,
1912 ops_run_prexor6(struct stripe_head *sh, struct raid5_percpu *percpu,
1934 ops_run_biodrain(struct stripe_head *sh, struct dma_async_tx_descriptor *tx)
1939 struct stripe_head *head_sh = sh;
1993 struct stripe_head,
2007 struct stripe_head *sh = stripe_head_ref;
2053 ops_run_reconstruct5(struct stripe_head *sh, struct raid5_percpu *percpu,
2066 struct stripe_head *head_sh = sh;
2122 struct stripe_head, batch_list) == head_sh;
2144 sh = list_first_entry(&sh->batch_list, struct stripe_head,
2151 ops_run_reconstruct6(struct stripe_head *sh, struct raid5_percpu *percpu,
2158 struct stripe_head *head_sh = sh;
2194 struct stripe_head, batch_list) == head_sh;
2207 sh = list_first_entry(&sh->batch_list, struct stripe_head,
2215 struct stripe_head *sh = stripe_head_ref;
2225 static void ops_run_check_p(struct stripe_head *sh, struct raid5_percpu *percpu)
2266 static void ops_run_check_pq(struct stripe_head *sh, struct raid5_percpu *percpu, int checkp)
2289 static void raid_run_ops(struct stripe_head *sh, unsigned long ops_request)
2361 static void free_stripe(struct kmem_cache *sc, struct stripe_head *sh)
2371 static struct stripe_head *alloc_stripe(struct kmem_cache *sc, gfp_t gfp,
2374 struct stripe_head *sh;
2406 struct stripe_head *sh;
2443 struct_size_t(struct stripe_head, dev, devs),
2551 * As each stripe_head is processed the new one is released into
2557 struct stripe_head *osh, *nsh;
2569 struct_size_t(struct stripe_head, dev, newsize),
2587 nsh = list_entry(newstripes.next, struct stripe_head, lru);
2665 nsh = list_entry(newstripes.next, struct stripe_head, lru);
2708 struct stripe_head *sh;
2758 struct stripe_head *sh = bi->bi_private;
2886 struct stripe_head *sh = bi->bi_private;
3002 struct stripe_head *sh)
3202 sector_t raid5_compute_blocknr(struct stripe_head *sh, int i, int previous)
3217 struct stripe_head sh2;
3379 schedule_reconstruction(struct stripe_head *sh, struct stripe_head_state *s,
3487 static bool stripe_bio_overlaps(struct stripe_head *sh, struct bio *bi,
3517 * stripe are allowed because for a single stripe_head we can
3547 static void __add_stripe_bio(struct stripe_head *sh, struct bio *bi,
3625 static bool add_stripe_bio(struct stripe_head *sh, struct bio *bi,
3644 struct stripe_head *sh)
3660 handle_failed_stripe(struct r5conf *conf, struct stripe_head *sh,
3773 handle_failed_sync(struct r5conf *conf, struct stripe_head *sh,
3821 static int want_replace(struct stripe_head *sh, int disk_idx)
3838 static int need_this_block(struct stripe_head *sh, struct stripe_head_state *s,
3945 static int fetch_block(struct stripe_head *sh, struct stripe_head_state *s,
4031 static void handle_stripe_fill(struct stripe_head *sh,
4065 static void break_stripe_batch_list(struct stripe_head *head_sh,
4073 struct stripe_head *sh, int disks)
4078 struct stripe_head *head_sh = sh;
4115 struct stripe_head,
4153 struct stripe_head, batch_list);
4188 struct stripe_head *sh,
4351 static void handle_parity_checks5(struct r5conf *conf, struct stripe_head *sh,
4444 static void handle_parity_checks6(struct r5conf *conf, struct stripe_head *sh,
4621 static void handle_stripe_expansion(struct r5conf *conf, struct stripe_head *sh)
4634 struct stripe_head *sh2;
4694 static void analyse_stripe(struct stripe_head *sh, struct stripe_head_state *s)
4893 static int clear_batch_ready(struct stripe_head *sh)
4895 struct stripe_head *tmp;
4925 static void break_stripe_batch_list(struct stripe_head *head_sh,
4928 struct stripe_head *sh, *next;
4988 static void handle_stripe(struct stripe_head *sh)
5277 struct stripe_head *sh_src
5391 struct stripe_head *sh;
5392 sh = list_entry(l, struct stripe_head, lru);
5411 struct stripe_head *sh = list_entry(head.next, struct stripe_head, lru);
5616 static struct stripe_head *__get_priority_stripe(struct r5conf *conf, int group)
5619 struct stripe_head *sh, *tmp;
5719 struct stripe_head *sh;
5728 sh = list_first_entry(&cb->list, struct stripe_head, lru);
5755 struct stripe_head *sh)
5786 struct stripe_head *sh;
5888 struct stripe_head *sh)
5915 struct stripe_request_ctx *ctx, struct stripe_head *sh,
5982 struct stripe_head *sh;
6045 /* Might have got the wrong stripe_head by accident */
6109 struct stripe_head sh;
6114 /* We pass in fake stripe_head to get back parity disk numbers */
6273 struct stripe_head *sh;
6485 sh = list_entry(stripes.next, struct stripe_head, lru);
6536 struct stripe_head *sh;
6640 struct stripe_head *sh;
6695 struct stripe_head *batch[MAX_STRIPE_BATCH], *sh;
7702 memory = conf->min_nr_stripes * (sizeof(struct stripe_head) +