Lines Matching refs:cqr
54 struct dasd_ccw_req *cqr = erp->refers; in dasd_3990_erp_cleanup() local
57 cqr->status = final_status; in dasd_3990_erp_cleanup()
58 return cqr; in dasd_3990_erp_cleanup()
1421 struct dasd_ccw_req *cqr = erp->refers; in dasd_3990_erp_inspect_alias() local
1424 if (cqr->block && in dasd_3990_erp_inspect_alias()
1425 (cqr->block->base != cqr->startdev)) { in dasd_3990_erp_inspect_alias()
1431 if (!test_bit(DASD_FLAG_OFFLINE, &cqr->startdev->flags) && sense in dasd_3990_erp_inspect_alias()
1439 dasd_alias_remove_device(cqr->startdev); in dasd_3990_erp_inspect_alias()
1442 dasd_reload_device(cqr->startdev); in dasd_3990_erp_inspect_alias()
1445 if (cqr->startdev->features & DASD_FEATURE_ERPLOG) { in dasd_3990_erp_inspect_alias()
1446 DBF_DEV_EVENT(DBF_ERR, cqr->startdev, in dasd_3990_erp_inspect_alias()
1448 " recover on base device %s", cqr, in dasd_3990_erp_inspect_alias()
1449 dev_name(&cqr->block->base->cdev->dev)); in dasd_3990_erp_inspect_alias()
1451 dasd_eckd_reset_ccw_to_base_io(cqr); in dasd_3990_erp_inspect_alias()
1452 erp->startdev = cqr->block->base; in dasd_3990_erp_inspect_alias()
1594 struct dasd_ccw_req *cqr; in dasd_3990_erp_action_1B_32() local
1607 cqr = default_erp; in dasd_3990_erp_action_1B_32()
1609 while (cqr->refers != NULL) { in dasd_3990_erp_action_1B_32()
1610 cqr = cqr->refers; in dasd_3990_erp_action_1B_32()
1613 if (scsw_is_tm(&cqr->irb.scsw)) { in dasd_3990_erp_action_1B_32()
1641 erp = dasd_alloc_erp_request((char *) &cqr->magic, in dasd_3990_erp_action_1B_32()
1655 oldccw = cqr->cpaddr; in dasd_3990_erp_action_1B_32()
1657 PFX_data = cqr->data; in dasd_3990_erp_action_1B_32()
1661 memcpy(DE_data, cqr->data, sizeof(struct DE_eckd_data)); in dasd_3990_erp_action_1B_32()
1753 struct dasd_ccw_req *cqr; in dasd_3990_update_1B() local
1763 cqr = previous_erp; in dasd_3990_update_1B()
1765 while (cqr->refers != NULL) { in dasd_3990_update_1B()
1766 cqr = cqr->refers; in dasd_3990_update_1B()
1769 if (scsw_is_tm(&cqr->irb.scsw)) { in dasd_3990_update_1B()
2298 static struct dasd_ccw_req *dasd_3990_erp_add_erp(struct dasd_ccw_req *cqr) in dasd_3990_erp_add_erp() argument
2301 struct dasd_device *device = cqr->startdev; in dasd_3990_erp_add_erp()
2308 if (cqr->cpmode == 1) { in dasd_3990_erp_add_erp()
2318 erp = dasd_alloc_erp_request((char *) &cqr->magic, in dasd_3990_erp_add_erp()
2321 if (cqr->retries <= 0) { in dasd_3990_erp_add_erp()
2324 cqr->status = DASD_CQR_FAILED; in dasd_3990_erp_add_erp()
2325 cqr->stopclk = get_tod_clock(); in dasd_3990_erp_add_erp()
2330 cqr->retries); in dasd_3990_erp_add_erp()
2336 ccw = cqr->cpaddr; in dasd_3990_erp_add_erp()
2337 if (cqr->cpmode == 1) { in dasd_3990_erp_add_erp()
2343 *tcw = *((struct tcw *)cqr->cpaddr); in dasd_3990_erp_add_erp()
2347 erp->cpaddr = cqr->cpaddr; in dasd_3990_erp_add_erp()
2355 ccw->cda = (long)(cqr->cpaddr); in dasd_3990_erp_add_erp()
2358 erp->flags = cqr->flags; in dasd_3990_erp_add_erp()
2360 erp->refers = cqr; in dasd_3990_erp_add_erp()
2363 erp->block = cqr->block; in dasd_3990_erp_add_erp()
2364 erp->magic = cqr->magic; in dasd_3990_erp_add_erp()
2365 erp->expires = cqr->expires; in dasd_3990_erp_add_erp()
2389 dasd_3990_erp_additional_erp(struct dasd_ccw_req * cqr) in dasd_3990_erp_additional_erp() argument
2395 erp = dasd_3990_erp_add_erp(cqr); in dasd_3990_erp_additional_erp()
2401 if (erp != cqr) { in dasd_3990_erp_additional_erp()
2479 dasd_3990_erp_in_erp(struct dasd_ccw_req *cqr) in dasd_3990_erp_in_erp() argument
2482 struct dasd_ccw_req *erp_head = cqr, /* save erp chain head */ in dasd_3990_erp_in_erp()
2486 if (cqr->refers == NULL) { /* return if not in erp */ in dasd_3990_erp_in_erp()
2492 match = dasd_3990_erp_error_match(erp_head, cqr->refers); in dasd_3990_erp_in_erp()
2493 erp_match = cqr; /* save possible matching erp */ in dasd_3990_erp_in_erp()
2494 cqr = cqr->refers; /* check next erp/cqr in queue */ in dasd_3990_erp_in_erp()
2496 } while ((cqr->refers != NULL) && (!match)); in dasd_3990_erp_in_erp()
2699 dasd_3990_erp_action(struct dasd_ccw_req * cqr) in dasd_3990_erp_action() argument
2702 struct dasd_device *device = cqr->startdev; in dasd_3990_erp_action()
2709 for (temp_erp = cqr; in dasd_3990_erp_action()
2720 if ((scsw_cstat(&cqr->irb.scsw) == 0x00) && in dasd_3990_erp_action()
2721 (scsw_dstat(&cqr->irb.scsw) == in dasd_3990_erp_action()
2726 " - NO ERP necessary", cqr); in dasd_3990_erp_action()
2728 cqr->status = DASD_CQR_DONE; in dasd_3990_erp_action()
2730 return cqr; in dasd_3990_erp_action()
2734 erp = dasd_3990_erp_in_erp(cqr); in dasd_3990_erp_action()
2738 erp = dasd_3990_erp_additional_erp(cqr); in dasd_3990_erp_action()
2743 erp = dasd_3990_erp_handle_match_erp(cqr, erp); in dasd_3990_erp_action()
2762 cqr->status = DASD_CQR_IN_ERP; in dasd_3990_erp_action()
2764 list_add_tail(&erp->blocklist, &cqr->blocklist); in dasd_3990_erp_action()