Motr
M0
|
#include <plan.h>
Data Fields | |
enum m0_layout_plop_type | pl_type |
enum m0_layout_plop_state | pl_state |
struct m0_layout_plan * | pl_plan |
struct target_ioreq * | pl_ti |
uint64_t | pl_colour |
uint64_t | pl_magix |
struct m0_tlink | pl_linkage |
struct m0_tl | pl_deps |
struct m0_tl | pl_rdeps |
struct m0_fid | pl_ent |
int32_t | pl_rc |
const struct m0_layout_plop_ops * | pl_ops |
Common plop structure, shared by all "sub-classes".
A call to m0_layout_plop_get() returns a structure starting with m0_layout_plop. The user should use m0_layout_plop::pl_type to determine actual sub-class.
uint64_t pl_colour |
Plop colour.
The implementation assigns colours to plops to improve locality of reference. The caller can optionally map colours to processor cores via m0_locality_get() and execute plops on cores corresponding to their colours.
struct m0_tl pl_deps |
List of plops this plop depends on, linked via m0_layout_plop_rel::plr_dep_linkage.
User can use this list to track the dependencies between plops to execute and call m0_layout_plop_done() on them in the correspondent order and also to check whether there are still pending undone plops we depend on.
struct m0_fid pl_ent |
struct m0_tlink pl_linkage |
const struct m0_layout_plop_ops* pl_ops |
User call-backs optionally set by the user before calling m0_layout_plop_done().
struct m0_layout_plan* pl_plan |
int32_t pl_rc |
Plop execution result. This field is set by the user before calling m0_layout_plop_done().
struct m0_tl pl_rdeps |
List of plops that depend on this plop (dependants), linked via m0_layout_plop_rel::plr_rdep_linkage.
enum m0_layout_plop_state pl_state |
struct target_ioreq* pl_ti |
target_ioreq this plop corresponds to.
enum m0_layout_plop_type pl_type |