Lines Matching refs:block

97 static int dasd_ioctl_quiesce(struct dasd_block *block)  in dasd_ioctl_quiesce()  argument
102 base = block->base; in dasd_ioctl_quiesce()
118 static int dasd_ioctl_resume(struct dasd_block *block) in dasd_ioctl_resume() argument
123 base = block->base; in dasd_ioctl_resume()
133 dasd_schedule_block_bh(block); in dasd_ioctl_resume()
140 static int dasd_ioctl_abortio(struct dasd_block *block) in dasd_ioctl_abortio() argument
146 base = block->base; in dasd_ioctl_abortio()
154 spin_lock_irqsave(&block->request_queue_lock, flags); in dasd_ioctl_abortio()
155 spin_lock(&block->queue_lock); in dasd_ioctl_abortio()
156 list_for_each_entry_safe(cqr, n, &block->ccw_queue, blocklist) { in dasd_ioctl_abortio()
161 spin_unlock(&block->queue_lock); in dasd_ioctl_abortio()
163 spin_lock(&block->queue_lock); in dasd_ioctl_abortio()
166 spin_unlock(&block->queue_lock); in dasd_ioctl_abortio()
167 spin_unlock_irqrestore(&block->request_queue_lock, flags); in dasd_ioctl_abortio()
169 dasd_schedule_block_bh(block); in dasd_ioctl_abortio()
176 static int dasd_ioctl_allowio(struct dasd_block *block) in dasd_ioctl_allowio() argument
180 base = block->base; in dasd_ioctl_allowio()
197 dasd_format(struct dasd_block *block, struct format_data_t *fdata) in dasd_format() argument
202 base = block->base; in dasd_format()
223 block->gdp->part0->bd_inode->i_blkbits = in dasd_format()
234 static int dasd_check_format(struct dasd_block *block, in dasd_check_format() argument
240 base = block->base; in dasd_check_format()
283 rc = dasd_format(base->block, &fdata); in dasd_ioctl_format()
316 rc = dasd_check_format(base->block, &cdata); in dasd_ioctl_check_format()
386 static int dasd_ioctl_reset_profile(struct dasd_block *block) in dasd_ioctl_reset_profile() argument
388 dasd_profile_reset(&block->profile); in dasd_ioctl_reset_profile()
395 static int dasd_ioctl_read_profile(struct dasd_block *block, void __user *argp) in dasd_ioctl_read_profile() argument
404 spin_lock_bh(&block->profile.lock); in dasd_ioctl_read_profile()
405 if (block->profile.data) { in dasd_ioctl_read_profile()
406 data->dasd_io_reqs = block->profile.data->dasd_io_reqs; in dasd_ioctl_read_profile()
407 data->dasd_io_sects = block->profile.data->dasd_io_sects; in dasd_ioctl_read_profile()
408 memcpy(data->dasd_io_secs, block->profile.data->dasd_io_secs, in dasd_ioctl_read_profile()
410 memcpy(data->dasd_io_times, block->profile.data->dasd_io_times, in dasd_ioctl_read_profile()
412 memcpy(data->dasd_io_timps, block->profile.data->dasd_io_timps, in dasd_ioctl_read_profile()
414 memcpy(data->dasd_io_time1, block->profile.data->dasd_io_time1, in dasd_ioctl_read_profile()
416 memcpy(data->dasd_io_time2, block->profile.data->dasd_io_time2, in dasd_ioctl_read_profile()
419 block->profile.data->dasd_io_time2ps, in dasd_ioctl_read_profile()
421 memcpy(data->dasd_io_time3, block->profile.data->dasd_io_time3, in dasd_ioctl_read_profile()
424 block->profile.data->dasd_io_nr_req, in dasd_ioctl_read_profile()
426 spin_unlock_bh(&block->profile.lock); in dasd_ioctl_read_profile()
428 spin_unlock_bh(&block->profile.lock); in dasd_ioctl_read_profile()
439 static int dasd_ioctl_reset_profile(struct dasd_block *block) in dasd_ioctl_reset_profile() argument
444 static int dasd_ioctl_read_profile(struct dasd_block *block, void __user *argp) in dasd_ioctl_read_profile() argument
453 static int __dasd_ioctl_information(struct dasd_block *block, in __dasd_ioctl_information() argument
464 base = block->base; in __dasd_ioctl_information()
488 dasd_info->open_count = atomic_read(&block->open_count); in __dasd_ioctl_information()
489 if (!block->bdev) in __dasd_ioctl_information()
497 (dasd_check_blocksize(block->bp_block))) in __dasd_ioctl_information()
505 spin_lock_irqsave(&block->queue_lock, flags); in __dasd_ioctl_information()
508 spin_unlock_irqrestore(&block->queue_lock, flags); in __dasd_ioctl_information()
512 static int dasd_ioctl_information(struct dasd_block *block, void __user *argp, in dasd_ioctl_information() argument
522 error = __dasd_ioctl_information(block, dasd_info); in dasd_ioctl_information()
552 static int dasd_ioctl_readall_cmb(struct dasd_block *block, unsigned int cmd, in dasd_ioctl_readall_cmb() argument
559 ret = cmf_readall(block->base->cdev, &data); in dasd_ioctl_readall_cmb()
568 struct dasd_block *block; in dasd_ioctl() local
584 block = base->block; in dasd_ioctl()
594 rc = dasd_ioctl_quiesce(block); in dasd_ioctl()
597 rc = dasd_ioctl_resume(block); in dasd_ioctl()
600 rc = dasd_ioctl_abortio(block); in dasd_ioctl()
603 rc = dasd_ioctl_allowio(block); in dasd_ioctl()
612 rc = dasd_ioctl_information(block, argp, in dasd_ioctl()
616 rc = dasd_ioctl_information(block, argp, in dasd_ioctl()
620 rc = dasd_ioctl_read_profile(block, argp); in dasd_ioctl()
623 rc = dasd_ioctl_reset_profile(block); in dasd_ioctl()
635 rc = dasd_ioctl_readall_cmb(block, cmd, argp); in dasd_ioctl()
644 rc = base->discipline->ioctl(block, cmd, argp); in dasd_ioctl()
676 error = __dasd_ioctl_information(base->block, info); in dasd_biodasdinfo()