Lines Matching refs:STps
681 struct st_partstat *STps; in write_behind_check() local
705 STps = &(STp->ps[STp->partition]); in write_behind_check()
706 if (STps->drv_block >= 0) { in write_behind_check()
708 STps->drv_block++; in write_behind_check()
710 STps->drv_block += STbuffer->writing / STp->block_size; in write_behind_check()
726 STps->drv_block = -1; in write_behind_check()
783 struct st_partstat *STps; in st_flush_write_buffer() local
809 STps = &(STp->ps[STp->partition]); in st_flush_write_buffer()
821 if (STps->drv_block >= 0) in st_flush_write_buffer()
822 STps->drv_block += blks; in st_flush_write_buffer()
826 STps->drv_block = (-1); in st_flush_write_buffer()
830 if (STps->drv_block >= 0) in st_flush_write_buffer()
831 STps->drv_block += blks; in st_flush_write_buffer()
847 struct st_partstat *STps; in flush_buffer() local
859 STps = &(STp->ps[STp->partition]); in flush_buffer()
860 if (STps->rw == ST_WRITING) /* Writing */ in flush_buffer()
874 if (STps->eof == ST_FM_HIT) { in flush_buffer()
877 STps->eof = ST_NOEOF; in flush_buffer()
879 if (STps->drv_file >= 0) in flush_buffer()
880 STps->drv_file++; in flush_buffer()
881 STps->drv_block = 0; in flush_buffer()
886 } else if (STps->eof == ST_FM_HIT) { in flush_buffer()
887 if (STps->drv_file >= 0) in flush_buffer()
888 STps->drv_file++; in flush_buffer()
889 STps->drv_block = 0; in flush_buffer()
890 STps->eof = ST_NOEOF; in flush_buffer()
951 struct st_partstat *STps; in reset_state() local
955 STps = &(STp->ps[i]); in reset_state()
956 STps->rw = ST_IDLE; in reset_state()
957 STps->eof = ST_NOEOF; in reset_state()
958 STps->at_sm = 0; in reset_state()
959 STps->last_block_valid = 0; in reset_state()
960 STps->drv_block = -1; in reset_state()
961 STps->drv_file = -1; in reset_state()
1076 struct st_partstat *STps; in check_tape() local
1106 STps = &(STp->ps[i]); in check_tape()
1107 STps->rw = ST_IDLE; in check_tape()
1108 STps->eof = ST_NOEOF; in check_tape()
1109 STps->at_sm = 0; in check_tape()
1110 STps->last_block_valid = 0; in check_tape()
1111 STps->drv_block = 0; in check_tape()
1112 STps->drv_file = 0; in check_tape()
1281 struct st_partstat *STps; in st_open() local
1335 STps = &(STp->ps[i]); in st_open()
1336 STps->rw = ST_IDLE; in st_open()
1377 struct st_partstat *STps = &(STp->ps[STp->partition]); in st_flush() local
1382 if (STps->rw == ST_WRITING && !STp->pos_unknown) { in st_flush()
1402 if (STps->rw == ST_WRITING && !STp->pos_unknown) { in st_flush()
1432 if (STps->drv_file >= 0) in st_flush()
1433 STps->drv_file++; in st_flush()
1434 STps->drv_block = 0; in st_flush()
1437 STps->eof = ST_FM; in st_flush()
1450 STps = &(STp->ps[STp->partition]); in st_flush()
1451 if (!STm->sysv || STps->rw != ST_READING) { in st_flush()
1454 else if (STps->eof == ST_FM_HIT) { in st_flush()
1457 if (STps->drv_file >= 0) in st_flush()
1458 STps->drv_file++; in st_flush()
1459 STps->drv_block = 0; in st_flush()
1460 STps->eof = ST_FM; in st_flush()
1462 STps->eof = ST_NOEOF; in st_flush()
1464 } else if ((STps->eof == ST_NOEOF && in st_flush()
1466 STps->eof == ST_FM_HIT) { in st_flush()
1467 if (STps->drv_file >= 0) in st_flush()
1468 STps->drv_file++; in st_flush()
1469 STps->drv_block = 0; in st_flush()
1470 STps->eof = ST_FM; in st_flush()
1661 struct st_partstat *STps; in st_write() local
1680 STps = &(STp->ps[STp->partition]); in st_write()
1688 if (STps->rw == ST_READING) { in st_write()
1692 STps->rw = ST_WRITING; in st_write()
1693 } else if (STps->rw != ST_WRITING && in st_write()
1694 STps->drv_file == 0 && STps->drv_block == 0) { in st_write()
1714 STps->eof = ST_EOM_OK; in st_write()
1716 STps->eof = ST_EOM_ERROR; in st_write()
1719 if (STps->eof == ST_EOM_OK) { in st_write()
1720 STps->eof = ST_EOD_1; /* allow next write */ in st_write()
1724 else if (STps->eof == ST_EOM_ERROR) { in st_write()
1749 STps->rw = ST_WRITING; in st_write()
1777 STm->do_async_writes && STps->eof < ST_EOM_OK; in st_write()
1780 !(STp->try_dio_now && try_wdio) && STps->eof < ST_EOM_OK && in st_write()
1841 STps->eof = ST_EOM_OK; in st_write()
1859 if (STps->drv_block >= 0) { in st_write()
1860 STps->drv_block += (transfer - undone) / in st_write()
1863 STps->eof = ST_EOM_OK; in st_write()
1875 STps->eof = ST_EOM_ERROR; in st_write()
1876 STps->drv_block = (-1); /* Too cautious? */ in st_write()
1884 STps->drv_block = (-1); /* Too cautious? */ in st_write()
1890 if (STps->drv_block >= 0) { in st_write()
1892 STps->drv_block += (do_count > 0); in st_write()
1894 STps->drv_block += blks; in st_write()
1907 if (STps->eof == ST_EOD_1) in st_write()
1908 STps->eof = ST_EOM_OK; in st_write()
1909 else if (STps->eof != ST_EOM_OK) in st_write()
1910 STps->eof = ST_NOEOF; in st_write()
1935 struct st_partstat *STps; in read_tape() local
1943 STps = &(STp->ps[STp->partition]); in read_tape()
1944 if (STps->eof == ST_FM_HIT) in read_tape()
1982 STps->at_sm = 0; in read_tape()
2022 if (STps->drv_block >= 0) in read_tape()
2023 STps->drv_block += 1; in read_tape()
2035 if (STps->drv_block >= 0) in read_tape()
2036 STps->drv_block += blks - transfer + 1; in read_tape()
2048 if (STps->drv_block >= 0) in read_tape()
2049 STps->drv_block += 1; in read_tape()
2054 if (STps->eof != ST_FM_HIT) in read_tape()
2055 STps->eof = ST_FM_HIT; in read_tape()
2057 STps->eof = ST_EOD_2; in read_tape()
2067 if (STps->eof == ST_FM) in read_tape()
2068 STps->eof = ST_EOD_1; in read_tape()
2070 STps->eof = ST_EOM_OK; in read_tape()
2085 STps->drv_block = (-1); in read_tape()
2086 if (STps->eof == ST_FM && in read_tape()
2091 STps->eof = ST_EOD_2; /* First BLANK_CHECK after FM */ in read_tape()
2112 if (STps->drv_block >= 0) { in read_tape()
2114 STps->drv_block++; in read_tape()
2116 STps->drv_block += STbp->buffer_bytes / STp->block_size; in read_tape()
2133 struct st_partstat *STps; in st_read() local
2152 STps = &(STp->ps[STp->partition]); in st_read()
2153 if (STps->rw == ST_WRITING) { in st_read()
2157 STps->rw = ST_READING; in st_read()
2160 if (debugging && STps->eof != ST_NOEOF) in st_read()
2163 STps->eof, STbp->buffer_bytes); in st_read()
2172 STps->eof >= ST_EOD_1) { in st_read()
2173 if (STps->eof < ST_EOD) { in st_read()
2174 STps->eof += 1; in st_read()
2194 STps->rw = ST_READING; in st_read()
2212 if (debugging && STps->eof != ST_NOEOF) in st_read()
2215 STps->eof, STbp->buffer_bytes, in st_read()
2239 if (STps->eof == ST_FM_HIT) { in st_read()
2240 STps->eof = ST_FM; in st_read()
2241 STps->drv_block = 0; in st_read()
2242 if (STps->drv_file >= 0) in st_read()
2243 STps->drv_file++; in st_read()
2244 } else if (STps->eof == ST_EOD_1) { in st_read()
2245 STps->eof = ST_EOD_2; in st_read()
2246 STps->drv_block = 0; in st_read()
2247 if (STps->drv_file >= 0) in st_read()
2248 STps->drv_file++; in st_read()
2249 } else if (STps->eof == ST_EOD_2) in st_read()
2250 STps->eof = ST_EOD; in st_read()
2251 } else if (STps->eof == ST_FM) in st_read()
2252 STps->eof = ST_NOEOF; in st_read()
2634 struct st_partstat *STps; in do_load_unload() local
2694 STps = &(STp->ps[STp->partition]); in do_load_unload()
2695 STps->drv_file = STps->drv_block = (-1); in do_load_unload()
2733 struct st_partstat *STps; in st_int_ioctl() local
2745 STps = &(STp->ps[STp->partition]); in st_int_ioctl()
2746 fileno = STps->drv_file; in st_int_ioctl()
2747 blkno = STps->drv_block; in st_int_ioctl()
2748 at_sm = STps->at_sm; in st_int_ioctl()
2891 fileno = STps->drv_file; in st_int_ioctl()
2892 if (STps->eof >= ST_EOD_1) in st_int_ioctl()
2999 STps->drv_block = blkno; in st_int_ioctl()
3000 STps->drv_file = fileno; in st_int_ioctl()
3001 STps->at_sm = at_sm; in st_int_ioctl()
3023 STps->eof = ST_EOD; in st_int_ioctl()
3025 STps->eof = ST_FM; in st_int_ioctl()
3027 STps->eof = ST_NOEOF; in st_int_ioctl()
3030 STps->rw = ST_IDLE; /* prevent automatic WEOF at close */ in st_int_ioctl()
3038 STps->eof = ST_EOM_OK; in st_int_ioctl()
3039 STps->drv_block = 0; in st_int_ioctl()
3053 STps->eof = ST_NOEOF; in st_int_ioctl()
3058 STps->eof = ST_NOEOF; in st_int_ioctl()
3060 STps->drv_file = fileno; in st_int_ioctl()
3063 STps->drv_file = fileno - undone; in st_int_ioctl()
3065 STps->drv_file = fileno; in st_int_ioctl()
3066 STps->drv_block = -1; in st_int_ioctl()
3067 STps->eof = ST_NOEOF; in st_int_ioctl()
3071 if (STps->drv_file >= 0) in st_int_ioctl()
3072 STps->drv_file = fileno + undone; in st_int_ioctl()
3073 STps->drv_block = 0; in st_int_ioctl()
3074 STps->eof = ST_NOEOF; in st_int_ioctl()
3077 if (STps->drv_file >= 0) in st_int_ioctl()
3078 STps->drv_file++; in st_int_ioctl()
3079 STps->drv_block = 0; in st_int_ioctl()
3080 STps->eof = ST_FM; in st_int_ioctl()
3083 STps->drv_block = blkno - undone; in st_int_ioctl()
3085 STps->drv_block = (-1); in st_int_ioctl()
3086 STps->eof = ST_NOEOF; in st_int_ioctl()
3090 STps->drv_file--; in st_int_ioctl()
3091 STps->drv_block = (-1); in st_int_ioctl()
3095 if (STps->drv_block >= 0) in st_int_ioctl()
3096 STps->drv_block = blkno + undone; in st_int_ioctl()
3098 STps->eof = ST_NOEOF; in st_int_ioctl()
3100 STps->drv_file = (-1); in st_int_ioctl()
3101 STps->drv_block = (-1); in st_int_ioctl()
3102 STps->eof = ST_EOD; in st_int_ioctl()
3119 STps->eof = ST_NOEOF; in st_int_ioctl()
3122 STps->eof = ST_EOD; in st_int_ioctl()
3198 struct st_partstat *STps; in set_location() local
3208 STps = &(STp->ps[STp->partition]); in set_location()
3221 STps->last_block_valid = 0; in set_location()
3223 STps->last_block_valid = 1; in set_location()
3224 STps->last_block_visited = blk; in set_location()
3264 STps->drv_block = STps->drv_file = (-1); in set_location()
3265 STps->eof = ST_NOEOF; in set_location()
3275 STps = &(STp->ps[partition]); in set_location()
3276 if (!STps->last_block_valid || in set_location()
3277 STps->last_block_visited != block) { in set_location()
3278 STps->at_sm = 0; in set_location()
3279 STps->rw = ST_IDLE; in set_location()
3282 STps->at_sm = 0; in set_location()
3284 STps->drv_block = STps->drv_file = 0; in set_location()
3313 struct st_partstat *STps; in switch_partition() local
3317 STps = &(STp->ps[STp->new_partition]); in switch_partition()
3318 if (!STps->last_block_valid) in switch_partition()
3319 STps->last_block_visited = 0; in switch_partition()
3320 return set_location(STp, STps->last_block_visited, STp->new_partition, 1); in switch_partition()
3599 struct st_partstat *STps; in st_ioctl() local
3612 STps = &(STp->ps[STp->partition]); in st_ioctl()
3666 if (STps->eof == ST_FM_HIT) { in st_ioctl()
3670 if (STps->drv_file >= 0) in st_ioctl()
3671 STps->drv_file += 1; in st_ioctl()
3674 if (STps->drv_file >= 0) in st_ioctl()
3675 STps->drv_file += 1; in st_ioctl()
3697 if (STps->rw == ST_WRITING && in st_ioctl()
3708 STps->rw = ST_IDLE; in st_ioctl()
3749 STps->rw = ST_IDLE; /* Prevent automatic WEOF and fsf */ in st_ioctl()
3802 STps->drv_block = STps->drv_file = 0; in st_ioctl()
3880 mt_status.mt_blkno = STps->drv_block; in st_ioctl()
3881 mt_status.mt_fileno = STps->drv_file; in st_ioctl()
3883 if (STps->rw == ST_WRITING) in st_ioctl()
3886 else if (STps->rw == ST_READING) in st_ioctl()
3903 if (STps->eof == ST_EOM_OK || STps->eof == ST_EOM_ERROR) in st_ioctl()
3905 else if (STps->eof >= ST_EOM_OK) in st_ioctl()
3917 if (STps->at_sm) in st_ioctl()
4350 struct st_partstat *STps; in st_probe() local
4432 STps = &(tpnt->ps[i]); in st_probe()
4433 STps->rw = ST_IDLE; in st_probe()
4434 STps->eof = ST_NOEOF; in st_probe()
4435 STps->at_sm = 0; in st_probe()
4436 STps->last_block_valid = 0; in st_probe()
4437 STps->drv_block = (-1); in st_probe()
4438 STps->drv_file = (-1); in st_probe()