"Fossies" - the Fresh Open Source Software Archive  

Source code changes of the file "drbd/drbd_req.h" between
drbd-9.1.8.tar.gz and drbd-9.1.9.tar.gz

About: DRBD (9.x) is a block device which is designed to build high availability clusters. This is done by mirroring a whole block device via (a dedicated) network. You could see it as a "network RAID-1". The driver code got integrated into the vanilla Linux kernel.

drbd_req.h  (drbd-9.1.8):drbd_req.h  (drbd-9.1.9)
skipping to change at line 69 skipping to change at line 69
* When it finally has outlived its time, * When it finally has outlived its time,
* corresponding dirty bits in the resync-bitmap may be cleared or set, * corresponding dirty bits in the resync-bitmap may be cleared or set,
* it will be destroyed, * it will be destroyed,
* and completion will be signalled to the originator, * and completion will be signalled to the originator,
* with or without "success". * with or without "success".
*/ */
enum drbd_req_event { enum drbd_req_event {
TO_BE_SUBMITTED, TO_BE_SUBMITTED,
/* XXX yes, now I am inconsistent... NEW_NET_READ,
* these are not "events" but "actions" NEW_NET_WRITE,
* oh, well... */ NEW_NET_OOS,
QUEUE_FOR_NET_WRITE, ADDED_TO_TRANSFER_LOG,
QUEUE_FOR_NET_READ,
QUEUE_FOR_SEND_OOS,
/* For an empty flush, mark that a corresponding barrier has been sent /* For an empty flush, mark that a corresponding barrier has been sent
* to this peer. This causes it to complete "successfully", even if the * to this peer. This causes it to complete "successfully", even if the
* local disk flush failed. * local disk flush failed.
* *
* Just like "real" requests, empty flushes (blkdev_issue_flush()) will * Just like "real" requests, empty flushes (blkdev_issue_flush()) will
* only see an error if neither local nor remote data is reachable. */ * only see an error if neither local nor remote data is reachable. */
BARRIER_SENT, BARRIER_SENT,
SEND_CANCELED, SEND_CANCELED,
skipping to change at line 123 skipping to change at line 121
* do atomic bit operations. * do atomic bit operations.
*/ */
enum drbd_req_state_bits { enum drbd_req_state_bits {
/* /*
* Here are the possible combinations of the core net flags pending, * Here are the possible combinations of the core net flags pending,
* queued, sent, done, ok. * queued, sent, done, ok.
* *
* <none>: * <none>:
* No network required, or not yet processed. * No network required, or not yet processed.
* pending: * pending:
* Intended for this peer, but connection lost. If IO is suspended, * Intended for this peer, but not yet queued, or connection lost. If
* it will stay in this state until the connection is restored or IO * IO is suspended, it will stay in this state until the connection
* is resumed. * is restored or IO is resumed.
* pending,queued: * pending,queued:
* To be sent, on transfer log to be processed by sender. * To be sent, on transfer log to be processed by sender.
* queued:
* Queued for sending P_OUT_OF_SYNC.
* pending,sent: * pending,sent:
* Sent, expecting P_RECV_ACK (B) or P_WRITE_ACK (C). * Sent, expecting P_RECV_ACK (B) or P_WRITE_ACK (C).
* sent,ok: * sent,ok:
* Sent, implicit "ack" (A), P_RECV_ACK (B) or P_WRITE_ACK (C) received . * Sent, implicit "ack" (A), P_RECV_ACK (B) or P_WRITE_ACK (C) received .
* Still waiting for the barrier ack. * Still waiting for the barrier ack.
* master_bio may already be completed and invalidated. * master_bio may already be completed and invalidated.
* sent,done,ok: * sent,done,ok:
* Data received (for remote read, any protocol), * Data received (for remote read, any protocol),
* or finally the barrier ack has arrived. * or finally the barrier ack has arrived.
* sent,done: * sent,done:
 End of changes. 3 change blocks. 
11 lines changed or deleted 7 lines changed or added

Home  |  About  |  Features  |  All  |  Newest  |  Dox  |  Diffs  |  RSS Feeds  |  Screenshots  |  Comments  |  Imprint  |  Privacy  |  HTTP(S)