A ceph_connection holds a mixture of connection state (as in "state machine" state) and connection flags in a single "state" field. To make the distinction more clear, define a new "flags" field and use it rather than the "state" field to hold Boolean flag values.
Showing the changes to include/linux/ceph (1 of 2 files). Show all
Unified · Split
| @@ -103,20 +103,25 @@ struct ceph_msg_pos { · 102 unmodified lines | ||
| 103 | 103 | #define MAX_DELAY_INTERVAL (5 * 60 * HZ) |
| 104 | 104 | |
| 105 | 105 | /* |
| 106 | − * ceph_connection state bit flags | |
| 106 | + * ceph_connection flag bits | |
| 107 | 107 | */ |
| 108 | + | |
| 108 | 109 | #define LOSSYTX 0 /* we can close channel or drop messages on errors */ |
| 109 | −#define CONNECTING 1 | |
| 110 | −#define NEGOTIATING 2 | |
| 111 | 110 | #define KEEPALIVE_PENDING 3 |
| 112 | 111 | #define WRITE_PENDING 4 /* we have data ready to send */ |
| 112 | +#define SOCK_CLOSED 11 /* socket state changed to closed */ | |
| 113 | +#define BACKOFF 15 | |
| 114 | + | |
| 115 | +/* | |
| 116 | + * ceph_connection states | |
| 117 | + */ | |
| 118 | +#define CONNECTING 1 | |
| 119 | +#define NEGOTIATING 2 | |
| 113 | 120 | #define STANDBY 8 /* no outgoing messages, socket closed. we keep |
| 114 | 121 | * the ceph_connection around to maintain shared |
| 115 | 122 | * state with the peer. */ |
| 116 | 123 | #define CLOSED 10 /* we've closed the connection */ |
| 117 | −#define SOCK_CLOSED 11 /* socket state changed to closed */ | |
| 118 | 124 | #define OPENING 13 /* open connection w/ (possibly new) peer */ |
| 119 | −#define BACKOFF 15 | |
| 120 | 125 | |
| 121 | 126 | /* |
| 122 | 127 | * A single connection with another host. |
| @@ -133,7 +138,8 @@ struct ceph_connection { · 10 unmodified lines | ||
| 133 | 138 | |
| 134 | 139 | struct ceph_messenger *msgr; |
| 135 | 140 | struct socket *sock; |
| 136 | − unsigned long state; /* connection state (see flags above) */ | |
| 141 | + unsigned long flags; | |
| 142 | + unsigned long state; | |
| 137 | 143 | const char *error_msg; /* error message, if any */ |
| 138 | 144 | |
| 139 | 145 | struct ceph_entity_addr peer_addr; /* peer address */ |