| /linux/fs/xfs/ |
| H A D | xfs_buf_item.c | 37 struct xfs_buf_log_item *bip, in xfs_buf_item_get_format() argument 40 ASSERT(bip->bli_formats == NULL); in xfs_buf_item_get_format() 41 bip->bli_format_count = count; in xfs_buf_item_get_format() 44 bip->bli_formats = &bip->__bli_format; in xfs_buf_item_get_format() 48 bip->bli_formats = kzalloc(count * sizeof(struct xfs_buf_log_format), in xfs_buf_item_get_format() 54 struct xfs_buf_log_item *bip) in xfs_buf_item_free_format() argument 56 if (bip->bli_formats != &bip->__bli_format) { in xfs_buf_item_free_format() 57 kfree(bip->bli_formats); in xfs_buf_item_free_format() 58 bip->bli_formats = NULL; in xfs_buf_item_free_format() 64 struct xfs_buf_log_item *bip) in xfs_buf_item_free() argument [all …]
|
| H A D | xfs_buf_item.h | 52 void xfs_buf_item_put(struct xfs_buf_log_item *bip);
|
| H A D | xfs_buf_item_recover.c | 449 struct xfs_buf_log_item *bip; in xlog_recover_validate_buf_type() local 452 bip = bp->b_log_item; in xlog_recover_validate_buf_type() 453 bip->bli_item.li_lsn = current_lsn; in xlog_recover_validate_buf_type()
|
| H A D | xfs_trace.h | 884 TP_PROTO(struct xfs_buf_log_item *bip), 885 TP_ARGS(bip), 900 __entry->dev = bip->bli_buf->b_target->bt_dev; 901 __entry->bli_flags = bip->bli_flags; 902 __entry->bli_recur = bip->bli_recur; 903 __entry->bli_refcount = atomic_read(&bip->bli_refcount); 904 __entry->buf_bno = xfs_buf_daddr(bip->bli_buf); 905 __entry->buf_len = bip->bli_buf->b_length; 906 __entry->buf_flags = bip->bli_buf->b_flags; 907 __entry->buf_hold = bip->bli_buf->b_lockref.count; [all …]
|
| /linux/block/ |
| H A D | bio-integrity.c | 14 struct bio_integrity_payload bip; member 71 struct bio_integrity_payload *bip = bio_integrity(bio); in bio_integrity_alloc_buf() local 82 bvec_set_page(&bip->bip_vec[0], page, len, 0); in bio_integrity_alloc_buf() 83 bip->bip_flags |= BIP_MEMPOOL; in bio_integrity_alloc_buf() 85 bvec_set_page(&bip->bip_vec[0], virt_to_page(buf), len, in bio_integrity_alloc_buf() 89 bip->bip_vcnt = 1; in bio_integrity_alloc_buf() 90 bip->bip_iter.bi_size = len; in bio_integrity_alloc_buf() 93 void bio_integrity_free_buf(struct bio_integrity_payload *bip) in bio_integrity_free_buf() argument 95 struct bio_vec *bv = &bip->bip_vec[0]; in bio_integrity_free_buf() 97 if (bip->bip_flags & BIP_MEMPOOL) in bio_integrity_free_buf() [all …]
|
| H A D | bio-integrity-fs.c | 10 struct bio_integrity_payload bip; member 27 bio_integrity_init(bio, &iib->bip, &iib->bvec, 1); in fs_bio_integrity_alloc() 37 struct bio_integrity_payload *bip = bio_integrity(bio); in fs_bio_integrity_free() local 39 bio_integrity_free_buf(bip); in fs_bio_integrity_free() 40 mempool_free(container_of(bip, struct fs_bio_integrity_buf, bip), in fs_bio_integrity_free() 58 struct bio_integrity_payload *bip = bio_integrity(bio); in fs_bio_integrity_verify() local 64 if (!bip || !(bip->bip_flags & BIP_CHECK_FLAGS)) in fs_bio_integrity_verify() 73 memset(&bip->bip_iter, 0, sizeof(bip->bip_iter)); in fs_bio_integrity_verify() 74 bip->bip_iter.bi_sector = sector; in fs_bio_integrity_verify() 75 bip->bip_iter.bi_size = bio_integrity_bytes(bi, size >> SECTOR_SHIFT); in fs_bio_integrity_verify()
|
| H A D | bio-integrity-auto.c | 20 struct bio_integrity_payload bip; member 32 bio_integrity_free_buf(&bid->bip); in bio_integrity_finish() 58 struct bio_integrity_payload *bip = bio_integrity(bio); in __bio_integrity_endio() local 60 container_of(bip, struct bio_integrity_data, bip); in __bio_integrity_endio() 63 (bip->bip_flags & BIP_CHECK_FLAGS)) { in __bio_integrity_endio() 88 bio_integrity_init(bio, &bid->bip, &bid->bvec, 1); in bio_integrity_prep() 90 bid->bip.bip_flags |= BIP_BLOCK_INTEGRITY; in bio_integrity_prep() 96 if (bio_data_dir(bio) == WRITE && (bid->bip.bip_flags & BIP_CHECK_FLAGS)) in bio_integrity_prep()
|
| H A D | blk-integrity.c | 143 struct bio_integrity_payload *bip, *bip_next; in blk_integrity_merge_rq() local 151 bip = bio_integrity(req->bio); in blk_integrity_merge_rq() 153 if (bip->bip_flags != bip_next->bip_flags) in blk_integrity_merge_rq() 156 if (bip->bip_flags & BIP_CHECK_APPTAG && in blk_integrity_merge_rq() 157 bip->app_tag != bip_next->app_tag) in blk_integrity_merge_rq() 173 struct bio_integrity_payload *bip, *bip_bio = bio_integrity(bio); in blk_integrity_merge_bio() local 182 bip = bio_integrity(req->bio); in blk_integrity_merge_bio() 183 if (bip->bip_flags != bip_bio->bip_flags) in blk_integrity_merge_bio() 186 if (bip->bip_flags & BIP_CHECK_APPTAG && in blk_integrity_merge_bio() 187 bip->app_tag != bip_bio->app_tag) in blk_integrity_merge_bio()
|
| H A D | blk.h | 263 struct bio_integrity_payload *bip = bio_integrity(bio); in bio_integrity_endio() local 265 if (bip && (bip->bip_flags & BIP_BLOCK_INTEGRITY)) in bio_integrity_endio() 278 struct bio_integrity_payload *bip = bio_integrity(req->bio); in integrity_req_gap_back_merge() local 282 &bip->bip_vec[bip->bip_vcnt - 1], in integrity_req_gap_back_merge() 289 struct bio_integrity_payload *bip = bio_integrity(bio); in integrity_req_gap_front_merge() local 293 &bip->bip_vec[bip->bip_vcnt - 1], in integrity_req_gap_front_merge()
|
| /linux/include/linux/ |
| H A D | bio-integrity.h | 39 #define bip_for_each_vec(bvl, bip, iter) \ argument 40 for_each_bvec(bvl, (bip)->bip_vec, iter, (bip)->bip_iter) 56 struct bio_integrity_payload *bip = bio_integrity(bio); in bio_integrity_flagged() local 58 if (bip) in bio_integrity_flagged() 59 return bip->bip_flags & flag; in bio_integrity_flagged() 64 static inline sector_t bip_get_seed(struct bio_integrity_payload *bip) in bip_get_seed() argument 66 return bip->bip_iter.bi_sector; in bip_get_seed() 69 static inline void bip_set_seed(struct bio_integrity_payload *bip, in bip_set_seed() argument 72 bip->bip_iter.bi_sector = seed; in bip_set_seed() 75 void bio_integrity_init(struct bio *bio, struct bio_integrity_payload *bip, [all …]
|
| /linux/Documentation/translations/zh_CN/block/ |
| H A D | data-integrity.rst | 102 一个新字段。调用 bio_integrity(bio) 会返回一个指向 struct bip 的指针,该 103 结构体包含了该 bio 的完整性负载。本质上,bip 是一个精简版的 struct bio,其 108 性保护。该函数会分配并附加一个 bip 到该 bio 上。 112 调用 bio_free() 会自动释放bip。 167 `struct bip * bio_integrity_alloc(bio, gfp_mask, nr_pages);` 177 将包含完整性元数据的一页附加到已有的 bio 上。该 bio 必须已有 bip, 181 中可能会被修改!完整性元数据中的第一个引用标签必须等于 bip->bip_sector。 183 只要 bip bio_vec array(nr_pages)有空间,就可以继续通过
|
| /linux/drivers/md/ |
| H A D | dm-io-rewind.c | 58 struct bio_integrity_payload *bip = bio_integrity(bio); in dm_bio_integrity_rewind() local 62 bip->bip_iter.bi_sector -= bio_integrity_intervals(bi, bytes_done >> 9); in dm_bio_integrity_rewind() 63 dm_bvec_iter_rewind(bip->bip_vec, &bip->bip_iter, bytes); in dm_bio_integrity_rewind()
|
| H A D | dm-integrity.c | 2058 struct bio_integrity_payload *bip = dio->bio_details.bi_integrity; in integrity_metadata() local 2060 if (bip) { in integrity_metadata() 2068 bip_for_each_vec(biv, bip, iter) { in integrity_metadata() 2126 struct bio_integrity_payload *bip; in dm_integrity_map() local 2175 bip = bio_integrity(bio); in dm_integrity_map() 2177 if (bip) { in dm_integrity_map() 2184 if (unlikely(wanted_tag_size != bip->bip_iter.bi_size)) { in dm_integrity_map() 2186 bip->bip_iter.bi_size, wanted_tag_size); in dm_integrity_map() 2191 if (unlikely(bip != NULL)) { in dm_integrity_map() 2259 struct bio_integrity_payload *bip = bio_integrity(bio); in __journal_read_write() local [all …]
|
| H A D | raid5.c | 3450 struct bio **bip; in stripe_bio_overlaps() local 3460 bip = &sh->dev[dd_idx].towrite; in stripe_bio_overlaps() 3462 bip = &sh->dev[dd_idx].toread; in stripe_bio_overlaps() 3464 while (*bip && (*bip)->bi_iter.bi_sector < bi->bi_iter.bi_sector) { in stripe_bio_overlaps() 3465 if (bio_end_sector(*bip) > bi->bi_iter.bi_sector) in stripe_bio_overlaps() 3467 bip = &(*bip)->bi_next; in stripe_bio_overlaps() 3470 if (*bip && (*bip)->bi_iter.bi_sector < bio_end_sector(bi)) in stripe_bio_overlaps() 3510 struct bio **bip; in __add_stripe_bio() local 3514 bip = &sh->dev[dd_idx].towrite; in __add_stripe_bio() 3515 if (!*bip) in __add_stripe_bio() [all …]
|
| /linux/drivers/nvdimm/ |
| H A D | btt.c | 1146 static int btt_rw_integrity(struct btt *btt, struct bio_integrity_payload *bip, in btt_rw_integrity() argument 1153 if (bip == NULL) in btt_rw_integrity() 1163 bv = bvec_iter_bvec(bip->bip_vec, bip->bip_iter); in btt_rw_integrity() 1185 if (!bvec_iter_advance(bip->bip_vec, &bip->bip_iter, cur_len)) in btt_rw_integrity() 1193 static int btt_rw_integrity(struct btt *btt, struct bio_integrity_payload *bip, in btt_rw_integrity() argument 1200 static int btt_read_pg(struct btt *btt, struct bio_integrity_payload *bip, in btt_read_pg() argument 1275 if (bip) { in btt_read_pg() 1276 ret = btt_rw_integrity(btt, bip, arena, postmap, READ); in btt_read_pg() 1313 static int btt_write_pg(struct btt *btt, struct bio_integrity_payload *bip, in btt_write_pg() argument 1372 if (bip) { in btt_write_pg() [all …]
|
| /linux/drivers/target/ |
| H A D | target_core_iblock.c | 693 struct bio_integrity_payload *bip; in iblock_alloc_bip() local 704 bip = bio_integrity_alloc(bio, GFP_NOIO, bio_max_segs(cmd->t_prot_nents)); in iblock_alloc_bip() 705 if (IS_ERR(bip)) { in iblock_alloc_bip() 707 return PTR_ERR(bip); in iblock_alloc_bip() 711 bip_set_seed(bip, bio->bi_iter.bi_sector >> in iblock_alloc_bip() 714 pr_debug("IBLOCK BIP Size: %u Sector: %llu\n", bip->bip_iter.bi_size, in iblock_alloc_bip() 715 (unsigned long long)bip->bip_iter.bi_sector); in iblock_alloc_bip()
|
| /linux/fs/xfs/libxfs/ |
| H A D | xfs_dir2_data.c | 383 struct xfs_buf_log_item *bip = bp->b_log_item; in xfs_dir3_data_write_verify() local 397 if (bip) in xfs_dir3_data_write_verify() 398 hdr3->lsn = cpu_to_be64(bip->bli_item.li_lsn); in xfs_dir3_data_write_verify()
|
| H A D | xfs_sb.c | 1160 struct xfs_buf_log_item *bip = bp->b_log_item; in xfs_sb_write_verify() local 1179 if (bip) in xfs_sb_write_verify() 1180 dsb->sb_lsn = cpu_to_be64(bip->bli_item.li_lsn); in xfs_sb_write_verify()
|
| /linux/Documentation/filesystems/xfs/ |
| H A D | xfs-self-describing-metadata.rst | 305 struct xfs_buf_log_item *bip = bp->b_fspriv; 317 if (bip) { 319 hdr->lsn = cpu_to_be64(bip->bli_item.li_lsn);
|
| /linux/drivers/net/wireless/mediatek/mt76/ |
| H A D | mt792x.h | 119 struct mt76_connac_sta_key_conf bip; member
|
| /linux/drivers/net/wireless/mediatek/mt76/mt7915/ |
| H A D | mt7915.h | 150 struct mt76_connac_sta_key_conf bip; member
|
| H A D | main.c | 431 err = mt76_connac_mcu_add_key(&dev->mt76, vif, &msta->bip, in mt7915_set_key()
|
| /linux/drivers/net/wireless/mediatek/mt76/mt7921/ |
| H A D | main.c | 563 err = mt76_connac_mcu_add_key(&dev->mt76, vif, &msta->deflink.bip, in mt7921_set_key() 572 &mvif->wep_sta->deflink.bip, in mt7921_set_key()
|
| /linux/drivers/net/wireless/mediatek/mt76/mt7996/ |
| H A D | mt7996.h | 256 struct mt76_connac_sta_key_conf bip; member
|
| /linux/drivers/net/wireless/mediatek/mt76/mt7925/ |
| H A D | main.c | 713 err = mt7925_mcu_add_key(&dev->mt76, vif, &mlink->bip, in mt7925_set_link_key() 722 err = mt7925_mcu_add_key(&dev->mt76, vif, &mvif->wep_sta->deflink.bip, in mt7925_set_link_key()
|