Lines Matching refs:block
59 (loff_t)get_capacity(base->block->gdp) << 9); in dasd_ioctl_enable()
103 static int dasd_ioctl_quiesce(struct dasd_block *block) in dasd_ioctl_quiesce() argument
108 base = block->base; in dasd_ioctl_quiesce()
124 static int dasd_ioctl_resume(struct dasd_block *block) in dasd_ioctl_resume() argument
129 base = block->base; in dasd_ioctl_resume()
139 dasd_schedule_block_bh(block); in dasd_ioctl_resume()
146 static int dasd_ioctl_abortio(struct dasd_block *block) in dasd_ioctl_abortio() argument
152 base = block->base; in dasd_ioctl_abortio()
160 spin_lock_irqsave(&block->request_queue_lock, flags); in dasd_ioctl_abortio()
161 spin_lock(&block->queue_lock); in dasd_ioctl_abortio()
162 list_for_each_entry_safe(cqr, n, &block->ccw_queue, blocklist) { in dasd_ioctl_abortio()
167 spin_unlock(&block->queue_lock); in dasd_ioctl_abortio()
169 spin_lock(&block->queue_lock); in dasd_ioctl_abortio()
172 spin_unlock(&block->queue_lock); in dasd_ioctl_abortio()
173 spin_unlock_irqrestore(&block->request_queue_lock, flags); in dasd_ioctl_abortio()
175 dasd_schedule_block_bh(block); in dasd_ioctl_abortio()
182 static int dasd_ioctl_allowio(struct dasd_block *block) in dasd_ioctl_allowio() argument
186 base = block->base; in dasd_ioctl_allowio()
203 dasd_format(struct dasd_block *block, struct format_data_t *fdata) in dasd_format() argument
208 base = block->base; in dasd_format()
229 struct block_device *bdev = bdget_disk(block->gdp, 0); in dasd_format()
241 static int dasd_check_format(struct dasd_block *block, in dasd_check_format() argument
247 base = block->base; in dasd_check_format()
290 rc = dasd_format(base->block, &fdata); in dasd_ioctl_format()
323 rc = dasd_check_format(base->block, &cdata); in dasd_ioctl_check_format()
340 static int dasd_ioctl_reset_profile(struct dasd_block *block) in dasd_ioctl_reset_profile() argument
342 dasd_profile_reset(&block->profile); in dasd_ioctl_reset_profile()
349 static int dasd_ioctl_read_profile(struct dasd_block *block, void __user *argp) in dasd_ioctl_read_profile() argument
358 spin_lock_bh(&block->profile.lock); in dasd_ioctl_read_profile()
359 if (block->profile.data) { in dasd_ioctl_read_profile()
360 data->dasd_io_reqs = block->profile.data->dasd_io_reqs; in dasd_ioctl_read_profile()
361 data->dasd_io_sects = block->profile.data->dasd_io_sects; in dasd_ioctl_read_profile()
362 memcpy(data->dasd_io_secs, block->profile.data->dasd_io_secs, in dasd_ioctl_read_profile()
364 memcpy(data->dasd_io_times, block->profile.data->dasd_io_times, in dasd_ioctl_read_profile()
366 memcpy(data->dasd_io_timps, block->profile.data->dasd_io_timps, in dasd_ioctl_read_profile()
368 memcpy(data->dasd_io_time1, block->profile.data->dasd_io_time1, in dasd_ioctl_read_profile()
370 memcpy(data->dasd_io_time2, block->profile.data->dasd_io_time2, in dasd_ioctl_read_profile()
373 block->profile.data->dasd_io_time2ps, in dasd_ioctl_read_profile()
375 memcpy(data->dasd_io_time3, block->profile.data->dasd_io_time3, in dasd_ioctl_read_profile()
378 block->profile.data->dasd_io_nr_req, in dasd_ioctl_read_profile()
380 spin_unlock_bh(&block->profile.lock); in dasd_ioctl_read_profile()
382 spin_unlock_bh(&block->profile.lock); in dasd_ioctl_read_profile()
393 static int dasd_ioctl_reset_profile(struct dasd_block *block) in dasd_ioctl_reset_profile() argument
398 static int dasd_ioctl_read_profile(struct dasd_block *block, void __user *argp) in dasd_ioctl_read_profile() argument
407 static int dasd_ioctl_information(struct dasd_block *block, in dasd_ioctl_information() argument
418 base = block->base; in dasd_ioctl_information()
448 dasd_info->open_count = atomic_read(&block->open_count); in dasd_ioctl_information()
449 if (!block->bdev) in dasd_ioctl_information()
457 (dasd_check_blocksize(block->bp_block))) in dasd_ioctl_information()
465 if (block->request_queue->request_fn) { in dasd_ioctl_information()
470 spin_lock_irqsave(&block->lock, flags); in dasd_ioctl_information()
471 list_for_each(l, &block->request_queue->queue_head) in dasd_ioctl_information()
473 spin_unlock_irqrestore(&block->lock, flags); in dasd_ioctl_information()
522 static int dasd_ioctl_readall_cmb(struct dasd_block *block, unsigned int cmd, in dasd_ioctl_readall_cmb() argument
529 ret = cmf_readall(block->base->cdev, &data); in dasd_ioctl_readall_cmb()
538 struct dasd_block *block; in dasd_ioctl() local
556 block = base->block; in dasd_ioctl()
566 rc = dasd_ioctl_quiesce(block); in dasd_ioctl()
569 rc = dasd_ioctl_resume(block); in dasd_ioctl()
572 rc = dasd_ioctl_abortio(block); in dasd_ioctl()
575 rc = dasd_ioctl_allowio(block); in dasd_ioctl()
584 rc = dasd_ioctl_information(block, cmd, argp); in dasd_ioctl()
587 rc = dasd_ioctl_information(block, cmd, argp); in dasd_ioctl()
590 rc = dasd_ioctl_read_profile(block, argp); in dasd_ioctl()
593 rc = dasd_ioctl_reset_profile(block); in dasd_ioctl()
608 rc = dasd_ioctl_readall_cmb(block, cmd, argp); in dasd_ioctl()
614 rc = base->discipline->ioctl(block, cmd, argp); in dasd_ioctl()