Lines Matching refs:request

204 	struct tape_request *request;
213 request = tape_alloc_request(2, sizeof(*order));
214 if (IS_ERR(request)) {
215 rc = PTR_ERR(request);
218 order = request->cpdata;
222 request->op = TO_KEKL_QUERY;
223 tape_ccw_cc(request->cpaddr, PERF_SUBSYS_FUNC, sizeof(*order), order);
224 tape_ccw_end(request->cpaddr + 1, READ_SS_DATA, sizeof(*int_kekls),
226 rc = tape_do_io(device, request);
233 tape_free_request(request);
277 struct tape_request *request;
287 request = tape_alloc_request(1, sizeof(*order));
288 if (IS_ERR(request))
289 return PTR_ERR(request);
290 order = request->cpdata;
296 request->op = TO_KEKL_SET;
297 tape_ccw_end(request->cpaddr, PERF_SUBSYS_FUNC, sizeof(*order), order);
299 return tape_do_io_free(device, request);
329 struct tape_request *request;
335 request = tape_alloc_request(2, 72);
336 if (IS_ERR(request))
337 return request;
338 data = request->cpdata;
349 request->op = TO_CRYPT_ON;
350 tape_ccw_cc(request->cpaddr, MODE_SET_CB, 36, data);
351 tape_ccw_end(request->cpaddr + 1, MODE_SET_CB, 36, data + 36);
352 return request;
357 struct tape_request *request;
359 request = __tape_3592_enable_crypt(device);
360 if (IS_ERR(request))
361 return PTR_ERR(request);
362 return tape_do_io_free(device, request);
367 struct tape_request *request;
369 request = __tape_3592_enable_crypt(device);
370 if (!IS_ERR(request))
371 tape_do_io_async_free(device, request);
379 struct tape_request *request;
385 request = tape_alloc_request(2, 72);
386 if (IS_ERR(request))
387 return request;
388 data = request->cpdata;
396 request->op = TO_CRYPT_OFF;
397 tape_ccw_cc(request->cpaddr, MODE_SET_CB, 36, data);
398 tape_ccw_end(request->cpaddr + 1, MODE_SET_CB, 36, data + 36);
400 return request;
405 struct tape_request *request;
407 request = __tape_3592_disable_crypt(device);
408 if (IS_ERR(request))
409 return PTR_ERR(request);
410 return tape_do_io_free(device, request);
415 struct tape_request *request;
417 request = __tape_3592_disable_crypt(device);
418 if (!IS_ERR(request))
419 tape_do_io_async_free(device, request);
495 struct tape_request *request;
497 request = tape_alloc_request(1, 128);
498 if (IS_ERR(request))
499 return PTR_ERR(request);
500 request->op = TO_MSEN;
501 tape_ccw_end(request->cpaddr, MEDIUM_SENSE, 128, request->cpdata);
502 return tape_do_io_free(device, request);
507 struct tape_request *request;
509 request = tape_alloc_request(1, 128);
510 if (IS_ERR(request))
512 request->op = TO_MSEN;
513 tape_ccw_end(request->cpaddr, MEDIUM_SENSE, 128, request->cpdata);
514 tape_do_io_async_free(device, request);
538 struct tape_request *request;
541 request = tape_alloc_request(3, 4);
542 if (IS_ERR(request))
543 return PTR_ERR(request);
544 request->op = TO_LBL;
545 tape_ccw_cc(request->cpaddr, MODE_SET_DB, 1, device->modeset_byte);
546 *(__u32 *) request->cpdata = count;
547 tape_ccw_cc(request->cpaddr + 1, LOCATE, 4, request->cpdata);
548 tape_ccw_end(request->cpaddr + 2, NOP, 0, NULL);
549 return tape_do_io_free(device, request);
558 struct tape_request *request)
564 * transform the request to a read backward, followed by a
567 request->op = TO_RBA;
568 tape_ccw_cc(request->cpaddr, MODE_SET_DB, 1, device->modeset_byte);
570 tape_ccw_cc_idal(request->cpaddr + 1, data->read_back_op,
572 tape_ccw_cc(request->cpaddr + 2, FORSPACEBLOCK, 0, NULL);
573 tape_ccw_end(request->cpaddr + 3, NOP, 0, NULL);
582 * After a "read attention message" request there are two possible
595 struct tape_request *request;
598 request = tape_alloc_request(3, 4096);
599 if (IS_ERR(request))
601 request->op = TO_READ_ATTMSG;
602 buf = request->cpdata;
605 tape_ccw_cc(request->cpaddr, PERFORM_SS_FUNC, 12, buf);
606 tape_ccw_cc(request->cpaddr + 1, READ_SS_DATA, 4096 - 12, buf + 12);
607 tape_ccw_end(request->cpaddr + 2, NOP, 0, NULL);
608 tape_do_io_async_free(device, request);
706 tape_3590_done(struct tape_device *device, struct tape_request *request)
709 DBF_EVENT(6, "%s done\n", tape_op_verbose[request->op]);
711 switch (request->op) {
732 tape_3590_med_state_set(device, request->cpdata);
764 tape_3590_erp_succeeded(struct tape_device *device, struct tape_request *request)
767 tape_op_verbose[request->op]);
768 return tape_3590_done(device, request);
775 tape_3590_erp_failed(struct tape_device *device, struct tape_request *request,
779 tape_op_verbose[request->op]);
780 tape_dump_sense_dbf(device, request, irb);
788 tape_3590_erp_retry(struct tape_device *device, struct tape_request *request,
791 DBF_EVENT(2, "Retry: %s\n", tape_op_verbose[request->op]);
792 tape_dump_sense_dbf(device, request, irb);
823 tape_3590_erp_basic(struct tape_device *device, struct tape_request *request,
832 return tape_3590_erp_failed(device, request, irb, rc);
834 return tape_3590_erp_succeeded(device, request);
836 return tape_3590_erp_retry(device, request, irb);
838 return tape_3590_erp_failed(device, request, irb, rc);
850 struct tape_request *request, struct irb *irb)
856 return tape_3590_erp_basic(device, request, irb, -EIO);
863 tape_3590_erp_swap(struct tape_device *device, struct tape_request *request,
874 return tape_3590_erp_basic(device, request, irb, -EIO);
882 struct tape_request *request, struct irb *irb)
893 struct tape_request *request, struct irb *irb)
895 return tape_3590_erp_basic(device, request, irb, -EIO);
903 struct tape_request *request, struct irb *irb)
924 tape_3590_read_opposite(device, request);
925 return tape_3590_erp_retry(device, request, irb);
933 struct tape_request *request, struct irb *irb)
935 switch (request->op) {
941 tape_3590_read_opposite(device, request);
942 return tape_3590_erp_retry(device, request, irb);
945 return tape_3590_erp_failed(device, request, irb, -EIO);
948 return tape_3590_erp_failed(device, request, irb, -EIO);
1302 struct tape_request *request, struct irb *irb)
1313 return tape_3590_erp_basic(device, request, irb, -EKEYREJECTED);
1316 return tape_3590_erp_basic(device, request, irb, -ENOTCONN);
1321 return tape_3590_erp_basic(device, request, irb, -ENOKEY);
1330 tape_3590_unit_check(struct tape_device *device, struct tape_request *request,
1348 return tape_3590_erp_read_buf_log(device, request, irb);
1352 return tape_3590_erp_read_alternate(device, request, irb);
1357 return tape_3590_erp_special_interrupt(device, request, irb);
1359 return tape_3590_crypt_error(device, request, irb);
1364 return tape_3590_erp_basic(device, request, irb, -ENOSPC);
1368 return tape_3590_erp_basic(device, request, irb, -ENOSPC);
1371 return tape_3590_erp_basic(device, request, irb, -ENOSPC);
1376 return tape_3590_erp_basic(device, request, irb, -EIO);
1382 return tape_3590_erp_basic(device, request, irb, 0);
1391 return tape_3590_erp_basic(device, request, irb, -ENOMEDIUM);
1396 return tape_3590_erp_basic(device, request, irb, -EBUSY);
1399 return tape_3590_erp_long_busy(device, request, irb);
1405 return tape_3590_erp_swap(device, request, irb);
1410 return tape_3590_erp_read_opposite(device, request,
1413 return tape_3590_erp_basic(device, request, irb, -EIO);
1421 return tape_3590_erp_swap(device, request, irb);
1425 return tape_3590_erp_basic(device, request, irb, -EMEDIUMTYPE);
1431 return tape_3590_erp_basic(device, request, irb, -ENOMEDIUM);
1434 return tape_3590_erp_basic(device, request, irb, -EMEDIUMTYPE);
1437 return tape_3590_erp_basic(device, request, irb, -EPERM);
1441 return tape_3590_erp_basic(device, request, irb, -EPERM);
1443 return tape_3590_erp_basic(device, request, irb, -EIO);
1451 tape_3590_irq(struct tape_device *device, struct tape_request *request,
1454 if (request == NULL)
1459 (request->op == TO_WRI)) {
1462 return tape_3590_erp_failed(device, request, irb, -ENOSPC);
1466 return tape_3590_unit_check(device, request, irb);
1470 if (request->op == TO_FSB || request->op == TO_BSB)
1471 request->rescnt++;
1476 return tape_3590_done(device, request);
1490 tape_dump_sense_dbf(device, request, irb);
1499 struct tape_request *request;
1501 request = tape_alloc_request(1, sizeof(*rdc_data));
1502 if (IS_ERR(request))
1503 return PTR_ERR(request);
1504 request->op = TO_RDC;
1505 tape_ccw_end(request->cpaddr, CCW_CMD_RDC, sizeof(*rdc_data),
1506 request->cpdata);
1507 rc = tape_do_io(device, request);
1509 memcpy(rdc_data, request->cpdata, sizeof(*rdc_data));
1510 tape_free_request(request);