Lines Matching refs:cqr
55 struct dasd_ccw_req *cqr = erp->refers; in dasd_3990_erp_cleanup() local
58 cqr->status = final_status; in dasd_3990_erp_cleanup()
59 return cqr; in dasd_3990_erp_cleanup()
1440 struct dasd_ccw_req *cqr = erp->refers; in dasd_3990_erp_inspect_alias() local
1443 if (cqr->block && in dasd_3990_erp_inspect_alias()
1444 (cqr->block->base != cqr->startdev)) { in dasd_3990_erp_inspect_alias()
1450 if (!test_bit(DASD_FLAG_OFFLINE, &cqr->startdev->flags) && sense in dasd_3990_erp_inspect_alias()
1458 dasd_alias_remove_device(cqr->startdev); in dasd_3990_erp_inspect_alias()
1461 dasd_reload_device(cqr->startdev); in dasd_3990_erp_inspect_alias()
1464 if (cqr->startdev->features & DASD_FEATURE_ERPLOG) { in dasd_3990_erp_inspect_alias()
1465 DBF_DEV_EVENT(DBF_ERR, cqr->startdev, in dasd_3990_erp_inspect_alias()
1467 " recover on base device %s", cqr, in dasd_3990_erp_inspect_alias()
1468 dev_name(&cqr->block->base->cdev->dev)); in dasd_3990_erp_inspect_alias()
1470 dasd_eckd_reset_ccw_to_base_io(cqr); in dasd_3990_erp_inspect_alias()
1471 erp->startdev = cqr->block->base; in dasd_3990_erp_inspect_alias()
1613 struct dasd_ccw_req *cqr; in dasd_3990_erp_action_1B_32() local
1626 cqr = default_erp; in dasd_3990_erp_action_1B_32()
1628 while (cqr->refers != NULL) { in dasd_3990_erp_action_1B_32()
1629 cqr = cqr->refers; in dasd_3990_erp_action_1B_32()
1632 if (scsw_is_tm(&cqr->irb.scsw)) { in dasd_3990_erp_action_1B_32()
1660 erp = dasd_alloc_erp_request(cqr->magic, in dasd_3990_erp_action_1B_32()
1674 oldccw = cqr->cpaddr; in dasd_3990_erp_action_1B_32()
1676 PFX_data = cqr->data; in dasd_3990_erp_action_1B_32()
1680 memcpy(DE_data, cqr->data, sizeof(struct DE_eckd_data)); in dasd_3990_erp_action_1B_32()
1772 struct dasd_ccw_req *cqr; in dasd_3990_update_1B() local
1782 cqr = previous_erp; in dasd_3990_update_1B()
1784 while (cqr->refers != NULL) { in dasd_3990_update_1B()
1785 cqr = cqr->refers; in dasd_3990_update_1B()
1788 if (scsw_is_tm(&cqr->irb.scsw)) { in dasd_3990_update_1B()
2376 static struct dasd_ccw_req *dasd_3990_erp_add_erp(struct dasd_ccw_req *cqr) in dasd_3990_erp_add_erp() argument
2379 struct dasd_device *device = cqr->startdev; in dasd_3990_erp_add_erp()
2386 if (cqr->cpmode == 1) { in dasd_3990_erp_add_erp()
2396 erp = dasd_alloc_erp_request(cqr->magic, in dasd_3990_erp_add_erp()
2399 if (cqr->retries <= 0) { in dasd_3990_erp_add_erp()
2402 cqr->status = DASD_CQR_FAILED; in dasd_3990_erp_add_erp()
2403 cqr->stopclk = get_tod_clock(); in dasd_3990_erp_add_erp()
2408 cqr->retries); in dasd_3990_erp_add_erp()
2414 ccw = cqr->cpaddr; in dasd_3990_erp_add_erp()
2415 if (cqr->cpmode == 1) { in dasd_3990_erp_add_erp()
2421 *tcw = *((struct tcw *)cqr->cpaddr); in dasd_3990_erp_add_erp()
2425 erp->cpaddr = cqr->cpaddr; in dasd_3990_erp_add_erp()
2433 ccw->cda = (__u32)virt_to_phys(cqr->cpaddr); in dasd_3990_erp_add_erp()
2436 erp->flags = cqr->flags; in dasd_3990_erp_add_erp()
2438 erp->refers = cqr; in dasd_3990_erp_add_erp()
2441 erp->block = cqr->block; in dasd_3990_erp_add_erp()
2442 erp->magic = cqr->magic; in dasd_3990_erp_add_erp()
2443 erp->expires = cqr->expires; in dasd_3990_erp_add_erp()
2467 dasd_3990_erp_additional_erp(struct dasd_ccw_req * cqr) in dasd_3990_erp_additional_erp() argument
2473 erp = dasd_3990_erp_add_erp(cqr); in dasd_3990_erp_additional_erp()
2479 if (erp != cqr) { in dasd_3990_erp_additional_erp()
2557 dasd_3990_erp_in_erp(struct dasd_ccw_req *cqr) in dasd_3990_erp_in_erp() argument
2560 struct dasd_ccw_req *erp_head = cqr, /* save erp chain head */ in dasd_3990_erp_in_erp()
2564 if (cqr->refers == NULL) { /* return if not in erp */ in dasd_3990_erp_in_erp()
2570 match = dasd_3990_erp_error_match(erp_head, cqr->refers); in dasd_3990_erp_in_erp()
2571 erp_match = cqr; /* save possible matching erp */ in dasd_3990_erp_in_erp()
2572 cqr = cqr->refers; /* check next erp/cqr in queue */ in dasd_3990_erp_in_erp()
2574 } while ((cqr->refers != NULL) && (!match)); in dasd_3990_erp_in_erp()
2777 dasd_3990_erp_action(struct dasd_ccw_req * cqr) in dasd_3990_erp_action() argument
2780 struct dasd_device *device = cqr->startdev; in dasd_3990_erp_action()
2787 for (temp_erp = cqr; in dasd_3990_erp_action()
2798 if ((scsw_cstat(&cqr->irb.scsw) == 0x00) && in dasd_3990_erp_action()
2799 (scsw_dstat(&cqr->irb.scsw) == in dasd_3990_erp_action()
2804 " - NO ERP necessary", cqr); in dasd_3990_erp_action()
2806 cqr->status = DASD_CQR_DONE; in dasd_3990_erp_action()
2808 return cqr; in dasd_3990_erp_action()
2812 erp = dasd_3990_erp_in_erp(cqr); in dasd_3990_erp_action()
2816 erp = dasd_3990_erp_additional_erp(cqr); in dasd_3990_erp_action()
2821 erp = dasd_3990_erp_handle_match_erp(cqr, erp); in dasd_3990_erp_action()
2830 if (test_bit(DASD_CQR_VERIFY_PATH, &erp->flags) && cqr->lpm) { in dasd_3990_erp_action()
2831 erp->lpm = cqr->lpm; in dasd_3990_erp_action()
2850 cqr->status = DASD_CQR_IN_ERP; in dasd_3990_erp_action()
2852 list_add_tail(&erp->blocklist, &cqr->blocklist); in dasd_3990_erp_action()