Lines Matching refs:STps
664 struct st_partstat *STps; in write_behind_check() local
688 STps = &(STp->ps[STp->partition]); in write_behind_check()
689 if (STps->drv_block >= 0) { in write_behind_check()
691 STps->drv_block++; in write_behind_check()
693 STps->drv_block += STbuffer->writing / STp->block_size; in write_behind_check()
709 STps->drv_block = -1; in write_behind_check()
766 struct st_partstat *STps; in st_flush_write_buffer() local
792 STps = &(STp->ps[STp->partition]); in st_flush_write_buffer()
804 if (STps->drv_block >= 0) in st_flush_write_buffer()
805 STps->drv_block += blks; in st_flush_write_buffer()
809 STps->drv_block = (-1); in st_flush_write_buffer()
813 if (STps->drv_block >= 0) in st_flush_write_buffer()
814 STps->drv_block += blks; in st_flush_write_buffer()
830 struct st_partstat *STps; in flush_buffer() local
841 STps = &(STp->ps[STp->partition]); in flush_buffer()
842 if (STps->rw == ST_WRITING) /* Writing */ in flush_buffer()
856 if (STps->eof == ST_FM_HIT) { in flush_buffer()
859 STps->eof = ST_NOEOF; in flush_buffer()
861 if (STps->drv_file >= 0) in flush_buffer()
862 STps->drv_file++; in flush_buffer()
863 STps->drv_block = 0; in flush_buffer()
868 } else if (STps->eof == ST_FM_HIT) { in flush_buffer()
869 if (STps->drv_file >= 0) in flush_buffer()
870 STps->drv_file++; in flush_buffer()
871 STps->drv_block = 0; in flush_buffer()
872 STps->eof = ST_NOEOF; in flush_buffer()
933 struct st_partstat *STps; in reset_state() local
937 STps = &(STp->ps[i]); in reset_state()
938 STps->rw = ST_IDLE; in reset_state()
939 STps->eof = ST_NOEOF; in reset_state()
940 STps->at_sm = 0; in reset_state()
941 STps->last_block_valid = 0; in reset_state()
942 STps->drv_block = -1; in reset_state()
943 STps->drv_file = -1; in reset_state()
1043 struct st_partstat *STps; in check_tape() local
1073 STps = &(STp->ps[i]); in check_tape()
1074 STps->rw = ST_IDLE; in check_tape()
1075 STps->eof = ST_NOEOF; in check_tape()
1076 STps->at_sm = 0; in check_tape()
1077 STps->last_block_valid = 0; in check_tape()
1078 STps->drv_block = 0; in check_tape()
1079 STps->drv_file = 0; in check_tape()
1248 struct st_partstat *STps; in st_open() local
1302 STps = &(STp->ps[i]); in st_open()
1303 STps->rw = ST_IDLE; in st_open()
1344 struct st_partstat *STps = &(STp->ps[STp->partition]); in st_flush() local
1349 if (STps->rw == ST_WRITING && !STp->pos_unknown) { in st_flush()
1369 if (STps->rw == ST_WRITING && !STp->pos_unknown) { in st_flush()
1399 if (STps->drv_file >= 0) in st_flush()
1400 STps->drv_file++; in st_flush()
1401 STps->drv_block = 0; in st_flush()
1404 STps->eof = ST_FM; in st_flush()
1417 STps = &(STp->ps[STp->partition]); in st_flush()
1418 if (!STm->sysv || STps->rw != ST_READING) { in st_flush()
1421 else if (STps->eof == ST_FM_HIT) { in st_flush()
1424 if (STps->drv_file >= 0) in st_flush()
1425 STps->drv_file++; in st_flush()
1426 STps->drv_block = 0; in st_flush()
1427 STps->eof = ST_FM; in st_flush()
1429 STps->eof = ST_NOEOF; in st_flush()
1431 } else if ((STps->eof == ST_NOEOF && in st_flush()
1433 STps->eof == ST_FM_HIT) { in st_flush()
1434 if (STps->drv_file >= 0) in st_flush()
1435 STps->drv_file++; in st_flush()
1436 STps->drv_block = 0; in st_flush()
1437 STps->eof = ST_FM; in st_flush()
1628 struct st_partstat *STps; in st_write() local
1647 STps = &(STp->ps[STp->partition]); in st_write()
1655 if (STps->rw == ST_READING) { in st_write()
1659 STps->rw = ST_WRITING; in st_write()
1660 } else if (STps->rw != ST_WRITING && in st_write()
1661 STps->drv_file == 0 && STps->drv_block == 0) { in st_write()
1681 STps->eof = ST_EOM_OK; in st_write()
1683 STps->eof = ST_EOM_ERROR; in st_write()
1686 if (STps->eof == ST_EOM_OK) { in st_write()
1687 STps->eof = ST_EOD_1; /* allow next write */ in st_write()
1691 else if (STps->eof == ST_EOM_ERROR) { in st_write()
1716 STps->rw = ST_WRITING; in st_write()
1744 STm->do_async_writes && STps->eof < ST_EOM_OK; in st_write()
1747 !(STp->try_dio_now && try_wdio) && STps->eof < ST_EOM_OK && in st_write()
1808 STps->eof = ST_EOM_OK; in st_write()
1826 if (STps->drv_block >= 0) { in st_write()
1827 STps->drv_block += (transfer - undone) / in st_write()
1830 STps->eof = ST_EOM_OK; in st_write()
1842 STps->eof = ST_EOM_ERROR; in st_write()
1843 STps->drv_block = (-1); /* Too cautious? */ in st_write()
1851 STps->drv_block = (-1); /* Too cautious? */ in st_write()
1857 if (STps->drv_block >= 0) { in st_write()
1859 STps->drv_block += (do_count > 0); in st_write()
1861 STps->drv_block += blks; in st_write()
1874 if (STps->eof == ST_EOD_1) in st_write()
1875 STps->eof = ST_EOM_OK; in st_write()
1876 else if (STps->eof != ST_EOM_OK) in st_write()
1877 STps->eof = ST_NOEOF; in st_write()
1902 struct st_partstat *STps; in read_tape() local
1910 STps = &(STp->ps[STp->partition]); in read_tape()
1911 if (STps->eof == ST_FM_HIT) in read_tape()
1949 STps->at_sm = 0; in read_tape()
1989 if (STps->drv_block >= 0) in read_tape()
1990 STps->drv_block += 1; in read_tape()
2002 if (STps->drv_block >= 0) in read_tape()
2003 STps->drv_block += blks - transfer + 1; in read_tape()
2015 if (STps->drv_block >= 0) in read_tape()
2016 STps->drv_block += 1; in read_tape()
2021 if (STps->eof != ST_FM_HIT) in read_tape()
2022 STps->eof = ST_FM_HIT; in read_tape()
2024 STps->eof = ST_EOD_2; in read_tape()
2034 if (STps->eof == ST_FM) in read_tape()
2035 STps->eof = ST_EOD_1; in read_tape()
2037 STps->eof = ST_EOM_OK; in read_tape()
2052 STps->drv_block = (-1); in read_tape()
2053 if (STps->eof == ST_FM && in read_tape()
2058 STps->eof = ST_EOD_2; /* First BLANK_CHECK after FM */ in read_tape()
2079 if (STps->drv_block >= 0) { in read_tape()
2081 STps->drv_block++; in read_tape()
2083 STps->drv_block += STbp->buffer_bytes / STp->block_size; in read_tape()
2100 struct st_partstat *STps; in st_read() local
2119 STps = &(STp->ps[STp->partition]); in st_read()
2120 if (STps->rw == ST_WRITING) { in st_read()
2124 STps->rw = ST_READING; in st_read()
2127 if (debugging && STps->eof != ST_NOEOF) in st_read()
2130 STps->eof, STbp->buffer_bytes); in st_read()
2139 STps->eof >= ST_EOD_1) { in st_read()
2140 if (STps->eof < ST_EOD) { in st_read()
2141 STps->eof += 1; in st_read()
2161 STps->rw = ST_READING; in st_read()
2179 if (debugging && STps->eof != ST_NOEOF) in st_read()
2182 STps->eof, STbp->buffer_bytes, in st_read()
2206 if (STps->eof == ST_FM_HIT) { in st_read()
2207 STps->eof = ST_FM; in st_read()
2208 STps->drv_block = 0; in st_read()
2209 if (STps->drv_file >= 0) in st_read()
2210 STps->drv_file++; in st_read()
2211 } else if (STps->eof == ST_EOD_1) { in st_read()
2212 STps->eof = ST_EOD_2; in st_read()
2213 STps->drv_block = 0; in st_read()
2214 if (STps->drv_file >= 0) in st_read()
2215 STps->drv_file++; in st_read()
2216 } else if (STps->eof == ST_EOD_2) in st_read()
2217 STps->eof = ST_EOD; in st_read()
2218 } else if (STps->eof == ST_FM) in st_read()
2219 STps->eof = ST_NOEOF; in st_read()
2601 struct st_partstat *STps; in do_load_unload() local
2661 STps = &(STp->ps[STp->partition]); in do_load_unload()
2662 STps->drv_file = STps->drv_block = (-1); in do_load_unload()
2700 struct st_partstat *STps; in st_int_ioctl() local
2712 STps = &(STp->ps[STp->partition]); in st_int_ioctl()
2713 fileno = STps->drv_file; in st_int_ioctl()
2714 blkno = STps->drv_block; in st_int_ioctl()
2715 at_sm = STps->at_sm; in st_int_ioctl()
2858 fileno = STps->drv_file; in st_int_ioctl()
2859 if (STps->eof >= ST_EOD_1) in st_int_ioctl()
2964 STps->drv_block = blkno; in st_int_ioctl()
2965 STps->drv_file = fileno; in st_int_ioctl()
2966 STps->at_sm = at_sm; in st_int_ioctl()
2988 STps->eof = ST_EOD; in st_int_ioctl()
2990 STps->eof = ST_FM; in st_int_ioctl()
2992 STps->eof = ST_NOEOF; in st_int_ioctl()
2995 STps->rw = ST_IDLE; /* prevent automatic WEOF at close */ in st_int_ioctl()
3003 STps->eof = ST_EOM_OK; in st_int_ioctl()
3004 STps->drv_block = 0; in st_int_ioctl()
3018 STps->eof = ST_NOEOF; in st_int_ioctl()
3023 STps->eof = ST_NOEOF; in st_int_ioctl()
3025 STps->drv_file = fileno; in st_int_ioctl()
3028 STps->drv_file = fileno - undone; in st_int_ioctl()
3030 STps->drv_file = fileno; in st_int_ioctl()
3031 STps->drv_block = -1; in st_int_ioctl()
3032 STps->eof = ST_NOEOF; in st_int_ioctl()
3036 if (STps->drv_file >= 0) in st_int_ioctl()
3037 STps->drv_file = fileno + undone; in st_int_ioctl()
3038 STps->drv_block = 0; in st_int_ioctl()
3039 STps->eof = ST_NOEOF; in st_int_ioctl()
3042 if (STps->drv_file >= 0) in st_int_ioctl()
3043 STps->drv_file++; in st_int_ioctl()
3044 STps->drv_block = 0; in st_int_ioctl()
3045 STps->eof = ST_FM; in st_int_ioctl()
3048 STps->drv_block = blkno - undone; in st_int_ioctl()
3050 STps->drv_block = (-1); in st_int_ioctl()
3051 STps->eof = ST_NOEOF; in st_int_ioctl()
3055 STps->drv_file--; in st_int_ioctl()
3056 STps->drv_block = (-1); in st_int_ioctl()
3060 if (STps->drv_block >= 0) in st_int_ioctl()
3061 STps->drv_block = blkno + undone; in st_int_ioctl()
3063 STps->eof = ST_NOEOF; in st_int_ioctl()
3065 STps->drv_file = (-1); in st_int_ioctl()
3066 STps->drv_block = (-1); in st_int_ioctl()
3067 STps->eof = ST_EOD; in st_int_ioctl()
3082 STps->eof = ST_NOEOF; in st_int_ioctl()
3085 STps->eof = ST_EOD; in st_int_ioctl()
3161 struct st_partstat *STps; in set_location() local
3171 STps = &(STp->ps[STp->partition]); in set_location()
3184 STps->last_block_valid = 0; in set_location()
3186 STps->last_block_valid = 1; in set_location()
3187 STps->last_block_visited = blk; in set_location()
3227 STps->drv_block = STps->drv_file = (-1); in set_location()
3228 STps->eof = ST_NOEOF; in set_location()
3238 STps = &(STp->ps[partition]); in set_location()
3239 if (!STps->last_block_valid || in set_location()
3240 STps->last_block_visited != block) { in set_location()
3241 STps->at_sm = 0; in set_location()
3242 STps->rw = ST_IDLE; in set_location()
3245 STps->at_sm = 0; in set_location()
3247 STps->drv_block = STps->drv_file = 0; in set_location()
3276 struct st_partstat *STps; in switch_partition() local
3280 STps = &(STp->ps[STp->new_partition]); in switch_partition()
3281 if (!STps->last_block_valid) in switch_partition()
3282 STps->last_block_visited = 0; in switch_partition()
3283 return set_location(STp, STps->last_block_visited, STp->new_partition, 1); in switch_partition()
3505 struct st_partstat *STps; in st_ioctl() local
3518 STps = &(STp->ps[STp->partition]); in st_ioctl()
3563 if (STps->eof == ST_FM_HIT) { in st_ioctl()
3567 if (STps->drv_file >= 0) in st_ioctl()
3568 STps->drv_file += 1; in st_ioctl()
3571 if (STps->drv_file >= 0) in st_ioctl()
3572 STps->drv_file += 1; in st_ioctl()
3594 if (STps->rw == ST_WRITING && in st_ioctl()
3605 STps->rw = ST_IDLE; in st_ioctl()
3631 STps->rw = ST_IDLE; /* Prevent automatic WEOF and fsf */ in st_ioctl()
3684 STps->drv_block = STps->drv_file = 0; in st_ioctl()
3751 mt_status.mt_blkno = STps->drv_block; in st_ioctl()
3752 mt_status.mt_fileno = STps->drv_file; in st_ioctl()
3754 if (STps->rw == ST_WRITING) in st_ioctl()
3757 else if (STps->rw == ST_READING) in st_ioctl()
3774 if (STps->eof == ST_EOM_OK || STps->eof == ST_EOM_ERROR) in st_ioctl()
3776 else if (STps->eof >= ST_EOM_OK) in st_ioctl()
3788 if (STps->at_sm) in st_ioctl()
4244 struct st_partstat *STps; in st_probe() local
4327 STps = &(tpnt->ps[i]); in st_probe()
4328 STps->rw = ST_IDLE; in st_probe()
4329 STps->eof = ST_NOEOF; in st_probe()
4330 STps->at_sm = 0; in st_probe()
4331 STps->last_block_valid = 0; in st_probe()
4332 STps->drv_block = (-1); in st_probe()
4333 STps->drv_file = (-1); in st_probe()