Lines Matching refs:tpnt
4279 struct scsi_tape *tpnt = NULL; in st_probe() local
4315 tpnt = kzalloc(sizeof(struct scsi_tape), GFP_KERNEL); in st_probe()
4316 if (tpnt == NULL) { in st_probe()
4321 kref_init(&tpnt->kref); in st_probe()
4322 tpnt->disk = disk; in st_probe()
4323 disk->private_data = &tpnt->driver; in st_probe()
4329 tpnt->driver = &st_template; in st_probe()
4331 tpnt->device = SDp; in st_probe()
4333 tpnt->tape_type = MT_ISSCSI1; in st_probe()
4335 tpnt->tape_type = MT_ISSCSI2; in st_probe()
4337 tpnt->buffer = buffer; in st_probe()
4338 tpnt->buffer->last_SRpnt = NULL; in st_probe()
4340 tpnt->inited = 0; in st_probe()
4341 tpnt->dirty = 0; in st_probe()
4342 tpnt->in_use = 0; in st_probe()
4343 tpnt->drv_buffer = 1; /* Try buffering if no mode sense */ in st_probe()
4344 tpnt->restr_dma = (SDp->host)->unchecked_isa_dma; in st_probe()
4345 tpnt->use_pf = (SDp->scsi_level >= SCSI_2); in st_probe()
4346 tpnt->density = 0; in st_probe()
4347 tpnt->do_auto_lock = ST_AUTO_LOCK; in st_probe()
4348 tpnt->can_bsr = (SDp->scsi_level > 2 ? 1 : ST_IN_FILE_POS); /* BSR mandatory in SCSI3 */ in st_probe()
4349 tpnt->can_partitions = 0; in st_probe()
4350 tpnt->two_fm = ST_TWO_FM; in st_probe()
4351 tpnt->fast_mteom = ST_FAST_MTEOM; in st_probe()
4352 tpnt->scsi2_logical = ST_SCSI2LOGICAL; in st_probe()
4353 tpnt->sili = ST_SILI; in st_probe()
4354 tpnt->immediate = ST_NOWAIT; in st_probe()
4355 tpnt->immediate_filemark = 0; in st_probe()
4356 tpnt->default_drvbuffer = 0xff; /* No forced buffering */ in st_probe()
4357 tpnt->partition = 0; in st_probe()
4358 tpnt->new_partition = 0; in st_probe()
4359 tpnt->nbr_partitions = 0; in st_probe()
4360 blk_queue_rq_timeout(tpnt->device->request_queue, ST_TIMEOUT); in st_probe()
4361 tpnt->long_timeout = ST_LONG_TIMEOUT; in st_probe()
4362 tpnt->try_dio = try_direct_io && !SDp->host->unchecked_isa_dma; in st_probe()
4365 STm = &(tpnt->modes[i]); in st_probe()
4375 STm->tape = tpnt; in st_probe()
4379 STps = &(tpnt->ps[i]); in st_probe()
4388 tpnt->current_mode = 0; in st_probe()
4389 tpnt->modes[0].defined = 1; in st_probe()
4391 tpnt->density_changed = tpnt->compression_changed = in st_probe()
4392 tpnt->blksize_changed = 0; in st_probe()
4393 mutex_init(&tpnt->lock); in st_probe()
4397 error = idr_alloc(&st_index_idr, tpnt, 0, ST_MAX_TAPES + 1, GFP_NOWAIT); in st_probe()
4404 tpnt->index = error; in st_probe()
4405 sprintf(disk->disk_name, "st%d", tpnt->index); in st_probe()
4406 tpnt->stats = kzalloc(sizeof(struct scsi_tape_stats), GFP_KERNEL); in st_probe()
4407 if (tpnt->stats == NULL) { in st_probe()
4413 dev_set_drvdata(dev, tpnt); in st_probe()
4416 error = create_cdevs(tpnt); in st_probe()
4422 "Attached scsi tape %s\n", tape_name(tpnt)); in st_probe()
4424 tape_name(tpnt), tpnt->try_dio ? "yes" : "no", in st_probe()
4430 remove_cdevs(tpnt); in st_probe()
4431 kfree(tpnt->stats); in st_probe()
4434 idr_remove(&st_index_idr, tpnt->index); in st_probe()
4440 kfree(tpnt); in st_probe()
4451 struct scsi_tape *tpnt = dev_get_drvdata(dev); in st_remove() local
4452 int index = tpnt->index; in st_remove()
4455 remove_cdevs(tpnt); in st_remove()
4458 kref_put(&tpnt->kref, scsi_tape_release); in st_remove()
4477 struct scsi_tape *tpnt = to_scsi_tape(kref); in scsi_tape_release() local
4478 struct gendisk *disk = tpnt->disk; in scsi_tape_release()
4480 tpnt->device = NULL; in scsi_tape_release()
4482 if (tpnt->buffer) { in scsi_tape_release()
4483 normalize_buffer(tpnt->buffer); in scsi_tape_release()
4484 kfree(tpnt->buffer->reserved_pages); in scsi_tape_release()
4485 kfree(tpnt->buffer); in scsi_tape_release()
4490 kfree(tpnt->stats); in scsi_tape_release()
4491 kfree(tpnt); in scsi_tape_release()