server: switch to 16-bit crc
Good enough and we can kill the command padding
Signed-off-by: Jens Axboe <axboe@kernel.dk>
diff --git a/server.h b/server.h
index d66782d..73e00a5 100644
--- a/server.h
+++ b/server.h
@@ -13,10 +13,9 @@
uint16_t opcode; /* command opcode */
uint32_t flags; /* modifier flags */
uint64_t serial; /* serial number */
- uint32_t pad;
uint32_t pdu_len; /* length of post-cmd layload */
- uint32_t cmd_crc32; /* cmd checksum */
- uint32_t pdu_crc32; /* payload checksum */
+ uint16_t cmd_crc16; /* cmd checksum */
+ uint16_t pdu_crc16; /* payload checksum */
uint8_t payload[0]; /* payload */
};
@@ -32,6 +31,10 @@
FIO_NET_CMD_ACK = 4,
FIO_NET_CMD_NAK = 5,
FIO_NET_CMD_TEXT = 6,
+
+ /* crc does not include the crc fields */
+ FIO_NET_CMD_CRC_SZ = sizeof(struct fio_net_cmd) -
+ 2 * sizeof(uint16_t),
};
extern int fio_server(void);