Lines Matching refs:cqr
86 struct dasd_ccw_req cqr; member
93 struct dasd_ccw_req cqr; member
109 struct dasd_ccw_req cqr; member
818 struct dasd_ccw_req *cqr, in dasd_eckd_fill_rcd_cqr() argument
832 ccw = cqr->cpaddr; in dasd_eckd_fill_rcd_cqr()
837 cqr->magic = DASD_ECKD_MAGIC; in dasd_eckd_fill_rcd_cqr()
839 cqr->startdev = device; in dasd_eckd_fill_rcd_cqr()
840 cqr->memdev = device; in dasd_eckd_fill_rcd_cqr()
841 cqr->block = NULL; in dasd_eckd_fill_rcd_cqr()
842 cqr->expires = 10*HZ; in dasd_eckd_fill_rcd_cqr()
843 cqr->lpm = lpm; in dasd_eckd_fill_rcd_cqr()
844 cqr->retries = 256; in dasd_eckd_fill_rcd_cqr()
845 cqr->buildclk = get_tod_clock(); in dasd_eckd_fill_rcd_cqr()
846 cqr->status = DASD_CQR_FILLED; in dasd_eckd_fill_rcd_cqr()
847 set_bit(DASD_CQR_VERIFY_PATH, &cqr->flags); in dasd_eckd_fill_rcd_cqr()
856 static void read_conf_cb(struct dasd_ccw_req *cqr, void *data) in read_conf_cb() argument
861 if (cqr->status != DASD_CQR_DONE) { in read_conf_cb()
862 ccw = cqr->cpaddr; in read_conf_cb()
871 dasd_wakeup_cb(cqr, data); in read_conf_cb()
875 struct dasd_ccw_req *cqr, in dasd_eckd_read_conf_immediately() argument
889 dasd_eckd_fill_rcd_cqr(device, cqr, rcd_buffer, lpm); in dasd_eckd_read_conf_immediately()
890 clear_bit(DASD_CQR_FLAGS_USE_ERP, &cqr->flags); in dasd_eckd_read_conf_immediately()
891 set_bit(DASD_CQR_ALLOW_SLOCK, &cqr->flags); in dasd_eckd_read_conf_immediately()
892 cqr->retries = 5; in dasd_eckd_read_conf_immediately()
893 cqr->callback = read_conf_cb; in dasd_eckd_read_conf_immediately()
894 rc = dasd_sleep_on_immediatly(cqr); in dasd_eckd_read_conf_immediately()
905 struct dasd_ccw_req *cqr; in dasd_eckd_read_conf_lpm() local
921 cqr = dasd_smalloc_request(DASD_ECKD_MAGIC, 1 /* RCD */, in dasd_eckd_read_conf_lpm()
924 if (IS_ERR(cqr)) { in dasd_eckd_read_conf_lpm()
930 dasd_eckd_fill_rcd_cqr(device, cqr, rcd_buf, lpm); in dasd_eckd_read_conf_lpm()
931 cqr->callback = read_conf_cb; in dasd_eckd_read_conf_lpm()
932 ret = dasd_sleep_on(cqr); in dasd_eckd_read_conf_lpm()
936 dasd_sfree_request(cqr, cqr->memdev); in dasd_eckd_read_conf_lpm()
1262 memset(&data->cqr, 0, sizeof(data->cqr)); in rebuild_device_uid()
1263 data->cqr.cpaddr = &data->ccw; in rebuild_device_uid()
1264 rc = dasd_eckd_read_conf_immediately(device, &data->cqr, in rebuild_device_uid()
1312 memset(&data->cqr, 0, sizeof(data->cqr)); in dasd_eckd_path_available_action()
1313 data->cqr.cpaddr = &data->ccw; in dasd_eckd_path_available_action()
1314 rc = dasd_eckd_read_conf_immediately(device, &data->cqr, in dasd_eckd_path_available_action()
1521 struct dasd_ccw_req *cqr; in dasd_eckd_read_features() local
1526 cqr = dasd_smalloc_request(DASD_ECKD_MAGIC, 1 /* PSF */ + 1 /* RSSD */, in dasd_eckd_read_features()
1530 if (IS_ERR(cqr)) { in dasd_eckd_read_features()
1533 return PTR_ERR(cqr); in dasd_eckd_read_features()
1535 cqr->startdev = device; in dasd_eckd_read_features()
1536 cqr->memdev = device; in dasd_eckd_read_features()
1537 cqr->block = NULL; in dasd_eckd_read_features()
1538 cqr->retries = 256; in dasd_eckd_read_features()
1539 cqr->expires = 10 * HZ; in dasd_eckd_read_features()
1542 prssdp = (struct dasd_psf_prssd_data *) cqr->data; in dasd_eckd_read_features()
1548 ccw = cqr->cpaddr; in dasd_eckd_read_features()
1563 cqr->buildclk = get_tod_clock(); in dasd_eckd_read_features()
1564 cqr->status = DASD_CQR_FILLED; in dasd_eckd_read_features()
1565 rc = dasd_sleep_on(cqr); in dasd_eckd_read_features()
1567 prssdp = (struct dasd_psf_prssd_data *) cqr->data; in dasd_eckd_read_features()
1574 dasd_sfree_request(cqr, cqr->memdev); in dasd_eckd_read_features()
1584 struct dasd_ccw_req *cqr; in dasd_eckd_read_vol_info() local
1595 cqr = dasd_smalloc_request(DASD_ECKD_MAGIC, 2 /* PSF + RSSD */, in dasd_eckd_read_vol_info()
1597 if (IS_ERR(cqr)) { in dasd_eckd_read_vol_info()
1602 cqr = &dasd_vol_info_req->cqr; in dasd_eckd_read_vol_info()
1603 memset(cqr, 0, sizeof(*cqr)); in dasd_eckd_read_vol_info()
1605 cqr->cpaddr = &dasd_vol_info_req->ccw; in dasd_eckd_read_vol_info()
1606 cqr->data = &dasd_vol_info_req->data; in dasd_eckd_read_vol_info()
1607 cqr->magic = DASD_ECKD_MAGIC; in dasd_eckd_read_vol_info()
1611 prssdp = cqr->data; in dasd_eckd_read_vol_info()
1617 ccw = cqr->cpaddr; in dasd_eckd_read_vol_info()
1633 cqr->buildclk = get_tod_clock(); in dasd_eckd_read_vol_info()
1634 cqr->status = DASD_CQR_FILLED; in dasd_eckd_read_vol_info()
1635 cqr->startdev = device; in dasd_eckd_read_vol_info()
1636 cqr->memdev = device; in dasd_eckd_read_vol_info()
1637 cqr->block = NULL; in dasd_eckd_read_vol_info()
1638 cqr->retries = 256; in dasd_eckd_read_vol_info()
1639 cqr->expires = device->default_expires * HZ; in dasd_eckd_read_vol_info()
1641 __set_bit(DASD_CQR_SUPPRESS_CR, &cqr->flags); in dasd_eckd_read_vol_info()
1643 rc = dasd_sleep_on_interruptible(cqr); in dasd_eckd_read_vol_info()
1654 dasd_sfree_request(cqr, cqr->memdev); in dasd_eckd_read_vol_info()
1733 struct dasd_ccw_req *cqr) in dasd_eckd_ext_pool_exhaust() argument
1744 if (cqr->block) in dasd_eckd_ext_pool_exhaust()
1745 data->base = cqr->block->base; in dasd_eckd_ext_pool_exhaust()
1746 else if (cqr->basedev) in dasd_eckd_ext_pool_exhaust()
1747 data->base = cqr->basedev; in dasd_eckd_ext_pool_exhaust()
1779 struct dasd_ccw_req *cqr; in dasd_eckd_read_ext_pool_info() local
1788 cqr = dasd_smalloc_request(DASD_ECKD_MAGIC, 2 /* PSF + RSSD */, in dasd_eckd_read_ext_pool_info()
1790 if (IS_ERR(cqr)) { in dasd_eckd_read_ext_pool_info()
1793 return PTR_ERR(cqr); in dasd_eckd_read_ext_pool_info()
1797 prssdp = cqr->data; in dasd_eckd_read_ext_pool_info()
1802 ccw = cqr->cpaddr; in dasd_eckd_read_ext_pool_info()
1817 cqr->buildclk = get_tod_clock(); in dasd_eckd_read_ext_pool_info()
1818 cqr->status = DASD_CQR_FILLED; in dasd_eckd_read_ext_pool_info()
1819 cqr->startdev = device; in dasd_eckd_read_ext_pool_info()
1820 cqr->memdev = device; in dasd_eckd_read_ext_pool_info()
1821 cqr->block = NULL; in dasd_eckd_read_ext_pool_info()
1822 cqr->retries = 256; in dasd_eckd_read_ext_pool_info()
1823 cqr->expires = device->default_expires * HZ; in dasd_eckd_read_ext_pool_info()
1825 __set_bit(DASD_CQR_SUPPRESS_CR, &cqr->flags); in dasd_eckd_read_ext_pool_info()
1827 rc = dasd_sleep_on_interruptible(cqr); in dasd_eckd_read_ext_pool_info()
1835 dasd_sfree_request(cqr, cqr->memdev); in dasd_eckd_read_ext_pool_info()
1890 struct dasd_ccw_req *cqr; in dasd_eckd_build_psf_ssc() local
1894 cqr = dasd_smalloc_request(DASD_ECKD_MAGIC, 1 /* PSF */ , in dasd_eckd_build_psf_ssc()
1898 if (IS_ERR(cqr)) { in dasd_eckd_build_psf_ssc()
1901 return cqr; in dasd_eckd_build_psf_ssc()
1903 psf_ssc_data = (struct dasd_psf_ssc_data *)cqr->data; in dasd_eckd_build_psf_ssc()
1910 ccw = cqr->cpaddr; in dasd_eckd_build_psf_ssc()
1915 cqr->startdev = device; in dasd_eckd_build_psf_ssc()
1916 cqr->memdev = device; in dasd_eckd_build_psf_ssc()
1917 cqr->block = NULL; in dasd_eckd_build_psf_ssc()
1918 cqr->retries = 256; in dasd_eckd_build_psf_ssc()
1919 cqr->expires = 10*HZ; in dasd_eckd_build_psf_ssc()
1920 cqr->buildclk = get_tod_clock(); in dasd_eckd_build_psf_ssc()
1921 cqr->status = DASD_CQR_FILLED; in dasd_eckd_build_psf_ssc()
1922 return cqr; in dasd_eckd_build_psf_ssc()
1934 struct dasd_ccw_req *cqr; in dasd_eckd_psf_ssc() local
1937 cqr = dasd_eckd_build_psf_ssc(device, enable_pav); in dasd_eckd_psf_ssc()
1938 if (IS_ERR(cqr)) in dasd_eckd_psf_ssc()
1939 return PTR_ERR(cqr); in dasd_eckd_psf_ssc()
1945 cqr->flags |= flags; in dasd_eckd_psf_ssc()
1947 rc = dasd_sleep_on(cqr); in dasd_eckd_psf_ssc()
1951 else if (cqr->intrc == -EAGAIN) in dasd_eckd_psf_ssc()
1954 dasd_sfree_request(cqr, cqr->memdev); in dasd_eckd_psf_ssc()
2241 struct dasd_ccw_req *cqr; in dasd_eckd_analysis_ccw() local
2248 cqr = dasd_smalloc_request(DASD_ECKD_MAGIC, cplength, datasize, device, in dasd_eckd_analysis_ccw()
2250 if (IS_ERR(cqr)) in dasd_eckd_analysis_ccw()
2251 return cqr; in dasd_eckd_analysis_ccw()
2252 ccw = cqr->cpaddr; in dasd_eckd_analysis_ccw()
2254 define_extent(ccw++, cqr->data, 0, 1, in dasd_eckd_analysis_ccw()
2256 LO_data = cqr->data + sizeof(struct DE_eckd_data); in dasd_eckd_analysis_ccw()
2284 cqr->block = NULL; in dasd_eckd_analysis_ccw()
2285 cqr->startdev = device; in dasd_eckd_analysis_ccw()
2286 cqr->memdev = device; in dasd_eckd_analysis_ccw()
2287 cqr->retries = 255; in dasd_eckd_analysis_ccw()
2288 cqr->buildclk = get_tod_clock(); in dasd_eckd_analysis_ccw()
2289 cqr->status = DASD_CQR_FILLED; in dasd_eckd_analysis_ccw()
2291 set_bit(DASD_CQR_SUPPRESS_NRF, &cqr->flags); in dasd_eckd_analysis_ccw()
2293 return cqr; in dasd_eckd_analysis_ccw()
2509 struct dasd_ccw_req *cqr; in dasd_eckd_build_check_tcw() local
2532 cqr = dasd_fmalloc_request(DASD_ECKD_MAGIC, 0, itcw_size, startdev); in dasd_eckd_build_check_tcw()
2533 if (IS_ERR(cqr)) in dasd_eckd_build_check_tcw()
2534 return cqr; in dasd_eckd_build_check_tcw()
2538 itcw = itcw_init(cqr->data, itcw_size, ITCW_OP_READ, 0, count, 0); in dasd_eckd_build_check_tcw()
2544 cqr->cpaddr = itcw_get_tcw(itcw); in dasd_eckd_build_check_tcw()
2564 cqr->cpmode = 1; in dasd_eckd_build_check_tcw()
2565 cqr->startdev = startdev; in dasd_eckd_build_check_tcw()
2566 cqr->memdev = startdev; in dasd_eckd_build_check_tcw()
2567 cqr->basedev = base; in dasd_eckd_build_check_tcw()
2568 cqr->retries = startdev->default_retries; in dasd_eckd_build_check_tcw()
2569 cqr->expires = startdev->default_expires * HZ; in dasd_eckd_build_check_tcw()
2570 cqr->buildclk = get_tod_clock(); in dasd_eckd_build_check_tcw()
2571 cqr->status = DASD_CQR_FILLED; in dasd_eckd_build_check_tcw()
2573 set_bit(DASD_CQR_SUPPRESS_FP, &cqr->flags); in dasd_eckd_build_check_tcw()
2574 set_bit(DASD_CQR_SUPPRESS_IL, &cqr->flags); in dasd_eckd_build_check_tcw()
2576 return cqr; in dasd_eckd_build_check_tcw()
2579 dasd_sfree_request(cqr, startdev); in dasd_eckd_build_check_tcw()
2594 struct dasd_ccw_req *cqr; in dasd_eckd_build_check() local
2625 cqr = dasd_fmalloc_request(DASD_ECKD_MAGIC, cplength, datasize, startdev); in dasd_eckd_build_check()
2626 if (IS_ERR(cqr)) in dasd_eckd_build_check()
2627 return cqr; in dasd_eckd_build_check()
2630 data = cqr->data; in dasd_eckd_build_check()
2631 ccw = cqr->cpaddr; in dasd_eckd_build_check()
2658 cqr->startdev = startdev; in dasd_eckd_build_check()
2659 cqr->memdev = startdev; in dasd_eckd_build_check()
2660 cqr->basedev = base; in dasd_eckd_build_check()
2661 cqr->retries = DASD_RETRIES; in dasd_eckd_build_check()
2662 cqr->expires = startdev->default_expires * HZ; in dasd_eckd_build_check()
2663 cqr->buildclk = get_tod_clock(); in dasd_eckd_build_check()
2664 cqr->status = DASD_CQR_FILLED; in dasd_eckd_build_check()
2666 set_bit(DASD_CQR_SUPPRESS_NRF, &cqr->flags); in dasd_eckd_build_check()
2668 return cqr; in dasd_eckd_build_check()
3002 struct dasd_ccw_req *cqr, *n; in dasd_eckd_format_process_data() local
3040 cqr = dasd_eckd_format_build_ccw_req(base, fdata, in dasd_eckd_format_process_data()
3043 if (IS_ERR(cqr)) { in dasd_eckd_format_process_data()
3044 rc = PTR_ERR(cqr); in dasd_eckd_format_process_data()
3058 list_add_tail(&cqr->blocklist, &format_queue); in dasd_eckd_format_process_data()
3071 list_for_each_entry_safe(cqr, n, &format_queue, blocklist) { in dasd_eckd_format_process_data()
3072 device = cqr->startdev; in dasd_eckd_format_process_data()
3075 if (cqr->status == DASD_CQR_FAILED) { in dasd_eckd_format_process_data()
3081 sense = dasd_get_sense(&cqr->irb); in dasd_eckd_format_process_data()
3082 memcpy(irb, &cqr->irb, sizeof(*irb)); in dasd_eckd_format_process_data()
3086 list_del_init(&cqr->blocklist); in dasd_eckd_format_process_data()
3087 dasd_ffree_request(cqr, device); in dasd_eckd_format_process_data()
3127 struct dasd_ccw_req *cqr) in test_and_set_format_track() argument
3129 struct dasd_block *block = cqr->block; in test_and_set_format_track()
3135 if (cqr->trkcount != atomic_read(&block->trkcount)) { in test_and_set_format_track()
3172 static void dasd_eckd_ese_format_cb(struct dasd_ccw_req *cqr, void *data) in dasd_eckd_ese_format_cb() argument
3174 struct dasd_device *device = cqr->startdev; in dasd_eckd_ese_format_cb()
3178 clear_format_track(format, cqr->basedev->block); in dasd_eckd_ese_format_cb()
3180 dasd_ffree_request(cqr, device); in dasd_eckd_ese_format_cb()
3184 dasd_eckd_ese_format(struct dasd_device *startdev, struct dasd_ccw_req *cqr, in dasd_eckd_ese_format() argument
3201 req = dasd_get_callback_data(cqr); in dasd_eckd_ese_format()
3202 block = cqr->block; in dasd_eckd_ese_format()
3226 if (test_and_set_format_track(format, cqr)) { in dasd_eckd_ese_format()
3228 cqr->retries++; in dasd_eckd_ese_format()
3267 static int dasd_eckd_ese_read(struct dasd_ccw_req *cqr, struct irb *irb) in dasd_eckd_ese_read() argument
3286 req = (struct request *) cqr->callback_data; in dasd_eckd_ese_read()
3287 base = cqr->block->base; in dasd_eckd_ese_read()
3289 block = cqr->block; in dasd_eckd_ese_read()
3326 cqr->proc_bytes = blk_count * blksize; in dasd_eckd_ese_read()
3557 static void dasd_eckd_handle_terminated_request(struct dasd_ccw_req *cqr) in dasd_eckd_handle_terminated_request() argument
3559 if (cqr->retries < 0) { in dasd_eckd_handle_terminated_request()
3560 cqr->status = DASD_CQR_FAILED; in dasd_eckd_handle_terminated_request()
3563 cqr->status = DASD_CQR_FILLED; in dasd_eckd_handle_terminated_request()
3564 if (cqr->block && (cqr->startdev != cqr->block->base)) { in dasd_eckd_handle_terminated_request()
3565 dasd_eckd_reset_ccw_to_base_io(cqr); in dasd_eckd_handle_terminated_request()
3566 cqr->startdev = cqr->block->base; in dasd_eckd_handle_terminated_request()
3567 cqr->lpm = dasd_path_get_opm(cqr->block->base); in dasd_eckd_handle_terminated_request()
3572 dasd_eckd_erp_action(struct dasd_ccw_req * cqr) in dasd_eckd_erp_action() argument
3574 struct dasd_device *device = (struct dasd_device *) cqr->startdev; in dasd_eckd_erp_action()
3591 dasd_eckd_erp_postaction(struct dasd_ccw_req * cqr) in dasd_eckd_erp_postaction() argument
3597 struct dasd_ccw_req *cqr, in dasd_eckd_check_for_device_change() argument
3654 if (!cqr && !(sense[27] & DASD_SENSE_BIT_0) && in dasd_eckd_check_for_device_change()
3772 struct dasd_ccw_req *cqr; in dasd_eckd_dso_ras() local
3801 cqr = dasd_smalloc_request(DASD_ECKD_MAGIC, 1, size, device, rq); in dasd_eckd_dso_ras()
3802 if (IS_ERR(cqr)) { in dasd_eckd_dso_ras()
3805 return cqr; in dasd_eckd_dso_ras()
3808 ras_data = cqr->data; in dasd_eckd_dso_ras()
3834 ras_range = (struct dasd_dso_ras_ext_range *)(cqr->data + ras_size); in dasd_eckd_dso_ras()
3853 ccw = cqr->cpaddr; in dasd_eckd_dso_ras()
3854 ccw->cda = (__u32)virt_to_phys(cqr->data); in dasd_eckd_dso_ras()
3858 cqr->startdev = device; in dasd_eckd_dso_ras()
3859 cqr->memdev = device; in dasd_eckd_dso_ras()
3860 cqr->block = block; in dasd_eckd_dso_ras()
3861 cqr->retries = 256; in dasd_eckd_dso_ras()
3862 cqr->expires = device->default_expires * HZ; in dasd_eckd_dso_ras()
3863 cqr->buildclk = get_tod_clock(); in dasd_eckd_dso_ras()
3864 cqr->status = DASD_CQR_FILLED; in dasd_eckd_dso_ras()
3866 return cqr; in dasd_eckd_dso_ras()
3871 struct dasd_ccw_req *cqr; in dasd_eckd_release_space_full() local
3874 cqr = dasd_eckd_dso_ras(device, NULL, NULL, 0, 0, 0); in dasd_eckd_release_space_full()
3875 if (IS_ERR(cqr)) in dasd_eckd_release_space_full()
3876 return PTR_ERR(cqr); in dasd_eckd_release_space_full()
3878 rc = dasd_sleep_on_interruptible(cqr); in dasd_eckd_release_space_full()
3880 dasd_sfree_request(cqr, cqr->memdev); in dasd_eckd_release_space_full()
3890 struct dasd_ccw_req *cqr, *n; in dasd_eckd_release_space_trks() local
3916 cqr = dasd_eckd_dso_ras(device, NULL, NULL, cur_pos, stop, 1); in dasd_eckd_release_space_trks()
3917 if (IS_ERR(cqr)) { in dasd_eckd_release_space_trks()
3918 rc = PTR_ERR(cqr); in dasd_eckd_release_space_trks()
3929 list_add_tail(&cqr->blocklist, &ras_queue); in dasd_eckd_release_space_trks()
3937 list_for_each_entry_safe(cqr, n, &ras_queue, blocklist) { in dasd_eckd_release_space_trks()
3938 device = cqr->startdev; in dasd_eckd_release_space_trks()
3942 list_del_init(&cqr->blocklist); in dasd_eckd_release_space_trks()
3944 dasd_sfree_request(cqr, device); in dasd_eckd_release_space_trks()
3981 struct dasd_ccw_req *cqr; in dasd_eckd_build_cp_cmd_single() local
4042 cqr = dasd_smalloc_request(DASD_ECKD_MAGIC, cplength, datasize, in dasd_eckd_build_cp_cmd_single()
4044 if (IS_ERR(cqr)) in dasd_eckd_build_cp_cmd_single()
4045 return cqr; in dasd_eckd_build_cp_cmd_single()
4046 ccw = cqr->cpaddr; in dasd_eckd_build_cp_cmd_single()
4049 if (prefix(ccw++, cqr->data, first_trk, in dasd_eckd_build_cp_cmd_single()
4054 dasd_sfree_request(cqr, startdev); in dasd_eckd_build_cp_cmd_single()
4057 idaws = (unsigned long *) (cqr->data + in dasd_eckd_build_cp_cmd_single()
4060 if (define_extent(ccw++, cqr->data, first_trk, in dasd_eckd_build_cp_cmd_single()
4065 dasd_sfree_request(cqr, startdev); in dasd_eckd_build_cp_cmd_single()
4068 idaws = (unsigned long *) (cqr->data + in dasd_eckd_build_cp_cmd_single()
4137 set_bit(DASD_CQR_FLAGS_FAILFAST, &cqr->flags); in dasd_eckd_build_cp_cmd_single()
4138 cqr->startdev = startdev; in dasd_eckd_build_cp_cmd_single()
4139 cqr->memdev = startdev; in dasd_eckd_build_cp_cmd_single()
4140 cqr->block = block; in dasd_eckd_build_cp_cmd_single()
4141 cqr->expires = startdev->default_expires * HZ; /* default 5 minutes */ in dasd_eckd_build_cp_cmd_single()
4142 cqr->lpm = dasd_path_get_ppm(startdev); in dasd_eckd_build_cp_cmd_single()
4143 cqr->retries = startdev->default_retries; in dasd_eckd_build_cp_cmd_single()
4144 cqr->buildclk = get_tod_clock(); in dasd_eckd_build_cp_cmd_single()
4145 cqr->status = DASD_CQR_FILLED; in dasd_eckd_build_cp_cmd_single()
4149 set_bit(DASD_CQR_SUPPRESS_FP, &cqr->flags); in dasd_eckd_build_cp_cmd_single()
4150 set_bit(DASD_CQR_SUPPRESS_IL, &cqr->flags); in dasd_eckd_build_cp_cmd_single()
4151 set_bit(DASD_CQR_SUPPRESS_NRF, &cqr->flags); in dasd_eckd_build_cp_cmd_single()
4154 return cqr; in dasd_eckd_build_cp_cmd_single()
4171 struct dasd_ccw_req *cqr; in dasd_eckd_build_cp_cmd_track() local
4209 cqr = dasd_smalloc_request(DASD_ECKD_MAGIC, cplength, datasize, in dasd_eckd_build_cp_cmd_track()
4211 if (IS_ERR(cqr)) in dasd_eckd_build_cp_cmd_track()
4212 return cqr; in dasd_eckd_build_cp_cmd_track()
4213 ccw = cqr->cpaddr; in dasd_eckd_build_cp_cmd_track()
4221 if (prefix_LRE(ccw++, cqr->data, first_trk, in dasd_eckd_build_cp_cmd_track()
4229 dasd_sfree_request(cqr, startdev); in dasd_eckd_build_cp_cmd_track()
4240 idaws = (unsigned long *) (cqr->data + sizeof(struct PFX_eckd_data)); in dasd_eckd_build_cp_cmd_track()
4278 dasd_sfree_request(cqr, startdev); in dasd_eckd_build_cp_cmd_track()
4284 dasd_sfree_request(cqr, startdev); in dasd_eckd_build_cp_cmd_track()
4316 set_bit(DASD_CQR_FLAGS_FAILFAST, &cqr->flags); in dasd_eckd_build_cp_cmd_track()
4317 cqr->startdev = startdev; in dasd_eckd_build_cp_cmd_track()
4318 cqr->memdev = startdev; in dasd_eckd_build_cp_cmd_track()
4319 cqr->block = block; in dasd_eckd_build_cp_cmd_track()
4320 cqr->expires = startdev->default_expires * HZ; /* default 5 minutes */ in dasd_eckd_build_cp_cmd_track()
4321 cqr->lpm = dasd_path_get_ppm(startdev); in dasd_eckd_build_cp_cmd_track()
4322 cqr->retries = startdev->default_retries; in dasd_eckd_build_cp_cmd_track()
4323 cqr->buildclk = get_tod_clock(); in dasd_eckd_build_cp_cmd_track()
4324 cqr->status = DASD_CQR_FILLED; in dasd_eckd_build_cp_cmd_track()
4328 set_bit(DASD_CQR_SUPPRESS_NRF, &cqr->flags); in dasd_eckd_build_cp_cmd_track()
4330 return cqr; in dasd_eckd_build_cp_cmd_track()
4502 struct dasd_ccw_req *cqr; in dasd_eckd_build_cp_tpm_track() local
4548 cqr = dasd_smalloc_request(DASD_ECKD_MAGIC, 0, itcw_size, startdev, in dasd_eckd_build_cp_tpm_track()
4550 if (IS_ERR(cqr)) in dasd_eckd_build_cp_tpm_track()
4551 return cqr; in dasd_eckd_build_cp_tpm_track()
4560 itcw = itcw_init(cqr->data, itcw_size, itcw_op, 0, ctidaw, 0); in dasd_eckd_build_cp_tpm_track()
4565 cqr->cpaddr = itcw_get_tcw(itcw); in dasd_eckd_build_cp_tpm_track()
4639 set_bit(DASD_CQR_FLAGS_FAILFAST, &cqr->flags); in dasd_eckd_build_cp_tpm_track()
4640 cqr->cpmode = 1; in dasd_eckd_build_cp_tpm_track()
4641 cqr->startdev = startdev; in dasd_eckd_build_cp_tpm_track()
4642 cqr->memdev = startdev; in dasd_eckd_build_cp_tpm_track()
4643 cqr->block = block; in dasd_eckd_build_cp_tpm_track()
4644 cqr->expires = startdev->default_expires * HZ; /* default 5 minutes */ in dasd_eckd_build_cp_tpm_track()
4645 cqr->lpm = dasd_path_get_ppm(startdev); in dasd_eckd_build_cp_tpm_track()
4646 cqr->retries = startdev->default_retries; in dasd_eckd_build_cp_tpm_track()
4647 cqr->buildclk = get_tod_clock(); in dasd_eckd_build_cp_tpm_track()
4648 cqr->status = DASD_CQR_FILLED; in dasd_eckd_build_cp_tpm_track()
4652 set_bit(DASD_CQR_SUPPRESS_FP, &cqr->flags); in dasd_eckd_build_cp_tpm_track()
4653 set_bit(DASD_CQR_SUPPRESS_IL, &cqr->flags); in dasd_eckd_build_cp_tpm_track()
4654 set_bit(DASD_CQR_SUPPRESS_NRF, &cqr->flags); in dasd_eckd_build_cp_tpm_track()
4657 return cqr; in dasd_eckd_build_cp_tpm_track()
4659 dasd_sfree_request(cqr, startdev); in dasd_eckd_build_cp_tpm_track()
4678 struct dasd_ccw_req *cqr; in dasd_eckd_build_cp() local
4709 cqr = NULL; in dasd_eckd_build_cp()
4714 cqr = dasd_eckd_build_cp_tpm_track(startdev, block, req, in dasd_eckd_build_cp()
4719 if (IS_ERR(cqr) && (PTR_ERR(cqr) != -EAGAIN) && in dasd_eckd_build_cp()
4720 (PTR_ERR(cqr) != -ENOMEM)) in dasd_eckd_build_cp()
4721 cqr = NULL; in dasd_eckd_build_cp()
4725 cqr = dasd_eckd_build_cp_cmd_track(startdev, block, req, in dasd_eckd_build_cp()
4730 if (IS_ERR(cqr) && (PTR_ERR(cqr) != -EAGAIN) && in dasd_eckd_build_cp()
4731 (PTR_ERR(cqr) != -ENOMEM)) in dasd_eckd_build_cp()
4732 cqr = NULL; in dasd_eckd_build_cp()
4734 if (!cqr) in dasd_eckd_build_cp()
4735 cqr = dasd_eckd_build_cp_cmd_single(startdev, block, req, in dasd_eckd_build_cp()
4740 return cqr; in dasd_eckd_build_cp()
4754 struct dasd_ccw_req *cqr; in dasd_eckd_build_cp_raw() local
4821 cqr = dasd_smalloc_request(DASD_ECKD_MAGIC, cplength, in dasd_eckd_build_cp_raw()
4823 if (IS_ERR(cqr)) in dasd_eckd_build_cp_raw()
4824 return cqr; in dasd_eckd_build_cp_raw()
4826 ccw = cqr->cpaddr; in dasd_eckd_build_cp_raw()
4827 data = cqr->data; in dasd_eckd_build_cp_raw()
4841 idaws = (unsigned long *)(cqr->data + size); in dasd_eckd_build_cp_raw()
4881 set_bit(DASD_CQR_FLAGS_FAILFAST, &cqr->flags); in dasd_eckd_build_cp_raw()
4882 cqr->startdev = startdev; in dasd_eckd_build_cp_raw()
4883 cqr->memdev = startdev; in dasd_eckd_build_cp_raw()
4884 cqr->block = block; in dasd_eckd_build_cp_raw()
4885 cqr->expires = startdev->default_expires * HZ; in dasd_eckd_build_cp_raw()
4886 cqr->lpm = dasd_path_get_ppm(startdev); in dasd_eckd_build_cp_raw()
4887 cqr->retries = startdev->default_retries; in dasd_eckd_build_cp_raw()
4888 cqr->buildclk = get_tod_clock(); in dasd_eckd_build_cp_raw()
4889 cqr->status = DASD_CQR_FILLED; in dasd_eckd_build_cp_raw()
4891 return cqr; in dasd_eckd_build_cp_raw()
4896 dasd_eckd_free_cp(struct dasd_ccw_req *cqr, struct request *req) in dasd_eckd_free_cp() argument
4909 private = cqr->block->base->private; in dasd_eckd_free_cp()
4910 blksize = cqr->block->bp_block; in dasd_eckd_free_cp()
4912 recid = blk_rq_pos(req) >> cqr->block->s2b_shift; in dasd_eckd_free_cp()
4913 ccw = cqr->cpaddr; in dasd_eckd_free_cp()
4942 status = cqr->status == DASD_CQR_DONE; in dasd_eckd_free_cp()
4943 dasd_sfree_request(cqr, cqr->memdev); in dasd_eckd_free_cp()
4954 void dasd_eckd_reset_ccw_to_base_io(struct dasd_ccw_req *cqr) in dasd_eckd_reset_ccw_to_base_io() argument
4962 if (cqr->cpmode == 1) { in dasd_eckd_reset_ccw_to_base_io()
4963 tcw = cqr->cpaddr; in dasd_eckd_reset_ccw_to_base_io()
4970 ccw = cqr->cpaddr; in dasd_eckd_reset_ccw_to_base_io()
4971 pfxdata = cqr->data; in dasd_eckd_reset_ccw_to_base_io()
4988 struct dasd_ccw_req *cqr; in dasd_eckd_build_alias_cp() local
5000 cqr = dasd_eckd_build_cp_raw(startdev, block, req); in dasd_eckd_build_alias_cp()
5002 cqr = dasd_eckd_build_cp(startdev, block, req); in dasd_eckd_build_alias_cp()
5003 if (IS_ERR(cqr)) in dasd_eckd_build_alias_cp()
5006 return cqr; in dasd_eckd_build_alias_cp()
5009 static int dasd_eckd_free_alias_cp(struct dasd_ccw_req *cqr, in dasd_eckd_free_alias_cp() argument
5015 spin_lock_irqsave(get_ccwdev_lock(cqr->memdev->cdev), flags); in dasd_eckd_free_alias_cp()
5016 private = cqr->memdev->private; in dasd_eckd_free_alias_cp()
5018 spin_unlock_irqrestore(get_ccwdev_lock(cqr->memdev->cdev), flags); in dasd_eckd_free_alias_cp()
5019 return dasd_eckd_free_cp(cqr, req); in dasd_eckd_free_alias_cp()
5053 struct dasd_ccw_req *cqr; in dasd_eckd_release() local
5062 cqr = dasd_smalloc_request(DASD_ECKD_MAGIC, 1, 32, device, NULL); in dasd_eckd_release()
5063 if (IS_ERR(cqr)) { in dasd_eckd_release()
5066 cqr = &dasd_reserve_req->cqr; in dasd_eckd_release()
5067 memset(cqr, 0, sizeof(*cqr)); in dasd_eckd_release()
5070 cqr->cpaddr = &dasd_reserve_req->ccw; in dasd_eckd_release()
5071 cqr->data = &dasd_reserve_req->data; in dasd_eckd_release()
5072 cqr->magic = DASD_ECKD_MAGIC; in dasd_eckd_release()
5074 ccw = cqr->cpaddr; in dasd_eckd_release()
5078 ccw->cda = (__u32)virt_to_phys(cqr->data); in dasd_eckd_release()
5079 cqr->startdev = device; in dasd_eckd_release()
5080 cqr->memdev = device; in dasd_eckd_release()
5081 clear_bit(DASD_CQR_FLAGS_USE_ERP, &cqr->flags); in dasd_eckd_release()
5082 set_bit(DASD_CQR_FLAGS_FAILFAST, &cqr->flags); in dasd_eckd_release()
5083 cqr->retries = 2; /* set retry counter to enable basic ERP */ in dasd_eckd_release()
5084 cqr->expires = 2 * HZ; in dasd_eckd_release()
5085 cqr->buildclk = get_tod_clock(); in dasd_eckd_release()
5086 cqr->status = DASD_CQR_FILLED; in dasd_eckd_release()
5088 rc = dasd_sleep_on_immediatly(cqr); in dasd_eckd_release()
5095 dasd_sfree_request(cqr, cqr->memdev); in dasd_eckd_release()
5108 struct dasd_ccw_req *cqr; in dasd_eckd_reserve() local
5117 cqr = dasd_smalloc_request(DASD_ECKD_MAGIC, 1, 32, device, NULL); in dasd_eckd_reserve()
5118 if (IS_ERR(cqr)) { in dasd_eckd_reserve()
5121 cqr = &dasd_reserve_req->cqr; in dasd_eckd_reserve()
5122 memset(cqr, 0, sizeof(*cqr)); in dasd_eckd_reserve()
5125 cqr->cpaddr = &dasd_reserve_req->ccw; in dasd_eckd_reserve()
5126 cqr->data = &dasd_reserve_req->data; in dasd_eckd_reserve()
5127 cqr->magic = DASD_ECKD_MAGIC; in dasd_eckd_reserve()
5129 ccw = cqr->cpaddr; in dasd_eckd_reserve()
5133 ccw->cda = (__u32)virt_to_phys(cqr->data); in dasd_eckd_reserve()
5134 cqr->startdev = device; in dasd_eckd_reserve()
5135 cqr->memdev = device; in dasd_eckd_reserve()
5136 clear_bit(DASD_CQR_FLAGS_USE_ERP, &cqr->flags); in dasd_eckd_reserve()
5137 set_bit(DASD_CQR_FLAGS_FAILFAST, &cqr->flags); in dasd_eckd_reserve()
5138 cqr->retries = 2; /* set retry counter to enable basic ERP */ in dasd_eckd_reserve()
5139 cqr->expires = 2 * HZ; in dasd_eckd_reserve()
5140 cqr->buildclk = get_tod_clock(); in dasd_eckd_reserve()
5141 cqr->status = DASD_CQR_FILLED; in dasd_eckd_reserve()
5143 rc = dasd_sleep_on_immediatly(cqr); in dasd_eckd_reserve()
5150 dasd_sfree_request(cqr, cqr->memdev); in dasd_eckd_reserve()
5162 struct dasd_ccw_req *cqr; in dasd_eckd_steal_lock() local
5171 cqr = dasd_smalloc_request(DASD_ECKD_MAGIC, 1, 32, device, NULL); in dasd_eckd_steal_lock()
5172 if (IS_ERR(cqr)) { in dasd_eckd_steal_lock()
5175 cqr = &dasd_reserve_req->cqr; in dasd_eckd_steal_lock()
5176 memset(cqr, 0, sizeof(*cqr)); in dasd_eckd_steal_lock()
5179 cqr->cpaddr = &dasd_reserve_req->ccw; in dasd_eckd_steal_lock()
5180 cqr->data = &dasd_reserve_req->data; in dasd_eckd_steal_lock()
5181 cqr->magic = DASD_ECKD_MAGIC; in dasd_eckd_steal_lock()
5183 ccw = cqr->cpaddr; in dasd_eckd_steal_lock()
5187 ccw->cda = (__u32)virt_to_phys(cqr->data); in dasd_eckd_steal_lock()
5188 cqr->startdev = device; in dasd_eckd_steal_lock()
5189 cqr->memdev = device; in dasd_eckd_steal_lock()
5190 clear_bit(DASD_CQR_FLAGS_USE_ERP, &cqr->flags); in dasd_eckd_steal_lock()
5191 set_bit(DASD_CQR_FLAGS_FAILFAST, &cqr->flags); in dasd_eckd_steal_lock()
5192 cqr->retries = 2; /* set retry counter to enable basic ERP */ in dasd_eckd_steal_lock()
5193 cqr->expires = 2 * HZ; in dasd_eckd_steal_lock()
5194 cqr->buildclk = get_tod_clock(); in dasd_eckd_steal_lock()
5195 cqr->status = DASD_CQR_FILLED; in dasd_eckd_steal_lock()
5197 rc = dasd_sleep_on_immediatly(cqr); in dasd_eckd_steal_lock()
5204 dasd_sfree_request(cqr, cqr->memdev); in dasd_eckd_steal_lock()
5217 struct dasd_ccw_req *cqr; in dasd_eckd_snid() local
5230 cqr = dasd_smalloc_request(DASD_ECKD_MAGIC, 1, in dasd_eckd_snid()
5233 if (IS_ERR(cqr)) { in dasd_eckd_snid()
5236 cqr = &dasd_reserve_req->cqr; in dasd_eckd_snid()
5237 memset(cqr, 0, sizeof(*cqr)); in dasd_eckd_snid()
5240 cqr->cpaddr = &dasd_reserve_req->ccw; in dasd_eckd_snid()
5241 cqr->data = &dasd_reserve_req->data; in dasd_eckd_snid()
5242 cqr->magic = DASD_ECKD_MAGIC; in dasd_eckd_snid()
5244 ccw = cqr->cpaddr; in dasd_eckd_snid()
5248 ccw->cda = (__u32)virt_to_phys(cqr->data); in dasd_eckd_snid()
5249 cqr->startdev = device; in dasd_eckd_snid()
5250 cqr->memdev = device; in dasd_eckd_snid()
5251 clear_bit(DASD_CQR_FLAGS_USE_ERP, &cqr->flags); in dasd_eckd_snid()
5252 set_bit(DASD_CQR_FLAGS_FAILFAST, &cqr->flags); in dasd_eckd_snid()
5253 set_bit(DASD_CQR_ALLOW_SLOCK, &cqr->flags); in dasd_eckd_snid()
5254 cqr->retries = 5; in dasd_eckd_snid()
5255 cqr->expires = 10 * HZ; in dasd_eckd_snid()
5256 cqr->buildclk = get_tod_clock(); in dasd_eckd_snid()
5257 cqr->status = DASD_CQR_FILLED; in dasd_eckd_snid()
5258 cqr->lpm = usrparm.path_mask; in dasd_eckd_snid()
5260 rc = dasd_sleep_on_immediatly(cqr); in dasd_eckd_snid()
5262 if (!rc && usrparm.path_mask && (cqr->lpm != usrparm.path_mask)) in dasd_eckd_snid()
5265 usrparm.data = *((struct dasd_snid_data *)cqr->data); in dasd_eckd_snid()
5273 dasd_sfree_request(cqr, cqr->memdev); in dasd_eckd_snid()
5285 struct dasd_ccw_req *cqr; in dasd_eckd_performance() local
5289 cqr = dasd_smalloc_request(DASD_ECKD_MAGIC, 1 /* PSF */ + 1 /* RSSD */, in dasd_eckd_performance()
5293 if (IS_ERR(cqr)) { in dasd_eckd_performance()
5296 return PTR_ERR(cqr); in dasd_eckd_performance()
5298 cqr->startdev = device; in dasd_eckd_performance()
5299 cqr->memdev = device; in dasd_eckd_performance()
5300 cqr->retries = 0; in dasd_eckd_performance()
5301 clear_bit(DASD_CQR_FLAGS_USE_ERP, &cqr->flags); in dasd_eckd_performance()
5302 cqr->expires = 10 * HZ; in dasd_eckd_performance()
5305 prssdp = (struct dasd_psf_prssd_data *) cqr->data; in dasd_eckd_performance()
5311 ccw = cqr->cpaddr; in dasd_eckd_performance()
5326 cqr->buildclk = get_tod_clock(); in dasd_eckd_performance()
5327 cqr->status = DASD_CQR_FILLED; in dasd_eckd_performance()
5328 rc = dasd_sleep_on(cqr); in dasd_eckd_performance()
5330 prssdp = (struct dasd_psf_prssd_data *) cqr->data; in dasd_eckd_performance()
5336 dasd_sfree_request(cqr, cqr->memdev); in dasd_eckd_performance()
5397 struct dasd_ccw_req *cqr; in dasd_symm_io() local
5446 cqr = dasd_smalloc_request(DASD_ECKD_MAGIC, 2, 0, device, NULL); in dasd_symm_io()
5447 if (IS_ERR(cqr)) { in dasd_symm_io()
5450 rc = PTR_ERR(cqr); in dasd_symm_io()
5454 cqr->startdev = device; in dasd_symm_io()
5455 cqr->memdev = device; in dasd_symm_io()
5456 cqr->retries = 3; in dasd_symm_io()
5457 cqr->expires = 10 * HZ; in dasd_symm_io()
5458 cqr->buildclk = get_tod_clock(); in dasd_symm_io()
5459 cqr->status = DASD_CQR_FILLED; in dasd_symm_io()
5462 ccw = cqr->cpaddr; in dasd_symm_io()
5478 rc = dasd_sleep_on(cqr); in dasd_symm_io()
5489 dasd_sfree_request(cqr, cqr->memdev); in dasd_symm_io()
5909 struct dasd_ccw_req *cqr; in dasd_eckd_read_message_buffer() local
5913 cqr = dasd_smalloc_request(DASD_ECKD_MAGIC, 1 /* PSF */ + 1 /* RSSD */, in dasd_eckd_read_message_buffer()
5917 if (IS_ERR(cqr)) { in dasd_eckd_read_message_buffer()
5920 return PTR_ERR(cqr); in dasd_eckd_read_message_buffer()
5923 cqr->lpm = lpum; in dasd_eckd_read_message_buffer()
5925 cqr->startdev = device; in dasd_eckd_read_message_buffer()
5926 cqr->memdev = device; in dasd_eckd_read_message_buffer()
5927 cqr->block = NULL; in dasd_eckd_read_message_buffer()
5928 cqr->expires = 10 * HZ; in dasd_eckd_read_message_buffer()
5929 set_bit(DASD_CQR_VERIFY_PATH, &cqr->flags); in dasd_eckd_read_message_buffer()
5933 clear_bit(DASD_CQR_FLAGS_USE_ERP, &cqr->flags); in dasd_eckd_read_message_buffer()
5934 cqr->retries = 256; in dasd_eckd_read_message_buffer()
5937 prssdp = (struct dasd_psf_prssd_data *) cqr->data; in dasd_eckd_read_message_buffer()
5943 ccw = cqr->cpaddr; in dasd_eckd_read_message_buffer()
5960 cqr->buildclk = get_tod_clock(); in dasd_eckd_read_message_buffer()
5961 cqr->status = DASD_CQR_FILLED; in dasd_eckd_read_message_buffer()
5962 rc = dasd_sleep_on_immediatly(cqr); in dasd_eckd_read_message_buffer()
5964 prssdp = (struct dasd_psf_prssd_data *) cqr->data; in dasd_eckd_read_message_buffer()
5969 } else if (cqr->lpm) { in dasd_eckd_read_message_buffer()
5975 cqr->lpm = 0; in dasd_eckd_read_message_buffer()
5981 dasd_sfree_request(cqr, cqr->memdev); in dasd_eckd_read_message_buffer()
5991 struct dasd_ccw_req *cqr; in dasd_eckd_query_host_access() local
6003 cqr = dasd_smalloc_request(DASD_ECKD_MAGIC, 1 /* PSF */ + 1 /* RSSD */, in dasd_eckd_query_host_access()
6006 if (IS_ERR(cqr)) { in dasd_eckd_query_host_access()
6009 return PTR_ERR(cqr); in dasd_eckd_query_host_access()
6013 dasd_sfree_request(cqr, device); in dasd_eckd_query_host_access()
6018 cqr->startdev = device; in dasd_eckd_query_host_access()
6019 cqr->memdev = device; in dasd_eckd_query_host_access()
6020 cqr->block = NULL; in dasd_eckd_query_host_access()
6021 cqr->retries = 256; in dasd_eckd_query_host_access()
6022 cqr->expires = 10 * HZ; in dasd_eckd_query_host_access()
6025 prssdp = (struct dasd_psf_prssd_data *) cqr->data; in dasd_eckd_query_host_access()
6034 ccw = cqr->cpaddr; in dasd_eckd_query_host_access()
6048 cqr->buildclk = get_tod_clock(); in dasd_eckd_query_host_access()
6049 cqr->status = DASD_CQR_FILLED; in dasd_eckd_query_host_access()
6051 __set_bit(DASD_CQR_SUPPRESS_CR, &cqr->flags); in dasd_eckd_query_host_access()
6052 rc = dasd_sleep_on_interruptible(cqr); in dasd_eckd_query_host_access()
6062 dasd_sfree_request(cqr, cqr->memdev); in dasd_eckd_query_host_access()
6250 struct dasd_ccw_req *cqr; in dasd_eckd_query_pprc_status() local
6254 cqr = dasd_smalloc_request(DASD_ECKD_MAGIC, 1 /* PSF */ + 1 /* RSSD */, in dasd_eckd_query_pprc_status()
6257 if (IS_ERR(cqr)) { in dasd_eckd_query_pprc_status()
6260 return PTR_ERR(cqr); in dasd_eckd_query_pprc_status()
6262 cqr->startdev = device; in dasd_eckd_query_pprc_status()
6263 cqr->memdev = device; in dasd_eckd_query_pprc_status()
6264 cqr->block = NULL; in dasd_eckd_query_pprc_status()
6265 cqr->retries = 256; in dasd_eckd_query_pprc_status()
6266 cqr->expires = 10 * HZ; in dasd_eckd_query_pprc_status()
6269 prssdp = (struct dasd_psf_prssd_data *)cqr->data; in dasd_eckd_query_pprc_status()
6276 ccw = cqr->cpaddr; in dasd_eckd_query_pprc_status()
6290 cqr->buildclk = get_tod_clock(); in dasd_eckd_query_pprc_status()
6291 cqr->status = DASD_CQR_FILLED; in dasd_eckd_query_pprc_status()
6293 rc = dasd_sleep_on_interruptible(cqr); in dasd_eckd_query_pprc_status()
6303 dasd_sfree_request(cqr, cqr->memdev); in dasd_eckd_query_pprc_status()
6312 struct dasd_ccw_req *cqr; in dasd_eckd_nop() local
6316 cqr = dasd_smalloc_request(DASD_ECKD_MAGIC, 1, 1, device, NULL); in dasd_eckd_nop()
6317 if (IS_ERR(cqr)) { in dasd_eckd_nop()
6320 return PTR_ERR(cqr); in dasd_eckd_nop()
6322 cqr->startdev = device; in dasd_eckd_nop()
6323 cqr->memdev = device; in dasd_eckd_nop()
6324 cqr->block = NULL; in dasd_eckd_nop()
6325 cqr->retries = 1; in dasd_eckd_nop()
6326 cqr->expires = 10 * HZ; in dasd_eckd_nop()
6328 ccw = cqr->cpaddr; in dasd_eckd_nop()
6332 cqr->buildclk = get_tod_clock(); in dasd_eckd_nop()
6333 cqr->status = DASD_CQR_FILLED; in dasd_eckd_nop()
6335 rc = dasd_sleep_on_interruptible(cqr); in dasd_eckd_nop()
6341 dasd_sfree_request(cqr, cqr->memdev); in dasd_eckd_nop()
6359 struct dasd_ccw_req *cqr; in dasd_eckd_psf_cuir_response() local
6363 cqr = dasd_smalloc_request(DASD_ECKD_MAGIC, 1 /* PSF */ , in dasd_eckd_psf_cuir_response()
6367 if (IS_ERR(cqr)) { in dasd_eckd_psf_cuir_response()
6370 return PTR_ERR(cqr); in dasd_eckd_psf_cuir_response()
6373 psf_cuir = (struct dasd_psf_cuir_response *)cqr->data; in dasd_eckd_psf_cuir_response()
6380 ccw = cqr->cpaddr; in dasd_eckd_psf_cuir_response()
6386 cqr->startdev = device; in dasd_eckd_psf_cuir_response()
6387 cqr->memdev = device; in dasd_eckd_psf_cuir_response()
6388 cqr->block = NULL; in dasd_eckd_psf_cuir_response()
6389 cqr->retries = 256; in dasd_eckd_psf_cuir_response()
6390 cqr->expires = 10*HZ; in dasd_eckd_psf_cuir_response()
6391 cqr->buildclk = get_tod_clock(); in dasd_eckd_psf_cuir_response()
6392 cqr->status = DASD_CQR_FILLED; in dasd_eckd_psf_cuir_response()
6393 set_bit(DASD_CQR_VERIFY_PATH, &cqr->flags); in dasd_eckd_psf_cuir_response()
6395 rc = dasd_sleep_on(cqr); in dasd_eckd_psf_cuir_response()
6397 dasd_sfree_request(cqr, cqr->memdev); in dasd_eckd_psf_cuir_response()