Description of problem: mkqdisk cannot use device with 4kb sector size(probably only 512b sector size is ok) Version-Release number of selected component (if applicable): cluster-1.04.00.tar.gz How reproducible: # mkqdisk -c /dev/vg0/qdisk0 -l qdisk0 mkqdisk v0.5.1 Writing new quorum disk label 'qdisk0' to /dev/vg0/qdisk0. WARNING: About to destroy all data on /dev/vg0/qdisk0; proceed [N/y] ? y diskRawWriteShadow: Invalid argument diskRawWriteShadow: aligned write returned -1, not 512 diskRawWriteShadow: Invalid argument Steps to Reproduce: 1. 2. 3. Actual results: Expected results: Additional info:
This isn't hard to fix. I need to change the write sizes to 4kb and such, though.
qdisk is missing the ability to grab sector sizes from block devices.
Also, I think using raw devices, you can end up with 512 byte sector sizes. For example: Can you run this program and send me the output? comple = gcc -o itest itest.c -Wall -Werror run = ./itest <device> The MD5 sum for the program source code as attached is: 45fa2b62345f6e0f6c3a06e21602a43d After that's done, you can also try the following to make qdisk work now: (a) Set up a raw device to map to your device. For example: raw /dev/raw/raw1 /dev/vg0/qdisk0 ... and try to run qdiskd using /dev/raw/raw1 (b) You can also just use raw shared SCSI disks instead of LVM maps (which is recommended due to chicken-and-egg problems with Clustered LVM and qdisk)
Created attachment 188861 [details] ioctl debugging program to grab sector / block sizes
Created attachment 189241 [details] Allows non-512 byte sector size, as determined by the BLKSSGET ioctl