Note: "permalinks" may not be as permanent as we would like,
direct links of old sources may well be a few messages off.
Hi all! Can somebody of the DRBD developers please confirm this claim? -If any IO request is made to a DRBD device which is not in Primary state, that request will fail. I need to be sure about the aboved-mentioned statement because recently I've found this information in the machine's kernel log file and I'm starting to think about possible data corruption: ... Jul 6 21:23:20 xxxx kernel: drbd1: Not in Primary state, no IO requests allowed Jul 6 21:23:20 xxxx kernel: Buffer I/O error on device drbd1, logical block 0 Jul 6 21:23:20 xxxx kernel: drbd1: Not in Primary state, no IO requests allowed Jul 6 21:23:20 xxxx kernel: Buffer I/O error on device drbd1, logical block 1 Jul 6 21:23:20 xxxx kernel: drbd1: Not in Primary state, no IO requests allowed Jul 6 21:23:20 xxxx kernel: Buffer I/O error on device drbd1, logical block 2 Jul 6 21:23:20 xxxx kernel: drbd1: Not in Primary state, no IO requests allowed Jul 6 21:23:20 xxxx kernel: Buffer I/O error on device drbd1, logical block 3 Jul 6 21:23:20 xxxx kernel: drbd1: Not in Primary state, no IO requests allowed Jul 6 21:23:20 xxxx kernel: Buffer I/O error on device drbd1, logical block 4 Jul 6 21:23:20 xxxx kernel: Buffer I/O error on device drbd1, logical block 5 Jul 6 21:23:20 xxxx kernel: Buffer I/O error on device drbd1, logical block 6 Jul 6 21:23:20 xxxx kernel: Buffer I/O error on device drbd1, logical block 7 Jul 6 21:23:20 xxxx kernel: Buffer I/O error on device drbd1, logical block 0 Jul 6 21:23:20 xxxx kernel: Buffer I/O error on device drbd1, logical block 0 ... We're using DRBD version 0.7.14. For me it looks like there's a safety mechanism implemented in DRBD, which prevents such IO requests to be made, but since I'm not a programming guru (and although I've taken a look at the relevant DRBD source code lines - especially drbd_req.c), it's just my personal assumption. And, I cannot try to reproduce such requests (ie. issue dd on /dev/drbd1 and try to read some blocks), because it's a production machine. -Mirek