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

/linux-4.4.14/block/
H A Dbio-integrity.c54 struct bio_integrity_payload *bip; bio_integrity_alloc() local
60 bip = kmalloc(sizeof(struct bio_integrity_payload) + bio_integrity_alloc()
64 bip = mempool_alloc(bs->bio_integrity_pool, gfp_mask); bio_integrity_alloc()
68 if (unlikely(!bip)) bio_integrity_alloc()
71 memset(bip, 0, sizeof(*bip)); bio_integrity_alloc()
74 bip->bip_vec = bvec_alloc(gfp_mask, nr_vecs, &idx, bio_integrity_alloc()
76 if (!bip->bip_vec) bio_integrity_alloc()
78 bip->bip_max_vcnt = bvec_nr_vecs(idx); bio_integrity_alloc()
80 bip->bip_vec = bip->bip_inline_vecs; bio_integrity_alloc()
81 bip->bip_max_vcnt = inline_vecs; bio_integrity_alloc()
84 bip->bip_slab = idx; bio_integrity_alloc()
85 bip->bip_bio = bio; bio_integrity_alloc()
86 bio->bi_integrity = bip; bio_integrity_alloc()
89 return bip; bio_integrity_alloc()
91 mempool_free(bip, bs->bio_integrity_pool); bio_integrity_alloc()
98 * @bio: bio containing bip to be freed
105 struct bio_integrity_payload *bip = bio_integrity(bio); bio_integrity_free() local
108 if (bip->bip_flags & BIP_BLOCK_INTEGRITY) bio_integrity_free()
109 kfree(page_address(bip->bip_vec->bv_page) + bio_integrity_free()
110 bip->bip_vec->bv_offset); bio_integrity_free()
113 if (bip->bip_slab != BIO_POOL_NONE) bio_integrity_free()
114 bvec_free(bs->bvec_integrity_pool, bip->bip_vec, bio_integrity_free()
115 bip->bip_slab); bio_integrity_free()
117 mempool_free(bip, bs->bio_integrity_pool); bio_integrity_free()
119 kfree(bip); bio_integrity_free()
138 struct bio_integrity_payload *bip = bio_integrity(bio); bio_integrity_add_page() local
141 if (bip->bip_vcnt >= bip->bip_max_vcnt) { bio_integrity_add_page()
146 iv = bip->bip_vec + bip->bip_vcnt; bio_integrity_add_page()
148 if (bip->bip_vcnt && bio_integrity_add_page()
150 &bip->bip_vec[bip->bip_vcnt - 1], offset)) bio_integrity_add_page()
156 bip->bip_vcnt++; bio_integrity_add_page()
231 struct bio_integrity_payload *bip = bio_integrity(bio); bio_integrity_process() local
233 void *prot_buf = page_address(bip->bip_vec->bv_page) + bio_integrity_process()
234 bip->bip_vec->bv_offset; bio_integrity_process()
238 iter.seed = bip_get_seed(bip); bio_integrity_process()
271 struct bio_integrity_payload *bip; bio_integrity_prep() local
300 bip = bio_integrity_alloc(bio, GFP_NOIO, nr_pages); bio_integrity_prep()
301 if (unlikely(bip == NULL)) { bio_integrity_prep()
307 bip->bip_flags |= BIP_BLOCK_INTEGRITY; bio_integrity_prep()
308 bip->bip_iter.bi_size = len; bio_integrity_prep()
309 bip_set_seed(bip, bio->bi_iter.bi_sector); bio_integrity_prep()
312 bip->bip_flags |= BIP_IP_CHECKSUM; bio_integrity_prep()
342 bip->bip_end_io = bio->bi_end_io; bio_integrity_prep()
364 struct bio_integrity_payload *bip = bio_integrity_verify_fn() local
366 struct bio *bio = bip->bip_bio; bio_integrity_verify_fn()
372 bio->bi_end_io = bip->bip_end_io; bio_integrity_verify_fn()
390 struct bio_integrity_payload *bip = bio_integrity(bio); bio_integrity_endio() local
392 BUG_ON(bip->bip_bio != bio); bio_integrity_endio()
399 bio->bi_end_io = bip->bip_end_io; bio_integrity_endio()
405 INIT_WORK(&bip->bip_work, bio_integrity_verify_fn); bio_integrity_endio()
406 queue_work(kintegrityd_wq, &bip->bip_work); bio_integrity_endio()
421 struct bio_integrity_payload *bip = bio_integrity(bio); bio_integrity_advance() local
425 bvec_iter_advance(bip->bip_vec, &bip->bip_iter, bytes); bio_integrity_advance()
443 struct bio_integrity_payload *bip = bio_integrity(bio); bio_integrity_trim() local
447 bip->bip_iter.bi_size = bio_integrity_bytes(bi, sectors); bio_integrity_trim()
457 * Description: Called to allocate a bip when cloning a bio
463 struct bio_integrity_payload *bip; bio_integrity_clone() local
467 bip = bio_integrity_alloc(bio, gfp_mask, bip_src->bip_vcnt); bio_integrity_clone()
469 if (bip == NULL) bio_integrity_clone()
472 memcpy(bip->bip_vec, bip_src->bip_vec, bio_integrity_clone()
475 bip->bip_vcnt = bip_src->bip_vcnt; bio_integrity_clone()
476 bip->bip_iter = bip_src->bip_iter; bio_integrity_clone()
/linux-4.4.14/fs/xfs/
H A Dxfs_trans_buf.c80 struct xfs_buf_log_item *bip; _xfs_trans_bjoin() local
90 bip = bp->b_fspriv; _xfs_trans_bjoin()
91 ASSERT(!(bip->bli_flags & XFS_BLI_STALE)); _xfs_trans_bjoin()
92 ASSERT(!(bip->__bli_format.blf_flags & XFS_BLF_CANCEL)); _xfs_trans_bjoin()
93 ASSERT(!(bip->bli_flags & XFS_BLI_LOGGED)); _xfs_trans_bjoin()
95 bip->bli_recur = 0; _xfs_trans_bjoin()
100 atomic_inc(&bip->bli_refcount); _xfs_trans_bjoin()
105 xfs_trans_add_item(tp, &bip->bli_item); _xfs_trans_bjoin()
142 xfs_buf_log_item_t *bip; xfs_trans_get_buf_map() local
162 bip = bp->b_fspriv; xfs_trans_get_buf_map()
163 ASSERT(bip != NULL); xfs_trans_get_buf_map()
164 ASSERT(atomic_read(&bip->bli_refcount) > 0); xfs_trans_get_buf_map()
165 bip->bli_recur++; xfs_trans_get_buf_map()
166 trace_xfs_trans_get_buf_recur(bip); xfs_trans_get_buf_map()
196 xfs_buf_log_item_t *bip; xfs_trans_getsb() local
213 bip = bp->b_fspriv; xfs_trans_getsb()
214 ASSERT(bip != NULL); xfs_trans_getsb()
215 ASSERT(atomic_read(&bip->bli_refcount) > 0); xfs_trans_getsb()
216 bip->bli_recur++; xfs_trans_getsb()
217 trace_xfs_trans_getsb_recur(bip); xfs_trans_getsb()
252 struct xfs_buf_log_item *bip; xfs_trans_read_buf_map() local
282 bip = bp->b_fspriv; xfs_trans_read_buf_map()
283 bip->bli_recur++; xfs_trans_read_buf_map()
285 ASSERT(atomic_read(&bip->bli_refcount) > 0); xfs_trans_read_buf_map()
286 trace_xfs_trans_read_buf_recur(bip); xfs_trans_read_buf_map()
358 xfs_buf_log_item_t *bip; xfs_trans_brelse() local
370 bip = bp->b_fspriv; xfs_trans_brelse()
371 ASSERT(bip->bli_item.li_type == XFS_LI_BUF); xfs_trans_brelse()
372 ASSERT(!(bip->bli_flags & XFS_BLI_STALE)); xfs_trans_brelse()
373 ASSERT(!(bip->__bli_format.blf_flags & XFS_BLF_CANCEL)); xfs_trans_brelse()
374 ASSERT(atomic_read(&bip->bli_refcount) > 0); xfs_trans_brelse()
376 trace_xfs_trans_brelse(bip); xfs_trans_brelse()
382 if (bip->bli_recur > 0) { xfs_trans_brelse()
383 bip->bli_recur--; xfs_trans_brelse()
391 if (bip->bli_item.li_desc->lid_flags & XFS_LID_DIRTY) xfs_trans_brelse()
400 if (bip->bli_flags & XFS_BLI_STALE) xfs_trans_brelse()
403 ASSERT(!(bip->bli_flags & XFS_BLI_LOGGED)); xfs_trans_brelse()
408 xfs_trans_del_item(&bip->bli_item); xfs_trans_brelse()
415 if (bip->bli_flags & XFS_BLI_HOLD) { xfs_trans_brelse()
416 bip->bli_flags &= ~XFS_BLI_HOLD; xfs_trans_brelse()
422 atomic_dec(&bip->bli_refcount); xfs_trans_brelse()
431 if (!xfs_buf_item_dirty(bip)) { xfs_trans_brelse()
435 ASSERT(atomic_read(&bip->bli_refcount) == 0); xfs_trans_brelse()
436 ASSERT(!(bip->bli_item.li_flags & XFS_LI_IN_AIL)); xfs_trans_brelse()
437 ASSERT(!(bip->bli_flags & XFS_BLI_INODE_ALLOC_BUF)); xfs_trans_brelse()
455 xfs_buf_log_item_t *bip = bp->b_fspriv; xfs_trans_bhold() local
458 ASSERT(bip != NULL); xfs_trans_bhold()
459 ASSERT(!(bip->bli_flags & XFS_BLI_STALE)); xfs_trans_bhold()
460 ASSERT(!(bip->__bli_format.blf_flags & XFS_BLF_CANCEL)); xfs_trans_bhold()
461 ASSERT(atomic_read(&bip->bli_refcount) > 0); xfs_trans_bhold()
463 bip->bli_flags |= XFS_BLI_HOLD; xfs_trans_bhold()
464 trace_xfs_trans_bhold(bip); xfs_trans_bhold()
475 xfs_buf_log_item_t *bip = bp->b_fspriv; xfs_trans_bhold_release() local
478 ASSERT(bip != NULL); xfs_trans_bhold_release()
479 ASSERT(!(bip->bli_flags & XFS_BLI_STALE)); xfs_trans_bhold_release()
480 ASSERT(!(bip->__bli_format.blf_flags & XFS_BLF_CANCEL)); xfs_trans_bhold_release()
481 ASSERT(atomic_read(&bip->bli_refcount) > 0); xfs_trans_bhold_release()
482 ASSERT(bip->bli_flags & XFS_BLI_HOLD); xfs_trans_bhold_release()
484 bip->bli_flags &= ~XFS_BLI_HOLD; xfs_trans_bhold_release()
485 trace_xfs_trans_bhold_release(bip); xfs_trans_bhold_release()
503 xfs_buf_log_item_t *bip = bp->b_fspriv; xfs_trans_log_buf() local
506 ASSERT(bip != NULL); xfs_trans_log_buf()
523 ASSERT(atomic_read(&bip->bli_refcount) > 0); xfs_trans_log_buf()
525 bip->bli_item.li_cb = xfs_buf_iodone; xfs_trans_log_buf()
527 trace_xfs_trans_log_buf(bip); xfs_trans_log_buf()
535 if (bip->bli_flags & XFS_BLI_STALE) { xfs_trans_log_buf()
536 bip->bli_flags &= ~XFS_BLI_STALE; xfs_trans_log_buf()
539 bip->__bli_format.blf_flags &= ~XFS_BLF_CANCEL; xfs_trans_log_buf()
543 bip->bli_item.li_desc->lid_flags |= XFS_LID_DIRTY; xfs_trans_log_buf()
549 bip->bli_flags |= XFS_BLI_DIRTY | XFS_BLI_LOGGED; xfs_trans_log_buf()
550 if (!(bip->bli_flags & XFS_BLI_ORDERED)) xfs_trans_log_buf()
551 xfs_buf_item_log(bip, first, last); xfs_trans_log_buf()
589 xfs_buf_log_item_t *bip = bp->b_fspriv; xfs_trans_binval() local
593 ASSERT(bip != NULL); xfs_trans_binval()
594 ASSERT(atomic_read(&bip->bli_refcount) > 0); xfs_trans_binval()
596 trace_xfs_trans_binval(bip); xfs_trans_binval()
598 if (bip->bli_flags & XFS_BLI_STALE) { xfs_trans_binval()
604 ASSERT(!(bip->bli_flags & (XFS_BLI_LOGGED | XFS_BLI_DIRTY))); xfs_trans_binval()
605 ASSERT(!(bip->__bli_format.blf_flags & XFS_BLF_INODE_BUF)); xfs_trans_binval()
606 ASSERT(!(bip->__bli_format.blf_flags & XFS_BLFT_MASK)); xfs_trans_binval()
607 ASSERT(bip->__bli_format.blf_flags & XFS_BLF_CANCEL); xfs_trans_binval()
608 ASSERT(bip->bli_item.li_desc->lid_flags & XFS_LID_DIRTY); xfs_trans_binval()
615 bip->bli_flags |= XFS_BLI_STALE; xfs_trans_binval()
616 bip->bli_flags &= ~(XFS_BLI_INODE_BUF | XFS_BLI_LOGGED | XFS_BLI_DIRTY); xfs_trans_binval()
617 bip->__bli_format.blf_flags &= ~XFS_BLF_INODE_BUF; xfs_trans_binval()
618 bip->__bli_format.blf_flags |= XFS_BLF_CANCEL; xfs_trans_binval()
619 bip->__bli_format.blf_flags &= ~XFS_BLFT_MASK; xfs_trans_binval()
620 for (i = 0; i < bip->bli_format_count; i++) { xfs_trans_binval()
621 memset(bip->bli_formats[i].blf_data_map, 0, xfs_trans_binval()
622 (bip->bli_formats[i].blf_map_size * sizeof(uint))); xfs_trans_binval()
624 bip->bli_item.li_desc->lid_flags |= XFS_LID_DIRTY; xfs_trans_binval()
644 xfs_buf_log_item_t *bip = bp->b_fspriv; xfs_trans_inode_buf() local
647 ASSERT(bip != NULL); xfs_trans_inode_buf()
648 ASSERT(atomic_read(&bip->bli_refcount) > 0); xfs_trans_inode_buf()
650 bip->bli_flags |= XFS_BLI_INODE_BUF; xfs_trans_inode_buf()
668 xfs_buf_log_item_t *bip = bp->b_fspriv; xfs_trans_stale_inode_buf() local
671 ASSERT(bip != NULL); xfs_trans_stale_inode_buf()
672 ASSERT(atomic_read(&bip->bli_refcount) > 0); xfs_trans_stale_inode_buf()
674 bip->bli_flags |= XFS_BLI_STALE_INODE; xfs_trans_stale_inode_buf()
675 bip->bli_item.li_cb = xfs_buf_iodone; xfs_trans_stale_inode_buf()
693 xfs_buf_log_item_t *bip = bp->b_fspriv; xfs_trans_inode_alloc_buf() local
696 ASSERT(bip != NULL); xfs_trans_inode_alloc_buf()
697 ASSERT(atomic_read(&bip->bli_refcount) > 0); xfs_trans_inode_alloc_buf()
699 bip->bli_flags |= XFS_BLI_INODE_ALLOC_BUF; xfs_trans_inode_alloc_buf()
716 struct xfs_buf_log_item *bip = bp->b_fspriv; xfs_trans_ordered_buf() local
719 ASSERT(bip != NULL); xfs_trans_ordered_buf()
720 ASSERT(atomic_read(&bip->bli_refcount) > 0); xfs_trans_ordered_buf()
722 bip->bli_flags |= XFS_BLI_ORDERED; xfs_trans_ordered_buf()
723 trace_xfs_buf_item_ordered(bip); xfs_trans_ordered_buf()
736 struct xfs_buf_log_item *bip = bp->b_fspriv; xfs_trans_buf_set_type() local
742 ASSERT(bip != NULL); xfs_trans_buf_set_type()
743 ASSERT(atomic_read(&bip->bli_refcount) > 0); xfs_trans_buf_set_type()
745 xfs_blft_to_flags(&bip->__bli_format, type); xfs_trans_buf_set_type()
778 struct xfs_buf_log_item *bip = bp->b_fspriv; xfs_trans_dquot_buf() local
784 bip->__bli_format.blf_flags |= type; xfs_trans_dquot_buf()
H A Dxfs_buf_item.c63 struct xfs_buf_log_item *bip, xfs_buf_item_size_segment()
68 struct xfs_buf *bp = bip->bli_buf; xfs_buf_item_size_segment()
137 struct xfs_buf_log_item *bip = BUF_ITEM(lip); xfs_buf_item_size() local
140 ASSERT(atomic_read(&bip->bli_refcount) > 0); xfs_buf_item_size()
141 if (bip->bli_flags & XFS_BLI_STALE) { xfs_buf_item_size()
147 trace_xfs_buf_item_size_stale(bip); xfs_buf_item_size()
148 ASSERT(bip->__bli_format.blf_flags & XFS_BLF_CANCEL); xfs_buf_item_size()
149 *nvecs += bip->bli_format_count; xfs_buf_item_size()
150 for (i = 0; i < bip->bli_format_count; i++) { xfs_buf_item_size()
151 *nbytes += xfs_buf_log_format_size(&bip->bli_formats[i]); xfs_buf_item_size()
156 ASSERT(bip->bli_flags & XFS_BLI_LOGGED); xfs_buf_item_size()
158 if (bip->bli_flags & XFS_BLI_ORDERED) { xfs_buf_item_size()
164 trace_xfs_buf_item_size_ordered(bip); xfs_buf_item_size()
178 for (i = 0; i < bip->bli_format_count; i++) { xfs_buf_item_size()
179 xfs_buf_item_size_segment(bip, &bip->bli_formats[i], xfs_buf_item_size()
182 trace_xfs_buf_item_size(bip); xfs_buf_item_size()
214 struct xfs_buf_log_item *bip, xfs_buf_item_format_segment()
220 struct xfs_buf *bp = bip->bli_buf; xfs_buf_item_format_segment()
228 blfp->blf_flags = bip->__bli_format.blf_flags; xfs_buf_item_format_segment()
238 if (!(bip->bli_flags & XFS_BLI_STALE) && first_bit == -1) { xfs_buf_item_format_segment()
249 if (bip->bli_flags & XFS_BLI_STALE) { xfs_buf_item_format_segment()
255 trace_xfs_buf_item_format_stale(bip); xfs_buf_item_format_segment()
313 struct xfs_buf_log_item *bip = BUF_ITEM(lip); xfs_buf_item_format() local
314 struct xfs_buf *bp = bip->bli_buf; xfs_buf_item_format()
319 ASSERT(atomic_read(&bip->bli_refcount) > 0); xfs_buf_item_format()
320 ASSERT((bip->bli_flags & XFS_BLI_LOGGED) || xfs_buf_item_format()
321 (bip->bli_flags & XFS_BLI_STALE)); xfs_buf_item_format()
322 ASSERT((bip->bli_flags & XFS_BLI_STALE) || xfs_buf_item_format()
323 (xfs_blft_from_flags(&bip->__bli_format) > XFS_BLFT_UNKNOWN_BUF xfs_buf_item_format()
324 && xfs_blft_from_flags(&bip->__bli_format) < XFS_BLFT_MAX_BUF)); xfs_buf_item_format()
341 if (bip->bli_flags & XFS_BLI_INODE_BUF) { xfs_buf_item_format()
343 !((bip->bli_flags & XFS_BLI_INODE_ALLOC_BUF) && xfs_buf_item_format()
345 bip->__bli_format.blf_flags |= XFS_BLF_INODE_BUF; xfs_buf_item_format()
346 bip->bli_flags &= ~XFS_BLI_INODE_BUF; xfs_buf_item_format()
349 if ((bip->bli_flags & (XFS_BLI_ORDERED|XFS_BLI_STALE)) == xfs_buf_item_format()
355 trace_xfs_buf_item_format_ordered(bip); xfs_buf_item_format()
359 for (i = 0; i < bip->bli_format_count; i++) { xfs_buf_item_format()
360 xfs_buf_item_format_segment(bip, lv, &vecp, offset, xfs_buf_item_format()
361 &bip->bli_formats[i]); xfs_buf_item_format()
368 trace_xfs_buf_item_format(bip); xfs_buf_item_format()
384 struct xfs_buf_log_item *bip = BUF_ITEM(lip); xfs_buf_item_pin() local
386 ASSERT(atomic_read(&bip->bli_refcount) > 0); xfs_buf_item_pin()
387 ASSERT((bip->bli_flags & XFS_BLI_LOGGED) || xfs_buf_item_pin()
388 (bip->bli_flags & XFS_BLI_ORDERED) || xfs_buf_item_pin()
389 (bip->bli_flags & XFS_BLI_STALE)); xfs_buf_item_pin()
391 trace_xfs_buf_item_pin(bip); xfs_buf_item_pin()
393 atomic_inc(&bip->bli_refcount); xfs_buf_item_pin()
394 atomic_inc(&bip->bli_buf->b_pin_count); xfs_buf_item_pin()
415 struct xfs_buf_log_item *bip = BUF_ITEM(lip); xfs_buf_item_unpin() local
416 xfs_buf_t *bp = bip->bli_buf; xfs_buf_item_unpin()
418 int stale = bip->bli_flags & XFS_BLI_STALE; xfs_buf_item_unpin()
421 ASSERT(bp->b_fspriv == bip); xfs_buf_item_unpin()
422 ASSERT(atomic_read(&bip->bli_refcount) > 0); xfs_buf_item_unpin()
424 trace_xfs_buf_item_unpin(bip); xfs_buf_item_unpin()
426 freed = atomic_dec_and_test(&bip->bli_refcount); xfs_buf_item_unpin()
432 ASSERT(bip->bli_flags & XFS_BLI_STALE); xfs_buf_item_unpin()
435 ASSERT(bip->__bli_format.blf_flags & XFS_BLF_CANCEL); xfs_buf_item_unpin()
437 trace_xfs_buf_item_unpin_stale(bip); xfs_buf_item_unpin()
464 if (bip->bli_flags & XFS_BLI_STALE_INODE) { xfs_buf_item_unpin()
515 struct xfs_buf_log_item *bip = BUF_ITEM(lip); xfs_buf_item_push() local
516 struct xfs_buf *bp = bip->bli_buf; xfs_buf_item_push()
534 ASSERT(!(bip->bli_flags & XFS_BLI_STALE)); xfs_buf_item_push()
536 trace_xfs_buf_item_push(bip); xfs_buf_item_push()
575 struct xfs_buf_log_item *bip = BUF_ITEM(lip); xfs_buf_item_unlock() local
576 struct xfs_buf *bp = bip->bli_buf; xfs_buf_item_unlock()
596 flags = bip->bli_flags; xfs_buf_item_unlock()
597 bip->bli_flags &= ~(XFS_BLI_LOGGED | XFS_BLI_HOLD | XFS_BLI_ORDERED); xfs_buf_item_unlock()
605 trace_xfs_buf_item_unlock_stale(bip); xfs_buf_item_unlock()
606 ASSERT(bip->__bli_format.blf_flags & XFS_BLF_CANCEL); xfs_buf_item_unlock()
608 atomic_dec(&bip->bli_refcount); xfs_buf_item_unlock()
613 trace_xfs_buf_item_unlock(bip); xfs_buf_item_unlock()
628 for (i = 0; i < bip->bli_format_count; i++) { xfs_buf_item_unlock()
629 if (!xfs_bitmap_empty(bip->bli_formats[i].blf_data_map, xfs_buf_item_unlock()
630 bip->bli_formats[i].blf_map_size)) { xfs_buf_item_unlock()
645 if (atomic_dec_and_test(&bip->bli_refcount)) { xfs_buf_item_unlock()
682 struct xfs_buf_log_item *bip = BUF_ITEM(lip); xfs_buf_item_committed() local
684 trace_xfs_buf_item_committed(bip); xfs_buf_item_committed()
686 if ((bip->bli_flags & XFS_BLI_INODE_ALLOC_BUF) && lip->li_lsn != 0) xfs_buf_item_committed()
714 struct xfs_buf_log_item *bip, xfs_buf_item_get_format()
717 ASSERT(bip->bli_formats == NULL); xfs_buf_item_get_format()
718 bip->bli_format_count = count; xfs_buf_item_get_format()
721 bip->bli_formats = &bip->__bli_format; xfs_buf_item_get_format()
725 bip->bli_formats = kmem_zalloc(count * sizeof(struct xfs_buf_log_format), xfs_buf_item_get_format()
727 if (!bip->bli_formats) xfs_buf_item_get_format()
734 struct xfs_buf_log_item *bip) xfs_buf_item_free_format()
736 if (bip->bli_formats != &bip->__bli_format) { xfs_buf_item_free_format()
737 kmem_free(bip->bli_formats); xfs_buf_item_free_format()
738 bip->bli_formats = NULL; xfs_buf_item_free_format()
755 struct xfs_buf_log_item *bip; xfs_buf_item_init() local
771 bip = kmem_zone_zalloc(xfs_buf_item_zone, KM_SLEEP); xfs_buf_item_init()
772 xfs_log_item_init(mp, &bip->bli_item, XFS_LI_BUF, &xfs_buf_item_ops); xfs_buf_item_init()
773 bip->bli_buf = bp; xfs_buf_item_init()
784 error = xfs_buf_item_get_format(bip, bp->b_map_count); xfs_buf_item_init()
787 kmem_zone_free(xfs_buf_item_zone, bip); xfs_buf_item_init()
792 for (i = 0; i < bip->bli_format_count; i++) { xfs_buf_item_init()
797 bip->bli_formats[i].blf_type = XFS_LI_BUF; xfs_buf_item_init()
798 bip->bli_formats[i].blf_blkno = bp->b_maps[i].bm_bn; xfs_buf_item_init()
799 bip->bli_formats[i].blf_len = bp->b_maps[i].bm_len; xfs_buf_item_init()
800 bip->bli_formats[i].blf_map_size = map_size; xfs_buf_item_init()
808 bip->bli_item.li_bio_list = bp->b_fspriv; xfs_buf_item_init()
809 bp->b_fspriv = bip; xfs_buf_item_init()
902 xfs_buf_log_item_t *bip, xfs_buf_item_log()
909 struct xfs_buf *bp = bip->bli_buf; xfs_buf_item_log()
915 for (i = 0; i < bip->bli_format_count; i++) { xfs_buf_item_log()
929 &bip->bli_formats[i].blf_data_map[0]); xfs_buf_item_log()
942 xfs_buf_log_item_t *bip) xfs_buf_item_dirty()
944 return (bip->bli_flags & XFS_BLI_DIRTY); xfs_buf_item_dirty()
949 xfs_buf_log_item_t *bip) xfs_buf_item_free()
951 xfs_buf_item_free_format(bip); xfs_buf_item_free()
952 kmem_zone_free(xfs_buf_item_zone, bip); xfs_buf_item_free()
966 xfs_buf_log_item_t *bip = bp->b_fspriv; xfs_buf_item_relse() local
969 ASSERT(!(bip->bli_item.li_flags & XFS_LI_IN_AIL)); xfs_buf_item_relse()
971 bp->b_fspriv = bip->bli_item.li_bio_list; xfs_buf_item_relse()
976 xfs_buf_item_free(bip); xfs_buf_item_relse()
62 xfs_buf_item_size_segment( struct xfs_buf_log_item *bip, struct xfs_buf_log_format *blfp, int *nvecs, int *nbytes) xfs_buf_item_size_segment() argument
213 xfs_buf_item_format_segment( struct xfs_buf_log_item *bip, struct xfs_log_vec *lv, struct xfs_log_iovec **vecp, uint offset, struct xfs_buf_log_format *blfp) xfs_buf_item_format_segment() argument
713 xfs_buf_item_get_format( struct xfs_buf_log_item *bip, int count) xfs_buf_item_get_format() argument
733 xfs_buf_item_free_format( struct xfs_buf_log_item *bip) xfs_buf_item_free_format() argument
901 xfs_buf_item_log( xfs_buf_log_item_t *bip, uint first, uint last) xfs_buf_item_log() argument
941 xfs_buf_item_dirty( xfs_buf_log_item_t *bip) xfs_buf_item_dirty() argument
948 xfs_buf_item_free( xfs_buf_log_item_t *bip) xfs_buf_item_free() argument
H A Dxfs_trace.h463 TP_PROTO(struct xfs_buf_log_item *bip),
464 TP_ARGS(bip),
480 __entry->dev = bip->bli_buf->b_target->bt_dev;
481 __entry->bli_flags = bip->bli_flags;
482 __entry->bli_recur = bip->bli_recur;
483 __entry->bli_refcount = atomic_read(&bip->bli_refcount);
484 __entry->buf_bno = bip->bli_buf->b_bn;
485 __entry->buf_len = BBTOB(bip->bli_buf->b_length);
486 __entry->buf_flags = bip->bli_buf->b_flags;
487 __entry->buf_hold = atomic_read(&bip->bli_buf->b_hold);
488 __entry->buf_pincount = atomic_read(&bip->bli_buf->b_pin_count);
489 __entry->buf_lockval = bip->bli_buf->b_sema.count;
490 __entry->li_desc = bip->bli_item.li_desc;
491 __entry->li_flags = bip->bli_item.li_flags;
512 TP_PROTO(struct xfs_buf_log_item *bip), \
513 TP_ARGS(bip))
/linux-4.4.14/drivers/scsi/
H A Dsd_dif.c130 struct bio_integrity_payload *bip = bio_integrity(bio); sd_dif_prepare() local
136 if (bip->bip_flags & BIP_MAPPED_INTEGRITY) sd_dif_prepare()
139 virt = bip_get_seed(bip) & 0xffffffff; sd_dif_prepare()
141 bip_for_each_vec(iv, bip, iter) { bip_for_each_vec()
156 bip->bip_flags |= BIP_MAPPED_INTEGRITY;
182 struct bio_integrity_payload *bip = bio_integrity(bio); sd_dif_complete() local
186 virt = bip_get_seed(bip) & 0xffffffff; sd_dif_complete()
188 bip_for_each_vec(iv, bip, iter) { bip_for_each_vec()
/linux-4.4.14/drivers/nvdimm/
H A Dblk.c64 struct bio_integrity_payload *bip, u64 lba, nd_blk_rw_integrity()
85 bv = bvec_iter_bvec(bip->bip_vec, bip->bip_iter); nd_blk_rw_integrity()
102 bvec_iter_advance(bip->bip_vec, &bip->bip_iter, cur_len); nd_blk_rw_integrity()
110 struct bio_integrity_payload *bip, u64 lba, nd_blk_rw_integrity()
118 struct bio_integrity_payload *bip, struct page *page, nd_blk_do_bvec()
137 cur_len = bip ? min(len, blk_dev->sector_size) : len; nd_blk_do_bvec()
151 if (bip) { nd_blk_do_bvec()
152 err = nd_blk_rw_integrity(blk_dev, bip, lba, rw); nd_blk_do_bvec()
168 struct bio_integrity_payload *bip; nd_blk_make_request() local
187 bip = bio_integrity(bio); nd_blk_make_request()
195 err = nd_blk_do_bvec(blk_dev, bip, bvec.bv_page, len, bio_for_each_segment()
63 nd_blk_rw_integrity(struct nd_blk_device *blk_dev, struct bio_integrity_payload *bip, u64 lba, int rw) nd_blk_rw_integrity() argument
109 nd_blk_rw_integrity(struct nd_blk_device *blk_dev, struct bio_integrity_payload *bip, u64 lba, int rw) nd_blk_rw_integrity() argument
117 nd_blk_do_bvec(struct nd_blk_device *blk_dev, struct bio_integrity_payload *bip, struct page *page, unsigned int len, unsigned int off, int rw, sector_t sector) nd_blk_do_bvec() argument
H A Dbtt.c908 static int btt_rw_integrity(struct btt *btt, struct bio_integrity_payload *bip, btt_rw_integrity() argument
915 if (bip == NULL) btt_rw_integrity()
925 bv = bvec_iter_bvec(bip->bip_vec, bip->bip_iter); btt_rw_integrity()
947 bvec_iter_advance(bip->bip_vec, &bip->bip_iter, cur_len); btt_rw_integrity()
954 static int btt_rw_integrity(struct btt *btt, struct bio_integrity_payload *bip, btt_rw_integrity() argument
961 static int btt_read_pg(struct btt *btt, struct bio_integrity_payload *bip, btt_read_pg() argument
1025 if (bip) { btt_read_pg()
1026 ret = btt_rw_integrity(btt, bip, arena, postmap, READ); btt_read_pg()
1048 static int btt_write_pg(struct btt *btt, struct bio_integrity_payload *bip, btt_write_pg() argument
1090 if (bip) { btt_write_pg()
1091 ret = btt_rw_integrity(btt, bip, arena, new_postmap, btt_write_pg()
1136 static int btt_do_bvec(struct btt *btt, struct bio_integrity_payload *bip, btt_do_bvec() argument
1143 ret = btt_read_pg(btt, bip, page, off, sector, len); btt_do_bvec()
1147 ret = btt_write_pg(btt, bip, sector, page, off, len); btt_do_bvec()
1155 struct bio_integrity_payload *bip = bio_integrity(bio); btt_make_request() local
1185 err = btt_do_bvec(btt, bip, bvec.bv_page, len, bvec.bv_offset, bio_for_each_segment()
/linux-4.4.14/fs/xfs/libxfs/
H A Dxfs_symlink_remote.c151 struct xfs_buf_log_item *bip = bp->b_fspriv; xfs_symlink_write_verify() local
163 if (bip) { xfs_symlink_write_verify()
165 dsl->sl_lsn = cpu_to_be64(bip->bli_item.li_lsn); xfs_symlink_write_verify()
H A Dxfs_dir2_block.c107 struct xfs_buf_log_item *bip = bp->b_fspriv; xfs_dir3_block_write_verify() local
119 if (bip) xfs_dir3_block_write_verify()
120 hdr3->lsn = cpu_to_be64(bip->bli_item.li_lsn); xfs_dir3_block_write_verify()
H A Dxfs_dir2_data.c289 struct xfs_buf_log_item *bip = bp->b_fspriv; xfs_dir3_data_write_verify() local
301 if (bip) xfs_dir3_data_write_verify()
302 hdr3->lsn = cpu_to_be64(bip->bli_item.li_lsn); xfs_dir3_data_write_verify()
H A Dxfs_sb.c662 struct xfs_buf_log_item *bip = bp->b_fspriv; xfs_sb_write_verify() local
675 if (bip) xfs_sb_write_verify()
676 XFS_BUF_TO_SBP(bp)->sb_lsn = cpu_to_be64(bip->bli_item.li_lsn); xfs_sb_write_verify()
H A Dxfs_alloc.c519 struct xfs_buf_log_item *bip = bp->b_fspriv; xfs_agfl_write_verify() local
531 if (bip) xfs_agfl_write_verify()
532 XFS_BUF_TO_AGFL(bp)->agfl_lsn = cpu_to_be64(bip->bli_item.li_lsn); xfs_agfl_write_verify()
2325 struct xfs_buf_log_item *bip = bp->b_fspriv; xfs_agf_write_verify() local
2336 if (bip) xfs_agf_write_verify()
2337 XFS_BUF_TO_AGF(bp)->agf_lsn = cpu_to_be64(bip->bli_item.li_lsn); xfs_agf_write_verify()
H A Dxfs_dir2_leaf.c201 struct xfs_buf_log_item *bip = bp->b_fspriv; __write_verify() local
213 if (bip) __write_verify()
214 hdr3->info.lsn = cpu_to_be64(bip->bli_item.li_lsn); __write_verify()
H A Dxfs_btree.c234 struct xfs_buf_log_item *bip = bp->b_fspriv; xfs_btree_lblock_calc_crc() local
238 if (bip) xfs_btree_lblock_calc_crc()
239 block->bb_u.l.bb_lsn = cpu_to_be64(bip->bli_item.li_lsn); xfs_btree_lblock_calc_crc()
272 struct xfs_buf_log_item *bip = bp->b_fspriv; xfs_btree_sblock_calc_crc() local
276 if (bip) xfs_btree_sblock_calc_crc()
277 block->bb_u.s.bb_lsn = cpu_to_be64(bip->bli_item.li_lsn); xfs_btree_sblock_calc_crc()
H A Dxfs_attr_leaf.c290 struct xfs_buf_log_item *bip = bp->b_fspriv; xfs_attr3_leaf_write_verify() local
302 if (bip) xfs_attr3_leaf_write_verify()
303 hdr3->info.lsn = cpu_to_be64(bip->bli_item.li_lsn); xfs_attr3_leaf_write_verify()
H A Dxfs_da_btree.c185 struct xfs_buf_log_item *bip = bp->b_fspriv; xfs_da3_node_write_verify() local
197 if (bip) xfs_da3_node_write_verify()
198 hdr3->info.lsn = cpu_to_be64(bip->bli_item.li_lsn); xfs_da3_node_write_verify()
H A Dxfs_dir2_node.c134 struct xfs_buf_log_item *bip = bp->b_fspriv; xfs_dir3_free_write_verify() local
146 if (bip) xfs_dir3_free_write_verify()
147 hdr3->lsn = cpu_to_be64(bip->bli_item.li_lsn); xfs_dir3_free_write_verify()
H A Dxfs_ialloc.c2558 struct xfs_buf_log_item *bip = bp->b_fspriv; xfs_agi_write_verify() local
2569 if (bip) xfs_agi_write_verify()
2570 XFS_BUF_TO_AGI(bp)->agi_lsn = cpu_to_be64(bip->bli_item.li_lsn); xfs_agi_write_verify()
H A Dxfs_bmap.c268 struct xfs_buf_log_item *bip; xfs_bmap_get_bp() local
269 bip = (struct xfs_buf_log_item *)lidp->lid_item; xfs_bmap_get_bp()
270 if (bip->bli_item.li_type == XFS_LI_BUF && xfs_bmap_get_bp()
271 XFS_BUF_ADDR(bip->bli_buf) == bno) xfs_bmap_get_bp()
272 return bip->bli_buf; xfs_bmap_get_bp()
/linux-4.4.14/include/linux/
H A Dbio.h373 unsigned short bip_slab; /* slab the bip came from */
386 struct bio_integrity_payload *bip = bio_integrity(bio); bio_integrity_flagged() local
388 if (bip) bio_integrity_flagged()
389 return bip->bip_flags & flag; bio_integrity_flagged()
394 static inline sector_t bip_get_seed(struct bio_integrity_payload *bip) bip_get_seed() argument
396 return bip->bip_iter.bi_sector; bip_get_seed()
399 static inline void bip_set_seed(struct bio_integrity_payload *bip, bip_set_seed() argument
402 bip->bip_iter.bi_sector = seed; bip_set_seed()
750 #define bip_for_each_vec(bvl, bip, iter) \
751 for_each_bvec(bvl, (bip)->bip_vec, iter, (bip)->bip_iter)
H A Dblkdev.h1539 struct bio_integrity_payload *bip = bio_integrity(req->bio); integrity_req_gap_back_merge() local
1542 return bvec_gap_to_prev(req->q, &bip->bip_vec[bip->bip_vcnt - 1], integrity_req_gap_back_merge()
1549 struct bio_integrity_payload *bip = bio_integrity(bio); integrity_req_gap_front_merge() local
1552 return bvec_gap_to_prev(req->q, &bip->bip_vec[bip->bip_vcnt - 1], integrity_req_gap_front_merge()
/linux-4.4.14/drivers/target/
H A Dtarget_core_iblock.c594 struct bio_integrity_payload *bip; iblock_alloc_bip() local
605 bip = bio_integrity_alloc(bio, GFP_NOIO, cmd->t_prot_nents); iblock_alloc_bip()
606 if (!bip) { iblock_alloc_bip()
611 bip->bip_iter.bi_size = (cmd->data_length / dev->dev_attrib.block_size) * iblock_alloc_bip()
613 bip->bip_iter.bi_sector = bio->bi_iter.bi_sector; iblock_alloc_bip()
615 pr_debug("IBLOCK BIP Size: %u Sector: %llu\n", bip->bip_iter.bi_size, iblock_alloc_bip()
616 (unsigned long long)bip->bip_iter.bi_sector); iblock_alloc_bip()
/linux-4.4.14/drivers/net/wireless/ti/wlcore/
H A Dtestmode.c111 /* If we got bip calibration answer print radio status */ wl1271_tm_cmd_test()
/linux-4.4.14/drivers/nvme/host/
H A Dpci.c512 * nvme_dif_remap - remaps ref tags to bip seed and physical lba
525 struct bio_integrity_payload *bip; nvme_dif_remap() local
533 bip = bio_integrity(req->bio); nvme_dif_remap()
534 if (!bip) nvme_dif_remap()
537 pmap = kmap_atomic(bip->bip_vec->bv_page) + bip->bip_vec->bv_offset; nvme_dif_remap()
540 virt = bip_get_seed(bip); nvme_dif_remap()
/linux-4.4.14/drivers/md/
H A Draid5.c2954 struct bio **bip; add_stripe_bio() local
2975 bip = &sh->dev[dd_idx].towrite; add_stripe_bio()
2976 if (*bip == NULL) add_stripe_bio()
2979 bip = &sh->dev[dd_idx].toread; add_stripe_bio()
2980 while (*bip && (*bip)->bi_iter.bi_sector < bi->bi_iter.bi_sector) { add_stripe_bio()
2981 if (bio_end_sector(*bip) > bi->bi_iter.bi_sector) add_stripe_bio()
2983 bip = & (*bip)->bi_next; add_stripe_bio()
2985 if (*bip && (*bip)->bi_iter.bi_sector < bio_end_sector(bi)) add_stripe_bio()
2991 BUG_ON(*bip && bi->bi_next && (*bip) != bi->bi_next); add_stripe_bio()
2992 if (*bip) add_stripe_bio()
2993 bi->bi_next = *bip; add_stripe_bio()
2994 *bip = bi; add_stripe_bio()
3013 (unsigned long long)(*bip)->bi_iter.bi_sector, add_stripe_bio()
/linux-4.4.14/drivers/staging/comedi/drivers/
H A Damplc_pci230.c792 /* Specify uni/bip, se/diff, conversion source, and reset FIFO. */ pci230_ai_insn_read()
1842 * Keep se/diff and bip/uni settings. pci230_ai_stop()
2109 * - Enable and reset FIFO, specify uni/bip, se/diff, and set pci230_ai_cmd()
2191 * uni/bip, se/diff, and temporarily set the start conversion source pci230_ai_cmd()
H A Dcb_pcidas64.c501 0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, /* bip 10, 5, 2, 1, 0.5, 0.2, 0.1 */

Completed in 905 milliseconds