scsi_transport_srp: Add rport state diagram
Add a diagram in Documentation/scsi/scsi_transport_srp that illustrates the rport state transitions. Signed-off-by: Bart Van Assche <bvanassche@acm.org> Signed-off-by: Roland Dreier <roland@purestorage.com>
This commit is contained in:
parent
93079162bf
commit
31b90347dc
2 changed files with 33 additions and 0 deletions
7
Documentation/scsi/scsi_transport_srp/Makefile
Normal file
7
Documentation/scsi/scsi_transport_srp/Makefile
Normal file
|
@ -0,0 +1,7 @@
|
|||
all: rport_state_diagram.svg rport_state_diagram.png
|
||||
|
||||
rport_state_diagram.svg: rport_state_diagram.dot
|
||||
dot -Tsvg -o $@ $<
|
||||
|
||||
rport_state_diagram.png: rport_state_diagram.dot
|
||||
dot -Tpng -o $@ $<
|
|
@ -0,0 +1,26 @@
|
|||
digraph srp_initiator {
|
||||
node [shape = doublecircle]; running lost;
|
||||
node [shape = circle];
|
||||
|
||||
{
|
||||
rank = min;
|
||||
running_rta [ label = "running;\nreconnect\ntimer\nactive" ];
|
||||
};
|
||||
running [ label = "running;\nreconnect\ntimer\nstopped" ];
|
||||
blocked;
|
||||
failfast [ label = "fail I/O\nfast" ];
|
||||
lost;
|
||||
|
||||
running -> running_rta [ label = "fast_io_fail_tmo = off and\ndev_loss_tmo = off;\nsrp_start_tl_fail_timers()" ];
|
||||
running_rta -> running [ label = "fast_io_fail_tmo = off and\ndev_loss_tmo = off;\nreconnecting succeeded" ];
|
||||
running -> blocked [ label = "fast_io_fail_tmo >= 0 or\ndev_loss_tmo >= 0;\nsrp_start_tl_fail_timers()" ];
|
||||
running -> failfast [ label = "fast_io_fail_tmo = off and\ndev_loss_tmo = off;\nreconnecting failed\n" ];
|
||||
blocked -> failfast [ label = "fast_io_fail_tmo\nexpired or\nreconnecting\nfailed" ];
|
||||
blocked -> lost [ label = "dev_loss_tmo\nexpired or\nsrp_stop_rport_timers()" ];
|
||||
failfast -> lost [ label = "dev_loss_tmo\nexpired or\nsrp_stop_rport_timers()" ];
|
||||
blocked -> running [ label = "reconnecting\nsucceeded" ];
|
||||
failfast -> failfast [ label = "reconnecting\nfailed" ];
|
||||
failfast -> running [ label = "reconnecting\nsucceeded" ];
|
||||
running -> lost [ label = "srp_stop_rport_timers()" ];
|
||||
running_rta -> lost [ label = "srp_stop_rport_timers()" ];
|
||||
}
|
Loading…
Reference in a new issue