#include <pg.h>
Operation vector for struct io_request.
Definition at line 560 of file pg.h.
◆ iro_application_data_copy
Copies data from/to application buffers according to given direction and page filter.
- Parameters
-
dir | Direction of copy. |
filter | Only copy pages that match the filter. |
- Precondition
- io_request_invariant(req).
Definition at line 583 of file pg.h.
◆ iro_dgmode_read
int(* iro_dgmode_read) (struct m0_op_io *ioo, bool rmw) |
Handles degraded mode read IO. Issues read IO for pages in all parity groups which need to be read in order to recover lost data.
- Parameters
-
rmw | Tells whether current io_request is rmw or not. |
- Precondition
- req->ir_state == IRS_READ_COMPLETE.
-
io_request_invariant(req).
- Postcondition
- req->ir_state == IRS_DEGRADED_READING.
Definition at line 634 of file pg.h.
◆ iro_dgmode_recover
int(* iro_dgmode_recover) (struct m0_op_io *ioo) |
Recovers lost unit/s by calculating parity over remaining units.
- Precondition
- req->ir_state == IRS_READ_COMPLETE && io_request_invariant(req).
- Postcondition
- io_request_invariant(req).
Definition at line 643 of file pg.h.
◆ iro_dgmode_write
int(* iro_dgmode_write) (struct m0_op_io *ioo, bool rmw) |
Handles degraded mode write IO. Finds out whether SNS repair has finished on given global fid or is still due. This is done in context of a distributed lock on the given global file.
- Parameters
-
rmw | Tells whether current io request is rmw or not. |
- Precondition
- req->ir_state == IRS_WRITE_COMPLETE.
-
io_request_invariant(req).
- Postcondition
- req->ir_state == IRS_DEGRADED_READING.
Definition at line 655 of file pg.h.
◆ iro_iomaps_destroy
void(* iro_iomaps_destroy) (struct m0_op_io *ioo) |
Finalizes and deallocates pargrp_iomap structures.
- Precondition
- req != NULL && req->ir_iomaps != NULL.
- Postcondition
- req->ir_iomaps == NULL && req->ir_iomap_nr == 0.
Definition at line 574 of file pg.h.
◆ iro_iomaps_prepare
int(* iro_iomaps_prepare) (struct m0_op_io *ioo) |
Prepares pargrp_iomap structures for the parity groups spanned by io_request::ir_ivec.
- Precondition
- req->ir_iomaps == NULL && req->ir_iomap_nr == 0.
- Postcondition
- req->ir_iomaps != NULL && req->ir_iomap_nr > 0.
Definition at line 567 of file pg.h.
◆ iro_iosm_handle_executed
Handles the state transition, status of request and the intermediate copy_{from/to}_user for the initial reply of a request.
- Precondition
- io_request_invariant(req).
Definition at line 622 of file pg.h.
◆ iro_iosm_handle_launch
Handles the state transition, status of request and the intermediate copy_{from/to}_user for the launch of the initial request, and setup of subsequent callbacks.
- Precondition
- io_request_invariant(req).
Definition at line 613 of file pg.h.
◆ iro_parity_recalc
int(* iro_parity_recalc) (struct m0_op_io *ioo) |
◆ iro_parity_verify
int(* iro_parity_verify) (struct m0_op_io *ioo) |
Verifies parity for all pargrp_iomap structures in given io_request in 'parity verify' mode and for READ request. Basically, invokes parity_verify() routine for every pargrp_iomap in io_request::ir_iomaps.
- Precondition
- io_request_invariant(req) && req->ir_type == IRT_READ.
- Postcondition
- io_request_invariant(req).
Definition at line 605 of file pg.h.
◆ iro_replica_rectify
int(* iro_replica_rectify) (struct m0_op_io *ioo, bool rmw) |
This method fixes the affected replicas from the corrupted parity groups.
Definition at line 661 of file pg.h.
The documentation for this struct was generated from the following file: