Lines Matching defs:dbi
188 uint32_t *dbi;
494 #define tcmu_cmd_set_dbi(cmd, index) ((cmd)->dbi[(cmd)->dbi_cur++] = (index))
495 #define tcmu_cmd_get_dbi(cmd) ((cmd)->dbi[(cmd)->dbi_cur++])
503 clear_bit(tcmu_cmd->dbi[i], udev->data_bitmap);
512 int i, cnt, dbi, dpi;
515 dbi = find_first_zero_bit(udev->data_bitmap, udev->dbi_thresh);
516 if (dbi == udev->dbi_thresh)
519 dpi = dbi * udev->data_pages_per_blk;
542 if (i && dbi > udev->dbi_max)
543 udev->dbi_max = dbi;
545 set_bit(dbi, udev->data_bitmap);
546 tcmu_cmd_set_dbi(tcmu_cmd, dbi);
548 if (dbi != prev_dbi + 1)
551 return i == page_cnt ? dbi : -1;
557 /* start value of dbi + 1 must not be a valid dbi */
558 int dbi = -2;
564 dbi = tcmu_get_empty_block(udev, tcmu_cmd, dbi, blk_data_len,
566 if (dbi < 0)
574 kfree(tcmu_cmd->dbi);
599 /* Get the next dbi */
600 int dbi = tcmu_cmd_get_dbi(cmd);
609 if (dbi != prev_dbi + 1) {
610 /* dbi is not next to previous dbi, so start new iov */
615 (udev->data_off + dbi * udev->data_blk_size);
619 return dbi;
625 /* start value of dbi + 1 must not be a valid dbi */
626 int dbi = -2;
630 dbi = new_block_to_iov(udev, cmd, iov, dbi, data_length);
648 tcmu_cmd->dbi = kcalloc(tcmu_cmd->dbi_cnt, sizeof(uint32_t),
650 if (!tcmu_cmd->dbi) {
707 /* start value of dbi + 1 must not be a valid dbi */
708 int dbi = -2;
724 dbi = new_block_to_iov(udev, tcmu_cmd, iov, dbi,
727 dbi = tcmu_cmd_get_dbi(tcmu_cmd);
733 dpi = dbi * udev->data_pages_per_blk;