Note: "permalinks" may not be as permanent as we would like,
direct links of old sources may well be a few messages off.
On Wed, 2006-09-27 at 17:19 +0200, Lars Ellenberg wrote: > I just did > # blockdev --flushbufs /dev/drbd0 > # echo $? > 0 > > on our file server here. > so it _does_ "just work". > > what is your kernel? OpenVZ Kernel 2.6.8-022stab078.14 (http://openvz.org/) > which drbd version? 0.7.20 Here is the output (the cluster is currently degraded, but I think this should not matter in this case): -------------------------------------------------------------------- [root at node1 ~]# cat /proc/drbd version: 0.7.20 (api:79/proto:74) SVN Revision: 2260 build by phil at mescal, 2006-07-04 15:18:57 0: cs:StandAlone st:Primary/Unknown ld:Consistent ns:0 nr:0 dw:16567336 dr:5597177 al:14061 bm:14318 lo:0 pe:0 ua:0 ap:0 [root at node1 ~]# blockdev --flushbufs /dev/drbd0 BLKFLSBUF: Inappropriate ioctl for device [root at node1 ~]# echo $? 1 [root at node1 ~]# cat /proc/version Linux version 2.6.8-022stab078.14 (root at kern268.build.sw.ru) (gcc version 3.3.3 20040412 (Red Hat Linux 3.3.3-7)) #1 Wed Jul 19 16:02:34 MSD 2006 [root at node1 ~]# -------------------------------------------------------------------- Executing "blockdev --flushbufs" on the lower devices (drbd is on top of a sw-raid1 (/dev/md3, which itself uses /dev/hdc3 and /dev/hda3 as lower devices) works: -------------------------------------------------------------------- [root at node1 ~]# blockdev --flushbufs /dev/md3 [root at node1 ~]# echo $? 0 [root at node1 ~]# blockdev --flushbufs /dev/hdc3 [root at node1 ~]# echo $? 0 [root at node1 ~]# blockdev --flushbufs /dev/hda3 [root at node1 ~]# echo $? 0 [root at node1 ~]# -------------------------------------------------------------------- I also tried it on another cluster (which is not degraded). On this second cluster drbd is on top of a hardware RAID device (3ware 9550sx). I get the same results there. As it seems to work on your side, maybe it has something to do with the OpenVZ kernel? On your side: what does DRBD upon "blockdev --flushbufs /dev/drbd0" - does DRBD forward the flush command to the lower devices? Thanks for your help!