#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: